1. 程式人生 > 其它 >MySQL(六)MD5加密

MySQL(六)MD5加密

MD5加密(拓展)

一、MD5簡介

MD5即Message-Digest Algorithm 5(資訊-摘要演算法5),用於確保資訊傳輸完整一致。是計算機廣泛使用的雜湊演算法之一(又譯摘要演算法、雜湊演算法),主流程式語言普遍已有MD5實現。將資料(如漢字)運算為另一固定長度值,是雜湊演算法的基礎原理,MD5的前身有MD2、MD3和MD4。

二、實現資料加密

新建一個表 testmd5

 CREATE TABLE `testmd5` (
   `id` INT(4) NOT NULL,
   `name` VARCHAR(20) NOT NULL,
   `pwd` VARCHAR(50) NOT NULL,
   PRIMARY KEY (`id`)
 ) ENGINE=INNODB DEFAULT CHARSET=utf8

插入一些資料

INSERT INTO testmd5 VALUES(1,'kuangshen','123456')
,(2,'qinjiang','456789')

如果要對pwd這一列資料進行加密,語法是:

 update testmd5 set pwd = md5(pwd);

如果單獨對某個使用者(如kuangshen)的密碼加密:

 INSERT INTO testmd5 VALUES(3,'kuangshen2','123456')
 update testmd5 set pwd = md5(pwd) where name = 'kuangshen2';

插入新的資料自動加密:

INSERT INTO testmd5 VALUES(4,'kuangshen3',md5('123456'));

查詢登入使用者資訊(md5對比使用,檢視使用者輸入加密後的密碼進行比對:

SELECT * FROM testmd5 WHERE `name`='kuangshen' AND pwd=MD5('123456');