Mitä kaksoisallekirjoittaminen tarkoittaa?
Kaksoisallekirjoittaminen tarkoittaa, että validaattori allekirjoittaa proof of stake -verkossa kaksi keskenään ristiriitaista viestiä samalla korkeudella tai samalla kierroksella. Kuvittele kaksi eri lohkoa tai ääntä, jotka molemmat väittävät olevansa se oikea samaan aikaan. Se on kuin kirjautuisit kahteen konserttiin täsmälleen samaan aikaan ja odottaisit järjestyksenvalvojan suhtautuvan siihen hymyillen.
”Kaksoisallekirjoittaminen on sama asia kuin tuplakulutus.” Ei aivan. Tuplakulutus on transaktioon liittyvä kikka, kun taas kaksoisallekirjoittaminen on konsensusrikkomus, jossa validaattorit allekirjoittavat keskenään ristiriitaista dataa samalle slottipaikalle.
Miten kaksoisallekirjoittaminen toimii?
Pikakatsaus siihen, miten siitä voi joutua vaikeuksiin joko tahallaan tai vahingossa.
- Vaihe 1: Validaattorin avain on verkossa ja valmiina allekirjoittamaan viestejä ketjua varten.
- Vaihe 2: Operaattori käynnistää toisen solmun samalla avaimella tai asiakasohjelman varajärjestelyt on määritetty väärin. Hups.
- Vaihe 3: Molemmat solmut luovat allekirjoitukset samalle korkeudelle mutta eri hyötykuormille.
- Vaihe 4: Jos verkossa on tilapäisiä haarautumia, kumpikin puoli voi vastaanottaa eri allekirjoituksen samalta avaimelta.
- Vaihe 5: Vertaisverkkoon kuuluvat solmut havaitsevat ristiriidan, tallentavat todisteet ja protokolla rankaisee allekirjoittajaa.
Kyllä, yksinkertainen väärä napsautus voi johtaa kaikkea muuta kuin yksinkertaisiin seurauksiin.
Miksi kaksoisallekirjoittamisella on väliä?
Miksi asialla on merkitystä, vaikka et koskaan ylläpidä solmua:
- Hyöty: Kun tiedät ilmiöstä, osaat välttää määrityksiä, jotka vaarantavat varat ja maineen.
- Näkökulma: Useimmat verkot vastaavat slashing-rangaistuksella, koska teko heikentää luottamusta konsensukseen.
- Merkitys: Törmäät siihen staking-ohjeissa, DAO-äänestyksissä ja validaattorien hallintapaneeleissa.
Pidä avaintasi varten käytössä vain yksi aktiivinen allekirjoittaja ja suhtaudu varajärjestelyihin varoen. Ota käyttöön hälytykset, sentry-rakenne ja etäallekirjoittaja, joka kieltäytyy allekirjoittamasta kahdesti samalla korkeudella. Todisteet tallentuvat lohkoketjuun, joten asiaa ei voi piilotella.
Kaksoisallekirjoittamisen keskeiset piirteet
Keskeiset tuntomerkit, jotka on hyvä osata havaita ja muistaa:
- Ristiriita: Sama avain tuottaa kaksi allekirjoitusta eri datalle samalla korkeudella tai samalla kierroksella.
- Rangaistus: Se johtaa yleensä panoksen menettämiseen ja validaattorina toimimisen keskeytykseen.
- Havaittavuus: Todisteet lähetetään verkkoon ja tallennetaan, mikä pitää vertaisverkon osallistujat rehellisinä.
Muunnelmat
Eri ketjuissa ilmiötä kutsutaan eri nimillä, mutta kyse on samantyyppisestä virheestä:
- Kaksoisäänestys: Kaksi ääntä eri lohkoille samalla korkeudella.
- Kaksoisehdotus: Yksi ehdottaja ehdottaa kahta lohkoa samalla kierroksella.
- Allekirjoittaminen eri haaroissa: Sama avain allekirjoittaa kilpailevissa haaroissa tilapäisen jakautumisen aikana.
Useimmiten kaksoisallekirjoittaminen tapahtuu vahingossa. Jo kahden koneen käyttäminen samalla avaimella riittää käynnistämään sen, vaikka vain muutamaksi sekunniksi.
Esimerkki
Validaattori käynnistää varasolmun sammuttamatta ensisijaista solmua. Molemmat allekirjoittavat lohkon samalla korkeudella, ja verkko havaitsee kaksoisallekirjoittamisen muutamassa minuutissa.
Hauska fakta
Monissa asiakasohjelmissa on sisäänrakennettu ”kaksoisallekirjoittamisen esto”, joka seuraa viimeisimpiä korkeuksia, joilla avain on allekirjoittanut. Se toimii kuin pieni ovimies, joka torjuu toisen väärennetyn henkilöllisyystodistuksen.
Yhteenveto
Lyhyesti: kaksoisallekirjoittaminen on konsensuksen vastine sille, että olet kahdessa paikassa yhtä aikaa ja saat sakot väittäessäsi, ettei siinä ole mitään kummallista.