Monthly Archives: juni 2014

Blogg Fakta

Obekräftade transaktioner – hur säkra är de?

Ett nytt block i Bitcoinnätverket skapas i snitt var tionde minut och transaktioner som skickats ut på nätverket men ännu inte blivit inkluderade i ett sådant block brukar kallas obekräftade (på engelska unconfirmed). En obekräftad transaktion ses som mer osäker än en transaktion som finns med i ett block eftersom man inte kan vara helt säker på att den någonsin kommer att bli bekfräftad (d.v.s. komma med i ett block). Det skulle t.ex. kunna vara så att samma person skickat ut två olika transaktioner som står i konflikt med varandra (”jag vill skicka de 3 bitcoin som finns på adress A till adress B” och samtidigt ”jag vill skicka de 3 bitcoin som finns på adress A till adress C”). Båda dessa kan inte komma med i ett block så den som lyckas skapa nästa block kommer endast att inkludera en av dem.

Att acceptera bitcoin i butik

En omdiskuterad fråga har därför länge varit hur man kan acceptera bitcoin som betalning i en vanlig butik. Butiken kan ju inte vänta 10 eller 20 minuter innan du får gå därifrån med din kexchoklad så att acceptera obekräftade transaktioner verkar vara nödvändigt. Men är det då inte väldigt lätt att fuska? Att direkt när du gått ut ur butiken skicka en ny transaktion där du skickar pengarna till dig själv och hoppas på att nätverket istället inkluderar denna. En anledning till att detta inte är helt lätt idag är att standardimplementation av Bitcoin alltid väljer att acceptera den första av två motstridiga transaktioner. På så sätt kan man alltså att övervaka nätverket en liten stund så att transaktionen hinner sprida sig och om ingen motstridig transaktion dyker upp vara ganska trygg med att ens transaktion kommer att accepteras. Ett exempel på en implementation av detta finns i plånboken MyCelium som visar en nivå av ”transaction confidence” vilken för en normal transaktion går upp till över 90% inom loppet av några sekunder. Ett vanligt resonemang är att det är ganska krångligt att fuska på det här viset och att sannolikheten att bli utsatt för det är så låg så att det i praktiken inte är något problem. Det skulle kunna vara att jämföra med risken att någon rycker åt sig kexchokladen och springer ut utan att betala.

Men…

Det finns ett stort men här. Det finns inget i Bitcoinprotokollet som säger att den som skapar ett block måste välja den första transaktionen! Varje miner väljer själv vilka transaktioner denne vill inkludera i sitt block och så länge ingen av transaktionerna är direkt ogiltiga så kommer blocket att accepteras av nätverket (och det måste vara såhär eftersom du inte kan veta vilken transaktion den andra noden såg först – det finns inget som säger att den transaktion du såg först är mer ”rätt” än den som den andra noden såg först). Vi förstår nu att det skulle kunna vara lockande för den som skapar ett block att inkludera en andra, motstridig transaktion även om den kom långt senare om den har en högre avgift inkluderad (eftersom denna avgift tillfaller blockskaparen).

Ett annat stort men är att det trots allt kanske inte är så svårt att fuska. Double-spending unconfirmed transactions is a lot easier than most people realise skriver Peter Todd och vad det handlar om här är att olika versioner av Bitcoinklienten har olika regler för om en transaktion ska inkluderas eller ej. Transaktioner som uppfyller vissa villkor kan skickas helt utan avgift men för andra transaktioner kommer klienten att kräva att en liten avgift bifogas. Storleken på denna minimiavgift ändrades nyligen och en effekt som kan uppstå då är att under tiden att relativt få miners uppgraderat till den nya versionen så kan det gå att få en transaktion att sprida sig på nätverket utan att sannolikheten är speciellt stor att den inkluderas i nästa block. Skickar man då även ut en annan transaktion som kommer att accepteras av alla så är chansen stor att den kommer att ersätta den första.

Replace-by-fee

Att välja transaktionen med högst avgift (istället för den först sedda transaktionen) brukar kallas replace-by-fee och en stor förespråkare för att detta borde vara standardimplementationen i Bitcoin är ovan nämnde Peter Todd (se t.ex. why you should mine with replace-by-fee). Resonemanget från Todd är att obekräftade transaktioner nu inger en falsk trygghet och att det vore bättre om det blev tydligt att de faktiskt är osäkra och att anpassa all mjukvara efter detta faktum.

Skulle detta då innebära att det blir omöjligt att ta emot Bitcoin i butik? Lyckligtvis finns det lösningar på problemet, om alla använder replace-by-fee så blir det möjligt för en butik att skydda sig på helt nya sätt. Låt oss säga att butiken tar emot en transaktion T1 och fuskaren sedan skickar ut transaktion T2 med en högre avgift. Butiken kan då ”slå tillbaka” genom att skicka vidare alla pengar från T1 som avgift i en ny transaktion T3. Nu är det mer intressant för miners att välja transaktion T1 och T3 istället för T2 och fuskaren blir därmed av med sina pengar. I det här fallet får alltså inte butiken heller några pengar men själva vetskapen om att butiken kommer att bete sig på det här sättet gör att fusket blir ointressant att försöka sig på. Den här typen av motåtgärder är förstås något som i så fall skulle implementeras i butikens mjukvara och utföras automatiskt.

Vad som kommer att hända i det här frågan är ännu ovisst. Många verkar överens om att Peter Todds resonemang är korrekt och att replace-by-fee är att föredra men han har fått ta emot en hel del kritik för att han så aggressivt uppmanar miners att använda replace-by-fee redan nu innan mjukvara för att hantera motåtgärderna är på plats.

 

Nyheter

Söder loves Bitcoin

Här kommer ett meddelande från initiativtagarna bakom projektet Söder Loves Bitcoin

Söder Loves Bitcoin är ett projekt som ska främja användandet av och kunskapen kring Bitcoin på Södermalm i Stockholm. Inspirationen kommer ifrån Bitcoin Boulevard i Haag och visionen är att bli det bitcointätaste området i världen.

Projektet är skapat för att skynda på utvecklingen av användandet av Bitcoin som betalmedel i Sverige. Södermalm är ett perfekt ställe att genomföra något sådant. Dels finns det väldigt mycket entreprenörer som driver sina egna unika butiker och kan fatta beslut om egna betalsystem m.m. Dels är butikerna i sig mycket spännande och unika och förtjänar uppmärksamhet i både svenska och utländska kanaler.

Bitcoinnyheter har en tendens att sprida sig världen över och det gör detta projekt mycket spännande för handlarna att vara med på, då Södermalm med Sofo och Hornstull varje år redan idag lockar mycket turister till Stockholm och har blivit omskrivet både i The New York Times och Italienska Vouge.

Tanken är därför att Söder Loves Bitcoin ska bli startskottet för fler områden i Sverige att börja acceptera bitcoin som betalmedel, och göra bitcoin mer folklig och självklar.

Svenska BTCX som är Sveriges första exchange för bitcoins erbjuder handlarna att använda sitt Point of sale system BTCX|POS, som gör att handlarna får svenska kronor på sitt bankkonto direkt i utbyte för de bitcoins de får in, utan avgift för handlaren. Detta gör att handlaren kan betala sina räkningar som vanligt utan valutarisk och därmed blir det lättare att börja hantera bitcoins. Vissa handlare har jämfört det med digitala Rikskuponger. Så enkelt är det!

Projektet samarbetar idag med olika handlares organisationer på Södermalm för att få ut sitt budskap, bland annat ska projektet presenteras på SOFO-Företagarförenings frukostmöte på Scandic Malmen i början av juni. Liknande organisationer och butiker är välkomna att boka in möten.

En tredje part i projektet är Svenska Bitcoinföreningen som verkar för att främja användandet av Bitcon i Sverige. De finns med som en som en oberoende part för att informera om hur bitcoin fungerar.

I sommar kommer också en Bitcoinautomat att placeras på Södermalm. Denna kommer handlarna få tävla om att få ha i sin butik efter bästa motivering. Vill du veta mer om projektet så gå in och gilla deras facebook-sida.

Eller skriv till soderlovesbitcoin@gmail.se.