MySQL密码加密与解密
MySQL密码加密与解密详解
有多种前端加密算法可用于数据加密、解密,这是一种简单的数据库级别的数据加密、解密解决方案。
以MySQL数据库为例,它内建了相应的加密函数(AES_ENCRYPT() )和解密函数(AES_DECRYPT())。
1.建表:建表时注意数据的类型
CREATE TABLE users( username VARCHAR(10), PASSWORD VARCHAR(10), testpswd VARBINARY(20) );
此表有三个字段,\'用户名\' ,\'密码\' ,\'加密的密码\'。
2.在表中插入数据
INSERT INTO users (username,PASSWORD,testpswd) VALUES (\'sxyu\',\'1233210\',AES_ENCRYPT(\'1233210\',\'key\'));
插入一条记录,AES_ENCRYPT()函数需要一个“key”来协助加密,解密同时也需要它,需要牢记。
3.从表中查询加密数据(解密):
SELECT username,PASSWORD,AES_DECRYPT(testpswd,\'key\') FROM users
从查询结果可以发现,解密后的密码与原本的密码是相同的。