MySQL中AES_ENCRYPT('密码','钥匙')函数 可以对字段值做加密处理
AES_DECRYPT(表的字段名字,'钥匙')函数 解密处理
例,表结构:
现在插入一条数据,对passwd密码字段加密。
INSERT INTO credit_card(cid,NAME,email,passwd)
VALUES(101,'hechunyang','hechunyang@163.com',AES_ENCRYPT('123456','hechunyang'));
如图所示,插入成功。下面看看数据库加密的效果:
可以看到,已经加密,看见的是乱码。
用户登录的时候要进行验证,程序需要解密,通过函数AES_DECRYPT(表的字段名字,'钥匙')
SELECT cid,NAME,email,AES_DECRYPT(passwd,'hechunyang') as passwd FROM credit_card
WHERE NAME='hechunyang';
可以看到,已经解密。