Pinapagana ng
Featured

Pinananatiling offline ng mga paghagis ng dice ang mga Bitcoin key, ngunit hindi lahat ay mag-aabala

Ang isang karaniwang anim-na-panig na dice ay nagbubunga ng humigit-kumulang 2.6 bits ng hindi mahuhulaang impormasyon sa bawat paghagis. Maaaring hindi iyon mukhang marami, ngunit kapag inulit nang sapat na beses, ang mga paghagis na iyon ay maaaring lumikha ng hilaw na randomness na kailangan upang maseguro ang isang bitcoin wallet nang hindi umaasa sa software o sa isang elektronikong bahagi.

ISINULAT NI
IBAHAGI
Pinananatiling offline ng mga paghagis ng dice ang mga Bitcoin key, ngunit hindi lahat ay mag-aabala

Mga Pangunahing Takeaways

  • Ang isang patas na paghagis ng anim-na-panig na dice ay nagbibigay ng humigit-kumulang 2.585 bits ng entropy, ayon sa pormula ni Claude Shannon.
  • Nakasaad sa dokumentasyon ng Coinkite na 50 paghagis ng dice ay tumutugon sa 128-bit na pamantayan para sa seed ng isang bitcoin wallet.
  • Ang pagsusuri ng Wizard Sardine ni Kevin Loaec ay nag-flag ng panganib sa mga tool ng Coldcard lampas sa pangunahing seed.

Bakit Napakahirap Hulaan ang Resulta ng Paghagis ng Dice

Si Claude Shannon, ang matematikong nagtatag ng information theory, ay gumamit ng entropy upang sukatin kung gaano kawalang-tiyak ang isang kinalabasan. Sa isang patas na anim-na-panig na dice, bawat mukha ay may parehong isa-sa-anim na tsansa na lumabas. Nagbibigay iyon sa bawat paghagis ng humigit-kumulang 2.585 bits ng entropy. Ang paghagis ng barya ay nagbubunga ng 1 bit, samantalang ang walong-panig na dice ay nagbubunga ng 3 bits.

Image of different colored dice

Ang kamakailang Coldcard fallout ay nagtulak sa dice-based na pagbuo ng seed sa buong social media. May ilang user na ngayo’y itinuturing ito bilang mahalaga, may iba namang nagsasabing naprotektahan nito ang kanilang pondo, habang itinuturo ng mga beteranong operator na karamihan sa mga baguhan ay hindi magtitiis sa mabagal at madaling magkamaling proseso ng pag-setup.

Ang mahalagang bahagi ay hindi na ang gumugulong na dice ay kumikilos nang random sa antas-atomiko. Hindi ito ganoon. Ang resulta ay pinamamahalaan ng pisika, ngunit napakaraming maliliit na baryabol ang sabay-sabay na nagbabago kaya hindi kayang kalkulahin ng sinuman ang kinalabasan nang maaasahan. Umaalis ang dice sa kamay na may tiyak na bilis, anggulo, taas at ikot, pagkatapos ay tatama sa mesa at magbabago ng direksyon sa bawat talbog.

Sa praktika, kahit napakaliit na pagbabago sa pagbitaw ay maaaring magbunga ng ganap na ibang resulta. Ang bahagyang naiibang posisyon ng daliri o bahagyang mas malakas na paghagis ay binabago ang landas nang sapat para hindi mahulaan ang huling numero sa pamamagitan ng pagmamasid sa galaw. Maaaring deterministic ang kinalabasan sa teorya, ngunit para sa pagbuo ng wallet, ang mahalaga ay hindi ito kayang ulitin o kalkulahin ng isang umaatake.

Pagbabago ng Mga Haghis ng Dice Tungo sa Magagamit na Datos

Hindi kayang gamitin ng computer ang isang listahan ng mga resulta ng dice nang direkta. Kailangan munang i-convert ang mga paghagis sa binary data, at mahalaga ang paraan ng conversion.

Madaling maunawaan ang simpleng odd-or-even na paraan, ngunit sinasayang nito ang malaking bahagi ng available na entropy. Bawat paghagis ay nababawasan sa iisang bit, kahit na ang dice ay nagbigay ng humigit-kumulang 2.6 bits ng impormasyon. Mas episyenteng mga paraan ang kumokolekta ng mahabang sunod-sunod na paghagis at pinoproseso ang buong string, kadalasan sa pamamagitan ng isang cryptographic hash function. Mas napapanatili nito ang mas malaking bahagi ng randomness.

Makikita rin ang parehong prinsipyong ito sa Diceware, isang matagal nang paraan para gumawa ng ligtas na passphrase, at sa manu-manong pagbuo ng Bitcoin wallet. Ang karaniwang 12-salitang recovery phrase ng wallet ay binubuo mula sa 128 bits ng entropy. Sa humigit-kumulang 2.6 bits bawat paghagis, mga 50 patas na paghagis ang nagbibigay ng sapat na hilaw na impormasyon upang malampasan ang threshold na iyon.

Inirerekomenda ng Coinkite, ang gumagawa ng Coldcard hardware wallet, ang 99 o higit pang paghagis para sa mga user na naghahangad ng malapit sa 256 bits ng entropy. Hindi nito ginagawang doble ang hirap gamitin ang wallet, ngunit nagbibigay ito sa nabuo na lihim ng mas malaking matematikal na safety margin.

Isang Real-World na Pagsubok ng Mga Seed na Nabuo sa Dice

Naging mahalaga ang pagkakaibang iyon matapos isapubliko ng Coinkite ang isang problema sa firmware na nagmula pa noong 2021. Sa ilang Coldcard device, puwedeng laktawan ng software ang internal hardware random-number generator at sa halip ay gumamit ng mas mahina na prosesong nakaugnay sa hindi-lihim na impormasyon ng device.

Dahil ang ilang bahagi ng prosesong iyon ay maaaring buuin muli, nagawa ng mga umaatake na paliitin ang mga posibleng wallet key sa halip na hanapin ang buong key space. Iniugnay ang depekto sa pagnanakaw ng tinatayang 1,128.6633 BTC mula sa humigit-kumulang 1100 address, hanggang 1 p.m. Eastern time.

X screenshot
Pinagmulan ng larawan: X

Ang mga wallet seed na nilikha nang buo mula sa sapat na bilang ng mga independiyenteng paghagis ng dice ay hindi nalantad sa parehong ruta. Ang mga user na iyon ay nagbigay ng sarili nilang entropy, kaya hindi responsable ang may sira na hardware generator sa paglikha ng pangunahing lihim ng wallet.

Gayunman, ang proteksiyong iyon ay tumutukoy lamang sa seed na nabuo mula sa dice. Hindi nito awtomatikong pinoprotektahan ang bawat iba pang lihim na nabubuo ng device.

Sinusuri ng Wizard Sardine ang Maliliit na Detalye

Ang security researcher na si Kevin Loaec ay naglabas ng isang pagtatasa ng Coldcard exploit sa website ng Wizard Sardine noong Ago. 1. Ang pinakamahalaga niyang obserbasyon ay tungkol sa mga feature ng Coldcard na lumilikha ng sarili nilang mga lihim nang hiwalay sa pangunahing wallet seed.

“Naniniwala akong napakahalagang idiin na kahit ang mga user na nag-import o nag-generate ng seed gamit ang dice ay vulnerable, kung ginagamit nila ang mga sumusunod na feature,” isinulat ni Loaec sa X, bago maglahad ng diagram ng apektadong sistema.

Ipinapakita ng diagram ang may depektong random-number generator na nagpapakain sa ilang pangalawang function ng Coldcard. Kabilang dito ang paggawa ng paper wallet, pag-clone ng device, USB session encryption, ang feature na Secret Teleport transfer, paggawa ng co-signing key, ang built-in na password generator, at mga authentication code para sa hardware security module.

X screenshot
Pinagmulan ng larawan: X post sa pamamagitan ng security researcher na si Kevin Loaec.

Ang isang pangunahing wallet na nilikha gamit ang 99 na paghagis ng dice ay nanatili sa hiwalay na bahagi ng sistema. Ang problema ay puwede pa ring humiling ang ibang mga tool ng bagong randomness mula sa may sira na generator. Dahil dito, hindi ginagarantiya ng isang ligtas na seed na bawat password, backup, authentication code, o pangalawang key na nilikha sa parehong device ay kasing-ligtas din.

Bakit Karamihan sa Mga Bagong User ay Hindi Maghuhulog ng Dice

Teknikal na matibay ang dice-generated entropy kapag ginawa nang tama, ngunit hindi ito makatotohanang default para sa karamihan ng mga bagong user. Ang paghagis ng dice nang 50 o 99 na beses, pagpasok ng bawat resulta nang eksakto, at pagkumpirma na walang paghagis ang nalaktawan o nadoble ay nangangailangan ng tiyaga at maraming konsentrasyon. Isang maling na-type na numero lang ay maaaring magbago nang tuluyan sa wallet, at karamihan sa mga device ay hindi kayang sabihin kung ang pagkakamali ay mula sa masamang roll, error sa pagpasok, o maling pag-unawa sa mga tagubilin.

X screenshot
Pinagmulan ng larawan: X

Nagpapasok din ang prosesong ito ng mga panganib na wala sa isang maayos na gumaganang hardware generator. Maaaring isulat ng mga user ang mga roll sa papel, kunan ng litrato, ilagay sa isang online na tool, o iwan ang listahan sa kung saan ito mahahanap ng ibang tao. May ilang tao na naghahagis ng dice sa paulit-ulit o kontroladong paraan, gumagamit ng loaded o sirang dice, o humihinto nang maaga dahil pakiramdam nila ay sobra na ang proseso. Maaaring malakas ang matematika, ngunit ang resulta ay kasing-ligtas lamang ng pamamaraan ng user.

X screenshot
Pinagmulan ng larawan: X

Iyan ang dahilan kung bakit ang paghahagis ng dice ay hindi laging itinuturing na pinakamainam na paraan ng maraming tao, kahit sa mga bihasang bitcoin user. Pinapalitan nito ang tiwala sa isang device ng tiwala sa isang manu-manong proseso. Para sa isang teknikal na maingat na user na nakauunawa ng entropy, sinusuri ang pamamaraan, at pinananatiling pribado ang sunod-sunod na roll, maaaring may saysay ang palitang iyon. Para sa karaniwang bumibili na unang beses pa lang magse-set up ng wallet, nagdaragdag ito ng ilang pagkakataon para makagawa ng permanenteng pagkakamali, habang nakakainis din ang proseso kasabay nito.

X screenshot
Pinagmulan ng larawan: X

Mahirap ding isipin na ang malawakang pag-aampon ng bitcoin ay aasa sa mga taong uupo sa mesa at magtatala ng 99 na resulta ng dice bago sila makakatanggap ng pondo at magawa ito nang ligtas. Kailangang makaligtas ang mga praktika sa seguridad sa mga totoong tahanan, abalang iskedyul, mga distraksiyon, at mga user na ayaw mag-aral ng cryptography. Dapat manatiling available ang manu-manong entropy bilang advanced na opsyon, ngunit ang pangmatagalang layunin ay hardware at software na lumilikha ng malakas na randomness nang tama, malinaw na ipinapaliwanag kung ano ang nangyayari, at nangangailangan ng kaunting espesyal na kaalaman hangga’t maaari.

Ano ang Dapat Suriin ng Mga May-ari ng Coldcard

Dapat munang beripikahin ng mga may-ari ng apektadong Coldcard device ang bersyon ng firmware na naka-install sa device. Pagkatapos, dapat nilang repasuhin kung aling mga feature ang ginamit nila habang tumatakbo ang mas lumang firmware, sa halip na magpokus lamang sa kung paano nabuo ang pangunahing wallet seed.

Ang sinumang gumamit ng apektadong device upang bumuo ng paper wallet, cloning secret, password, co-signing key, o authentication code ay maaaring kailangang palitan agad ang materyal na iyon. Pinipigilan ng pag-install ng update na maapektuhan ng parehong isyu ang mga bagong lihim, ngunit hindi nito inaayos ang anumang nalikha noon.

Nagbibigay din ang insidenteng ito ng mas matibay na praktikal na batayan para sa mga multi-vendor wallet setup. Sa isang multi-signature na kaayusan, maaaring kailanganin ang magkakahiwalay na hardware device mula sa iba’t ibang tagagawa upang aprubahan ang isang transaksyon. Hindi nito ginagawang imposible ang mga bug sa firmware, ngunit maaari nitong pigilan ang isang solong depektibong random-number generator na malantad ang buong wallet nang mag-isa.

Ang artikulong ito ay isinalin mula sa Ingles gamit ang AI. Ang orihinal na bersyon sa Ingles ang opisyal na pinagmumulan; maaaring maglaman ng mga kamalian ang mga awtomatikong pagsasalin, lalo na sa legal at regulatoryong terminolohiya.