<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        mySql的加密算法

        來源:懂視網 責編:小采 時間:2020-11-09 08:31:21
        文檔

        mySql的加密算法

        mySql的加密算法:1、雙向加密 就讓我們從最簡單的加密開始:雙向加密。在這里,一段數據通過一個密鑰被加密,只能夠由知道這個密鑰的人來解密。MySQL有兩個函數來支持這種類型的加密,分別叫做ENCODE()和DECODE()。下面是一個簡單的實例: mysql INSERT INTO u
        推薦度:
        導讀mySql的加密算法:1、雙向加密 就讓我們從最簡單的加密開始:雙向加密。在這里,一段數據通過一個密鑰被加密,只能夠由知道這個密鑰的人來解密。MySQL有兩個函數來支持這種類型的加密,分別叫做ENCODE()和DECODE()。下面是一個簡單的實例: mysql INSERT INTO u

        1、雙向加密 就讓我們從最簡單的加密開始:雙向加密。在這里,一段數據通過一個密鑰被加密,只能夠由知道這個密鑰的人來解密。MySQL有兩個函數來支持這種類型的加密,分別叫做ENCODE()和DECODE()。下面是一個簡單的實例: mysql INSERT INTO users (username

        1、雙向加密

        就讓我們從最簡單的加密開始:雙向加密。在這里,一段數據通過一個密鑰被加密,只能夠由知道這個密鑰的人來解密。MySQL有兩個函數來支持這種類型的加密,分別叫做ENCODE()和DECODE()。下面是一個簡單的實例:

        mysql> INSERT INTO users (username, password) VALUES ('joe', ENCODE('guessme', 'abracadabra')); Query OK, 1 row affected (0.14 sec)

        其中,Joe的密碼是guessme,它通過密鑰abracadabra被加密。要注意的是,加密完的結果是一個二進制字符串,如下所示:

        mysql> SELECT * FROM users WHERE username='joe'; +----------+----------+ | username | password | +----------+----------+ | joe | ¡?i??!? | +----------+----------+ 1 row in set (0.02 sec)

        abracadabra這個密鑰對于恢復到原始的字符串至關重要。這個密鑰必須被傳遞給DECODE()函數,以獲得原始的、未加密的密碼。下面就是它的使用方法:

        mysql> SELECT DECODE(password, 'abracadabra') FROM users WHERE username='joe'; +---------------------------------+ | DECODE(password, 'abracadabra') | +---------------------------------+ | guessme | +---------------------------------+ 1 row in set (0.00 sec)

        應該很容易就看到它在Web應用程序里是如何運行的——在驗證用戶登錄的時候,DECODE()會用網站專用的密鑰解開保存在數據庫里的密碼,并和用戶輸入的內容進行對比。假設您把PHP用作自己的腳本語言,那么可以像下面這樣進行查詢:

        提示:雖然ENCODE()和DECODE()這兩個函數能夠滿足大多數的要求,但是有的時候您希望使用強度更高的加密手段。在這種情況下,您可以使用AES_ENCRYPT()和AES_DECRYPT()函數,它們的工作方式是相同的,但是加密強度更高。

        2、單向加密

        單向加密與雙向加密不同,一旦數據被加密就沒有辦法顛倒這一過程。因此密碼的驗證包括對用戶輸入內容的重新加密,并將它與保存的密文進行比對,看是否匹配。一種簡單的單向加密方式是MD5校驗碼。MySQL的MD5()函數會為您的數據創建一個“指紋”并將它保存起來,供驗證測試使用。下面就是如何使用它的一個簡單例子:

        mysql> INSERT INTO users (username, password) VALUES ('joe', MD5('guessme')); Query OK, 1 row affected (0.00 sec) mysql> SELECT * FROM users WHERE username='joe'; +----------+----------------------------------+ | username | password | +----------+----------------------------------+ | joe | 81a58e89df1f34c5487568e17327a219 | +----------+----------------------------------+ 1 row in set (0.02 sec)

        現在您可以測試用戶輸入的內容是否與已經保存的密碼匹配,方法是取得用戶輸入密碼的MD5校驗碼,并將它與已經保存的密碼進行比對,就像下面這樣:

        mysql> SELECT COUNT(*) FROM users WHERE username='joe' AND password=MD5('guessme'); +----------+ | COUNT(*) | +----------+ | 1 | +----------+ 1 row in set (0.00 sec)

        或者,您考慮一下使用ENCRYPT()函數,它使用系統底層的crypt()系統調用來完成加密。這個函數有兩個參數:一個是要被加密的字符串,另一個是雙(或者多)字符的“salt”。它然后會用salt加密字符串;這個salt然后可以被用來再次加密用戶輸入的內容,并將它與先前加密的字符串進行比對。下面一個例子說明了如何使用它:

        mysql> INSERT INTO users (username, password) VALUES ('joe', ENCRYPT('guessme', 'ab')); Query OK, 1 row affected (0.00 sec) mysql> SELECT * FROM users WHERE username='joe'; +----------+---------------+ | username | password | +----------+---------------+ | joe | ab/G8gtZdMwak | +----------+---------------+ 1 row in set (0.00 sec)

        結果是

        mysql> SELECT COUNT(*) FROM users WHERE username='joe' AND password=ENCRYPT('guessme', 'ab'); +----------+ | COUNT(*) | +----------+ | 1 | +----------+ 1 row in set (0.00 sec)

        提示:ENCRYPT()只能用在*NIX系統上,因為它需要用到底層的crypt()庫。

        幸運的是,上面的例子說明了能夠如何利用MySQL對您的數據進行單向和雙向的加密,并告訴了您一些關于如何保護數據庫和其他敏感數據庫信息安全的理念。

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        mySql的加密算法

        mySql的加密算法:1、雙向加密 就讓我們從最簡單的加密開始:雙向加密。在這里,一段數據通過一個密鑰被加密,只能夠由知道這個密鑰的人來解密。MySQL有兩個函數來支持這種類型的加密,分別叫做ENCODE()和DECODE()。下面是一個簡單的實例: mysql INSERT INTO u
        推薦度:
        標簽: 加密 的密碼 雙向
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲色图视频在线观看| 亚洲一本大道无码av天堂| 18级成人毛片免费观看| 免费黄色网址入口| 亚洲国产精品日韩在线| 最近中文字幕2019高清免费| 亚洲Av无码精品色午夜| 色播在线永久免费视频网站| 亚洲精品在线视频| 亚洲黄色三级网站| 精品国产免费人成电影在线观看 | 日韩精品在线免费观看| 亚洲精品中文字幕无码蜜桃| 最近免费字幕中文大全| 亚洲av日韩av天堂影片精品| 99re免费视频| 亚洲精品午夜国产VA久久成人| 99精品全国免费观看视频..| 亚洲VA成无码人在线观看天堂| 免费福利电影在线观看| 亚洲伊人久久综合影院| 91免费福利视频| 亚洲综合激情另类小说区| APP在线免费观看视频| 99久久亚洲精品无码毛片| 18禁免费无码无遮挡不卡网站| 亚洲尤码不卡AV麻豆| 先锋影音资源片午夜在线观看视频免费播放| 在线免费观看色片| 亚洲视频中文字幕| 999在线视频精品免费播放观看| 亚洲国产成人久久综合| 亚洲色偷偷综合亚洲AVYP| 四虎在线免费视频| 在线播放亚洲精品| 亚洲∧v久久久无码精品| 毛片免费在线播放| 大地影院MV在线观看视频免费 | 8888四色奇米在线观看免费看| 亚洲日本久久久午夜精品| 日韩精品极品视频在线观看免费|