126 / 736WU

Block Weight

Waga bloku

Dlaczego wszystkie oczekujące płatności nie mieszczą się w jednym bloku i dlaczego pełne bloki mogą mieć różną liczbę bajtów. Waga ogranicza ilość danych przyjmowanych przez sieć jako jeden blok.

Block Weight określa, jak Bitcoin mierzy wykorzystaną pojemność bloku, czyli grupy transakcji dopisywanej do wspólnej historii. Poszczególne części danych liczą się inaczej. Waga ma stały górny limit; nie wyznacza liczby płatności ani wartości przesyłanych bitcoinów.

Transaction Fees: rozmiar i opłataOszacuj wirtualny rozmiar transakcji, opłatę według własnej stawki i jej orientacyjną wartość w wybranej walucie.

Anna wysyła Bitcoin, ale następny blok nie zawiera jej płatności. Samo to nie oznacza utraty pieniędzy. Niepotwierdzona transakcja może czekać w Mempool — lokalnej kolejce danego węzła. Węzeł to program, który sprawdza transakcje i bloki oraz wymienia dane z innymi uczestnikami sieci. Górnik wybiera transakcje do bloku o ograniczonej pojemności i może też utworzyć mniejszy blok. Opłaty są zachętą, a nie poleceniem uwzględnienia konkretnej płatności. Block Weight wyjaśnia jedno ograniczenie tego wyboru, nie wszystkie przyczyny oczekiwania. [1] [7]

Górny limit wynosi 4 000 000 WU, z uwzględnieniem tej dokładnej wartości. WU oznacza jednostkę wagi. Full Node, węzeł samodzielnie sprawdzający reguły Bitcoin, odrzuci blok powyżej limitu. Nie uratują go wysokie opłaty ani poprawny Proof of Work — obliczeniowy dowód pracy wymagany przy wydobyciu. Trzeba zarówno znaleźć ten dowód, jak i zbudować prawidłowy blok. Sama wola górnika nie ustala więc pojemności. [1] [3] [4]

Bajt jest standardową jednostką ilości danych. SegWit oddzielił część danych potwierdzających prawo do wydania monet, w tym podpisy. Nazywa się je witness. Bajt danych podstawowych wnosi 4 WU, a dodatkowy bajt pełnego zapisu z witness — 1 WU. Do drugiej grupy należą także pomocnicze pola marker i flag. Pozwala to zachować podstawową strukturę transakcji i zapewnić miejsce na dane weryfikacyjne bez jednakowego liczenia wszystkich bajtów. [1] [2]

Podpis potwierdza prawo nadawcy do wydania określonych monet. Warunki wydania opisuje krótki program zwany skryptem. Mniejszy udział witness w wadze nie pozwala węzłowi pominąć wymaganych podpisów czy warunków skryptu. Dane nadal znajdują się w pełnym zapisie. To zasada rozliczania pojemności, a nie twierdzenie, że praca procesora, transmisja i zapotrzebowanie na miejsce maleją w tej samej proporcji. [1] [4]

Serializacja to zapis bloku w postaci dokładnej sekwencji bajtów wymienianych przez komputery. Oznaczmy rozmiar bez witness jako B, a pełny rozmiar jako T. BIP 141 używa W = 3 × B + T. Dane podstawowe są już zawarte w T, więc łącznie liczą się czterokrotnie. Dane dodane przez zapis witness liczą się raz. Wzór dotyczy całego bloku, nie tylko zwykłych płatności. [1] [8]

Przyjmijmy B = 500000 i T = 2500000 bajtów. Wynik to W = 4000000 WU. Inny skład danych może dać B = 750000 i T = 1750000 bajtów, a ponownie W = 4000000 WU. To przykłady obliczeń, nie pomiary bloków. Oba wykorzystują taką samą wagę, lecz drugi wymaga przesłania mniejszej liczby bajtów. Zdanie „pełny blok zawsze ma 4 MB” jest więc błędne. Liczba transakcji w pełnym bloku też nie jest stała. [1]

Blok nie jest wyłącznie zbiorem płatności. Ma nagłówek o rozmiarze 80 bajtów, zawierający między innymi odniesienie do poprzedniego bloku i podsumowanie transakcji. Następnie zapisana jest ich liczba, zakodowana za pomocą CompactSize — kodowania liczb całkowitych o zmiennej długości. Pierwsza jest Coinbase Transaction, specjalna transakcja nagrody dla górnika; nazwa nie oznacza tu giełdy. Wszystkie te części wchodzą do obliczenia. Suma wag pozostałych transakcji nie jest jeszcze wagą całego bloku. [5] [7] [8]

Portfel to aplikacja lub urządzenie do odbierania i wysyłania bitcoinów. Zwykle posługuje się wirtualnym rozmiarem transakcji w jednostkach vByte. To waga całej transakcji podzielona przez 4 i zaokrąglona w górę. Pomaga porównywać opłaty za zajętą pojemność. Suma takich zaokrąglonych rozmiarów nie daje dokładnej wagi bloku: jednostka jest inna, zaokrąglenia są osobne, a struktura bloku została pominięta. Duża kwota nie musi oznaczać dużej ilości danych. [1] [8]

Waga nie opisuje całej pracy węzła. Odpowiednie reguły przewidują również limit 80 000 ważonych jednostek kosztu operacji weryfikacji podpisów. Nie jest to prosta liczba wszystkich podpisów w bloku. Tapscript, język skryptów wprowadzony wraz z Taproot, ma osobny budżet dla każdego wejścia, czyli części transakcji wydającej wcześniej otrzymane monety; jego operacje podpisu nie wchodzą do tego starszego limitu obejmującego blok. BIP 342 opisuje inne ograniczenie. Zgodność z limitem wagi nie pozwala więc na dowolnie kosztowną weryfikację. [1] [3] [9]

Eksplorator bloków to aplikacja do wyszukiwania transakcji i bloków w danej sieci. W Bitcoin Core v29.0 polecenie getblock zwraca między innymi size, strippedsize i weight: pełny rozmiar w bajtach, rozmiar bez witness i wagę. Można też zobaczyć chainwork. To skumulowana praca obliczeniowa łańcucha, a nie jego waga danych. Na co dzień warto rozróżniać pojemność i cenę: Block Weight ogranicza miejsce w bloku, a opłata płatności zależy od rozmiaru transakcji i wybranej stawki. Żadna z tych liczb sama nie obiecuje czasu potwierdzenia. [6]

Pełniejszy obraz uzyskasz, czytając to hasło razem z vByte, Witness Data, SegWit, Wojna o rozmiar bloków, Bitcoin, Full Node. Do tego hasła prowadzą również odsyłacze z Signet, vByte, Witness Data, Ordinals Inscriptions.

DOC · 001BIP 141 — Segregated WitnessSpecyfikacja DOC · 002BIP 144 — SegWit peer servicesSpecyfikacja DOC · 003Bitcoin Core v29.0 — consensus limitsDokumentacja DOC · 004Bitcoin Core v29.0 — validationDokumentacja DOC · 005Bitcoin Developer Reference — Block chainDokumentacja DOC · 006Bitcoin Core — getblock RPCDokumentacja DOC · 007Bitcoin Core v29.0 — Block assemblyDokumentacja DOC · 008Bitcoin Core v29.0 — Block and transaction weightDokumentacja DOC · 009BIP 342 — Validation of Taproot ScriptsSpecyfikacja
Zaktualizowano: Najpierw źródła · To nie jest porada inwestycyjna