fredag 12. juni 2020

Ver din eigen bank

"Be your own bank" har vore eit slagord i Bitcoin- og kryptomiljøet. Det høyrest flott ut, du kan gi deg sjølv tittelen banksjef :) Men det mange gløymer, er at du også blir sikkerheitssjef i den nye banken din. "Sikker som banken" blir meir enn eit slagord, det blir ei kjempeutfordring for deg. Størrelsen på utfordringa er sjølvsagt avhengig av størrelsen på "innskotet" ditt. Men om du har betydelege midlar i din eigen bank, har du betydelege utfordringar. Den største utfordringa heiter single point of failure (SPoF). Det er i grunnen ironisk, gitt at blokkjedeteknologien er desentral og nettopp utvikla for å unngå eit sentralt angrepspunkt.

For mange vil sikringa av kryptoverdiar starta med at du flytter kryptovalutaen(e) frå ei vekslingsteneste og til di eiga lommebok. Då har du flytta ansvaret frå ei tredjepart-teneste, til deg sjølv, og har berre deg sjølv å skulda på. Du er både banksjef og sikkeheitsansvarleg.

Såfrø

Det første steget i sikringa av din eigen bank er å skriva ned dei såkalla såfrøa, seed phrase, som er ei liste med 12, 18 eller 24 ord. Desse orda er grunnlaget for alle private nøklar du (dvs. lommeboka di) kjem til å laga. Orda blir kalla a mnemonic seed phrase og er ei hugseliste, eller hugseregel, for å letta re-generering av private nøklar. Metoden er dokumentert i BIP 39 (Bitcoin Improvement Proposal) og har vorte ein standard i kryptoverda.

Eksempel på "seed" når du installerer ei krypto-lommebok
Orda er valde ut får ei liste på 2048 engelske ord, og det finst også ordlister på kinesisk, japansk, koreansk, fransk, spansk, italiensk og tsjekkisk. Dessverre ikkje på norsk så langt eg kjenner til, men det kan jo vera ei passe utfordring til utviklarar med interesse for sikkerheit og krypto.

Det viktige er at med desse orda kan du få tilgang til krypto-verdiane dine sjølv om du skulle vera så uheldig å mista kryptolommeboka gjennom å mista mobilen din, eller om ei anna kryptolommebok skulle forsvinna.

Du kan lesa meir om korleis BIP 39 og mnemonic seed phrase verkar her.

Eit steg til

Metoden over er grei nok til mindre verdiar i ei mobil-lommebok eller liknande. Viss du har så store verdiar at det blir ugreit, kanskje svært ugreit, om dei skulle forsvinna, er det ein regel som gjeld: Lommeboka må ikkje vera tilkopla Internett! Det er det som blir kalla ei kald lommebok, i motsetnad til ei varm lommebok som typisk vil vera ei lommebok på mobilen. På engelsk: hot and cold wallet. Alle aktørar som handterer større mengder kryptovaluta for andre, typisk vekslingstenester, har det meste av midlane i ei kald lommebok (kanskje 95 %) og berre litt tilgjengeleg i ei varm.

Ei kald lommebok kan vera så enkel som ei papirlommebok, dvs. dei nemnde orda du har skrive ned kombinert med at du slettar lommeboka du har på mobilen, eller meir praktisk ved at du skaffar deg ei hardware-lommebok. Eksempel på slike lommebøker er Ledger, Trezor, Coldcard og ei rekkje andre. Alle desse lommebøkene støttar BIP 39, og dermed blir sikker oppbevaring av dei viktige orda avgjerande.

Det er då neste problem melder seg: Korleis skal du sikra desse orda best muleg? Den første tanken din er kanskje å ta ein kopi av orda du har skrive ned, i tilfelle du mistar lappen eller kortet dei er skrivne ned på. Då har du på ein effektiv måte utvida talet på angrepsmulegheiter, så det er ein svært dårleg idé. Men du sit framleis med problemet single point of failure. Dersom nokon får tak i orda dine, er 101 ute, og verdiane borte.

Ein god idé er difor å klippa lappen/kortet i to (som t.d. i illustrasjonen over) og oppbevara dei to halvdelane på ulike, sikre stader. Då har du i alle fall redusert SPoF, sjølv om det kan bli litt meir utfordrande administrativt. Du har framleis også utfordringa med sjølve hardware-lommeboka, som rett nok ikkje er tilgjengeleg frå nettet, men som representerer ein fysisk sårbarheit. Denne er beskytta av ein pin-kode, men det er også alt.

Uavhengig av kva måte du oppbevarer orda på, kan du også bli utsett for phishing-angrep. Eksempelet under, henta frå bedrifta Casa sin blogg, forklarer det meste:

Skriv aldri inn orda på ei nettside!!
Som Jameson Lopp, sikkerheitssjef i Casa, formulerer det:
The only way I can imagine reliably protecting users from falling victim to these tricks is to not hand them the gun (seed phrase) with which they can shoot themselves in the foot. You can't be tricked into handing over a seed phrase if you don't have it in the first place!

Utan frø

Det finst også løysingar som ikkje er baserte på lagring av BIP 39-ord, eit såkalla seedless system.
Casa er eit firma som har spesialisert seg på sikring av kryptoverdiar. Dei utvikla også ein Bitcoin- og Lightning-klient, men har slutta å selja produktet og konsentrerer seg no fullt og heilt om programvare.

Dei har utvikla systemet Casa Keymaster som eit nøkkelsystem for kryptovaluta, i første rekkje for Bitcoin. Systemet byggjer på kjende prinsipp for god sikkerheit (beste praksis), kombinert med viktige kryptoverdiar som suverenitet (du sjølv som bestemmer) og insentiv-strukturar.

Multisignaturar er eit sentralt element i løysinga. Ein multisignatur betyr at det må meir enn ein individuell signatur til for å få ein godkjent signatur. Typiske multisignaturar er 2 av 3, eller 3 av 5. 2 av 3 betyr at to av i alt tre signaturar må vera på plass for å få ein gyldig signatur. Det er ein metode som ofte blir brukt i escrow-løysingar (norsk oversetjing??). Då kan seljar ha ein signatur, kjøpar ein annan og ein uavhengig tredjepart ein tredje. Vanlegvis blir kjøpar og seljar einige, og då er deira signaturar nok til å gjennomføra ein handel. Men i dei tilfella kjøpar og seljar ikkje blir einige, må tredjepart ta stilling til handelen og kan gi seljar eller kjøpar rett, og i kombinasjon med ein av dei sørgja for ein gyldig signatur.

Casa Keymaster kan du lesa meir om her.

Ingen kommentarer: