使用静态位数对ID [页面,用户...]进行模糊处理

时间:2013-12-26 11:30:36

标签: php

我正在寻找一种方法来模糊向最终用户显示的ID。但是使用静态位数Like the md5() function,可以反转回原始ID。

e.x: 1 => N9VRD7QB4SG2 e.x: 999999999 => RC401BALV74W

2 个答案:

答案 0 :(得分:3)

id = oldid ^ 0xfedad1234;

编码

现在

oldid = id ^ 0xfedad1234;

回到原来的

没有涉及SQL

答案 1 :(得分:1)

我想最简单的解决方案是使用原始ID(加上盐)的散列中的前N个字符并将关联存储在数据库表中:

hash_id | original_id

您可以根据这些建议选择哈希算法:http://www.php.net/manual/en/faq.passwords.php

编辑:正如zerkms所写,你想在hash_id列上添加一个UNIQUE索引,以避免碰撞哈希。