Числовые операции над ключами, сгенерированными SHA-1 в C # - PullRequest
0 голосов
/ 14 мая 2010

Я пытаюсь реализовать распределенную хеш-таблицу Chord. Я хочу использовать SHA-1 в качестве хэш-функции для генерации идентификаторов узлов и сопоставления значений с DHT. Однако мне нужно использовать числовые операции над сгенерированным ключом SHA-1, например, по модулю. Интересно, в какой тип переменной я должен поместить массив байтов, которые я получаю, и как я могу преобразовать один в другой.

1 Ответ

0 голосов
/ 14 мая 2010

Если ваш ключ имеет максимальную длину 8 байтов, вы можете создать длинную переменную из полученного байта. Если ваш вывод длиннее, вы должны искать библиотеку больших чисел для c #, которая работает с байтовыми массивами.

РЕДАКТИРОВАТЬ:

ПРИМЕЧАНИЕ. .NET Framwork версии 4 имеет тип BigInteger, который точно соответствует вашим потребностям.

В Интернете также есть множество проектов , которые также предоставляют аналогичные функции.

...