您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

mysql - php 二进制加密数据如何保证数据唯一性?

2025/12/27 2:50:03发布15次查看
公司数据库里的用户敏感数据需要加密成二进制密文存在mysql blob类型字段里,现在发现要保证用户数据的唯一性不好弄, 因为发现blob类型字段似乎不能直接进行逻辑运算,也不能把表里的密文全读出来解密一遍再进行逻辑运算吧
回复内容: 公司数据库里的用户敏感数据需要加密成二进制密文存在mysql blob类型字段里,现在发现要保证用户数据的唯一性不好弄, 因为发现blob类型字段似乎不能直接进行逻辑运算,也不能把表里的密文全读出来解密一遍再进行逻辑运算吧
根据用户id缓存密文md5
我觉得应该这样做:
新增数据在加密前对明文进行md5哈希,然后存个hash后的值(加密后的blob当然也要存)
而已有的数据则需要找个时间全部解密md5下,然后存放下hash后的值
这样判断唯一性则直接判断hash后的值一般就行了。
不推荐对密文进行md5 -- 除非你能确保相同的明文加密后总是能产生同样的密文。然而密文至少会受到密钥的影响,换密钥后肯定密文会变掉... 况且有些加密方式本身带有随机化的初始向量,每次加密出来的密文是不同的。
直接mysql内置方法 hex()
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product