Bitcoin Forum

Local => Кодеры => Topic started by: HoBzY on December 15, 2022, 03:01:35 PM



Title: 🤔Как Создается nBits в блоке?🤔
Post by: HoBzY on December 15, 2022, 03:01:35 PM
Как Создается nBits в блоке?
Я так понимаю значение nBits получаем из сложности?

https://www.blockchain.com/explorer/blocks/btc-testnet/2411364

из Difficulty:
86564599.52

в Bits:
422681968

Как это сделать?


Title: Re: 🤔Как Создается nBits в блоке?🤔
Post by: igor72 on December 16, 2022, 06:08:38 AM
Сложности 1 соответствуют биты 1D00FFFF (hex), что следует читать в данном случае как шестнадцатеричное число длиной 1D байт (29 в десятичной), начинающееся с 00FFFF, то есть 00FFFF0000000000000000000000000000000000000000000000000000. Если поделить это число на сложность из вашего примера, получится 319D7000000000000000000000000000000000000000000000, то есть число длиной в 25 байт (19 в hex), начинающееся на 319D70, или, по тому же принципу, 19319D70. 19319D70 в десятичной системе - это 422681968.


Title: Re: 🤔Как Создается nBits в блоке?🤔
Post by: HoBzY on December 16, 2022, 10:22:48 AM
Сложности 1 соответствуют биты 1D00FFFF (hex), что следует читать в данном случае как шестнадцатеричное число длиной 1D байт (29 в десятичной), начинающееся с 00FFFF, то есть 00FFFF0000000000000000000000000000000000000000000000000000. Если поделить это число на сложность из вашего примера, получится 319D7000000000000000000000000000000000000000000000, то есть число длиной в 25 байт (19 в hex), начинающееся на 319D70, или, по тому же принципу, 19319D70. 19319D70 в десятичной системе - это 422681968.

А 1D00FFFF постоянное?
И 1D00FFFF под основную сеть подходит?

Или как получить 1D00FFFF?


Title: Re: 🤔Как Создается nBits в блоке?🤔
Post by: igor72 on December 16, 2022, 10:26:15 AM

А 1D00FFFF постоянное?
И 1D00FFFF под основную сеть подходит?

Или как получить 1D00FFFF?

Постоянное, это сложность первых блоков (можете посмотреть). В основной сети то же самое.