Как я могу преобразовать git-хэш в байтовый массив длиной 20 в C#?
Как я могу преобразовать git-хэш в байтовый массив длиной 20 в C#? На данный момент я представляю хэш git в виде строки:
string gitHash = "0x29932f3915935d773dc8d52c292cadd81c81071d";
Я попробовал это:
byte[] gitHashBytes = System.Text.Encoding.ASCII.GetBytes(gitHash);
Array.Resize(ref gitHashBytes, 20);
Но на самом деле я хочу преобразовать шестнадцатеричное число в байтовый массив, а не в его строковое представление.
Мне нужно это, чтобы сохранить хэш git в умном контракте, где я использую bytes20 в качестве структуры данных.
Почему способ, которым я попробовал это выше, не работает и просто обрезает хеш после 20 цифр? И в чем отличие от преобразования в предлагаемом ответе здесь: Как я могу преобразовать шестнадцатеричную строку в байтовый массив?