在新增一條資料庫記錄時,有時候密碼需要加密儲存,此時我們採用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 可以自定義 來協助加密,同樣,解密...