Tavaline kuusekülgne täring annab iga viske puhul umbes 2,6 bitti ettearvamatut teavet. See ei pruugi tunduda palju, kuid piisavalt kordades võivad need visked luua toores juhuslikkuse, mis on vajalik bitcoini rahakoti turvalisuse tagamiseks ilma tarkvarale või elektroonilistele komponentidele tuginemata.
Täringuvisked hoiavad Bitcoini võtmed võrguväliselt, kuid kõik ei viitsi seda teha

Peamised järeldused
- Õiglane kuusekülgse täringu viskamine annab Claude Shannoni valemi järgi umbes 2,585 bitti entropiat.
- Coinkite'i dokumentatsioonis on öeldud, et 50 täringuviskamist vastavad bitcoini rahakoti algväärtuse 128-bitisele standardile.
- Kevin Loaec’i Wizard Sardine’i analüüs tõi esile riski Coldcardi tööriistades, mis ulatub kaugemale peamisest algandmest.
Miks on täringuviskamist nii raske ennustada
Claude Shannon, matemaatik, kes pani aluse infoteooriale, kasutas entropiat tulemuse ebakindluse mõõtmiseks. Õiglase kuuepoolse täringu puhul on igal küljel sama üks kuuest võimalus ilmuda. See annab igale viskele ligikaudu 2,585 bitti entropiat. Mündiviskamisel tekib 1 bit, kaheksakülgse täringu puhul aga 3 bitti.
Hiljutine Coldcardi skandaal on sotsiaalmeedias esile toonud täringupõhise algväärtuse genereerimise. Mõned kasutajad peavad seda nüüd hädavajalikuks, teised väidavad, et see kaitseb nende rahalisi vahendeid, samas kui kogenud operaatorid juhivad tähelepanu sellele, et enamik uustulnukaid ei talu aeglast ja vigadele kalduvat seadistamisprotsessi.
Oluline ei ole see, et veeriv täring käitub aatomitasandil juhuslikult. See ei ole nii. Tulemust määrab füüsika, kuid korraga muutub liiga palju väikeseid muutujaid, et keegi saaks tulemust usaldusväärselt arvutada. Täring lahkub käest teatud kiiruse, nurga, kõrguse ja pöörlemisega, seejärel põrkab lauale ja muudab suunda iga põrke järel.
Praktikas võib isegi väike muutus viskamise hetkel anda täiesti teistsuguse tulemuse. Veidi teistsugune sõrmeasend või pisut tugevam viskamine muudab trajektoori piisavalt, et lõplikku numbrit ei ole võimalik liikumist vaadates ennustada. Tulemus võib teoreetiliselt olla deterministlik, kuid rahakoti genereerimise puhul on oluline see, et ründaja ei suuda seda korrata ega arvutada.
Täringuviskamiste muutmine kasutatavaks andmeks
Arvuti ei saa täringuviskete tulemuste nimekirja otse kasutada. Visked tuleb esmalt teisendada binaarandmeteks ning teisendamise meetodil on oluline tähtsus.
Lihtne paaritu-või-paaris-meetod on kergesti mõistetav, kuid see raiskab suure osa kättesaadavast entroopiast. Iga viskamine taandatakse üheks bitiks, kuigi täring andis umbes 2,6 bitti teavet. Tõhusamad meetodid koguvad pika viskamiste jada ja töötlevad kogu jada, tavaliselt krüptograafilise hash-funktsiooni abil. See säilitab palju rohkem juhuslikkust.
Sama põhimõte kehtib ka Diceware’is, mis on pikaajaline meetod turvaliste paroolifraaside loomiseks, ning Bitcoini rahakoti käsitsi genereerimisel. Tüüpiline 12-sõnaline rahakoti taastamisfraas on koostatud 128-bitisest entropiast. Umbes 2,6 bitti viske kohta annab ligikaudu 50 õiglast viset piisavalt toorinformatsiooni selle künnise ületamiseks.
Coldcardi riistvarakoti tootja Coinkite soovitab kasutajatele, kes soovivad saavutada ligi 256-bitist entropiat, teha 99 või enam viset. See ei muuda rahakoti kasutamist kaks korda keerulisemaks, kuid annab genereeritud salajale võtmele palju suurema matemaatilise turvalisusvaru.
Täringutega genereeritud algandmete reaalmaailma test
See erinevus muutus oluliseks pärast seda, kui Coinkite avalikustas 2021. aastast pärineva püsivara probleemi. Mõnel Coldcardi seadmel võis tarkvara vahele jätta sisemise riistvaralise juhuslike arvude genereerija ja kasutada selle asemel nõrgemat protsessi, mis oli seotud seadme avalikult kättesaadava teabega.
Kuna osa sellest protsessist oli võimalik rekonstrueerida, suutsid ründajad võimalikke rahakoti võtmeid kitsendada, selle asemel et otsida kogu võtmeruumi läbi. See viga oli seotud hinnanguliselt 1 128,6633 BTC vargusega umbes 1 100 aadressilt (seisuga kell 13:00 Ida-Ameerika aja järgi).

Rahakoti algvõtmed, mis olid loodud täielikult piisava arvu sõltumatute täringuviskamiste põhjal, ei olnud sama teekonna kaudu ohustatud. Need kasutajad olid esitanud oma entropia, mistõttu vigane riistvarageneraator ei vastutanud peamise rahakoti salajase võtme loomise eest.
See kaitse kehtis aga ainult täringutest loodud algandmete kohta. See ei kaitsnud automaatselt kõiki teisi seadme poolt genereeritud salajasi andmeid.
Wizard Sardine uurib peeneid kirjasid
Turvauurija Kevin Loaec avaldas 1. augustil Wizard Sardine’i veebisaidil hinnangu Coldcardi turvaaugu kohta. Tema kõige olulisem tähelepanek puudutas Coldcardi funktsioone, mis genereerisid oma salajasi andmeid eraldi peamisest rahakoti algandmest.
„Minu arvates on äärmiselt oluline rõhutada, et isegi kasutajad, kes importisid või genereerisid algandmed täringute abil, on haavatavad, kui nad kasutavad järgmisi funktsioone,“ kirjutas Loaec veebisaidil X, enne kui esitas mõjutatud süsteemi skeemi.
Skeem näitab, kuidas vigane juhuslike arvude genereerija toidab mitmeid Coldcardi sekundaarseid funktsioone. Nende hulka kuulusid paberrahakoti loomine, seadme kloonimine, USB-seansi krüpteerimine, „Secret Teleport“ ülekandefunktsioon, kaasallkirjastamisvõtme loomine, sisseehitatud parooligeneraator ja riistvaralise turvemooduli autentimiskoodid.

99 täringuviskega loodud põhikott jäi süsteemi eraldi osasse. Probleem oli selles, et teised tööriistad võisid endiselt nõuda vigasest generaatorist uut juhuslikkust. Selle tulemusena ei taganud turvaline algväärtus, et iga samal seadmel loodud parool, varukoopia, autentimiskood või sekundaarvõti oleks võrdselt turvaline.
Miks enamik uusi kasutajaid täringut ei veereta
Täringuga genereeritud entropia on tehniliselt usaldusväärne, kui seda tehakse õigesti, kuid enamiku uute kasutajate jaoks ei ole see realistlik vaikimisi valik. Täringu 50 või 99 korda viskamine, iga tulemuse täpne sisestamine ning veendumine, et ühtegi viset ei ole vahele jäetud ega dubleeritud, nõuab kannatlikkust ja suurt keskendumist. Üks valesti sisestatud number võib muuta lõpliku rahakoti täielikult, ja enamik seadmeid ei suuda eristada, kas viga tulenes ebaõnnestunud viskest, sisestusveast või juhiste valest mõistmisest.

See protsess toob kaasa ka riske, mida korralikult toimiva riistvarageneraatori puhul ei esine. Kasutajad võivad viskamis tulemused paberile kirjutada, neid pildistada, sisestada veebitööriista või jätta nimekirja kuhugi, kus keegi teine selle leida võib. Mõned inimesed viskavad täringut korduvalt või kontrollitud viisil, kasutavad ebaühtlast või kahjustatud täringut või lõpetavad protsessi enneaegselt, kuna see tundub liiga keeruline. Matemaatika võib olla tugev, kuid tulemus on vaid nii turvaline, kui on kasutaja protseduur.

Seetõttu ei peeta täringut viskamist paljude inimeste, isegi kogenud bitcoini kasutajate seas, alati parimaks meetodiks. See asendab usalduse seadme vastu usaldusega käsitsi tehtava protsessi vastu. Tehniliselt hoolikale kasutajale, kes mõistab entroopiat, kontrollib meetodit ja hoiab viskeseeria salajas, võib selline vahetus mõistlik olla. Keskmise ostja jaoks, kes seadistab rahakotti esimest korda, tekitab see mitmeid võimalusi püsiva vea tegemiseks, olles samal ajal ka tüütu protsess.

Samuti on raske ette kujutada bitcoini laialdast kasutuselevõttu, kui selleks peavad inimesed laua taga istuma ja 99 täringuviskamise tulemust üles kirjutama, enne kui nad saavad raha kätte ja seda turvaliselt teha. Turvameetmed peavad vastu pidama reaalsetes kodudes valitsevatele oludele, tihedale ajakavale, tähelepanu hajutustele ja kasutajatele, kes ei soovi krüptograafiat õppida. Käsitsi sisestatav entropia peaks jääma kättesaadavaks täiustatud valikuna, kuid pikaajaline eesmärk on riist- ja tarkvara, mis genereerib tugevat juhuslikkust korrektselt, selgitab toimuvat arusaadavalt ja nõuab võimalikult vähe eriteadmisi.
Mida Coldcardi omanikud peaksid kontrollima
Mõjutatud Coldcardi seadmete omanikud peaksid esmalt kontrollima seadmel installitud püsivara versiooni. Seejärel peaksid nad üle vaatama, milliseid funktsioone nad vanema püsivara kasutamise ajal kasutasid, selle asemel et keskenduda ainult peamise rahakoti algandmete genereerimisele.
Kõik, kes kasutasid mõjutatud seadet paberrahakoti, kloonimissaladuse, parooli, kaasallkirjastamisvõtme või autentimiskoodi genereerimiseks, peavad need materjalid tõenäoliselt viivitamatult asendama. Uuenduse installimine takistab sama probleemi tekkimist uute saladuste puhul, kuid ei paranda varem loodud materjale.
See intsident annab ka mitme tootja rahakottide kasutamisele tugevama praktilise põhjenduse. Mitme allkirja süsteemis võib tehingu kinnitamiseks olla vaja erinevate tootjate eraldi riistvaraseadmeid. Selline struktuur ei välista püsivara vigu, kuid see võib takistada, et üksainus defektne juhuslike arvude generaator seaks ohtu kogu rahakoti.
See artikkel tõlgiti inglise keelest tehisintellekti abil. Ingliskeelne originaalversioon on autoriteetne allikas; automaatsed tõlked võivad sisaldada ebatäpsusi, eriti juriidilises ja regulatiivses terminoloogias.
















