这有一个很好的算法吗?经过一番搜索后,我找不到任何确凿的答案。
基本上,在收集有关其用户的各种数据的系统中,每个用户由64位唯一ID标识。此Id用作数据集的主键,可包括从该用户收集的任何数据量。因为这个ID已经是唯一的,但是由于法律原因,我需要以一种我无法将它们链接回实际人的方式来散列Id。但同时需要保证身份证的唯一性。
显然,如果值是唯一的,则可以对所使用的算法进行逆向工程。但是我不太确定它是100%牢不可破的在这里是一个很大的问题,而不是让它变得如此,以至于没有一种简单的方法可以逆转它
感谢
答案 0 :(得分:3)
为每个ID生成一个唯一的随机ID,并将其存储为用户信息的一部分。
然后你可以从ID获取哈希值。反过来在计算上是可能的(因为你必须扫描整个密钥空间),但过于困难和耗时。
答案 1 :(得分:0)
为什么唯一ID需要成为主键?可能是您可以使用其他主键(ID的哈希)并存储使用已知密钥加密的加密主用户名。
据我所知,哈希值无法逆转