котировка
8 - Добавление 4 байта контрольной суммы от точки 7 в конце расширенной RIPEMD-160 хэша от точки 4. Это 25-байтовый двоичный Биткойн Адрес.
00010966776006953D5567439E5E39F86A0D273BEED61967F6
9 - Преобразование результата из строки байт в строку base58, используя кодирование Base58Check. Это наиболее часто используемый формат Bitcoin адрес
16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM
00010966776006953D5567439E5E39F86A0D273BEED61967F6
9 - Преобразование результата из строки байт в строку base58, используя кодирование Base58Check. Это наиболее часто используемый формат Bitcoin адрес
16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM
Так давайте трещать на страницу кодирования base58check.
котировка
Берут версия / приложение байтов и байтов полезной нагрузки, и объединить их вместе (побайтно).
Возьмите первые четыре байта SHA256 (SHA256 (результаты шага 1))
Конкатенируйте результаты стадии 1 и результаты шага 2 вместе (побайтно).
Возьмите первые четыре байта SHA256 (SHA256 (результаты шага 1))
Конкатенируйте результаты стадии 1 и результаты шага 2 вместе (побайтно).
Таким образом, на данном этапе, мы имеем 0000010966776006953D5567439E5E39F86A0D273BEED61967F6xxxxxxxx
где ХХХХ четыре байта Ша Ша.
затем
котировка
Лечение результаты шага 3 - серия байт - как один большой-Endian bignumber, преобразовать в базу-58 с помощью обычных математических шагов (bignumber деления) и основания 58 алфавита, описанного ниже. Результат должен быть нормализованы, чтобы не иметь каких-либо ведущих базовых 58 нулей (символ «1»).
Ведущий символ «1», который имеет значение, равный нуль в base58, зарезервирован для представления всего ведущих нулевых байт, а когда он находится в положении ведущего, не имеет значения, как символ base58. Там может быть один или несколько ведущих «, когда это необходимо для представления одного или нескольких ведущих нулевых байт 1 в. Подсчитайте число ведущих нулевых байт, которые были результатом шага 3 (для старых адресов Bitcoin, всегда будет по крайней мере один для байта версии / приложения, для новых адресов, никогда не будет никакого). Каждый нарастающий нулевой байт должен быть представлен своим собственным символом «1» в конечном итоге.
Соединить 1 от шага 5 с результатами шаге 4. Это результат Base58Check.
Ведущий символ «1», который имеет значение, равный нуль в base58, зарезервирован для представления всего ведущих нулевых байт, а когда он находится в положении ведущего, не имеет значения, как символ base58. Там может быть один или несколько ведущих «, когда это необходимо для представления одного или нескольких ведущих нулевых байт 1 в. Подсчитайте число ведущих нулевых байт, которые были результатом шага 3 (для старых адресов Bitcoin, всегда будет по крайней мере один для байта версии / приложения, для новых адресов, никогда не будет никакого). Каждый нарастающий нулевой байт должен быть представлен своим собственным символом «1» в конечном итоге.
Соединить 1 от шага 5 с результатами шаге 4. Это результат Base58Check.
Таким образом, есть два ведущих нулевых байтов. Так что этот адрес начнется 11? Но адрес выше начинается 16. Таким образом, это не может быть правдой?
Тогда есть немного на странице под "Кодирование адреса Bitcoin" что говорит "Биткойн адрес является кодированием Base58Check из хэша соответствующего сценария." Сценарий? Материал на https://en.bitcoin.it/wiki/Technical_background_of_Bitcoin_addresses ничего не знает о сценариях не упоминается.
Может кто-нибудь прояснить это для меня? Я чувствую, что я так близко, но мне кажется, что есть разрыв понимания. Эти вики-страницы действительно нужны некоторые конкретизации, но последний раз, когда я пытался создать учетную запись, чтобы изменить другую страницу, там казалось, не было никакого способа, чтобы быть в состоянии.