1

我需要一个散列函数(也许我不应该称其为“散列”函数):

1.仅用于哈希时间戳;

2.有一个反向功能,我可以通过该功能恢复时间戳;

3.不产生重复的哈希值;

4.不管是不是散列函数,都几乎和散列函数一样快;

PS:关于时间戳的数据类型——C语言中4字节“long”类型的图像。

那可能吗?

(我需要将时间戳保密。---事实上,我需要将哈希值作为会话 ID,并将原始时间戳作为数据库中的索引。每当用户使用会话 ID 请求某些内容时,我都可以获得时间戳作为获取请求信息的索引。)

4

1 回答 1

0

如果您可以跳过 #2 MurmurHash 可能是一个不错的选择:

https://sites.google.com/site/murmurhash/

(2) 如果您必须加密/解密,则大多数语言(例如 AES)都有各种算法的标准实现。这将比散列慢得多。

如果您实际上并不需要它来保护数据(这引出了一个问题:为什么要为任何转换而烦恼?)并且只想制作一些易于反转的非时间戳字符串(由您 - 以及任何人否则)然后检查这个问题:

Rot13 表示数字

于 2012-10-09T14:42:05.167 回答