是否有CPAN模块将短字符串消化为短数字?

git*_*oob 4 perl hash md5 cpan module

我需要为一些短字符串创建唯一的数字id.

some.domain.com    -> 32423421
another.domain.com -> 23332423
yet.another.com    -> 12131232
Run Code Online (Sandbox Code Playgroud)

是否有Perl CPAN模块可以执行此类操作?

我尝试过使用Digest :: MD5,但结果数字太长了:

some.domain.com    -> 296800572457176150356613937260800159845 
Run Code Online (Sandbox Code Playgroud)

Joh*_*lla 16

只需获取MD5哈希的前8位数字即可.这是有效的,因为MD5 在其哈希地址空间上均匀分布.这意味着MD5散列数字的任何连续序列本身将是均匀分布的散列.

或者,只使用一些其他均匀分布的散列机制,返回8个数字.无论什么对你来说最简单.