Hogyan működnek a tranzakciók?

13 perc olvasás
EGY TRANZAKCIÓ ÚTJA ① KÜLDŐ Alice privát kulccsal aláírja: Küldök 0.1 BTC-t Bob-nak ✎ Aláírva ✓ broadcast ② HÁLÓZAT Csomópontok terítik validálás ③ MEMPOOL (várakozási sor) Tx #1 – 50 sats/vB ↑ Tx #2 – 30 sats/vB Alice Tx – 45 sats/vB Tx #4 – 10 sats/vB bányász felveszi ④ BÁNYÁSZ (blokk alkotás) nonce próbálkozás: #3,847,291... hash: 00000b2e... PoW megoldva! blokk kész ⑤ KÉSZ (blokkláncon) 1 megerősítés ~10 perc Végleges! FOGADÓ Bob egyenlege: +0.1 BTC blokkláncon rögzítve értesül Aláírás Broadcast Mempool Bányászat Megerősítve Teljes idő: ~10 perc (Bitcoin) · ~15 mp (Ethereum)

Az előző cikkekben megismertük a kriptovaluta fogalmát és a blokklánc felépítését. Most nézzük meg részletesen, mi történik pontosan, amikor valaki kriptót küld valakinek. Ez a folyamat sokkal érdekesebb – és biztonságosabb – annál, mint ahogy elsőre tűnik.


1. A klasszikus banki utalás vs. krypto tranzakció

Mielőtt belemegyünk a részletekbe, nézzük meg a különbséget:

Banki utalás (pl. forint átutalás):

  1. Bejelentkezel az internetbankba (bank azonosít téged).
  2. Megadod a kedvezményezett IBAN számát és az összeget.
  3. A bank ellenőrzi, van-e elegendő pénzed.
  4. Leveszi az összeget a te számládról.
  5. Jóváírja a másik számlán.
  6. Mindez egy privát, központi adatbázisban történik, amelyet a bank irányít.

Bitcoin tranzakció:

  1. Matematikai aláírással bizonyítod, hogy tied a kriptó.
  2. A tranzakciót elkülded az egész hálózatnak.
  3. A hálózat ellenőrzi és jóváhagyja.
  4. A tranzakció bekerül a blokkláncba.
  5. Mindez publikusan, közvetítő nélkül történik.

2. A kulcspár – a személyazonosságod a blokkláncon

A kriptóvilágban nincs felhasználónév és jelszó. Helyette kriptográfiai kulcspárt használsz:

Privát kulcs (Private Key)

  • Egy nagyon hosszú, véletlenszerűen generált szám.
  • Csak te tudod (és senki más!).
  • Példa: 5KJvsngHeMpm884wtkJNzQGaCErckhHJBGFsvd3VyK5qMZXj3hS
  • Soha ne oszd meg senkivel – aki tudja, az a kriptódat is el tudja költeni.

Nyilvános kulcs (Public Key)

  • A privát kulcsból matematikailag levezetett szám.
  • Bárkivel megosztható – ez alapján utalnak neked.
  • A privát kulcsból levezetik, de a visszaút nem lehetséges (egyirányú matematika).

Cím (Address)

  • A nyilvános kulcs tovább rövidített, hash-elt változata.
  • Ez az, amit a küldőnek megadsz (pl. Bitcoin cím: 1A1zP1eP5QGefi2DMPTfTL5SLmv7Divf Na).

Analógia: A privát kulcs az aláírásod. A nyilvános kulcs és a cím az e-mail-címed: bárki tud neked írni, de csak te tudod elolvasni (és megválaszolni) a leveleket.


3. Hogyan működik a digitális aláírás?

Amikor kriptót küldesz, digitálisan alá kell írni a tranzakciót. Ez bizonyítja, hogy valóban te kezdeményezted – nem valaki más nevében.

A folyamat (leegyszerűsítve):

PRIVÁT KULCS + TRANZAKCIÓ ADATAI
         ↓ (aláírási algoritmus)
    DIGITÁLIS ALÁÍRÁS

A hálózat ellenőrzi:
NYILVÁNOS KULCS + DIGITÁLIS ALÁÍRÁS + TRANZAKCIÓ ADATAI
         ↓ (ellenőrző algoritmus)
    ✅ ÉRVÉNYES / ❌ ÉRVÉNYTELEN

A lenyűgöző az, hogy a hálózat igazolni tudja az aláírást a privát kulcs ismerete nélkül. Csak a nyilvános kulcs és maga az aláírás szükséges hozzá. Ez az elliptikus görbéken alapuló kriptográfia (ECDSA) varázsa – senki sem férhet hozzá a privát kulcsodhoz, mégis be tudják bizonyítani, hogy te írtad alá a tranzakciót.


4. Egy tranzakció felépítése

Minden Bitcoin-tranzakció a következő elemekből áll:

┌──────────────────────────────────────────┐
│            TRANZAKCIÓ                    │
├──────────────────────────────────────────┤
│ Verzió: 2                                │
├──────────────────────────────────────────┤
│ BEMENETEK (Inputs):                      │
│  - Előző tranzakció ID + output index   │
│  - Digitális aláírás (te küldöd)        │
│  - Nyilvános kulcs                       │
├──────────────────────────────────────────┤
│ KIMENETEK (Outputs):                     │
│  - Kedvezményezett címe                  │
│  - Összeg: 0.05 BTC                     │
│  - Visszajáró (change): 0.04 BTC        │
├──────────────────────────────────────────┤
│ Tranzakciós díj: 0.001 BTC              │
├──────────────────────────────────────────┤
│ Időzár (Locktime): 0                    │
└──────────────────────────────────────────┘

Az UTXO modell

A Bitcoin egy különleges rendszert használ: UTXO (Unspent Transaction Output), azaz el nem költött tranzakciós kimenet.

Képzeld el, hogy a Bitcoin-egyenleged nem egy bankszámlaegyenleg, hanem bankjegyek gyűjteménye. Ha valaki küld neked 1 BTC-t, az egy „bankjegy" – egy UTXO. Ha küld 0.5 BTC-t, az egy másik.

Amikor fizetsz:

  • „Összerakod" a szükséges UTXO-kat (bankjegyeket).
  • Meghatározod, mennyi megy a kedvezményezettnek.
  • A maradék visszajáróként (change) visszamegy hozzád egy új UTXO-ként.
  • A különbség (amit szándékosan kihagysz) a tranzakciós díj, amit a bányász kap.

Példa: Neked van 0.1 BTC és 0.05 BTC (két UTXO). Küldeni akarsz 0.08 BTC-t. A tranzakció felhasználja mindkét UTXO-t (összesen 0.15 BTC), küld 0.08 BTC-t a kedvezményezettnek, visszakap 0.06 BTC-t magának (mint visszajáró), és 0.01 BTC a bányász díja.


5. A tranzakció útja – lépésről lépésre

Most nézzük meg a teljes folyamatot, amint egy tranzakció elindul:

1. lépés: Létrehozás

Te (vagy a tárcád alkalmazás) létrehozza a tranzakciót: megadja, hogy melyik UTXO-t kívánja felhasználni, ki a kedvezményezett, mekkora az összeg és mekkora a díj. A tárca ezt digitálisan aláírja a privát kulcsoddal.

2. lépés: Sugárzás (Broadcast)

A tranzakciót elküldjük a hálózatra – ezt hívják broadcast-nak. A tárca csatlakozik egy-két csomóponthoz, és elküldi nekik a tranzakciót. Ők továbbítják a többi csomópontnak. Néhány másodpercen belül az egész hálózat tud a tranzakcióról.

3. lépés: A mempool (memória medence)

Minden csomóponton van egy mempool (memory pool): egy várakozási sor a még meg nem erősített tranzakcióké. A beérkező tranzakciót a csomópont ellenőrzi:

  • Érvényes-e az aláírás?
  • Rendelkezésre áll-e az UTXO? (Nem költötték-e el már?)
  • Megfelel-e a tranzakció a minimális díjkövetelménynek?

Ha igen, bekerül a mempoolba, és vár, hogy egy bányász felvegye.

4. lépés: Bányász felveszi

A bányászok folyamatosan figyelik a mempoolból, és tranzakciókat gyűjtenek blokkba. Általában a legjobban fizető tranzakciókat választják először (minél nagyobb a díj, annál hamarabb kerül be a blokkba). Ha nagyon olcsó díjat adsz meg, a tranzakciód napokig is várakozhat.

5. lépés: Bányászat – a blokk elkészítése

A bányász összerakja a blokkot (ezekből a tranzakciókból), és nekifog a Proof of Work feladatnak: olyan nonce értéket keres, amely a blokk hash-ét egy megadott nehézségű értékre hozza (pl. bizonyos számú nullával kell kezdődnie). Ez akár tíz percig is tarthat.

6. lépés: Blokk publikálása

Mihelyt a bányász megoldja a feladatot, publikálja az új blokkot a hálózaton. A többi csomópont ellenőrzi (ez másodpercek alatt megvan), és ha érvényes, hozzáfűzi a saját másolatukhoz.

7. lépés: Megerősítések

Amint a tranzakciód blokk bekerül a láncba, az 1 megerősítést kap. Minden ezután következő blokk egy-egy újabb megerősítés. Általános szabály:

Megerősítések száma Biztonság szintje Tipikus várakozás
0 (mempool) Nem biztonságos Pillanat
1 Kis összegekhez elfogadható ~10 perc
3 Megfelelő ~30 perc
6 Általánosan elfogadott ~60 perc

6. Tranzakciós díjak – miért kell fizetni?

Minden tranzakcióhoz díjat kell fizetni (angolul: fee vagy gas fee Ethereumon). Ez a díj:

  1. Ösztönzi a bányászokat/validátorokat – ők kapják jutalmul.
  2. Véd a spam ellen – ha minden tranzakció ingyenes lenne, valaki milliókat küldhetne és megbéníthatná a hálózatot.

Bitcoin díjak

Bitcoin esetén a díj: satoshi per vbyte (sats/vB). A vbyte a tranzakció méretét jelenti adatban. Minél nagyobb a forgalom a hálózaton, annál magasabb díjakkal lehet prioritást kapni.

  • Alacsony forgalom idején: 1-5 sats/vB (~néhány száz forint)
  • Nagyforgalmú időszakban: 100-500+ sats/vB (akár tízezer forint is lehet!)

Ethereum Gas

Az Ethereum ún. gas rendszert használ. Minden művelettípusnak van egy rögzített „gas" igénye. A díj = gas limit × gas price (Gwei-ban megadva). Az EIP-1559 frissítés óta van egy alap díj, ami elég, és egy borravaló (tip), amivel prioritást lehet vásárolni.


7. Okosszerződések – ha a tranzakció „programozható"

Az Ethereum bevezette az okosszerződés (smart contract) fogalmát. Ez egy program, amelyet a blokkláncon tárolnak és automatikusan hajtanak végre, ha bizonyos feltételek teljesülnek.

Analógia: Olyan, mint egy automatikus nyeremény-kiosztó gép: ha bedobod a pénzt, és megnyomod a gombot, a gép automatikusan kiadja a terméket. Nem kell emberi beavatkozás, nem lehet „visszatartani" a terméket, mert a kód elvégzi a feladatot.

Mire használják?

  • DeFi (Decentralizált pénzügyek): Kölcsönzés, hozamtermelés bankok nélkül.
  • NFT-k: Digitális tulajdonjogok rögzítése.
  • DEX (Decentralizált tőzsde): Kriptók cseréje közvetítő nélkül.
  • DAO (Decentralizált autonóm szervezet): Szavazáson alapuló szervezetek.

8. Tranzakció visszafordítható-e?

Nem. Ez az egyik legfontosabb különbség a hagyományos rendszertől. Ha hibásan küldöd el a kriptót (rossz cím, rossz összeg), nem tudod visszakérni automatikusan. Nincs „chargeback", nincs ügyfélszolgálat, aki visszaállítja.

Ez egyrészt az önkiindulás elve (be your own bank – légy a saját bankod), másrészt nagy felelősséget ró a felhasználóra.

Mire figyelj:

  • Mindig ellenőrizd a célcímet (legalább az első és utolsó néhány karaktert).
  • Küldés előtt küldj kis összeget tesztként.
  • Ellenőrizd, hogy helyes hálózatot használsz-e (pl. ne küldj Ethereum-os tokent Bitcoin-hálózatra).

9. Összefoglalás

Lépés Mi történik?
1. Létrehozás Te meghatározod a tranzakciót, tárca aláírja privát kulcsoddal
2. Broadcast A tranzakció elmegy az összes csomóponthoz
3. Mempool Csomópontokon várakozik megerősítésre
4. Bányász felveszi Egy bányász berakja a blokk-jelöltjébe
5. Bányászat A bányász megoldja a PoW feladatot
6. Blokk publikálva Új blokk kerül a láncra, tranzakció megerősítve
7. Megerősítések Minden új blokk egy-egy újabb megerősítés

Következő lépés

Most már pontosan tudod, hogyan utazik egy tranzakció a hálózaton. De ki végzi a bányászatot? Hogyan működik a Proof of Work pontosan? És mi az a Proof of Stake?

👉 Bányászat és validálás →