Mitä on tuplakulutus?
Tuplakulutuksessa joku yrittää käyttää samoja digitaalisia kolikoita kahteen eri maksuun. Kuvittele, että konserttilipusta otetaan valokopio ja se annetaan kahdelle järjestyksenvalvojalle. Lohkoketjuissa konsensus torjuu tuplakulutusyrityksiä, mutta ajoitusikkunoita ja erilaisia kikkoja voidaan silti käyttää hyväksi.
Jos maksu näkyy lompakossasi, sen täytyy olla lopullinen. Ei aivan. Ennen kuin verkko vahvistaa sen, louhijat voivat vielä korvata tapahtuman toisella tai jättää sen huomiotta.
Näin tuplakulutus toimii
Tässä lyhyt vaiheittainen esimerkki ovelasta hyökkääjästä ja tietämättömästä myyjästä.
- Vaihe 1: Hyökkääjä luo kaksi tapahtumaa, joissa samoja kolikoita käytetään: toinen maksu menee myyjälle ja toinen takaisin hyökkääjälle.
- Vaihe 2: Hyökkääjä lähettää ensin maksun myyjälle, jolloin se näkyy odottavana, ja myyjä luovuttaa tavarat.
- Vaihe 3: Sitten hyökkääjä lähettää ristiriitaisen maksun korkeammalla kululla houkutellakseen louhijoita tai louhintapoolia.
- Vaihe 4: Jos louhijat sisällyttävät ristiriitaisen maksun ensin lohkoon, verkko hylkää myyjän odottavan maksun.
- Vaihe 5: Vahvempi hyökkääjä voi louhia yksityistä haaraa ja julkaista sen myöhemmin korvaamaan julkisen historian, jolloin maksujen järjestys muuttuu.
Tämä on toimintaperiaate ja syy siihen, miksi vahvistuksilla on väliä.
Miksi tuplakulutuksella on väliä
Jos hyväksyt kryptomaksuja, kyse ei ole vain nippelitiedosta. Se vaikuttaa tulokseesi ja mielenrauhaasi.
- Hyöty: Kun ymmärrät riskin, voit asettaa järkevät vahvistussäännöt ja tehdä välittömistä myynneistä turvallisempia.
- Näkökulma: Tuplakulutuksen uhka on vaikuttanut siihen, miten lohkoketjuissa suhtaudutaan lopullisuuteen, kuluihin ja louhijoiden toimintaan.
- Merkitys: Ilmiö tulee vastaan myyntipistetapahtumissa, exchangeissa, NFT-julkaisuissa ja DeFi-silloissa.
Pienissä ostoksissa käytä riskitasoja ja tarkkaile replace by fee -merkintöjä. Suurempien summien kohdalla odota useita vahvistuksia. Bitcoinissa kuutta vahvistusta pidetään yhä hyvänä nyrkkisääntönä.
Tuplakulutuksen keskeiset piirteet
Tässä tärkeimmät ominaisuudet:
- Ristiriita: Kaksi tai useampi tapahtuma yrittää käyttää samoja syötteitä, eikä verkko voi hyväksyä niitä kaikkia.
- Ajoitus: Onnistumisen mahdollisuus pienenee vahvistusten määrän kasvaessa.
- Kannustin: Louhijat suosivat yleensä suuremman kulun tapahtumia, mikä voi antaa hyökkääjän ristiriitaiselle maksulle etulyöntiaseman.
- Riski: Tuplakulutus onnistuu parhaiten, kun myyjät hyväksyvät ilman tarkistuksia maksuja, joilla ei ole yhtään vahvistusta.
Muunnelmat
Eri toimintatapoja, sama perusidea. Tässä muutamia yleisiä esimerkkejä:
- Race Attack: Hyökkääjä lähettää lähes samanaikaisesti kaksi keskenään ristiriitaista tapahtumaa ja toivoo, että louhijat valitsevat hänelle edullisemman.
- Finney Attack: Louhija louhii etukäteen lohkon, jossa on maksu itselleen, ja käyttää sitten nämä kolikot maksuna myyjälle ennen lohkon julkaisemista.
- 51% Attack: Riittävän suurella hash-teholla hyökkääjä voi päästä rehellisen ketjun edelle ja kumota maksuja toistuvasti.
Lopullisuus vahvistuu lohkojen määrän kasvaessa. Kun vahvistuksia on riittävästi, käytännössä muuttumattomuus astuu kuvaan, ja tuplakulutuksesta tulee erittäin vaikeaa ilman merkittäviä resursseja.
Esimerkki
Kahvila hyväksyy maksun, jolla ei ole yhtään vahvistusta. Ostaja poistuu kahvin kanssa, ja myöhemmin vahvistetaan ristiriitainen, suuremman kulun tapahtuma, joka mitätöi kahvilalle menneen maksun.
Hauska fakta
Satoshi esitti Bitcoinin ratkaisuna tuplakulutusongelmaan. Tuplakulutuksen estäminen ei siis ollut sivutehtävä, vaan pelin päävastus.
Yhteenveto
Lyhyesti: tuplakulutuksessa on kyse ajoituksesta ja konsensuksesta, ja sen torjuntaan tarvitaan vahvistuksia, järkeviä tarkistuksia ja hieman kärsivällisyyttä. Rolex kohtaa Reddit-ketjut.