和亚线性空间中的几乎通用字符串哈希


9

这是字符串上的两个哈希函数族:x=x0x1x2xm

  1. 对于素数和,对于\ in \ mathbb {Z} _p。Dietzfelbinger等。在“多项式哈希函数可靠”中显示\ forall x \ neq y,P_a(h ^ 1_a(x)= h ^ 1_a(y))\ leq m / ppxiZpha1(x)=aiximodpaZpxy,Pa(ha1(x)=ha1(y))m/p

  2. 对于xiZ2bha=a0a1a2am+12(x)=(a0+ai+1ximod22b)÷2b用于aiZ22b。Lemire和Kaser在“完全通用的字符串哈希运算非常快”中表明,该家族独立于2。这意味着xy,Pa(ha2(x)=ha2(y))=2b

h1仅使用lgp位的空间和随机位,而h2使用2bm+2b位的空间和随机位。另一方面,h2Z22b,在实际计算机上运行很快。

我想知道还有哪些其他哈希家族几乎是通用的(例如h1),但是要对Z2b(例如h2)进行操作,并使用o(m)空间和随机性。

这样的哈希家族存在吗?是否可以在O(m)时间内评估其成员?

Answers:



-1

如果您想快速获得一些东西并且可以在实践中使用,则可以查看密码文献。例如,poly1305UMAC很快,还有很多其他。由于2通用散列对于密码学很有用,因此密码学家研究了许多构造并发现了极其有效的构造。

Poly1305的工作方式类似于您的第一类哈希(称为多项式求值哈希),以模。该方案显示了一些巧妙的技巧,可以使此方法在现代计算机上快速运行。随机量很小:128位。21305

如果您想减少随机性而又不太在意实用性,则可以查看以下研究论文:

  • 基于LFSR的哈希和身份验证。雨果·克拉维奇(Hugo Krawczyk)。加密货币1994。

Krawczyk描述了一种基本上通过使为Toeplitz矩阵的第行来减少随机量的方案。但是,Krawczyk方案适用于,而不适用于算术模。aiiGF(2b)2b


1
感谢您的参考,但此答案并未解决问题。
jbapple
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.