gpt4 book ai didi

c# - 比较基于散列的 GUID 与“Guid.NewGuid()”时是否有更大的碰撞机会?

转载 作者:太空宇宙 更新时间:2023-11-03 15:25:01 25 4
gpt4 key购买 nike

Is there a greater chance to collide when comparing GUIDs created differently? 的后续行动.

我有这样的东西:

using( MD5 md5 = MD5.Create() ) {
var hash = md5.ComputeHash( foo );
var hashguid = new Guid( hash );
}

这保证相同的 foo 会导致 GUID 冲突,并允许过滤 foo 的重复项。

是否有人担心 hashguid 有更大的机会与 Guid.NewGuid() 生成的 GUID 发生冲突(相对于 Guid 生成的两个 GUID。 NewGuid())?

最佳答案

与哈希输入的冲突机会相比,加密强哈希算法不会显着增加冲突的机会。这是安全的。

以某种方式构造 guid 并不能实际降低碰撞风险。随机生成的 guids 的碰撞几率非常低,即使是火星探测器也可以保证不会发生这种情况。

MD5 是一种损坏的算法,我不会将其称为加密强度高的算法。我不明白为什么人们仍然使用 MD5。这不是破解10年后的常识吗?!考虑使用 SHA256 并将输出截断为 128 位。

关于c# - 比较基于散列的 GUID 与“Guid.NewGuid()”时是否有更大的碰撞机会?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35701564/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com