Category Archives: Fakta

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.

 

Fakta Nyheter

Bitcoin i Uganda

Från Wikipedia:

Remittering är de pengar som gästarbetare i rikare länder skickar hem till sina familjer i fattigare länder. Den som skickar pengar kallas remittör.

Det är mycket stora summor pengar som skickas som remitteringar varje år. Uppskattningar varierar mellan 2000 och 3000 miljarder kronor, vilket är lika mycket som Sveriges hela BNP. Världsbanken anger 318 miljarder dollar för 2007, en siffra som växte ytterligare under 2008 men förväntas minska 2009 i takt med den ekonomiska nedgången i världen.

Det här är alltså en jättemarknad och avgifterna som tas ut är enorma. 10 procent är helt normalt och det är inte ovanligt med ännu högre avgifter. Se i filmen nedan hur Bitcoin kan hjälpa till!

Blogg Fakta

Skatteverket om kapitalvinstbeskattning av Bitcoin

Skatteverket publicerade förra veckan ett ställningstagande om beskattning av Bitcoin, mer specifikt om kapitalvinstbeskattning. Sammanfattningen lyder:

Bitcoin kan inte likställas med en utländsk valuta. Försäljning av bitcoin ska därför kapitalvinstbeskattas enligt bestämmelserna om övriga tillgångar i 52 kapitlet inkomstskattelagen. Betalning med bitcoin vid exempelvis köp av en vara eller tjänst anses som ett byte och ska därför också kapitalvinstbeskattas.

Den första biten tror jag de flesta köper och kan tänka sig att rapportera. Det som blir jobbigt rent praktiskt är dock den andra delen, att man måste hålla reda på varje enskilt tillfälle då man betalat för något med Bitcoin, vad växelkursen var då och vad man eventuellt har gått plus sedan man införskaffade dessa bitcoins. Det här blir förstås orimligt att kräva om Bitcoin i praktiken används som en valuta.

Intressant att notera är ett att köp här anses som ett ”byte” medan man ur momssynpunkt inte ser det på samma sätt. Jag har tidigare skrivit om Skatterättsnämndens förhandsbesked om moms och Skatteverkets överklagande av detta och vid det tillfället uttalade sig Martin Loeb som stod bakom överklagandet såhär: ”Målet är inte att momsbelägga köpet av Bitcoins. Men det skulle kunna vara moms på själva växlingsavgiften”. I det avseendet är det alltså inte fråga om ett ”byte” när man köper något för bitcoin, eftersom det i så fall skulle betyda att det vore moms på ”båda sidorna”.

Jag gissar att riktlinjerna kring Bitcoin och andra digitala valutor kommer att ändras både en och två gånger de närmsta åren, men hur som helst, om du sålt bitcoins och ännu inte lämnat in din deklaration så är det såhär du ska göra för att Skatteverket ska bli nöjda (jag antar att du deklarerar via nätet).

1. Klicka dig in under bilagor

2. Sedan på K4-blanketten

3. Välj ”Övriga värdepapper…”

4. Och fyll slutligen i den här tabellen

Det luriga är bara att få till omkostnadsbeloppet så att det blir rätt. Har du bara sålt bitcoin en gång och du vet precis vad du köpte dem för så är det enkelt, omkostnadsbeloppet är då inköpspriset * antal. Men har du gjort många köp respektive försäljningar så kan det bli klurigare. Skatteverket har dock ett ganska tydligt exempel i sitt ställningstagande, kolla allra längst ned under ”Åskådningsexempel”.

Fakta Nyheter

Varför rasade kursen?

Den som följde Bitcoins värde runt lunchtid idag såg kursen falla från runt 700 dollar ner till 530 under loppet av en dryg timme. Kursen har nu återhämtat sig till nära den ursprungliga nivån. Så vad var det som hände? Mt.Gox, som trots stora problem fortfarande är en av världens största Bitcoinbörser, har den senaste tiden haft problem med uttag av bitcoin och publicerade idag ett meddelande som förklarade orsaken. Nedan är ett citat ur meddelandet.

Non-technical Explanation:
A bug in the bitcoin software makes it possible for someone to use the Bitcoin network to alter transaction details to make it seem like a sending of bitcoins to a bitcoin wallet did not occur when in fact it did occur. Since the transaction appears as if it has not proceeded correctly, the bitcoins may be resent. MtGox is working with the Bitcoin core development team and others to mitigate this issue.

Meddelandet skapade lätt panik då många tolkade det som en kritisk bugg i Bitcoinprotokollet. Sanningen är dock att denna bugg eller begränsning i protokollet är känd ända sedan 2011 och en sida på Bitcoinwikin som förklarar problemet finns redan. I princip är den tekniska beskrivningen i meddelandet från Mt.Gox korrekt men många har reagerat på hur Mt.Gox lägger skulden på protokollet när det handlar om ett väldokumenterat beteende. Mt.Gox bör ha känt till detta, speciellt eftersom de använder egenutvecklad mjukvara för att hantera transaktioner, och borde ha anpassat sin mjukvara för att hantera situationen istället för att anta att den inte skulle uppstå.

Tekniskt

Såhär står det på wikin:

While transactions are signed, the signature does not currently cover all the data in a transaction that is hashed to create the transaction hash. Thus while uncommon it is possible for a node on the network to change a transaction you send in such a way that the hash is invalidated. Note that this just changes the hash, the output of the transaction remains the same and the bitcoins will go to their intended recipient.

Alltså, om man förlitar sig på det transaktions-ID (den hash) som man får när man skapar och skickar en transaktion för att senare kolla upp om transaktionen faktiskt accepterades av nätverket så kan det hända att man missar den. Men, bitcoin kan fortfarande att ha skickats från den adress man angav till den adress man angav, det är bara det att transaktionen har ett annat ID än det man förväntar sig. Genom att kolla upp vilka transaktioner som skett från/till de aktuella adresserna kan man ändå kontrollera om transaktionen man skickade ägt rum. Detta har Mt.Gox missat att göra och eftersom de istället skickat om transaktionen så har vissa personer kunnat lura till sig dubbla uttag.

Fakta

Vad kommer efter Bitcoin?

Många har nog vid det här laget hört talas om ”altcoins”, alternativa valutor som använder sig av samma teknik som Bitcoin. Många av dessa är rena kopior som startats i syfte att tjäna pengar genom att haka på en trend men några har bidragit med ett visst nytänkande. Litecoin skapades med en tanke om att göra det svårare att konstruera dedikerad hårdvara vilket därmed skulle ge ett mer decentraliserat system där gemene faktiskt kan använda sin egen dator för att bidra till nätverket. Med Primecoin kom en proof-of-work-algoritm som var den första som gjorde någon typ av ”nytta” (utöver dess huvudsakliga syfte, att säkra nätverket), nämligen att leta efter primtal. Jag har också tidigare skrivit om Ripple, ett system för peer-to-peer-krediter som med Bitcointekniken kunde ta steget och bli helt decentraliserat.

Allt detta är mycket intressant men jag tänkte skriva lite om nästa steg, vad tekniken bakom Bitcoin kan ge oss förutom valutor. Bitcoins stora innovation var konstruktionen av ett system som kunde skapa distribuerad konsensus, alltså att få ett helt decentraliserat nätverk att upprätthålla och tillsammans komma överens om innehållet i en gemensam databas. Så robust att denna databas faktiskt kunde användas till att hålla reda på transaktioner och kontobalanser i en ny valuta. Men som Andreas Antonopoulos sa i en video jag nyligen länkade till, ”saying Bitcoin is digital money is like saying the internet is a fancy telephone” och ”money is just the first application”.

Så vad mer kan man använda denna teknik till? Det är det som teamet bakom Ethereum vill att vi själva ska få möjlighet att experimentera med. Man såg att människor försökte bygga intressanta funktioner, dels ovanpå Bitcoinnätverket (saker som decentraliserade börser) och dels som nya separata blockkedjor (se t.ex. Namecoin som är ett decentraliserat system för domännamn), och drog slutsatsen att det som istället behövdes var ett grundläggande, generellt, decentraliserat system som allt detta kunde byggas ovanpå.

Ethereum kretsar kring något de väljer att kalla kontrakt, vilket i princip är datorprogram skrivna i det programmeringsspråk som är själva grundbulten i Ethereum. Vem som helst kan ladda upp ett sådant program som sedan kan ”köras” av den som önskar det. I den tekniska artikel som presenterar Ethereum visas hur man med enkla sådana program kan skapa t.ex. valutor, finansiella derivat, en databas för identiteter/rykte och helt ”autonoma organisationer”. Man resonerar också kring hur systemet skulle kunna användas för att skapa decentraliserade aktiebörser eller marknadsplatser, ett decentraliserat alternativ till Dropbox och mycket annat.

Ethereum innehåller också en egen valuta kallad Ether och det är i denna valuta man betalar avgifter när man vill köra ett program (att ”köra” ett program skulle här alltså, enligt exemplen ovan, t.ex. kunna betyda att registrera sig i en identitetsdatabas, lägga en order på en decentraliserad aktiebörs eller att skicka pengar i en valuta som någon annan skapat). Man kan redan nu ladda ner en testklient och experimentera på det testnätverk som just har öppnat. Innan det riktiga nätverket drar igång så kommer bl.a. en insamling att hållas där de som bidrar med pengar också får ta del av de första enheterna av valutan Ether. Den största mängden Ether kommer dock att, precis som i Bitcoin, skapas genom mining, och Ether kommer att fortsätta skapas i all oändlighet enligt en linjär inflationsmodell.

Om detta lät spännande så finns mer att läsa på ethereum.org. Kolla också in presentationen från Bitcoinkonferensen i Miami där Ethereum presenterades.

Fakta

Hur accepterar jag Bitcoin i min butik?

Jag får en del frågor från butiksägare och andra som vill acceptera Bitcoin men inte vet hur man ska gå tillväga. Alternativen och sätten att göra saker på är så många i Bitcoinvärlden att det lätt kan bli oöverskådligt. Gemensamt för de flesta lösningar är att man på ett eller annat sätt visar upp en Bitcoinadress som man önskar att kunden ska betala till, ofta presenterad i form av en QR-kod. Här till vänster är t.ex. en QR-kod för adressen 1PZnL8drTn6VWeQ9H541NJvHbDT8nv2B4a. Den som ska betala skannar QR-koden med sin mobiltelefon eller klistrar in adressen i sin plånbok på datorn och skickar beloppet (som även det kan vara inbakat i QR-koden, eller i en Bitcoin-länk). Jag kommer här att visa hur man kan göra om man driver en fysisk butik och återkommer i en senare artikel till e-handlarna.

Enklast möjliga lösning

Det absolut enklaste sättet att ta emot Bitcoinbetalningar är att sätta upp en fast QR-kod/Bitcoinadress och låta folk betala till denna. Skapa t.ex. en plånbok på blockchain.info och skapa en adress under fliken Receive Money. QR-koden hittar du under action-menyn till höger. Ladda sedan ner deras app till mobilen eller använd webbplånboken så plingar det till när en betalning kommer in.

Nackdelar med detta är t.ex. att du själv måste översätta det du vill ha betalt från kronor till bitcoin och låta användaren knappa in beloppet själv. En annan nackdel är att eftersom samma adress används hela tiden så kan vem som helst se vilka betalningar som kommit in till den. Alla transaktioner för adressen ovan syns t.ex. här.

En bättre lösning

En något mer sofistikerad och betydligt bättre lösning är därför att fortfarande använda blockchain.info men att generera en ny adress för varje betalning. Har du appen på din mobil kan du trycka på knappen för att ta emot en betalning och där har du dessutom valutakonvertering inbyggt! Tryck in beloppet i kronor och en QR-kod visas. När köparen skannar QR-koden kommer beloppet redan att vara inbakat i QR-koden så allt personen behöver göra är att trycka på ”skicka”. Strax plingar det till i din mobil och köpet är genomfört. Lika snabbt som en kortbetalning men helt utan investeringskostnader eller avgifter för dig som butiksägare (under förutsättning att du äger en smart phone). Sedan kommer förstås någon form av avgift att tillkomma om du vill växla dina bitcoin till kronor.

Lite proffsigare

Om du inte är gör-det-själv-typen och helst vill ha lite trygghet samt någon som löser allt tekniskt åt dig så finns fler alternativ. Internationellt är BitPay den mest kända leverantören av betallösningar för Bitcoin och där finns möjligheten att få in alla betalningar i kronor direkt på ditt bankkonto. Du kan alltså acceptera Bitcoin men själv aldrig behöva befatta dig med annat än kronor. Även svenska BTCX har lanserat en tjänst där du får in pengarna direkt på ditt bankkonto.

Det finns fler företag som erbjuder liknande produkter och tjänster och ett råd till alla, oavsett vilken lösning man väljer, är att noga undersöka vilka de faktiska kostnaderna blir. Om automatisk växling sker, vilken kurs används då och är det något påslag? Svaren på sådana frågor är tyvärr inte alltid så lätta att finna.