跳到主要内容
CNode

md5的32位字符怎么hash成10进制数

问答
Bblackjack发布于 10 年前最后回复 10 年前
1181960

用户登录账户的md5字符串做为用户的唯一ID,分表存数据时用用户的ID hash一个数(0,1,2,3,4,5,6,7,8,9)中的一个就是要保存的表的标示,怎么生成这个数字,node有库吗

查看回复

回复 (11)

J
jizhuofeng#1010 年前
引用 blackjack@xadillax 多谢 , 用户名是唯一的 md5后肯定是唯一的

@blackjack 理论上即使用户名唯一md5后也有碰撞的可能性的

B
blackjack#910 年前

@xadillax 多谢 , 用户名是唯一的 md5后肯定是唯一的

Y
yjhjstz#810 年前

md5 存在理论上碰撞可能。

X
XadillaX#710 年前
引用 blackjack多谢各位 @xadillax 为了唯一性 选择了md5, @yjhjstz 自定义hash 有demo吗,参考参考

@blackjack 我上面给你的包就是成熟的自定义哈希函数。

B
blackjack#510 年前

多谢各位 @xadillax 为了唯一性 选择了md5, @yjhjstz 自定义hash 有demo吗,参考参考

X
XadillaX#410 年前

别用 md5 啊,字符串哈希成 int 有很多算法的。

$ npm install --save -d bling-hashes

https://www.npmjs.com/package/bling-hashes

C
captainblue2013#310 年前

Number.parseInt( hash ,16)

L
leapon#210 年前

加起来取余可以吧

Y
yjhjstz#110 年前

自定义 hash function 即可。

参与回复

登录后即可参与回复。登录