Perl的默认哈希实现是什么?

时间:2019-08-14 04:24:45

标签: perl hash-function perl5 perl5.30

根据perldoc perlsec

  

备用哈希函数。源代码包括多种哈希算法供您选择。尽管我们认为默认perl哈希具有强大的攻击能力,但我们将哈希函数Siphash作为后备选项包括在内。在Perl 5.18.0发行时,Siphash被认为具有加密强度。这不是默认值,因为它比默认哈希值慢得多。

默认的perl哈希函数是什么?从上下文中我们可以推断出它不是SIPHASH吗?

1 个答案:

答案 0 :(得分:6)

INSTALL file in the source,

  

自Perl 5.18起,我们已包括对多个哈希函数的支持,   尽管我们会不时更改支持的功能,   以及哪个功能是默认功能(当前在64位版本上为SBOX + STADTX   和SBOX + ZAPHOD32(用于32位版本)。

您可以看到default in the source code in hv_func.h。因此,对于64位版本,似乎是在stadtx_hash.h中实现的StadtX“快速哈希函数”。