Мотивация:
Я хотел бы преобразовать хэши (MD5 / SHA1 и т. Д.) В десятичные целые числа с целью создания штрих-кодов в Code128C.
Для простоты я предпочитаю, чтобы все полученные (большие) числа были положительными.
Я могу конвертировать байт [] в BigInteger в C # ...
Образец из того, что у меня так далеко:
byte[] data;
byte[] result;
BigInteger biResult;
result = shaM.ComputeHash(data);
biResult = new BigInteger(result);
Но (ржавый CS здесь) я прав, что байтовый массив всегда можно интерпретировать двумя способами:
A: как подписанный номер
B: как число без знака
Возможно ли сделать БЕЗИМИНЕР без знака из байта [] в C #?
Должен ли я просто добавить 0x00 (нулевой байт) перед байтом []?
EDIT:
Спасибо AakashM, Джону и Адаму Робинсону, добавив нулевой байт, достиг того, что мне нужно. \
EDIT2:
Главное, что я должен был сделать, это прочитать подробный документ конструктора BigInteger (byte []), тогда я бы увидел разделы о том, как ограничиться положительными числами, добавив нулевой байт.