Dvigubos išlaidos gali sugriauti bet kokį pasitikėjimą kriptovaliuta, todėl buvo įdėta tiek daug pastangų siekiant užtikrinti, kad tokio pobūdžio sukčiavimas neįvyktų.
Dėl „blockchain“ technologijos kriptovaliutų operacijos yra saugios ir patikimos. Tačiau, kaip ir daugelyje novatoriškų sistemų, blokų grandinėje yra išnaudojamų pažeidžiamumų, dėl kurių gali būti išleidžiamos dvigubai. Bet kas yra dvigubos išlaidos ir kaip to išvengti?
Kas yra dvigubos išlaidos?
Dvigubos išlaidos atsiranda, kai vienas subjektas išleidžia tą patį kriptovaliutos žetoną daugiau nei vieną kartą. Taip yra dėl skaitmeninių valiutų trūkumo, dėl kurio jas lengva atkurti.
Informacija apie blockchain tinklą gali būti keičiama operacijų metu, jei tenkinamos tam tikros sąlygos. Kai šios sąlygos įvykdomos, keičiama sandorių blokai gali patekti į blokų grandinę, leidžiančią nusikaltėliui vėl įsigyti anksčiau panaudotus kriptovaliutų žetonus.
Norėdami geriau suprasti, kaip tai vyksta, pateikiame supaprastintą proceso aprašymą. Kai operacija atliekama blockchain tinkle, tarkime, Bitcoin, jis sukuria bloką, kuriame yra operacijos duomenys, duomenys iš ankstesnio bloko ir laiko žyma. Blokas turi užšifruotą kodą, vadinamą maiša.
The žmonių, kurie Bitcoin tinkle kasa tada patikrinkite operaciją naudodami darbo patikrinimo konsensuso algoritmą, uždarykite bloką ir sukurkite naują bloką. Naujame bloke yra laiko žyma, ankstesnio bloko maiša ir nauji operacijos duomenys. Po to pergalingas kalnakasys gauna bloko atlygį (BTC) už maišos patikrinimą.
Norėdami sėkmingai panaudoti dvigubas išlaidas, kaltininkas turi iškasti slaptą bloką, kuris pranoksta tikrojo bloko sukūrimą. Norėdami tai padaryti, kaltininkas turi įvesti slaptąjį bloką prieš naują bloką, kad tinklas, apgautas manydamas, kad tai naujausias augančio bloko rinkinys, prideda netikrą bloką prie vis didėjančio grandine. Tada nusikaltėlis gali susigrąžinti anksčiau naudotus kriptovaliutų žetonus.
Nors dvigubos išlaidos yra gerai žinomas reiškinys kriptovaliutų erdvėje, dokumentais pagrįsto atvejo nėra. Taip yra todėl, kad operacijų tikrinimas yra sudėtingas procesas, kuriam reikia didžiulės skaičiavimo galios. Bloko klastojimas ar kopijavimas yra intensyvus, nes nusikaltėliai turi dirbti prieš visus kitus blokų grandinės kasėjus.
Kodėl dvigubos išlaidos yra problema?
Dvigubos išlaidos yra įžeidimas blokų grandinės tinklo saugumui. Taip atsitinka, kai yra išnaudojamas silpnumas.
Be to, „blockchain“ tinklas turėtų būti saugus ir patikimas. Jei kriptovaliutų tinkle išleidžiama dvigubai, tai sukuria nepasitikėjimą ta kriptosistema, atgrasant investuotojus. Ir galiausiai žetono vertė kris.
Be to, dvigubos išlaidos yra skaitmeninė vagystė. Įsilaužėlis laimi, o kas nors kitas tinkle, dažniausiai prekybininkas, pralaimi. Nusikaltėlis išlaiko nuosavybės teisę į prekybininko prekes ir kriptovaliutų žetoną.
Dvigubo išlaidavimo atakų pavyzdžiai
Yra įvairių formų dvigubų išlaidų atakų, kurias naudoja kibernetiniai nusikaltėliai. Štai keletas iš jų:
51% puolimas
51 % ataka yra plačiausiai aptarinėjama dvigubų išlaidų forma. Tai atsitinka, kai kalnakasys (arba kalnakasių grupė) valdo daugumą (daugiau nei 50 %) skaičiavimo galios, patvirtinančios tinkle atliekamus sandorius.
Kai tai atsitiks, jie gali diktuoti operacijas, kurti naujus blokus, susigrąžinti jau išleistą kriptovaliutą ir apdovanoti kriptovaliutų žetonus. Tai suteikia jiems galimybę dvigubai išleisti skaitmenines monetas.
Mažesnė tikimybė, kad 51% ataka įvyks labiau nusistovėjusiose kriptovaliutose, tokiose kaip Bitcoin. Taip yra dėl didelio kalnakasių skaičiaus tinkle ir maišos sunkumas. Tačiau kriptovaliutoms su mažesniais tinklais, pavyzdžiui, naujomis ar šakotomis, gali kilti pavojus.
2014 m. GHash.io, kasybos baseinas, veikė nuo 2013 iki 2016 m., trumpam viršijo 51% Bitcoin skaičiavimo galios naudojant Bitcoin. Ši plėtra sukėlė didelį susirūpinimą dėl tinklo saugumo. Tada Gnash.io savo noru apribojo savo skaičiavimo galią iki 39,99%, kad atkurtų pasitikėjimą tinklu.
Finney Attack
Šio tipo dvigubų išlaidų ataka buvo išpopuliarinta ir pavadinta Halo Finney vardu. Finney atakos metu įsilaužėliui nereikia 51% maišos galios. Kad tai būtų sėkminga, prekybininkas turi priimti nepatvirtintą operaciją iš įsilaužėlio, kuris yra kalnakasys.
Įsilaužėlis sugeneruoja bloką, kuriame įskaito kriptovaliutų žetonus sau, inicijuodamas operaciją iš adreso X į adresą Y (abu priklauso jam), netransliuodamas jo į tinklą. Jis atlieka kitą mokėjimą tais pačiais kriptovaliutų žetonais nuo adreso X iki adreso Z, kuris priklauso prekybininkui.
Jei prekybininkas priima nepatvirtintas operacijas be blokų grandinės patvirtinimo, įsilaužėlis išleidžia bloką, kuriame yra jo pradinė operacija. Tinklas anuliuoja sandorį su prekybininku po to, kai prekybininkas išleido prekes ar paslaugas įsilaužėliui. Tai leidžia įsilaužėliui išleisti dvigubai.
Lenktynių ataka
Šią ataką lengviau įveikti nei 51% ir Finney atakas. Lenktynių atakos metu tarp dviejų sandorių vyksta „lenktynės“.
Įsilaužėlis naudoja skirtingas mašinas, kad išsiųstų tą patį žetoną dviem prekybininkams. Jei prekybininkas siunčia prekes ar paslaugas prieš patvirtinant sandorį, jis sužinos, kad kasybos proceso metu sandoris nebuvo priimtas.
Kaip „Blockchain“ apsaugo nuo dvigubų išlaidų
Blockchains apsaugo nuo dvigubų išlaidų konsensuso algoritmai, toks kaip:
Darbo įrodymas (PoW)
Darbo įrodinėjimas yra labai konkurencingas procesas, reikalaujantis nepaprastai daug energijos. Šiame konsensuso mechanizme kalnakasiai naudoja sudėtingus kompiuterius, kad atspėtų operacijų blokų maišą.
Maiša yra užšifruotas, unikalus 64 skaitmenų šešioliktainis kodas, kurį turi kiekviena operacija. Šis procesas išeikvoja skaičiavimo galią sandorio autentiškumui įrodyti.
Kai operacija bus patvirtinta, sėkmingas kasėjas prideda operaciją prie decentralizuota skaitmeninė knyga. Proceso pabaigoje sėkmingas kalnakasys gauna blokinį atlygį savo skaitmeniniu žetonu.
Bitcoin, Bitcoin Cash, Litecoin, Monero ir Dogecoin yra populiarios kriptovaliutos, kurios naudoja šį konsensuso algoritmą.
Akcijų įrodymas (PoS)
„Proof-of-Stake“ kriptovaliutų tinklo dalyviai autentifikuoja blokų operacijas ir yra vadinami tikrintojais. Tikrintojai siūlo (arba „stake“) kai kuriuos savo kriptovaliutų žetonus išmaniojoje sutartyje, kad gautų teisę patikrinti sandorius prieš įtraukdami juos į augančią blokų grandinę.
Tinklas parenka sąžiningą tikrintoją, atsižvelgdamas į sumokėtus žetonus ir sumokėjimo trukmę. Pasirinkus, laimėtojas patvirtina operaciją, kurią patvirtina kiti tikrintojai.
Kaip ir PoW, tikrintojai taip pat gauna atlygį pajamų forma patvirtinus naujas operacijas. Jei tinklas nustato, kad tikrintuvas yra nesąžiningas, jie praranda dalį arba visus įkeltus žetonus kaip bausmę.
Šis procesas yra greitesnis ir reikalauja mažiau skaičiavimo galios ir energijos nei PoW. Todėl blokų grandinės dalyviai gali efektyviai veikti kaip tikrintojai.
Ethereum 2.0, Cardano, Tezos ir Solana naudoja PoS.
Deleguotas statymo įrodymas (DPoS)
Šio tipo PoS konsensuso algoritmas įpareigoja vartotojus blokų grandinėje naudoti savo skaitmeninius žetonus balsuoti už sąžiningą tikrintojai, vadinami „delegatais“. Atsitiktinai parenkamas vienas delegatas, kad patvirtintų naujas operacijas ir įtrauktų jas į blockchain.
Po apmokėjimo delegatas paskirsto bloko atlygį vartotojams, kurie už juos balsavo.
Kriptovaliutos, kuriose naudojamas DPoS algoritmas, yra EOS, Ark, Tron ir Lisk.
Kol kas nėra atvejo, bet yra galimybė dvigubai išleisti
Nors patvirtintų atvejų nėra, naujų ir šakotų kriptovaliutų atsiradimas ir naujausios technologinės pažangos gali sukelti dvigubų išlaidų netikėtumų. Todėl turėtumėte apsisaugoti atlikdami sandorius saugiose kriptovaliutų grandinėse. Paprastai prieš išleisdami jūsų žetonus, prekes ar paslaugas palaukite, kol kalnakasiai patvirtins operacijas.