UTXO: Zrozumienie niewydanych danych wyjściowych transakcji

UTXO: Zrozumienie niewydanych danych wyjściowych transakcji

Marcin Woźniak 24 września, 2023
5 min czytania

Jeśli jesteś w tej przestrzeni wystarczająco długo, najprawdopodobniej słyszałeś o terminie UTXO, który jest skrótem od “Unspent Transaction Output” i prawdopodobnie zastanawiasz się, co to do cholery jest i co ma wspólnego z Bitcoinem?

W tym artykule postaramy się to wyjaśnić, abyś mógł mieć podstawową wiedzę na temat UTXO i ich działania

Co to jest wyjście niewydanej transakcji (UTXO)?

Niewydane transakcje wyjściowe, w skrócie UTXO, są podstawowym elementem modelu transakcyjnego Bitcoina. Mówiąc prościej. UTXO reprezentują ilość Bitcoinów posiadanych przez użytkownika, nie jako saldo, ale jako dane wyjściowe z poprzednich transakcji, które nie zostały wydane.

Kiedy użytkownik decyduje się na nową transakcję, bierze jeden lub łączy więcej niż jeden UTXO (do tego dojdziemy później) i odnosi się do tych niewydanych danych wyjściowych jako danych wejściowych w transakcji, “wydając” je w tym procesie.

Wszystkie istniejące UTXO w danym momencie nazywane są zestawem UTXO.

Zestaw UTXO jest jak duży cyfrowy słoik zawierający wszystkie niewydane monety (lub UTXO) każdego użytkownika Bitcoin. Jest to zapis wszystkich monet, które nie zostały jeszcze wykorzystane. Jeśli chcesz wiedzieć, ile Bitcoinów posiadasz ty lub ktokolwiek inny, możesz zajrzeć do tego słoika i policzyć monety powiązane z danym adresem. Węzły Bitcoin śledzą zestaw, aby określić, ile monet istnieje i kto może je wydać. Ma to kluczowe znaczenie dla zapobiegania problemowi podwójnego wydawania.

Ten model UTXO zapewnia bezpieczeństwo transakcji, przejrzystość i integralność w zdecentralizowanej sieci Bitcoin.

Jak tworzone są UTXO?

Każda transakcja Bitcoin składa się z danych wejściowych i wyjściowych.

Aby utworzyć wejście, transakcja musi zużyć istniejące UTXO, tworząc nowe UTXO i tak dalej.

Możesz zapytać: “Ale jeśli stare UTXO muszą zostać zniszczone, aby stworzyć nowe UTXO, to w jaki sposób UTXO są w ogóle tworzone?”

Transakcja Coinbase

Transakcja Coinbase jest pierwszą transakcją w każdym bloku.

Średnio co około 10 minut tworzony jest nowy blok. Każdy nowy blok składa się ze świeżo wydobytych bitcoinów, co nazywane jest dotacją blokową. Obecnie nagrody blokowe wynoszą 6,25 BTC skumulowanych opłat za wszystkie transakcje w bloku.

Transakcja coinbase jest jedyną transakcją, która jest ważna bez wejścia i może tworzyć nowe, jedno lub więcej wyjść, co oznacza, że NIE wymaga wydania Bitcoinów z poprzedniej transakcji.

W ten sposób tworzone są nowe UTXO.

Jak działa UTXO? Wejścia, wyjścia i ich relacje.

Podaj przykład, używając złota.

Wyobraź sobie, że otrzymujesz złotą monetę o wadze 10 uncji, ale chcesz kupić samochód, który kosztuje 3 uncje złota.

To, co musisz zrobić, to stopić otrzymaną początkowo złotą monetę o wadze 10 uncji i zrobić z niej dwie monety. Jedną monetę o wadze 7 uncji i jedną o wadze 3 uncji. Następnie zapłacisz za samochód monetą o wadze 3 uncji, a monetę o wadze 7 uncji zatrzymasz dla siebie.

Bitcoin jest podobny. Jeśli ktoś prześle ci 10 BTC do portfela, otrzymasz jedną niewydaną transakcję wyjściową (UTXO) o wartości 10 BTC.

Powiedzmy, że chcesz kupić samochód o wartości 3 BTC.

Musisz “rozbić” UTXO o wartości 10 BTC i wydać tylko jego część. Sposobem, w jaki to robisz, jest umieszczenie go w transakcji jako Input . Dzięki transakcji możesz podzielić te 10 BTC w dowolny sposób i wysłać je na dowolną liczbę różnych adresów.

W tym miejscu pojawia się koncepcja “zmiany”.

Aby wydać 3 BTC na samochód, bierzesz 10 BTC jako dane wejściowe do transakcji i wykonujesz 2 wyjścia; jeden jako płatność (3 BTC), a drugi (7 BTC) jako zmianę z powrotem na jeden z własnych adresów.

Oto przykład tego, jak wyglądałaby transakcja.

Uwaga: Dla uproszczenia nie będziemy uwzględniać opłat transakcyjnych dla sieci

one-input

Bitcoiny Boba znajdujące się na jednym z jego adresów zostały podzielone na dwie części. Adres dealera samochodowego otrzymał 3 Bitcoiny, a Bob otrzymał z powrotem 7 Bitcoinów.

Spójrzmy na jeszcze jeden przykład:

Wyobraźmy sobie, że trzech twoich znajomych (nazwiemy ich John, Dan i Alice) postanowiło wysłać ci trochę Bitcoinów

John wysyła Ci 0,2 BTC

Dan wysyła Ci 0,5 BTC

Alice wysyła Ci 0,01 BTC

W swoim portfelu zobaczysz, że masz łączną sumę 0,71 BTC, ale w rzeczywistości masz 3 różne niewydane wyjścia transakcji (UTXO)

UTXO1 : 0,2 BTC

UTXO2: 0,5 BTC

UTXO3 : 0,01BTC

Jeśli chcesz teraz zapłacić komuś 0,6 BTC, twoja transakcja weźmie UTXO 0,2 0,5 bitcoina i połączy je razem (pozostawiając UTXO 0,01 bitcoina w spokoju). Transakcja miałaby dwa wyjścia: 0.6 BTC jako płatność i 0,1 jako reszta. Będzie to wyglądać następująco.

two-inputs

Po zakończeniu transakcji twój portfel będzie miał 0,1 bitcoina UTXO i 0,01 bitcoina UTXO. Dwie “monety” o łącznym saldzie 0,11 BTC

Korzyści dla prywatności wynikające z modelu UTXO

Użytkownicy Bitcoin mogą przechowywać każde UTXO oddzielnie, przechowując każde UTXO w innym i unikalnym nowym adresie bitcoin. W ten sposób użytkownicy mogą ukryć połączenie między swoimi UTXO przed opinią publiczną i utrudnić osobom z zewnątrz ustalenie, które UTXO należą do którego użytkownika.

Zalety modelu UTXO

Przejrzystość: Model UTXO pozwala węzłom bitcoinowym skutecznie i łatwo weryfikować każdą transakcję na blockchainie i sprawdzać, czy wydawane UTXO jest ważne i niewydane, rozwiązując w ten sposób problem podwójnego wydawania.

Bezpieczeństwo: Ponieważ UTXO są albo całkowicie wydane, albo niewydane, nie ma niejasności co do stanu funduszy, co zmniejsza podatność na ataki.

Prywatność: Łączenie wielu UTXO w jednej transakcji może zapewnić większą prywatność.

Jasna własność: UTXO definiują wyraźną własność, dzięki czemu jest jasne, kto jest właścicielem jakiej kwoty w danym momencie.

Wnioski:

Jak możesz, mamy nadzieję, wyciągnąć z tego artykułu, model UTXO jest bardzo ważną koncepcją Bitcoina, a za każdą prostą transakcją kryje się cała struktura, która zapewnia, że transakcje te są ważne.

Mamy nadzieję, że po przeczytaniu tego artykułu lepiej rozumiesz, czym są UTXO, jak faktycznie działają i dlaczego są ważne dla Bitcoina.

Jeśli chcesz dowiedzieć się więcej o Bitcoinie, odwiedź nasze Bitcoin Hub, gdzie znajdziesz wiele przydatnych artykułów.

Author: Marcin Woźniak

W 2018 roku Marcin po raz pierwszy zetknął się z technologią blockchain i Bitcoinem, co natychmiast wzbudziło jego zainteresowanie. Posiada głęboką pasję do innowacji technologicznych i trwającej cyfryzacji sektora finansowego. Marcin z niecierpliwością oczekuje na globalny, transformacyjny wpływ technologii blockchain i z entuzjazmem przyczynia się do tego rewolucyjnego ruchu.