gpt4 book ai didi

.NET:64 位哈希码

转载 作者:行者123 更新时间:2023-12-04 00:46:50 27 4
gpt4 key购买 nike

我需要一个 64 位的字符串散列,默认的 .GetHashCode() 只返回一个 32 位的 int。我可以生成一个 MD5/SHA1 散列,并且只使用前 64 位。但是因为这些算法是加密安全的,所以它们对 CPU 的要求要高得多。

是否可以简单到仅在输入字符串的反面调用 .GetHashCode() 第二次?并将两个 32 位 int 转换为 64 位 long?它会像 CRC64 这样的“真正的”64 位散列具有相同的传播和抗碰撞性吗?

最佳答案

你即将犯下一个非常大的错误。 64 位散列不足以保证唯一性。这至少需要 128 位。一个 guid 是一个常见的选择。

生成唯一 32 位或 64 位数字并不难,您只需使用下一个。问题是你需要知道前一个。 Dbase 引擎在这方面从来没有问题,它们的作用是记住东西。

使用自增列。

关于.NET:64 位哈希码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8058781/

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