我正在尝试实现一个 Chord 分布式哈希表。我想使用 SHA-1 作为哈希函数来生成节点 ID 并将值映射到 DHT。但是,我需要对 SHA-1 生成的密钥使用数字运算,例如取模。我想知道我应该将得到的字节数组放在哪种类型的变量中,以及如何将一个字节转换为另一个。
如果您的密钥的最大长度为 8 个字节,您可以从获得的字节创建一个长变量。如果您的输出更长,您必须寻找适用于字节数组的 c# 大数字库。
编辑:
注意 .NET Framwork 版本 4 具有 BigInteger 类型,正好可以满足您的需求。
互联网上也有很多项目也提供了类似的功能。