De startpagina van 1 miljoen satoshi’s

De startpagina van een miljoen is terug. Waar in 2005 een startpagina pixel voor pixel werd verkocht aan geïnteresseerden, kunnen nu alle bitcoincreatievelingen los gaan met behulp van Lightning.

Onlangs is Satoshi's Place gelanceerd. Een variant op de startpagina van een miljoen, waarbij men tegen betaling van één satoshi een pixel kan claimen. Één satoshi is omgerekend 0,0000527 euro. Al snel ontstond er een strijd om pixels, waarbij creaties van anderen werden beklad en overschreven.

Binnen een week zat Satoshi's Place al op ruim 6500 transacties, waarbij er dagelijks meer dan 1 miljoen pixels ingekleurd werden. Alle Lightning transacties, rond de 1000 per dag, konden worden verwerkt door een simpele ODROID-XU4 met een externe hardeschijf. De website laat zien wat de mogelijkheden van microtransacties middels Lightning zijn, en wat de toekomst ons met minimale middelen mogelijk zou kunnen brengen.

Zo is er een Lightning variant, Pokétoshi, van Twitch Plays Pokémon in het leven gebracht. Hierbij kan men voor een aantal satoshi's een instructie versturen die het spelkarakter uit dient te voeren.

Een timelapse van Satoshi's Place is te vinden op YouTube.

Review: Cryptosteel

Review

Onlangs schreven we een artikel over de recovery seed en hoe je deze het beste kunt bewaren. We hadden het toen al even kort over de Cryptosteel, een oplossing om je recovery seed veilig op te slaan. In dit artikel doen we een review van de Cryptosteel.

Cryptosteel

Tot zover hebben we op bitcoin.nl alleen reviews gedaan van de verschillende beschikbare hardware wallets: de Trezor One, de Trezor Model T, de Ledger Nano S en de Digital BitBox. Deze review is net wat anders. De Cryptosteel is namelijk geen wallet die je dagelijks kunt gebruiken, maar een veilige opslag voor je recovery seed. Alle bitcoin-wallets hebben een ding gemeen: bij het aanmaken van de wallet krijg je een recovery seed die je goed dient te bewaren. De recovery seed dient als back-up voor het geval dat de wallet verloren gaat. Het bewaren van deze seed kan nog wel eens een uitdaging zijn, want een grote waarde aan bitcoins bewaren op een stukje papier in je sokkenlade is misschien niet de veiligste oplossing. Enter Cryptosteel.

De Cryptosteel is een roestvrijstalen houder voor je recovery seed. De Cryptosteel is een idee van oprichter en CEO Wojtek Stopiński. De Cryptosteel is verkrijgbaar in verschillende varianten: de MNEMONIC, voor het opslaan van je 12- of 24-woordige seed; de ANYKEY, voor het opslaan van willekeurige reeksen zoals je master seed; de HEX, voor het opslaan van een hexadecimale reeks; en tot slot de MIX, voor het opslaan van zowel recovery seed, master seed en private key of hexadecimale reeks. De prijs van de vier varianten loopt van 79 dollar voor de HEX tot 199 dollar voor de MIX. Elke Cryptosteel wordt met de hand gemaakt in Polen. In deze review bekijken we de MNEMONIC.

Ontvangst

De Cryptosteel komt in een verpakking met creatieve artwork van Rafael Akahira, getiteld "Mutant". De Cryptosteel zit goed verpakt en het uitpakken vergt enige voorzichtigheid om te voorkomen dat er honderden lettertjes door de kamer vliegen. Binnenin vinden we de Cryptosteel zelf en meer dan 245 letters waarmee we onze seed kunnen gaan invoeren. Daarnaast zijn er een aantal lege lettertegeltjes verpakt voor woorden bestaande uit drie letters. De lettertegeltjes zijn dubbel bedrukt: bijvoorbeeld aan de ene zijde een M en aan de andere zijde een D. Zo weten we zeker dat we altijd voldoende lettertegeltjes hebben om onze seed te vormen.

De Cryptosteel klemt zichzelf dicht met een twee metalen pinnen en is open te klappen, waarop de letterlades zich onthullen. De ene zijde bevat ruimte voor de eerste 12 woorden van een 24-woordige recovery seed en de andere zijde voor de overige 12 woorden. De Cryptosteel is 100% gemaakt van roestvrijstaal (AISI 304) en voelt zeer degelijk aan. Hiermee is de Cryptosteel bestendig tegen brand- en vochtschade. Cryptosteel geeft aan dat de opslag vuurbestendig is tot 1200°C, wat beter is dan vuurvaste kluizen van de hoogste klasse. Hoewel de Cryptosteel natuurlijk niet beschermd tegen diefstal van de seed, is deze hiermee wel volledig veilig van alle andere fysieke gevaren. De stalen houder is net wat groter dan het formaat van een bankpas en ongeveer zo dik als de gemiddelde smartphone.

In de praktijk

Voor het invoeren van onze seed moeten we de letterlade openen. Deze zit vergrendeld met een mechanisme dat de lettertegels op zijn plek houdt. Om deze vergrendeling te openen draaien we een schroef (rechtsboven) een kwartslag en duwen we een borgpin (in de gleuf onderin) aan de kant. Het mechanisme voelt zeer degelijk aan en gaat niet zomaar los.

Voor het invoeren van onze seed moeten we de juiste lettertegels bij elkaar zoeken. Zoals je kunt zien is er per woord maar plek voor vier letters. Dit is bewust gedaan, want door de werking van BIP39 zijn slechts de eerste vier letters van elk woord nodig om de wallet te herstellen - 96 letters in totaal. We gebruiken als voorbeeld even een willekeurige 12-woordige seed uit de Bitcoin wiki pagina's:

witch collapse practice feed shame open despair creek road again ice least

Het invoeren van de recovery seed kost even wat tijd, maar na tien minuutjes puzzelen zitten alle letters op zijn plek. Na het sluiten van het vergrendelingsmechanisme worden de lettertegels zeer goed geborgd. Vervolgens rest ons alleen nog de uitdaging van het veilig opbergen van de Cryptosteel, maar omdat deze bestendig is tegen zo'n beetje elk fysiek gevaar kunnen we deze met een gerust hart op een willekeurige plek in de tuin begraven of in de open haard verstoppen.

cryptosteel

Conclusie

De Cryptosteel is een leuke toevoeging om de veiligheid van je bitcoins te verhogen. Voor de opslag van kleine bedragen is de aanschaf misschien niet te moeite waard, maar voor grotere bedragen kan het raadzaam zijn extra voorzorgsmaatregelen te treffen. De Cryptosteel is niet goedkoop, maar wel goedkoper dan de aanschaf van een vuurvaste kluis en de plaatsing daarvan.

Voordelen

  • Water-, roest-, vuur- en stootbestendig
  • Goede bouwkwaliteit
  • Veiliger dan een papieren back-up

Nadelen

  • Relatief duur in vergelijking met een hardware wallet

Restitutie voor slachtoffers Mt Gox

Slachtoffers van het failliete Mt Gox krijgen mogelijk bitcoins terug. Dit blijkt uit de recentelijke gepubliceerde mededeling waarin wordt gemeld dat de huidige faillissementsprocedure een halt wordt toegeroepen. Een petitie van de Mt Gox crediteuren heeft er toe geleid dat de overgebleven bitcoins mogelijk pro rata worden terug gegeven aan de rechtmatige eigenaren.

In de huidige faillissementsprocedure dienen niet-monetaire vorderingen omgezet te worden in monetaire vorderingen. Dit houdt in dat de bitcoins tegen de dagwaarde, van moment van het ingang zetten van het faillissement, zullen worden vergoed. In de rehabilitatieprocedure hoeven de niet-monetaire goederen niet te worden omgezet, en kunnen deze zelf aan de crediteuren worden uitgekeerd. Aangezien de bitcoinwaarde bij het faillissement werd vastgesteld op 483 dollar, zullen de schuldeisers met de teruggave van hun bitcoins, ookal is dit pro rate, een stuk voordeliger uit zijn.

Belangrijke data om in de gaten te houden gedurende de civiele rehabilitatieprocedure zijn:

  1. Bijeenkomst voor voor het melden van de status van de tegoeden en de deadlines voor het insturen van een rapportage: 26 september 2018.
  2. Uiterste datum voor het indienen van het bewijs voor de vorderingen: 22 oktober 2018.
  3. Uiterste datum voor de inventarisatie van alle tegoeden en handelsbalans: 23 januari 2019.
  4. Uiterste datum voor verklaringen omtrent goed- of afkeuring: 24 januari 2019.
  5. Periode waarin al het bewijs wordt beoordeeld: van 31 januari 2019 tot 7 februari 2019.
  6. Uiterste datum voor de voorgestelde rehabilitatieprocedure: 14 februari 2019.

Waar het indienen van claims voor het faillissement voorheen mogelijk was op de website van Mt Gox, zal dit ook op een later moment mogelijk zijn voor de civiele claims. Hiervoor dient gebruik gemaakt te worden van de gebruikersnaam en wachtwoord die aan het gebruikte Mt Gox account toebehoren.

Ook wanneer er in de faillissementsprocedure al een vordering is ingediend, dient men dit nogmaals te doen met de bijbehorende bewijzen. Eventuele aanvullende informatie, en wanneer de claims ingediend kunnen worden, zal op de website van Mt Gox worden medegedeeld.

Bitcoin paper wallets

Tegenwoordig zijn er vele soorten bitcoin wallets beschikbaar. In een vorig artikel zijn we uitgebreid ingegaan op de nieuwste technologie; de hardware wallet. Dit type wallet is momenteel erg gewild, vanwege onder andere de veiligheid die het bied. Er is echter ook een gratis alternatief beschikbaar, wat (mits goed gebruikt) evengoede beveiliging bied. We noemen dit een “paper wallet”.

Een paper wallet is eigenlijk niets meer dan een geprinte versie van de sleutels die nodig zijn om bij je bitcoins te komen. De paper wallet kent een aantal voordelen. Ten eerste kan het fijn zijn om de sleutels tot je bitcoins ergens fysiek  te kunnen bewaren. Dit geeft een stukje meer tastbaarheid en voelt voor sommige mensen misschien veiliger. Ook zijn paper wallets gratis en vrij makkelijk te gebruiken. Je hoeft dus niets aan te schaffen of te installeren. Mits het apparaat waarmee de paper wallet gegenereerd vrij is van virussen of infecties, is het gebruik van een paper wallet ook zeer veilig. De paper wallet kan ook aangemaakt worden op een computer zonder internet, offline dus. Dit geeft als voordeel dat de gevoelige informatie niet in de handen van een hacker op afstand kan vallen. 


Hoe werkt het? 


Er zijn verschillende websites die het maken van Bitcoin (of altcoin) paper wallets aanbieden. De bekendste partij is bitaddress.org. Zij bieden het maken van paper wallets aan, en hebben ook nog een aantal andere opties om uit te kiezen. Zo kun je er bijvoorbeeld voor kiezen je sleutels te beveiligen met een wachtwoord, of je sleutels te verwerken in een zogenaamde "Brain wallet" dit is een reeks woorden die ook wel een "mnemonic" of "seed" genoemd worden. Deze reeks woorden kan later altijd gebruikt worden om je sleutels te herstellen, en opnieuw toegang te krijgen tot de bitcoins. 


tekbchowtomakeapaperwallet

In het geval van een standaard paper wallet krijg je altijd een "Public key" en een "Private key" De public key is jouw bitcoin adres. Dit adres kan met de buitenwereld gedeeld worden, zodat mensen bitcoins naar jou kunnen overmaken. De private key is nodig om de bitcoins uit te geven, en dien je dus altijd voor jezelf te houden. Als deze in handen valt van iemand anders, kan hij jouw bitcoins uitgeven. Heeft iemand dus jouw private keys, dan heeft hij jouw bitcoins. 

samplebitcoinpaperwallet

Voorbeeld van een paper wallet

Hoe maak ik een paper wallet?

  • Ga naar bitaddress.org (eventueel kan de webpagina opgeslagen worden, om hem zo later offline te kunnen openen) - Beweeg heen en weer met je muis totdat je 100% ziet. De gegevens zijn dan zeker weten uniek
  • Bij "Single Wallet" kun je de public key en de private key vinden. Je zou deze kunnen overnemen/kopiëren
  • Handiger is om op het kopje "Paper Wallet" te klikken. hier kun je een kant en klaar format met beide keys vinden. Deze kan uitgeprint worden.
  • Bij de "Brain Wallet" kun je de keys verwerken in een reeks (zelf gekozen) woorden

LET OP: We raden aan altijd gebruik te maken van de optie "BIP 38 encrypt" Dit versleutelt je private keys met een eigen gekozen wachtwoord. Dit wachtwoord is vervolgens weer nodig wanneer je de keys wil importeren in een andere wallet.


Lightning: superconductor in de maak

In eerdere artikelen zijn we uitgebreid ingegaan op de basisprincipes van het Lightning netwerk, waaronder payment channels en bijbehorende HTLC's.

Tot op heden laat de gebruiksvriendelijkheid van het Lightning netwerk nog te wensen over. De Lightning implementaties zijn nog allemaal in de beta fase, waarin het vooral noodzaak is om alle vouwen glad te strijken voor een soepele gebruikerservaring. Er worden gedurende dit proces nieuwe ideeën geopperd om dit te bewerkstelligen.

Watchtowers

Een van de nieuwe ideeën zijn watchtowers. Om het nut van watchtowers te achterhalen dient er eerst begrepen te worden hoe het strafmechanisme binnen Lightning werkt, wat er voor zorgt dat men eerlijk blijft gedurende het onderhouden van een payment channel.

Waar payment channels werken met het bijhouden van de staat — de balans die onderling is afgesproken — van de channels, zorgt het strafmechanisme ervoor dat men niet zonder consequenties een oudere staat van de balans kan broadcasten. Dit zou Alice mogelijk willen doen wanneer zij een betaling heeft gedaan aan Bob. Alice kan door de oude staat van de payment channel te gebruiken haar balans van vóór de betaling terug krijgen. Wanneer men een oudere staat verstuurt naar het bitcoinnetwerk, detecteert het strafmechanisme dit en zorgt ervoor dat de oneerlijke partij de volledige balans over dient te dragen aan de wederpartij, als zijnde een boete. Hierdoor resulteert oneerlijk gedrag dus in verlies van tegoeden.

Om eventuele oneerlijke transacties te detecteren, en zo verlies van tegoeden te voorkomen, dient er een Lightning node online te zijn die dit in de gaten kan houden. Bij zo'n node komt helaas ook alle extra data van de blockchain mee. Het is dus zo goed als onmogelijk om dit volledig soeverein te doen op bijvoorbeeld een mobiele telefoon. Naast de dataopslag van vele gigabytes dien je ook nog eens permanent verbonden te zijn met het netwerk. Hier schieten watchtowers te hulp.

Watchtowers houden voor jou de transacties in de gaten. Het gebruik van een derde partij voor validatie van transacties is vaak niet wenselijk. Het streven is een groot aantal onafhankelijke en zelf gekozen watchtowers te kunnen raadplegen. Deze watchtowers zullen vervolgens melding maken wanneer er iets niet in de haak is. Zo is te voorkomen dat een oudere staat van een payment channel wordt gebruikt door de wederpartij, wat zou kunnen resulteren in een verlies van balans.

Het broadcasten van een oude staat kan, naast door een kwaadwillende wederpartij, ook door een eigen wallet gebeuren. Dit kan voor komen wanneer de eigen wallet niet op de hoogte is van de laatste staat van de payment channel. Bijvoorbeeld wanneer een wallet hersteld dient te worden zonder dat alle actuele data zich in de wallet bevindt. Hierdoor broadcast de wallet mogelijk zonder kwade bedoelingen een oudere staat waardoor het strafmechanisme in werking wordt gesteld, resulterend in een verlies van tegoeden.

eltoo

Eltoo is een door Christian Decker en Rusty Russell geopperde verandering van het strafmechanisme. Waar tot op heden een boete wordt gehanteerd voor het bewust of onbewust broadcasten van een oude staat, zoekt eltoo de oplossing in het uitsluitend mogelijk maken van het broadcasten van de laatste staat. Dit voorkomt dus de behoefte om een straf op te leggen voor het broadcasten van een oude staat. Het grootste voordeel hiervan is dat het hiervoor geschetste probleem, met een niet up-to-date wallet, zich niet meer voor zal doen. Zo zal een Lightning gebruiker zonder kwade intenties tegoeden niet verliezen door het broadcasten van een oude staat.

eltoo

In bovenstaande afbeelding wordt een voorbeeld getoond van het eltooprotocol. Het laat zien hoe een tussenstaat overgeslagen kan worden door het koppelen van een latere transactiestaat aan een eerdere transactie. Het koppelen is ook mogelijk aan de initiële setuptransactie. Alleen de laatste settlementtransactie kan zo bevestigd worden op de Bitcoin blockchain.

Om eltoo functioneel te krijgen moet er een kleine aanpassing gedaan te worden aan het bitcoinprotocol. SIGHASH_NOINPUT dient geïntroduceerd te worden voor de digitale handtekeningen van bitcointransacties. Deze verandering kan middels een soft fork uitgevoerd worden, mocht men het eens worden over hoe deze verandering het beste geïmplementeerd kan worden.

Splicing

Tot op heden is het betalen via Lightning bij bijvoorbeeld een webshop die slechts directe bitcoinbetalingen accepteert niet mogelijk, zonder eerst de volledige payment channel te sluiten. Splicing maakt het mogelijk om vanuit een Lightning channel direct een onchain transactie te doen, zonder dat de payment channel hiervoor gesloten hoeft te worden. Dit maakt het vastzetten van bitcoins in een payment channel flexibeler doordat deze naast Lightning betalingen ook nog de functionaliteit van een onchain transactie blijft behouden.

Dit is ook vice versa mogelijk; het ophogen van de balans van een payment channel met een onchain bitcoin transactie, zonder het hoeven sluiten van een oude channel en het openen van een nieuwe. Splicing maakt hierbij gebruik van veranderen van de balans van de transactie waarmee de channel werd geopend.

Atomic Multipath Payments (AMP)

Lightning maakt gebruik van een routingmechanisme waarbij bitcoins via meerdere hubs verstuurd kunnen worden. Een hub kan slechts de hoeveelheid bitcoins doorsturen die zich in de wallet van de hub zelf bevindt. Het Lightning netwerk faciliteert snelle en kleine transacties tegen minimale kosten. Doordat een Lightning wallet gezien kan worden als een portemonnee met kleingeld voor de dagelijkse koffie, is het lastig om grotere bedragen te versturen. Dit komt doordat elke hub voldoende balans dient te hebben om de bitcoins bij de begunstigde te krijgen, wanneer er geen directe payment channel in stand is gebracht.

AMP maakt het mogelijk om een grotere betaling in kleinere delen op te splitsen en deze via meerdere routes naar de begunstigde te sturen, waarna de ontvanger de betaling als één ontvangt. Zo kan een groot bedrag toch door kleinere hubs worden doorgestuurd.

Bitcoins ontvangen met BTCPay

BTCPay Server is een open-source payment processor, die lijkt op de oplossing van BitPay. Het grote verschil is dat BTCPay open-source is en een webshop in staat stelt zelf direct bitcoins te ontvangen, zonder tussenpartij zoals BitPay.

Bitcoin ontvangen zonder tussenpartij, zoals het hoort

BTCPay is een project van Nicolas Dorier, Bitcoin Core-ontwikkelaar. BTCPay stelt webshops er toe in staat hun eigen node te draaien en direct bitcoin-betalingen te ontvangen, zonder extra maandelijkse kosten of tussenpersoon, en zonder censuur. BTCPay is geschreven in C# en kan samenwerken met de API van BitPay, waardoor het voor webshops simpel is om over te stappen. Ook biedt BTCPay ondersteuning voor het accepteren van lightning-betalingen.

BTCPay wordt met name ontwikkeld omdat het beter in lijn is met de filosofie achter bitcoin: direct van persoon tot persoon betalingen ontvangen. Wanneer er een tussenpartij zoals BitPay gebruikt wordt voor het afhandelen van transacties tussen klant en webshop, dan wordt er voorbijgegaan aan de kracht van bitcoin. Zo heeft de webshop namelijk niet zelf de bitcoins in beheer, maar wordt dit gedaan door een derde partij totdat de webshop uitbetaald wordt. Daarnaast vindt de betaling niet meer van persoon tot persoon plaats, maar via een tussenpartij, waardoor de tussenpartij invloed kan uitoefenen op welke betalingen of webshops wel of niet goedgekeurd worden.

Met BTCPay kunnen webshops zelf betalingen ontvangen en zijn zij niet afhankelijk van een derde partij voor de verwerking van deze betalingen of goedkeuring van de dienstverlener. Naast meer controle over de betalingen biedt BTCPay ook meer privacy voor de klanten. Door een eigen oplossing te gebruiken hoeft een webshop namelijk geen informatie over haar klanten meer prijs te geven aan een derde partij, zoals IP adres en gebruikte bitcoinadressen. Nadelig is dat een webshop er met BTCPay niet voor kan kiezen zich uit te laten betalen in euro’s, iets dat vaak nog wel gebeurd. De volledige documentatie van BTCPay is hier te vinden.

Vooruitgang op het netwerk

Op de achtergrond

Vooruitgang op het bitcoinnetwerk betekent niet alleen meer, kleinere, snellere of goedkopere transacties, maar ook het verbeteren van de gezondheid en robuustheid van het netwerk zelf. Ook hier wordt gestaag voortgang geboekt, hoewel dit waarschijnlijk door velen onopgemerkt gaat.

Een robuuster netwerk

Er wordt door de bitcoin-ontwikkelaars aandacht besteed aan het voorkomen van onregelmatigheden op het netwerk en het zo soepel mogelijk doorgeven van transacties en blocks over het netwerk. Wil bitcoin een wereldwijd betaalmiddel zijn, dan is het van belang dat het netwerk altijd betrouwbaar is. Zo nu en dan een storing bij een bank is al vervelend, maar een dergelijke storing mag bij een ambitieus project als bitcoin eigenlijk nooit voorkomen. Tot zover doet bitcoin het wat dat betreft goed, maar er is altijd ruimte voor verbetering en optimalisatie. De tijd die men werkt aan het efficiënt maken van het netwerk is daarom goed besteed.

Een van de punten waarop hier voortgang geboekt wordt is het doorsturen van blocks over het netwerk. Het is van belang dat dit snel gebeurt en een nieuwgevonden block zo snel mogelijk bekend wordt bij alle deelnemers in het netwerk om te voorkomen dat het netwerk niet goed of niet consistent opereert. Wanneer dit - op het eerste oog simpele - onderdeel van het netwerk niet goed functioneert kan het bijvoorbeeld zijn dat transacties een valse bevestiging krijgen die later ongedaan worden gemaakt. Dit zou afbreuk doen aan de betrouwbaarheid van een bevestiging; iets dat uiteraard voorkomen moet worden. Een bevestiging moet definitief zijn, over het hele netwerk.

Daarnaast zou het voor sommige miners nadelig zijn als blocks langzaam over het netwerk verstuurd worden. Het zou bijvoorbeeld kunnen zijn dat de miners die snel een block ontvangen consistent een voorsprong hebben op het vinden van het volgende block, hoewel de rekenkracht die zij hebben gelijk is aan de miners die het block pas later ontvangen. Dit maakt de 'race' naar het vinden van het volgende block oneerlijk. Consistentie over het netwerk en efficiëntie bij het doorsturen van informatie is dus van belang.

Vooruitgang gevisualiseerd

Onderzoekers van de Decentralized Systems and Network Services Research Group (DSN) van het Karlsruher Institut für Technologie (KIT) hebben de afgelopen drie jaar het bitcoinnetwerk gemonitord en op basis van de verzamelde gegevens interessante visualisaties gemaakt. De eerste visualisatie hieronder toont de verspreiding van een block over het netwerk in 2015. Elk stipje op de kaart is een node in het netwerk.

De verspreiding is niet bijster snel te noemen en zou op langere termijn tot de eerder genoemde problemen kunnen leiden. Dezelfde visualisatie is hieronder te zien, maar dan voor 2018. Het is duidelijk hoeveel efficiënter het netwerk een block verspreid - een gezonder netwerk. Hoewel er vandaag de dag natuurlijk meer nodes in het netwerk zijn dan in 2015, is het merendeel van de voortgang te danken aan verbeteringen aan het netwerk.

Vooruitgang betekent niet altijd sneller

Het lijkt logisch om ook het verspreiden van transacties over het netwerk alsmaar efficiënter te maken. Dit is deels waar. Als er manieren zijn om transacties kleiner te maken, zodat het minder bandbreedte kost om deze te verspreiden, dan is een dergelijke optimalisatie zeker de moeite waard. De snelheid van de verspreiding van transacties verbeteren is echter niet even voor de hand liggend.

Er valt namelijk redelijk wat (persoonlijke) informatie te achterhalen op basis van de verspreiding van transacties. Het is aannemelijk dat de eerste node die een transactie doorgeeft, de node is waar de transactie vandaan komt. Hierdoor zou het IP-adres van een node te koppelen zijn aan een transactie. Dit is een anonimiteitsprobleem. Om een dergelijke de-anonimisering uit te voeren is het nodig dat de 'aanvaller', dat wil zeggen: diegene die identiteiten probeert te achterhalen, een redelijk groot aantal nodes in het netwerk heeft om zo goed in de gaten te kunnen houden waar transacties vandaan komen.

Veel bitcoin-analysetools, zoals Chainalysis, werken met soortgelijke technieken. Ook is op bijvoorbeeld blockchain.info bij een transactie te zien welke node (lees: welk IP-adres) de transactie het eerste meldde bij de node van blockchain.info. De betrouwbaarheid van de informatie van dergelijke diensten is echter afhankelijk van de hoeveelheid nodes waarmee de dienst direct verbonden is. Het kan dus bevordelijk zijn voor de privacy van gebruikers om het wat lastiger te maken om te achterhalen waar een transactie in eerste instantie vandaan kwam.

Dit wordt bereikt door een kleine vertraging toe te passen bij het verspreiden van transacties over het netwerk. Door deze vertraging is het lastiger te bepalen van welke node een transactie in eerste instantie afkomstig is. Wanneer een node een transactie doorstuurt naar een enkele andere node en beide nodes pas na een vertraging doorsturen naar volgende nodes, wordt het voor de volgende nodes lastig om te bepalen welke van de twee eerste nodes de oorsprong van de transactie is. Hieronder is een visualisatie te zien van de verspreiding van transacties in 2015:

Vergeleken met de verspreiding in 2018, te zien de visualisatie hieronder, werden de transacties in 2015 sneller doorgegeven dan tegenwoordig. Let wel dat met ongeveer drie seconden in beide visualisaties ongeveer dezelfde hoeveelheid nodes bereikt is; de vertraging doet met name in het begin van de verspreiding zijn werk om het lastiger te maken de oorsprong te identificeren en zorgt over het geheel genomen dus niet voor een vertraging van het netwerk.

Hoewel de vertraging het niet onmogelijk maakt om het IP-adres van oorsprong te achterhalen, wordt het wel een stukje moeilijker gemaakt. Hoeveel moeilijker is onduidelijk, en een onderwerp waar onderzoek naar gedaan wordt. Het verbeteren en robuust maken van de privacy is dan ook niet gedaan met een enkel trucje, maar vereist een samenkomst van verschillende aanpakken.

Bekijk alle visualisaties op de website van de DSN.

Het lightning-betaalverzoek ontcijferen

Een lightning-betaling doen is zeer eenvoudig: je krijgt van de ontvangende partij een reeks die een betaalverzoek vertegenwoordigd, plakt deze in je lightning-wallet en drukt op betalen. Een kind kan de was doen. Maar wat betekent deze reeks?

Human-readable

Het lightning-betaalverzoek lijkt op het eerste gezicht één lang zooitje aan letters en cijfers. "Computertaal", niet leesbaar voor de mens. Interessant om te weten is dat een deel van deze reeks wél leesbaar is voor de mens, ook wel human-readable genoemd. Neem bijvoorbeeld het volgende betaalverzoek:

lnbc5560n1pdde9xypp5upfnu7lcw6sy ...

Een groot deel hiervan is, inderdaad, niet leesbaar voor de mens. Het eerste aantal letters en cijfers is echter wel te ontcijferen. De reeks die het betaalverzoek vertegenwoordigd is namelijk zo ontworpen dat aan de reeks te zien is dat het 1) een lightning-betaling is, 2) of het een bitcoin-betaling is en 3) de hoeveelheid bitcoins die gevraagd wordt in het betaalverzoek. Dit is te zien aan de eerste paar letters en cijfers van de reeks.

lnbc5560n1pdde9xypp5upfnu7lcw6sy ...

  • De eerste twee letters, ln, duiden aan dat dit een betaalverzoek is voor een lightning-betaling.
  • De letters bc duiden aan dat het gaat om een bitcoin-betaling op het live hoofdnetwerk van bitcoin. Hier kan ook tb gebruikt worden om aan te geven dat het gaat om een testnet-betaling.
  • De cijfers 5560 geven aan hoeveel er betaald moet worden en zijn afhankelijk van de vermenigvuldiger die hierna volgt.
  • De letter n is de vermenigvuldiger, waarmee het te betalen bedrag vermenigvuldigt moet worden.
    • De vermenigvuldiger kan zijn m voor milli; vermenigvuldig met 0,001, u voor micro; vermenigvuldig met 0,000001, n voor nano; vermenigvuldig met 0,000000001 en p voor pico; vermenigvuldig met 0,000000000001.

In dit geval betreft het dus een lightning-betaling voor 556 satoshi (5560 x 0,000000001) op het hoofdnetwerk van bitcoin. In de toekomst, wanneer er wellicht meerdere cryptocurrencies gebruik maken van lightning, kan het handig zijn om te kunnen herkennen wat voor betaling er gedaan wordt.

Zo, weer wat geleerd.

Bliksemsnelle games!

De adoptie van het Lightning Netwerk kan natuurlijk niet zonder winkels die lightning-betalingen accepteren. Er komen gelukkig steeds meer online winkels bij die lightning-betalingen accepteren. Zo nu ook Joltfun, een online game winkel die bitcoins en lightning-betalingen accepteert voor allerlei populaire games.

Bliksemsnelle games

Samen met de gestage groei van het netwerk groeit dus ook de lijst met winkels die lightning-betalingen accepteren. Veel van deze winkels dienen nog als 'gimmicky' testwinkels, voor de aankoop van een sticker of t-shirt, maar sommige winkels zetten al de stap richting volwaardige lightning-accepterende webshop.

Joltfun is een online webshop die bitcoin- en lightning-betalingen accepteert voor games van allerlei populaire platformen, zoals Steam, Origin, Uplay en Battle.net. Vaak zijn de games zelfs goedkoper dan op de platformen zelf.

jfgames

Als we bitcoin zien als munteenheid van het internet, dan zal de online game-industrie ongetwijfeld een van de eerste zijn waar bitcoin-betalingen breed geaccepteerd worden. Gamers zijn immers vaak jong, waardoor zij nieuwe technologieën makkelijk oppakken, en technisch handig, waardoor het gebruik van bitcoin een minder grote drempel is dan voor de gemiddelde online shopper.

Door gebruik te maken van lightning-betalingen kunnen de games (in de vorm van activatiecodes) direct worden geleverd aan de kopers; er hoeft niet gewacht te worden op bevestiging van een gewone bitcoin-betaling. Ideaal, want na aanschaf van je nieuwe game wil je natuurlijk zo snel mogelijk van start. Bekijk de video hieronder voor een demonstratie van het aankoopproces voor een kijkje in de toekomst van online betalingen. Hopelijk kunnen dergelijke webshops een hele generatie gamers inspireren en kennis laten maken met de kracht van bitcoin als online betaalmiddel.