Bitcoin Forum
November 15, 2019, 12:26:44 PM *
News: 10th anniversary art contest
 
   Home   Help Search Login Register More  
Pages: « 1 [2]  All
  Print  
Author Topic: Материал по блокчейну, подскажите  (Read 308 times)
kzv
Legendary
*
Online Online

Activity: 1414
Merit: 1032


View Profile WWW
April 23, 2019, 07:09:02 PM
 #21

получается мы ищем хеш с нулями в начале, потом переводим хеш в 265-бит, и проверяем, чтобы он был меньше таргет, тогда хеш валиден?  Lips sealed


Хэш это 256 битное число
Таргет это 256 битное число

Если найденный хэш меньше или равен таргету, значит зашибись!

1573820804
Hero Member
*
Offline Offline

Posts: 1573820804

View Profile Personal Message (Offline)

Ignore
1573820804
Reply with quote  #2

1573820804
Report to moderator
1573820804
Hero Member
*
Offline Offline

Posts: 1573820804

View Profile Personal Message (Offline)

Ignore
1573820804
Reply with quote  #2

1573820804
Report to moderator
The Bitcoin Forum is turning 10 years old! Join the community in sharing and exploring the notable posts made over the years.
1573820804
Hero Member
*
Offline Offline

Posts: 1573820804

View Profile Personal Message (Offline)

Ignore
1573820804
Reply with quote  #2

1573820804
Report to moderator
lapitsky
Member
**
Offline Offline

Activity: 202
Merit: 11

Atom foundation


View Profile
April 23, 2019, 09:00:26 PM
 #22

получается мы ищем хеш с нулями в начале, потом переводим хеш в 265-бит, и проверяем, чтобы он был меньше таргет, тогда хеш валиден?  Lips sealed


Хэш это 256 битное число
Таргет это 256 битное число

Если найденный хэш меньше или равен таргету, значит зашибись!

значит нули вообще не причем? то есть любой хешь, ниже таргета?

⚡⚡⚡
Atom - пишу свою крипту, присоединяйся в ополчение - https://bitcointalk.org/index.php?topic=3428149.0
⚡⚡⚡
A-Bolt
Legendary
*
Online Online

Activity: 1384
Merit: 1295

CryptoTalk.Org - Get Paid for every Post!


View Profile
April 23, 2019, 09:32:32 PM
 #23

то есть любой хешь, ниже таргета?

Верно.

Quote
значит нули вообще не причем?

Утверждение "мы ищем хеш с нулями в начале" не противоречит утверждению "любой хеш ниже таргета", а является следствием из него. Если a< b, то количество значащих цифр числа a меньше либо равно количеству значащих цифр числа b.

Впрочем, если вас сбивают с толку эти нули - не обращайте на них внимания.

 
                                . ██████████.
                              .████████████████.
                           .██████████████████████.
                        -█████████████████████████████
                     .██████████████████████████████████.
                  -█████████████████████████████████████████
               -███████████████████████████████████████████████
           .-█████████████████████████████████████████████████████.
        .████████████████████████████████████████████████████████████
       .██████████████████████████████████████████████████████████████.
       .██████████████████████████████████████████████████████████████.
       ..████████████████████████████████████████████████████████████..
       .   .██████████████████████████████████████████████████████.
       .      .████████████████████████████████████████████████.

       .       .██████████████████████████████████████████████
       .    ██████████████████████████████████████████████████████
       .█████████████████████████████████████████████████████████████.
        .███████████████████████████████████████████████████████████
           .█████████████████████████████████████████████████████
              .████████████████████████████████████████████████
                   ████████████████████████████████████████
                      ██████████████████████████████████
                          ██████████████████████████
                             ████████████████████
                               ████████████████
                                   █████████
.CryptoTalk.org.|.MAKE POSTS AND EARN BTC!.🏆
lapitsky
Member
**
Offline Offline

Activity: 202
Merit: 11

Atom foundation


View Profile
April 23, 2019, 10:02:20 PM
 #24

Утверждение "мы ищем хеш с нулями в начале" не противоречит утверждению "любой хеш ниже таргета", а является следствием из него. Если a< b, то количество значащих цифр числа a меньше либо равно количеству значащих цифр числа b.

Впрочем, если вас сбивают с толку эти нули - не обращайте на них внимания.

приведу пример в двоичной системе, как я это вижу:

есть число таргет (a) = 99
мы находим число 1 (b) и удовлетворяем формулу a<b
тогда первое попавшееся число удовлетворяет, формулу.

мне кажется я просто не до дупляю что-то с 256 битной системе  Undecided


⚡⚡⚡
Atom - пишу свою крипту, присоединяйся в ополчение - https://bitcointalk.org/index.php?topic=3428149.0
⚡⚡⚡
A-Bolt
Legendary
*
Online Online

Activity: 1384
Merit: 1295

CryptoTalk.Org - Get Paid for every Post!


View Profile
April 23, 2019, 10:28:14 PM
 #25

есть число таргет (a) = 99
мы находим число 1 (b) и удовлетворяем формулу a<b
тогда первое попавшееся число удовлетворяет, формулу.

Так "находим" или "первое попавшееся"? Это разные вещи.
Слово "находим" предполагает некоторую последовательность действий.

Quote
мне кажется я просто не до дупляю что-то с 256 битной системе

Арифметические операции над 256-битными числами выполняются точно так же, как и над 8-битными.

Вам, может, лучше сначала книжку про Bitcoin прочитать. На русском языке. Там есть разные разделы: Ключи, Транзакции, Блокчейн - выбирайте любой.

А то вопросы вы уж совсем какие-то непонятные задаёте.

 
                                . ██████████.
                              .████████████████.
                           .██████████████████████.
                        -█████████████████████████████
                     .██████████████████████████████████.
                  -█████████████████████████████████████████
               -███████████████████████████████████████████████
           .-█████████████████████████████████████████████████████.
        .████████████████████████████████████████████████████████████
       .██████████████████████████████████████████████████████████████.
       .██████████████████████████████████████████████████████████████.
       ..████████████████████████████████████████████████████████████..
       .   .██████████████████████████████████████████████████████.
       .      .████████████████████████████████████████████████.

       .       .██████████████████████████████████████████████
       .    ██████████████████████████████████████████████████████
       .█████████████████████████████████████████████████████████████.
        .███████████████████████████████████████████████████████████
           .█████████████████████████████████████████████████████
              .████████████████████████████████████████████████
                   ████████████████████████████████████████
                      ██████████████████████████████████
                          ██████████████████████████
                             ████████████████████
                               ████████████████
                                   █████████
.CryptoTalk.org.|.MAKE POSTS AND EARN BTC!.🏆
lapitsky
Member
**
Offline Offline

Activity: 202
Merit: 11

Atom foundation


View Profile
April 24, 2019, 08:41:51 PM
 #26

Так "находим" или "первое попавшееся"? Это разные вещи.
Слово "находим" предполагает некоторую последовательность действий.
https://github.com/neiros/---TTC--TDC---/blob/TDC/src/miner.cpp#L779
просто в коде не нашел сравнение по количеству нулей в начале, вижу только if (thash <= hashTarget)

Вам, может, лучше сначала книжку про Bitcoin прочитать. На русском языке. Там есть разные разделы: Ключи, Транзакции, Блокчейн - выбирайте любой.

спасибо, почитаю, что-то новое обязательно найду. принцип работы nonce я понимаю, хочется понять под капотом

⚡⚡⚡
Atom - пишу свою крипту, присоединяйся в ополчение - https://bitcointalk.org/index.php?topic=3428149.0
⚡⚡⚡
A-Bolt
Legendary
*
Online Online

Activity: 1384
Merit: 1295

CryptoTalk.Org - Get Paid for every Post!


View Profile
April 24, 2019, 09:03:36 PM
 #27

просто в коде не нашел сравнение по количеству нулей в начале, вижу только if (thash <= hashTarget)

Ну, всё правильно. Выполняется сравнение двух чисел, и по результату сравнения принимается решение: итерировать ли дальше nonce или мы таки нашли хеш заголовка блока, подходящий под текущий target.

И чего вы к этим нулям прицепились? С чего вы, вообще, взяли что происходит сравнение по количеству нулей?

 
                                . ██████████.
                              .████████████████.
                           .██████████████████████.
                        -█████████████████████████████
                     .██████████████████████████████████.
                  -█████████████████████████████████████████
               -███████████████████████████████████████████████
           .-█████████████████████████████████████████████████████.
        .████████████████████████████████████████████████████████████
       .██████████████████████████████████████████████████████████████.
       .██████████████████████████████████████████████████████████████.
       ..████████████████████████████████████████████████████████████..
       .   .██████████████████████████████████████████████████████.
       .      .████████████████████████████████████████████████.

       .       .██████████████████████████████████████████████
       .    ██████████████████████████████████████████████████████
       .█████████████████████████████████████████████████████████████.
        .███████████████████████████████████████████████████████████
           .█████████████████████████████████████████████████████
              .████████████████████████████████████████████████
                   ████████████████████████████████████████
                      ██████████████████████████████████
                          ██████████████████████████
                             ████████████████████
                               ████████████████
                                   █████████
.CryptoTalk.org.|.MAKE POSTS AND EARN BTC!.🏆
lapitsky
Member
**
Offline Offline

Activity: 202
Merit: 11

Atom foundation


View Profile
April 24, 2019, 09:08:21 PM
 #28

просто в коде не нашел сравнение по количеству нулей в начале, вижу только if (thash <= hashTarget)

Ну, всё правильно. Выполняется сравнение двух чисел, и по результату сравнения принимается решение: итерировать ли дальше nonce или мы таки нашли хеш заголовка блока, подходящий под текущий target.

И чего вы к этим нулям прицепились? С чего вы, вообще, взяли что происходит сравнение по количеству нулей?

почему каждый хеш блока, который нашел нужный nonce, выглдят так:
0000000000000000002a3efa7588628ea72576cd1fc7384c2ed4ca9e26d77040
или
00000000000000000016ea0bd16532a3d726a01b60dcf34d0756c5140c76a007

то есть всегда в начале нули? получается ближайшее значение к таргет, это значение с нулями?

⚡⚡⚡
Atom - пишу свою крипту, присоединяйся в ополчение - https://bitcointalk.org/index.php?topic=3428149.0
⚡⚡⚡
kzv
Legendary
*
Online Online

Activity: 1414
Merit: 1032


View Profile WWW
April 24, 2019, 09:17:14 PM
Merited by lapitsky (1)
 #29

просто в коде не нашел сравнение по количеству нулей в начале, вижу только if (thash <= hashTarget)

Ну, всё правильно. Выполняется сравнение двух чисел, и по результату сравнения принимается решение: итерировать ли дальше nonce или мы таки нашли хеш заголовка блока, подходящий под текущий target.

И чего вы к этим нулям прицепились? С чего вы, вообще, взяли что происходит сравнение по количеству нулей?

почему каждый хеш блока, который нашел нужный nonce, выглдят так:
0000000000000000002a3efa7588628ea72576cd1fc7384c2ed4ca9e26d77040
или
00000000000000000016ea0bd16532a3d726a01b60dcf34d0756c5140c76a007

то есть всегда в начале нули? получается ближайшее значение к таргет, это значение с нулями?

Ну вроде во втором классе средней школы проходят.
1 = 01 = 001 = 0001 = 00000...000001
2 = 02 = 002 = 0002 = 00000...000002

0000000000000000002a3efa7588628ea72576cd1fc7384c2ed4ca9e26d77040 = 2a3efa7588628ea72576cd1fc7384c2ed4ca9e26d77040
00000000000000000016ea0bd16532a3d726a01b60dcf34d0756c5140c76a007 = 16ea0bd16532a3d726a01b60dcf34d0756c5140c76a007

ВНЕЗАПНО:

1 < 2
0001 < 0002

16ea0bd16532a3d726a01b60dcf34d0756c5140c76a007 < 2a3efa7588628ea72576cd1fc7384c2ed4ca9e26d77040
00000000000000000016ea0bd16532a3d726a01b60dcf34d0756c5140c76a007 < 0000000000000000002a3efa7588628ea72576cd1fc7384c2ed4ca9e26d77040


A-Bolt
Legendary
*
Online Online

Activity: 1384
Merit: 1295

CryptoTalk.Org - Get Paid for every Post!


View Profile
April 24, 2019, 10:07:03 PM
Merited by chimk (5), Coin-1 (1), lapitsky (1)
 #30

то есть всегда в начале нули? получается ближайшее значение к таргет, это значение с нулями?

Когда майнился самый первый блок Bitcoin, его сложность была равна 1.
Этой сложности соответствует:
Code:
target = 00000000ffff0000000000000000000000000000000000000000000000000000
 

00000000ffff0000000000000000000000000000000000000000000000000000 - это константа, это - максимально возможный target, его нельзя превысить, то есть, хеш блока всегда будет меньше либо равен этому числу.

target - 256-битное число. Числа фиксированной длины принято отображать с нулями перед значащими цифрами. Так принято для наглядности. То есть, у хеша любого блока будет минимум 8 нулей спереди (при отображении в шестнадцатеричном виде!).

При пересчёте сложности target может уменьшаться. Понятно, что при его уменьшении, нулей спереди станет больше. Значит, и у хеша блока число нулей спереди увеличится, он ведь должен быть меньше или равен target.

 
                                . ██████████.
                              .████████████████.
                           .██████████████████████.
                        -█████████████████████████████
                     .██████████████████████████████████.
                  -█████████████████████████████████████████
               -███████████████████████████████████████████████
           .-█████████████████████████████████████████████████████.
        .████████████████████████████████████████████████████████████
       .██████████████████████████████████████████████████████████████.
       .██████████████████████████████████████████████████████████████.
       ..████████████████████████████████████████████████████████████..
       .   .██████████████████████████████████████████████████████.
       .      .████████████████████████████████████████████████.

       .       .██████████████████████████████████████████████
       .    ██████████████████████████████████████████████████████
       .█████████████████████████████████████████████████████████████.
        .███████████████████████████████████████████████████████████
           .█████████████████████████████████████████████████████
              .████████████████████████████████████████████████
                   ████████████████████████████████████████
                      ██████████████████████████████████
                          ██████████████████████████
                             ████████████████████
                               ████████████████
                                   █████████
.CryptoTalk.org.|.MAKE POSTS AND EARN BTC!.🏆
lapitsky
Member
**
Offline Offline

Activity: 202
Merit: 11

Atom foundation


View Profile
April 25, 2019, 05:46:36 PM
 #31

Ну вроде во втором классе средней школы проходят.
1 = 01 = 001 = 0001 = 00000...000001
2 = 02 = 002 = 0002 = 00000...000002

0000000000000000002a3efa7588628ea72576cd1fc7384c2ed4ca9e26d77040 = 2a3efa7588628ea72576cd1fc7384c2ed4ca9e26d77040
00000000000000000016ea0bd16532a3d726a01b60dcf34d0756c5140c76a007 = 16ea0bd16532a3d726a01b60dcf34d0756c5140c76a007

ВНЕЗАПНО:

1 < 2
0001 < 0002


допер  Grin


00000000ffff0000000000000000000000000000000000000000000000000000 - это константа, это - максимально возможный target, его нельзя превысить, то есть, хеш блока всегда будет меньше либо равен этому числу.

target - 256-битное число. Числа фиксированной длины принято отображать с нулями перед значащими цифрами. Так принято для наглядности. То есть, у хеша любого блока будет минимум 8 нулей спереди (при отображении в шестнадцатеричном виде!).

При пересчёте сложности target может уменьшаться. Понятно, что при его уменьшении, нулей спереди станет больше. Значит, и у хеша блока число нулей спереди увеличится, он ведь должен быть меньше или равен target.

получается, что нули спереди, это не результат перебора nonce, а просто потому что мы 16-ю систему перевели в 256 и в начале автоматом выставились нули?

то есть смысл nonce, просто перебирать числа, чтобы наше число оказалось меньше числа таргет и чем меньше таргет, тем  соответственно больше в начале нулей, так как отображение 256 бит!

бомба, когда понимаешь, так просто кажется, в начале дебри были какие-то  Grin

⚡⚡⚡
Atom - пишу свою крипту, присоединяйся в ополчение - https://bitcointalk.org/index.php?topic=3428149.0
⚡⚡⚡
A-Bolt
Legendary
*
Online Online

Activity: 1384
Merit: 1295

CryptoTalk.Org - Get Paid for every Post!


View Profile
April 25, 2019, 07:25:28 PM
 #32

получается, что нули спереди, это не результат перебора nonce,

Нужно подобрать такой nonce, чтобы хеш заголовка блока был меньше либо равен target. Если, к примеру, target имеет 10 нулей спереди, то и хеш заголовка блока должен иметь 10 или более нулей спереди. Поэтому нули спереди в результирующем хеше - это именно результат перебора nonce.

Quote
а просто потому что мы 16-ю систему перевели в 256 и в начале автоматом выставились нули?

Ничего никуда не перевели. Вы путаете основание системы счисления (16) и разрядность (256), что странно, для человека, изучающего программирование.

Quote
то есть смысл nonce, просто перебирать числа, чтобы наше число оказалось меньше числа таргет и чем меньше таргет, тем  соответственно больше в начале нулей, так как отображение 256 бит!

Как-то так. Но фраза про 256 бит была лишней, так как это справедливо для любой разрядности. Число 0099 меньше числа 9999, поэтому у числа 0099 больше нулей спереди, чем у числа 9999.

 
                                . ██████████.
                              .████████████████.
                           .██████████████████████.
                        -█████████████████████████████
                     .██████████████████████████████████.
                  -█████████████████████████████████████████
               -███████████████████████████████████████████████
           .-█████████████████████████████████████████████████████.
        .████████████████████████████████████████████████████████████
       .██████████████████████████████████████████████████████████████.
       .██████████████████████████████████████████████████████████████.
       ..████████████████████████████████████████████████████████████..
       .   .██████████████████████████████████████████████████████.
       .      .████████████████████████████████████████████████.

       .       .██████████████████████████████████████████████
       .    ██████████████████████████████████████████████████████
       .█████████████████████████████████████████████████████████████.
        .███████████████████████████████████████████████████████████
           .█████████████████████████████████████████████████████
              .████████████████████████████████████████████████
                   ████████████████████████████████████████
                      ██████████████████████████████████
                          ██████████████████████████
                             ████████████████████
                               ████████████████
                                   █████████
.CryptoTalk.org.|.MAKE POSTS AND EARN BTC!.🏆
Pages: « 1 [2]  All
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!