最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql雙向加密解密方式用法詳解

 更新時(shí)間:2014年04月16日 10:38:57   作者:  
這篇文章主要介紹了mysql雙向加密解密方式用法,需要的朋友可以參考下

如果你使用的正是mysql數(shù)據(jù)庫,那么你把密碼或者其他敏感重要信息保存在應(yīng)用程序里的機(jī)會(huì)就很大。保護(hù)這些數(shù)據(jù)免受黑客或者窺探者的獲取是一個(gè)令人關(guān)注的重要問題,因?yàn)槟炔荒茏屛唇?jīng)授權(quán)的人員使用或者破壞應(yīng)用程序,同時(shí)還要保證您的競(jìng)爭(zhēng)優(yōu)勢(shì)。幸運(yùn)的是,MySQL帶有很多設(shè)計(jì)用來提供這 種類型安全的加密函數(shù)。本文概述了其中的一些函數(shù),并說明了如何使用它們,以及它們能夠提供的不同級(jí)別的安全。

雙向加密

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

復(fù)制代碼 代碼如下:

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

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

復(fù)制代碼 代碼如下:

mysql> SELECT * FROM users WHERE username='joe';
+----------+----------+
| username | password |
+----------+----------+
| joe | ??i??!? |
+----------+----------+
1 row in set (0.02 sec)
abracadabra這個(gè)密鑰對(duì)于恢復(fù)到原始的字符串至關(guān)重要。這個(gè)密鑰必須被傳遞給DECODE()函數(shù),以獲得原始的、未加密的密碼。下面就是它的使用方法:
mysql> SELECT DECODE(password, 'abracadabra')
FROM users WHERE username='joe';
+---------------------------------+
| DECODE(password, 'abracadabra') |
+---------------------------------+
| guessme |
+---------------------------------+
1 row in set (0.00 sec)

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

復(fù)制代碼 代碼如下:

<?php
$query = "SELECT COUNT(*) FROM users WHERE
username='$inputUser' AND DECODE(password,
'abracadabra') = '$inputPass'";
?>

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

相關(guān)文章

  • MySQL 索引知識(shí)匯總

    MySQL 索引知識(shí)匯總

    這篇文章主要介紹了MySQL 索引使用方法的相關(guān)資料,文中示例代碼非常詳細(xì),幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • MySQL重定位數(shù)據(jù)目錄的方法

    MySQL重定位數(shù)據(jù)目錄的方法

    這篇文章主要介紹了MySQL重定位數(shù)據(jù)目錄的實(shí)現(xiàn)方法,分析了重定位MySQL數(shù)據(jù)目錄的實(shí)現(xiàn)原理與技巧,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2014-12-12
  • MySQL如何創(chuàng)建觸發(fā)器(CREATE TRIGGER)

    MySQL如何創(chuàng)建觸發(fā)器(CREATE TRIGGER)

    這篇文章主要介紹了MySQL如何創(chuàng)建觸發(fā)器(CREATE TRIGGER)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • MySql登錄時(shí)閃退的快速解決辦法

    MySql登錄時(shí)閃退的快速解決辦法

    這篇文章主要介紹了MySql登錄時(shí)閃退的快速解決辦法的相關(guān)資料,需要的朋友可以參考下
    2016-08-08
  • 銀河麒麟V10安裝MySQL8.0.28并實(shí)現(xiàn)遠(yuǎn)程訪問

    銀河麒麟V10安裝MySQL8.0.28并實(shí)現(xiàn)遠(yuǎn)程訪問

    這篇文章主要介紹了銀河麒麟V10安裝MySQL8028的圖文教程,并詳細(xì)介紹了遠(yuǎn)程訪問的實(shí)現(xiàn)方法,本文通過圖文命令給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-02-02
  • mysql 服務(wù)意外停止1067錯(cuò)誤解決辦法小結(jié)

    mysql 服務(wù)意外停止1067錯(cuò)誤解決辦法小結(jié)

    今天在配置服務(wù)器時(shí)安裝mysql5.5總是無法安裝,查看日志錯(cuò)誤提示為1067錯(cuò)誤,下面來看我的解決辦法
    2012-11-11
  • sql format()函數(shù)的用法及簡(jiǎn)單實(shí)例

    sql format()函數(shù)的用法及簡(jiǎn)單實(shí)例

    下面小編就為大家?guī)硪黄猻ql format函數(shù)()的用法及簡(jiǎn)單實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-05-05
  • MySQL中文亂碼問題的解決

    MySQL中文亂碼問題的解決

    MySQL中文亂碼問題的解決...
    2006-12-12
  • MySql存儲(chǔ)表情報(bào)錯(cuò)的排查解決

    MySql存儲(chǔ)表情報(bào)錯(cuò)的排查解決

    隨著互聯(lián)網(wǎng)的發(fā)展,產(chǎn)生了許多新類型的字符,例如emoji這種類型的符號(hào),也就是我們通常在聊天時(shí)發(fā)的小黃臉表情,下面這篇文章主要給大家介紹了關(guān)于MySql存儲(chǔ)表情報(bào)錯(cuò)的排查解決,需要的朋友可以參考下
    2022-07-07
  • mysql常見的錯(cuò)誤提示問題處理小結(jié)

    mysql常見的錯(cuò)誤提示問題處理小結(jié)

    本文總結(jié)了在使用mysql過程中經(jīng)常遇到的3種錯(cuò)誤提示(error1067,error1061,error1045)的問題的處理方法,都是本人在實(shí)際應(yīng)用中處理檢驗(yàn)過的,希望對(duì)大家有所幫助
    2014-08-08

最新評(píng)論

南充市| 杭州市| 老河口市| 沁水县| 巩留县| 调兵山市| 双柏县| 平和县| 贵州省| 阿克陶县| 六盘水市| 桓仁| 莱芜市| 佛坪县| 偃师市| 陆良县| 内江市| 绥江县| 游戏| 泰来县| 台前县| 昭觉县| 教育| 四平市| 阿尔山市| 枝江市| 赤壁市| 什邡市| 盐源县| 奉化市| 德化县| 遵义市| 禄丰县| 三明市| 兴海县| 玛纳斯县| 遵义县| 沅陵县| 航空| 枝江市| 宾川县|