MYSQL密碼加密函式的實際用途

2021-08-29 13:33:17 字數 1027 閱讀 5414

在新增一條資料庫記錄時,有時候密碼需要加密儲存,此時我們採用mysql自帶的加密演算法

password("yourpassword")經過此函式後就可以將密碼加密後儲存在資料庫.

在修改密碼時同樣會用到這樣的函式.

先將新輸入的密碼字串,經過此函式加密碼後,再與從資料庫取出的密碼作比較,這樣才能保證相匹配,否則永遠也不可能相等.

為新輸入的字串加密  select password("yourpassowrd");用一人虛表進行此函式.

下面是一些相關的介紹

password()

:建立乙個經過加密的密碼字串,適合於插入到

mysql

的安全系

統。該加密過程不可逆,和

unix

密碼加密過程使用不同的演算法。主要用於

mysql

的認證系統。

encrypt(

):使用unix crypt()

系統加密字串,

encrypt()

函式接收要加密的字串和(可選的)用於加密過程的

salt

(乙個可以唯一確定口令的字串,就像鑰匙一樣),注意,windows上不支援

encode(,)   decode(,)

:加密解密字串。該函式有兩個引數:被加密或解密的字串和作為加密或解密基礎的金鑰。encode

結果是乙個二進位制字串,以

blob

型別儲存。加密成都相對比較弱

md5()

:計算字串的

md5校驗和(

128位)

sha5()

:計算字串的

sha5

校驗和(

160位)

以上兩個函式返回的校驗和是

16進製制的,適合與認證系統中使用的口令。

eg:select * from users where name=』john』 and password=md5(『mypass』);

Hash密碼加密函式

function tlogin form.hash password password string string it must incloud unit dcpcrypt2 and dcpsha1 var i integer str1,str2 string hash tdcp sha1 dig...

MySQL函式 加密函式

加密函式是mysql用來對資料進行加密的函式。1 password str 該函式可以對字串str進行加密,一般情況下,password str 用於給使用者的密碼加密。select password 123 23ae809ddacaf96af0fd78ed04b6a265e05aa257 2 md...

mysql內建加密函式

mysql資料庫內建了相應的加密函式 aes encrypt 和解密函式 aes decrypt insert into table name name,pwd values aes encrypt htims key aes encrypt 函式需要乙個 key 可以自定義 來協助加密,同樣,解密...