Mysql 数据加密存储
通常数据库自带有加解密函数,如MySQL的PASSWORD ,MD5,AES_ENCRYPT等等。对于密码等信息可以采用单向加密,验证的时候用同样的方式加密匹配即可。而对于需要比对原内容的模糊查询,则需要使用双向加密,也即可以解密,在MySQL可以使用自带的AES加密。
// 加密
UPDATE wk_user_refused set name=HEX(AES_ENCRYPT("33333@qq.com", "wifi")) WHERE id="b9ir2b7";
// 加密
UPDATE wk_user_refused set name=HEX(AES_ENCRYPT(`name`, "wifi")) WHERE id="ze57r460";
// 解密
SELECT AES_DECRYPT(UNHEX(`name`), "wifi"),email FROM wk_user_refused WHERE id="b9ir2b7";
加密字段如何模糊查询,如下
SELECT AES_DECRYPT(UNHEX(`name`), "wifi"),email FROM wk_user_refused where AES_DECRYPT(UNHEX(`name`),'wifi') like '%3%';