ase加密后base64编码
为了应对王安的要求 数据库不能存储明文密码
mysql 版本
mysql> SELECT VERSION();
+------------+
| VERSION() |
+------------+
| 5.7.33-log |
+------------+
1 row in set (0.11 sec)
使用 ase-128加密
AES_ENCRYPT(`password`,'1234567890123412')
ase64编码一下
- 原因: ase 加密 后二进制 会乱码 因此必须base64一下
TO_BASE64 (AES_ENCRYPT(`password`,'1234567890123412') )
可以批量更新数据库
update emergency_meeting_device set `password` = TO_BASE64 (AES_ENCRYPT(`password`,'1234567890123412') )
base64解码
from_base64(password)
解密
AES_DECRYPT(from_base64(password),'1234567890123412')
批量还原数据表原始数据
update emergency_meeting_device set `password` = AES_DECRYPT(from_base64(password),'1234567890123412')
可以明文查询
SELECT
AES_DECRYPT( from_base64 ( PASSWORD ), '1234567890123412' )
FROM
emergency_meeting_device
WHERE
PASSWORD = to_base64 (
AES_ENCRYPT( '22', '1234567890123412' ));
根据密文查询
SELECT
AES_DECRYPT( from_base64 ( PASSWORD ), '1234567890123412' )
FROM
emergency_meeting_device
WHERE
PASSWORD = 'tNBfa9ZI41zx7QieZ0FWRg==';
本文来自博客园,作者:vx_guanchaoguo0,转载请注明原文链接:https://www.cnblogs.com/guanchaoguo/p/16546250.html