Wpis z mikrobloga

Hej mam małe pytanie.
Mamy np. taką koparkę http://miner.ebang.com.cn/goods-15.html I ona liczy 44TH\s czyli 44 000 000 000 000 hash na sekundę.
I teraz weźmy np. taki blok - https://www.blockchain.com/pl/btc/block/00000000000000000020f5d0a7cb16e4946c9dbb7c62416ea292d6a10229c83c
gdzie nonce wynosi - 560 322 410.

O ile się nie mylę to kopanie polega na znalezieniu takiego nonce dla którego hash będzie miał odpowiednią ilość zer na początku (co zależy od trudności).
Czyli startujemy od nonce = 1, bierzemy blok transakcji dodajemy nonce i liczymy hash. Sprawdzamy, zwiększamy nonce i znowu liczymy hash… i tak aż do uzyskania hasha z odpowiednią ilością zer na początku, tak?

I właśnie tu mi się coś nie zgadza, bo nonce jest dużo mniejszy niż moc takiej jednej koparki, czyli powinien być wyliczony w mniej niż sekundę, a wiadomo, że tak nie jest.

Co pokręciłem?
#bitcoin #kryptowaluty
  • 13
@ufik78: To, że akurat taka wartość nonce była potrzebna nie oznacza, że koparka wykopie blok w mniej niż sekundę. Równie dobrze nonce = 1 mogłoby zwrócić odpowiednią sygnaturę. Górnik przed rozpoczęciem mieszania sygnatur musi stworzyć drzewo skrótów z transakcji, z czego do sygnatury wejdzie jego korzeń. Zmiana transakcji (kolejności również) w bloku powoduje zmianę korzenia w nagłówku i można mieszać od nowa, bo sygnatury będą już zupełnie inne. Ponadto nonce jest
@melezdev: dobra czytam Twój komentarz 10 raz i dalej nie rozumiem. Do SHA-256 trafia:
Root Hash + Previous Hash + Nonce + TimeStamp. Z czego tylko nonce się zmienia, bo root hash i timestamp zmienia się co ~10min… prawda?
Czy mam rozumieć przez to, że stworzenie drzewa skrótów z transakcji jest tak czasochłonne?
@ufik78: timestamp i root hash się mogą zmieniać cały czas, previous hash się raczej nie zmienia, dopóki ktoś nie wygra loterii.

People are correct you don't have to change the Nonce it's just the fastest way to get a different hash output. You could very well keep the nonce at 1 and change the timestamp, or the list of included transactions, which would change the merkelroot.

https://bitcoin.stackexchange.com/questions/41949/what-is-the-precise-nonce-finding-protocol
Z czego tylko nonce się zmienia

@ufik78: możesz wyczerpać całą pulę nonce i nie znaleźć rozwiązania. Wtedy musisz zmienić np. kolejność transakcji w bloku lub wybrać inne transkacje do bloku i znowu testować

Czy mam rozumieć przez to, że stworzenie drzewa skrótów z transakcji jest tak czasochłonne?


@ufik78: Nie jest czasochłonne. Zmienia się przy jakiejkolwiek zmianie w bloku, ale dla nowego znów zaczyna liczyć od nowa. Tyle że to i tak nic nie zmienia bo prawdopodobieństwo zostaje takie samo