在Java中将md5转换为两个长变量



我正在尝试对一些值进行散列,并将散列后的值用作数据库中的索引。没有碰撞是非常重要的,这就是为什么我选择md5。拥有128位,给了我更多的空间,不用担心碰撞(我知道md5不是碰撞安全的)。

无论如何,我如何将md5的结果存储在数据库中,以便对其进行索引并快速检索?我想有两个Long变量,其中一个保存前64位的值,另一个保存第二个64位,并将这两个键都用作数据库的索引。但我需要一个快速的方法来做到这一点。。。最快的方式是什么?

当我需要索引时,我不认为将md5散列值存储为字节数组会有多大帮助。

只需将其存储为字符串(VARCHAR),并让您的DB对其进行索引。这是最简单的解决方案,您将从索引中获得性能提升。

最新更新