Egy szokásos hatoldalú kocka minden dobásnál körülbelül 2,6 bitnyi előre nem jelezhető információt szolgáltat. Ez elsőre talán nem tűnik soknak, de elegendő számú ismétléssel ezek a dobások létrehozhatják azt a nyers véletlenszerűséget, amely a bitcoin-pénztárca biztonságához szükséges anélkül, hogy szoftverre vagy elektronikus alkatrészre lenne szükség.
A kockadobásoknak köszönhetően a Bitcoin-kulcsok offline állapotban maradnak, de nem mindenki fog ezzel foglalkozni

Főbb tanulságok
- Egy tisztességes hatoldalú kocka dobása Claude Shannon képlete szerint körülbelül 2,585 bit entrópiát biztosít.
- A Coinkite dokumentációja szerint 50 kockadobás elegendő a bitcoin-pénztárca magjának 128 bites szabványának teljesítéséhez.
- Kevin Loaec „Wizard Sardine” elemzése a fő magon túlmutató kockázatokat tárt fel a Coldcard eszközökkel kapcsolatban.
Miért olyan nehéz megjósolni egy kockadobás eredményét?
Claude Shannon, az információelméletet megalapozó matematikus, az entrópiát használta az eredmény bizonytalanságának mérésére. Egy tisztességes hatoldalú kocka esetében minden oldalnak ugyanakkora, egy a hathoz esélye van a megjelenésre. Ez minden dobásnál körülbelül 2,585 bit entrópiát eredményez. Egy érmefeldobás 1 bitet eredményez, míg egy nyolcszögletű kocka 3 bitet.
A Coldcard körüli legutóbbi botrány a közösségi médiában előtérbe hozta a kockán alapuló maggenerálást. Egyes felhasználók ma már elengedhetetlennek tartják, mások szerint ez védte meg a pénzüket, míg a tapasztalt felhasználók rámutatnak, hogy a legtöbb újonc nem fogja eltűrni a lassú, hibalehetőségekkel teli beállítási folyamatot.
A lényeg nem az, hogy a guruló kocka atomi szinten véletlenszerűen viselkedne. Nem így van. Az eredményt a fizika szabályozza, de túl sok apró változó változik egyszerre ahhoz, hogy bárki is megbízhatóan kiszámíthassa a kimenetelt. A kocka bizonyos sebességgel, szöggel, magassággal és forgással hagyja el a kezet, majd az asztalra csapódik, és minden pattanásnál irányt vált.
A gyakorlatban még a dobás legkisebb változása is teljesen más eredményt hozhat. Egy kissé eltérő ujjpozíció vagy egy cseppnyivel erősebb dobás annyira megváltoztatja a pályát, hogy a végső számot a mozgás figyelésével nem lehet megjósolni. Az eredmény elméletileg determinisztikus lehet, de a pénztárca generálás szempontjából az a fontos, hogy egy támadó ne tudja azt reprodukálni vagy kiszámítani.
A kockadobások használható adatokká alakítása
A számítógép nem tudja közvetlenül felhasználni a kockadobások eredményeinek listáját. A dobásokat először bináris adatokká kell átalakítani, és az átalakítás módja fontos.
Egy egyszerű páros-páratlan módszer könnyen érthető, de a rendelkezésre álló entrópia nagy részét elpazarolja. Minden dobás egyetlen bitre redukálódik, annak ellenére, hogy a kocka körülbelül 2,6 bit információt termelt. A hatékonyabb módszerek hosszú dobássorozatot gyűjtenek össze, és a teljes sorozatot feldolgozzák, általában kriptográfiai hash-függvény segítségével. Ez sokkal jobban megőrzi a véletlenszerűséget.
Ugyanez az elv jelenik meg a Diceware-ben is, egy régóta alkalmazott módszerben a biztonságos jelszavak létrehozásához, valamint a manuális Bitcoin-pénztárca generálásában. Egy tipikus, 12 szóból álló pénztárca-helyreállítási kifejezés 128 bit entrópiából épül fel. Körülbelül 2,6 bit/dobás arány mellett körülbelül 50 tisztességes dobás elegendő nyers információt biztosít ahhoz, hogy átlépjük ezt a küszöböt.
A Coldcard hardveres pénztárca gyártója, a Coinkite 99 vagy annál több dobást ajánl azoknak a felhasználóknak, akik közel 256 bit entrópiát szeretnének elérni. Ez nem teszi kétszer olyan bonyolulttá a pénztárca használatát, de a generált titkos kulcsnak sokkal nagyobb matematikai biztonsági tartalékot biztosít.
A kockával generált magok valós körülmények közötti tesztelése
Ez a különbségtétel akkor vált fontossá, amikor a Coinkite nyilvánosságra hozott egy 2021-re visszanyúló firmware-problémát. Egyes Coldcard-eszközökön a szoftver kihagyhatta a belső hardveres véletlenszám-generátort, és helyette egy gyengébb, nem titkos eszközadatokhoz kapcsolódó eljárást alkalmazhatott.
Mivel ennek a folyamatnak egyes részei rekonstruálhatók voltak, a támadók képesek voltak leszűkíteni a lehetséges pénztárca-kulcsok körét, ahelyett, hogy az egész kulcstérben kutattak volna. A hibát összefüggésbe hozták azzal, hogy keleti idő szerint délután 1 órakor becslések szerint 1 128,6633 BTC-t loptak el körülbelül 1 100 címről.

Azok a pénztárca-magok, amelyeket teljes egészében elegendő számú független kockadobásból hoztak létre, nem voltak kitéve ennek a biztonsági résnek. Ezek a felhasználók saját entrópiát adtak meg, így a hibás hardveres generátor nem volt felelős az elsődleges pénztárca-titok létrehozásáért.
Ez a védelem azonban csak a kockadobásokból előállított magra vonatkozott. Nem védte automatikusan az eszköz által generált minden egyéb titkot.
Wizard Sardine megvizsgálja a apró betűs részt
Kevin Loaec biztonsági kutató augusztus 1-jén közzétett egy értékelést a Coldcard sebezhetőségéről a Wizard Sardine weboldalán. Legfontosabb észrevétele a Coldcard azon funkcióira vonatkozott, amelyek az elsődleges pénztárca magjától függetlenül generálták saját titkaikat.
„Úgy vélem, rendkívül fontos hangsúlyozni, hogy még azok a felhasználók is sebezhetőek, akik kockával importáltak vagy generáltak magot, ha a következő funkciókat használják” – írta Loaec az X-en, mielőtt bemutatta az érintett rendszer diagramját.
Az ábra azt mutatja, hogy a hibás véletlenszám-generátor több másodlagos Coldcard-funkciót is ellát. Ezek közé tartozik a papírpénztárca létrehozása, az eszköz klónozása, az USB-munkamenet titkosítása, a Secret Teleport átutalási funkció, a társaláírási kulcs létrehozása, a beépített jelszógenerátor és a hardveres biztonsági modul hitelesítési kódjai.

A 99 kockadobással létrehozott elsődleges pénztárca a rendszer egy külön részében maradt. A probléma az volt, hogy a többi eszköz továbbra is friss véletlenszerű adatokat kérhetett a hibás generátortól. Ennek eredményeként egy biztonságos mag nem garantálta, hogy minden, ugyanazon az eszközön létrehozott jelszó, biztonsági másolat, hitelesítési kód vagy másodlagos kulcs egyformán biztonságos legyen.
Miért nem fognak kockát dobni a legtöbb új felhasználó
A kockával generált entrópia technikailag megbízható, ha helyesen végzik el, de a legtöbb új felhasználó számára nem reális alapbeállítás. 50 vagy 99 alkalommal kockát dobni, minden eredményt pontosan beírni, és ellenőrizni, hogy egyetlen dobás sem maradt ki vagy ismétlődött meg, türelmet és nagy koncentrációt igényel. Egyetlen elgépelt szám is teljesen megváltoztathatja a végső pénztárcát, és a legtöbb eszköz nem tudja megkülönböztetni, hogy a hiba rossz kockadobásból, beviteli hibából vagy az utasítások félreértéséből származik-e.

A folyamat olyan kockázatokat is magában hordoz, amelyek egy megfelelően működő hardveres generátor használata esetén nem merülnek fel. A felhasználók papírra írhatják a dobáseredményeket, lefényképezhetik őket, bevihetik egy online eszközbe, vagy olyan helyen hagyhatják a listát, ahol mások is megtalálhatják. Vannak, akik ismétlődő vagy kontrollált módon dobják a kockát, manipulált vagy sérült kockát használnak, vagy idő előtt abbahagyják a folyamatot, mert túlzottnak érzik. A matematika ugyan szilárd alapokon áll, de az eredmény csak annyira biztonságos, amennyire a felhasználó eljárása az.

Éppen ezért a kockadobás sok ember számára – még a tapasztalt bitcoin-felhasználók körében is – nem mindig számít a legjobb módszernek. A készülékbe vetett bizalmat egy manuális folyamatba vetett bizalommal váltja fel. Egy technikailag körültekintő felhasználó számára, aki érti az entrópiát, ellenőrzi a módszert, és titokban tartja a dobási sorrendet, ez a csere értelmes lehet. Egy átlagos vásárló számára, aki először állít be pénztárcát, ez több lehetőséget is kínál egy visszafordíthatatlan hiba elkövetésére, miközben egyben bosszantó folyamat is.

Nehéz elképzelni a bitcoin széles körű elterjedését is, ha az embereknek egy asztalnál kell ülniük, és 99 kockadobás eredményét kell rögzíteniük, mielőtt biztonságosan átvehetnék a pénzt. A biztonsági gyakorlatoknak ki kell állniuk a valódi otthoni körülményeket, a zsúfolt napirendet, a figyelemelterelő tényezőket, valamint azokat a felhasználókat, akik nem akarnak kriptográfiát tanulmányozni. A manuális entrópia továbbra is elérhetőnek kell maradnia egy haladó szintű opcióként, de a hosszú távú cél olyan hardver és szoftver, amely helyesen generál erős véletlenszerűséget, világosan elmagyarázza, mi történik, és a lehető legkevesebb szakértelmet igényel.
Mit kell ellenőrizniük a Coldcard-tulajdonosoknak
Az érintett Coldcard-eszközök tulajdonosainak először ellenőrizniük kell az eszközre telepített firmware-verziót. Ezután át kell tekinteniük, hogy milyen funkciókat használtak a régebbi firmware futtatása közben, ahelyett, hogy kizárólag a fő pénztárca magjának generálására koncentrálnának.
Akik az érintett eszközt használták papírpénztárca, titkos kulcs másolása, jelszó, társaláírási kulcs vagy hitelesítési kód generálására, azoknak esetleg azonnal ki kell cserélniük az adott anyagot. A frissítés telepítése megakadályozza, hogy ugyanaz a probléma új titkos kulcsokat érintsen, de a korábban létrehozottakat nem javítja ki.
Az incidens egyúttal erőteljesebb gyakorlati érvet szolgáltat a több gyártótól származó pénztárcák használata mellett. Többaláírásos rendszerben előfordulhat, hogy egy tranzakció jóváhagyásához különböző gyártók különálló hardvereszközeire van szükség. Ez a felépítés ugyan nem teszi lehetetlenné a firmware-hibákat, de megakadályozhatja, hogy egyetlen hibás véletlenszám-generátor önmagában veszélybe sodorja az egész pénztárcát.
Ezt a cikket mesterséges intelligencia segítségével fordították le angolról. Az eredeti angol nyelvű változat a hiteles forrás; az automatikus fordítások pontatlanságokat tartalmazhatnak, különösen a jogi és szabályozási terminológiában.
















