Co to jest Transaction Size?
Transaction Size to ilość danych zajmowanych przez twoją transakcję kryptowalutową, zwykle mierzona w bajtach lub wirtualnych bajtach. Więcej danych oznacza więcej do przechowywania i przesyłania w sieci. Pomyśl o tym jak o wysłaniu e-maila z jednym emoji w porównaniu z całym albumem zdjęć.
„Jeśli wyślę większą ilość kryptowaluty, mój Transaction Size będzie większy.” Nieprawda. Rozmiar zależy od liczby wejść, wyjść i podpisów w transakcji, a nie od kwoty monet.
Jak działa Transaction Size
Krótka prezentacja na przykładzie wysyłki w Bitcoinie.
- Krok 1: Twój portfel wybiera wejścia, czyli wcześniejsze monety, które otrzymałeś. Więcej wejść zwykle oznacza więcej bajtów.
- Krok 2: Tworzy wyjścia dla odbiorcy oraz zazwyczaj wyjście z resztą z powrotem do ciebie. Każde wyjście dodaje trochę danych.
- Krok 3: Dodawane są podpisy i skrypty. Zaawansowane funkcje, takie jak transakcje wielopodpisowe, zwiększają liczbę bajtów, ponieważ więcej kluczy musi się podpisać.
- Krok 4: Portfel szacuje koszt, mnożąc rozmiar przez aktualną stawkę opłat. W tym miejscu pojawiają się opłaty transakcyjne.
- Krok 5: Górnicy preferują wyższą opłatę za bajt, więc mniejszy Transaction Size może pomóc w szybszym potwierdzeniu przy tej samej łącznej opłacie.
Proste, prawda? Mniej danych, łatwiejsze przejście.
Dlaczego Transaction Size ma znaczenie
Ponieważ zależy ci na czasie i koszcie, a górnicy zwracają na to uwagę.
- Korzyść: Mniejszy Transaction Size często oznacza niższe opłaty przy zachowaniu tego samego czasu potwierdzenia.
- Perspektywa: Podczas przeciążenia sieci rynki opłat rosną, a rozdmuchane transakcje robią się droższe do przetłoczenia.
- Znaczenie: Ma to związek ze skalowalnością, ponieważ umieszczanie większej liczby transakcji w blokach poprawia ogólną przepustowość.
Używaj adresów i portfeli obsługujących Segregated Witness (SegWit). Redukuje to część danych najbardziej wpływających na koszt, więc twój Transaction Size w wirtualnych bajtach spada.
Kluczowe cechy Transaction Size
Co na niego wpływa:
- Wejścia: Więcej wejść dodaje podpisy i skrypty, co zwiększa liczbę bajtów.
- Wyjścia: Dodatkowi odbiorcy i wyjścia z resztą zwiększają rozmiar, choć zwykle mniej niż wejścia.
- Skrypty: Złożone skrypty lub warunki wydawania dodają danych, które trzeba uwzględnić.
- Witness: W przypadku SegWit część danych jest dyskontowana przy obliczaniu wirtualnych bajtów.
- Reużycie: Konsolidacja drobnych monet przy niskich opłatach może zmniejszyć przyszły Transaction Size.
Jak oblicza się Transaction Size?
W Bitcoinie dane są serializowane do bajtów. Przy SegWit rozmiar często podawany jest jako waga i wirtualne bajty.
- Waga: liczba bajtów nie będących częścią witness razy 4 plus bajty witness.
- Wirtualne bajty: vbytes to waga podzielona przez 4, zaokrąglona w górę.
Przykład: jeśli część niebędąca witness to 180 bajtów, a witness to 100 bajtów, waga to 180 razy 4 plus 100, czyli 820, a vbytes to 820 podzielone przez 4, czyli 205.
Warianty
Różne sposoby odniesienia do rozmiaru:
- Bajty: Surowa długość serializowana bez rabatów.
- Vbytes: Wirtualne bajty używane przez rynki opłat po rabacie SegWit.
- Waga: Wewnętrzna miara, która inaczej liczy część witness i część niebędącą witness.
Ilość bitcoina, którą wysyłasz, nie zmienia Transaction Size. Zmienia to struktura transakcji.
Przykład
Wysłanie do jednego znajomego z jednym wejściem i jednym wyjściem może zajmować kilkaset wirtualnych bajtów, podczas gdy użycie pięciu małych wejść może znacznie zwiększyć Transaction Size i podnieść opłatę.
Ciekawostka
SegWit wprowadził pojęcie wagi i wirtualnych bajtów, dzięki czemu więcej transakcji mieści się w bloku bez zmiany starej legendy o jednym megabajcie, co jest przykładem sprytnego rozwiązania w historii kryptowalut.
Podsumowanie
Traktuj Transaction Size jako miarę kosztów. Ograniczaj go, gdy możesz, a twoje przyszłe opłaty będą mniejsze.
