Blockchain je veřejná kniha transakcí, která obsahuje všechny informace o kryptoměně od okamžiku jejího spuštění. K vyhledání a zobrazení fragmentů zájmu v této obrovské databázi se používají speciální kryptografické kódy, včetně identifikátoru transakce.

ID transakce: co to je?

Transaction ID (TxID) je jedinečný kód sestávající ze specifické sekvence písmen a číslic. Je přiřazen každé transakci na blockchainu a je jejím hashem – jedinečnou hodnotou, která je generována pomocí kryptografického algoritmu na základě informací obsažených v transakci. Výsledný hash se používá k identifikaci a zajištění bezpečnosti plateb na blockchainu. 

Proč je potřeba TxID?

Pomocí TxID je každá nová transakce spojena s předchozí. To pomáhá zajistit, že transakce jsou ve správném pořadí a že nebyly změněny nebo zmanipulovány. 

Hodnoty hash vám také umožňují zabezpečit peněženky a další systémy důvěrnými informacemi. Kromě toho pomáhají chránit uživatelská data před neoprávněným přístupem.

Podmínky pro vytvoření TxID

Každá kryptoměnová peněženka má určitou sadu funkcí, včetně schopnosti automaticky generovat TxID. Když uživatel provede převod kryptoměny, podepíše jej soukromým klíčem a transakci je přiřazen jedinečný identifikátor. Toto TxID lze na blockchainu sledovat ihned po odeslání převodu z peněženky. 

Dále musí transakce projít ověřením a obdržet potvrzení od síťových uzlů (těžařů). V důsledku toho je její TxID přidáno do bloku a uloženo ve veřejném registru. Poté již nelze data změnit. 

Transakční ID je tedy vytvořeno v okamžiku, kdy jej uživatel odešle, a ještě před přijetím potvrzení na blockchainu. 

Někdy mohou síťové uzly z různých důvodů odmítnout převody – kvůli nízkým poplatkům, nedostatečnému zůstatku u odesílatele, přetížení sítě atd. V těchto případech nebude TxID vygenerované v peněžence použito a nebude spojeno s žádnou transakcí v blockchainu. . Pak pozbude platnosti a zmizí z veřejného rejstříku. 

Uživatel může znovu vytvořit překlad s opravenými údaji, poté obdrží nový jedinečný identifikátor. Tato transakce bude odeslána do sítě k ověření stejným způsobem a lze ji sledovat pomocí nového TxID.

Proces vytváření TxID 

Hodnota hash (neboli hash) se vypočítá pomocí hash funkce. Jedná se o matematický algoritmus, který transformuje libovolný vstupní text (jako jsou transakční data) na jedinečný výstup hash kódu s pevnou délkou. Hašovací funkce je obvykle jednosměrná, což znamená, že hašovací kód nelze použít k rekonstrukci původních dat. 

Každá síť kryptoměn má svou vlastní metodu hašování. Například bitcoin používá algoritmus SHA-256 (Secure Hash Algorithm 256-bit). Vezme jako vstup data, která je třeba hashovat, a vrátí 256bitovou hodnotu hash o délce 64 znaků, přibližně v následujícím formátu:

0e3e2357e806b6cdb1f70b54c3a3a17b6714ee1f0e68bebb44a74b1efd512098

Tento proces lze znázornit v následujících krocích:

  1. Hašovací funkce přijímá vstupní data – informace o transakci.

  2. Z těchto dat hashovací funkce generuje jedinečný hash kód – sadu znaků pevné délky (256 bitů v bitcoinech).

  3. Výsledný hash kód je uložen v blockchainu, kde se stává součástí unikátního block chain.

  4. Při dalším převodu se hash hodnota předchozí transakce použije k vytvoření nového hashe, který se stane součástí nového bloku v řetězci.

Hašovací hodnota tedy hraje důležitou roli při zajišťování bezpečnosti kryptoměnové sítě, protože jakékoli změny v transakčních datech vyžadují změnu odpovídající hašovací hodnoty, a to okamžitě povede k zamítnutí transakce. 

Jak se vytváří transakce

Transakce kryptoměny je proces převodu mincí z jednoho účtu na druhý. Obsahuje informace o výši platby, adresách odesílatele a příjemce a také další údaje, které se mohou lišit v závislosti na blockchainu. 

Například bitcoinová síť používá k vytvoření hodnoty hash tři typy dat: 

  • transakční vstupy;

  • transakční výstupy;

  • podpis. 

Celý blockchain je sekvenční kombinací těchto informací. Bez nich není možné posílat kryptoměny. 

Transakční vstupy

Vstupy jsou coiny, které jsou přijaty z příchozích transakcí a ještě nebyly použity v odchozích, to znamená, že jsou na účtu. 

Při vytváření nové platby si odesílatel vybere položku peněženky, kterou chce použít pro aktuální transakci. Vstupem je tedy odkaz na předchozí transakci, ze které bude kryptoměna opět převedena. 

Tento odkaz obsahuje následující informace:

  • ID výstupu, které se nyní používá jako vstup;

  • adresa odesílatele;

  • adresa příjemce;

  • součet. 

Při vytváření nové platby může odesílatel zadat jeden nebo více vstupů. Pokud má vaše peněženka například dva vstupy – 3 a 4 BTC, můžete oba použít k převodu 7 BTC na novou adresu.  

Transakční výstupy

Výstupy zobrazují informace o mincích, které byly použity pro externí převody. Každý výstup obsahuje následující informace:

  • odkaz na záznam, ze kterého byl vytvořen;

  • o tom, na jaké adresy bude kryptoměna zaslána;

  • o výši převodu.

V tomto případě může odesílatel rozdělit vstupy na části. Například ze vstupu 10 BTC můžete vytvořit výstup 3 BTC. Zbývající částka 7 BTC jsou nevyčerpané transakční výstupy (UTXO). Odesílatel může také převádět kryptoměnu na více adres současně.

Podpis

Když uživatel odešle transakci, použije svůj soukromý klíč k vytvoření digitálního podpisu, který je následně ověřen podle jeho veřejného klíče. Pokud se podpis shoduje s klíčem, transakce je potvrzena a odeslána do blockchainu. To zajišťuje bezpečnost a ochranu proti podvodům, protože pouze vlastník soukromého klíče může vytvořit správný podpis 

Informace o transakcích jsou tedy jádrem bezpečnosti blockchainu. 

Princip konstrukce řetězce vstupů a výstupů

Můžeme například uvažovat o procesu interakce mezi třemi účty A, B a C, které si mezi sebou převádějí coin X.

Pokud chce majitel účtu A vytvořit transakci (T1), musí uvést: 

  • příjemce (například účet B);

  • počet mincí (například 1X).

Tyto informace jsou zašifrovány a uloženy v ID transakce T1. 

V okamžiku odeslání obdrží takový překlad následující vlastnosti:

  • se stává výstupem z účtu A - pokračováním předchozích příjmů;

  • se stane vstupem na účet B. 

Dokud 1X coin zůstává na účtu B, je transakce T1 považována za záznam. 

Podobně, pokud chce majitel účtu B převést 1X na účet C, musí uvést (T2):

  • příjemce - účet C;

  • počet mincí - 1X.

V okamžiku odeslání obdrží převod T2 následující vlastnosti:

  • stává se výstupem z účtu B - pokračováním transakce T1; 

  • se stane vstupem do účtu C. 

Dokud 1X coin zůstává na účtu C, je transakce T2 považována za záznam. 

Jak můžete použít ID transakce?

Uživatelé mohou ručně použít ID pro jiné účely. Například pomocí TxID mohou protistrany řídit převody: 

  • odesílatel si může ověřit, že jeho platba úspěšně vstoupila do blockchainu;

  • příjemce si může ověřit, že převod byl odeslán na jeho účet.

Kromě toho vám TxID umožňuje zobrazit další informace:

  • množství;

  • měna (mince nebo token);

  • stav: dokončeno, nedokončeno, nevyřízeno, probíhá atd.;

  • číslo bloku, ve kterém je transakce uložena; 

  • čas převodu; 

  • provize atd.

Úplnost a formát těchto informací závisí na blockchainu a službě použité pro ověření. 

Pro různé blockchainy existují různé prohlížeče: 

  • Bitcoin — blockchain.info;

  • Ethereum — etherscan.io;

  • BNB — bscscan.com;

  • TRON — tronscan.org;

  • Polkadot — explorer.polkascan.io. 

Veřejný rejstřík je k nahlédnutí všem, ale jeho objem je obrovský. Například blockchain BNB zpracovává více než 5 milionů transakcí denně. K nalezení požadovaného fragmentu v tomto datovém poli potřebujete příslušný kryptografický kód. Informace můžete vyhledávat nejen podle identifikátoru, ale také podle adresy, bloku, tokenu atd. 

Lze prohlížet pouze kryptografické informace. Nikdo neví, kdo komu a proč platbu poslal – tím je zároveň zajištěna publicita sítě a anonymita uživatelů.