首页/应用软件/内容

MySQL如何正确地运用AES_ENCRYPT()与AES_DECRYPT()加解密

应用软件2022-10-07 阅读()
+---------------------------+ 1 row in set (0.00 sec)

这样的方法虽然美,只需将字段字符集设置为latin1就可以了,但可能会带来隐患:

文档上写了这样的一句:

Many encryption and compression functions return strings for which the result might contain arbitrary byte values. If you want to store these results, use a column with a VARBINARY or BLOB binary string data type. This will avoid potential problems with trailing space removal or character set conversion that would change data values, such as may occur if you use a nonbinary string data type (CHAR, VARCHAR, TEXT).

大意是,如果用方法③那样,直接将加密后的串存入char/varchar/text类型中,在做字符转换的时或空格被删除时,可能会带来潜在的影响。

所以如果一定要存在char/varchar/text中,那么还是参考方法②,十六进制化一下吧。

或者如同方法①,直接存在二进制字段中。

相关推荐:

在PHP中如何利用OpenSSL代替Mcrypt加解密?

微信小程序开发功能介绍之加解密NODE-UUID介绍

详解PHP数据压缩、加解密(pack, unpack)

以上就是MySQL如何正确地利用AES_ENCRYPT()与AES_DECRYPT()加解密的详细内容,更多请关注php中文网其它相关文章!


学习教程快速掌握从入门到精通的SQL知识。



第1页  第2页  第3页  第4页  第5页  第6页  第7页  第8页  第9页  第10页  第11页  第12页  第13页  第14页  第15页  第16页  第17页  第18页  第19页  第20页  第21页  第22页  第23页  第24页  第25页  第26页  第27页  第28页  第29页  第30页  第31页  第32页  第33页 

……

相关阅读