Transaktionstiden för bitcoin är en stor orsak att bitcoin i princip inte kan användas i vanlig fysisk handel, mer än i små butiker med få kunder. Lightning är en teoretisk tredjeparts-lösning. Men har en annan ide som borde gå att implementera in i själva bitcoin-koden utan att påverka protokollets övergripande decentralisering som tex ökad blocksize gör.
Det är i korta drag en tvåstegsraket, där försändelsen bekräftas i förtid, medan mottagandet bekräftas i efterhand.
Du lägger ut en transaktion till en "transaktionswallet", eller "limobtransaktion", eller "bitcoinsedel", du betalar transaktionsavgiften i förtid. Så när betalning ska göras har den delen av transaktionen massvis med bekräftelser.
Säg att du lägger in 500kr, (eller 500 satoshi) i transaktionswalleten.
Det hamnar på blockkedjan att denna transaktion innehar 500kr. En transaktion som ligger på blockkedjan i limbo med bara en avsändare, men utan mottagare.
Du är i en butik och ska betala för maten, 320kr. Du väljer transaktionswalleten med 500kr och blippar. Terminalen skickar till din mobil förfrågan om 320kr som du måste acceptera, och din mobil skickar transaktions-id:t med ett kryptografiskt bevis att det är det äkta transaktions-id:t, till terminalen.
Terminalen kontrollerar den mottagna informationen med blockkedjan, om transaktionen ligger på blockkedjan och kryptografiska beviset stämmer med transaktions-id:t accepteras det och terminalen skickar förfrågan om nyckeln till mobilen, som mobilen skickar och betalningen är gjord. Bakom kulliserna arbetar terminalen fortfarande, och signalerar till blockkedjan att den wallet som den är programmerad att företräda är mottagaren, tillsammans med det kryptografiska bevis den mottagit från din telefon. Att transaktionen inte är helt färdig när kunden lämnar butiken gör inte butiken något för butikens håll är det redan bekräftat att pengarna kommer hamna på kontot.
Blockkedjan aktiverar transaktionswalleten till en fulländad transaktion i vanlig långsam takt, 320kr till butikens wallet, och 180kr minus eventuella transaktionsavgifter tillbaka till walleten som skapade transaktionswalleten.
Det är osäkrare för ägaren av walleten (kunden) då man måste lita på att butiken faktiskt kommer signalera just 320kr till blockkedjan och inte alla 500kr (om det inte går att kryptografiskt ge en nyckel för precis 320kr, och en för 319.2313421kr etc utan extrem komplexitet eller tungarbetat vilket jag spontant tror det gör), men alla är begränsade att bli av med just de 500 kronorna, inte mer. Blir som en vanlig plånbok med sedlar i. Du gör ett tiotal transaktionswallets hemma då och då, några med 100kr, några med 300kr, några med 500 och några med 1000, så ligger de bara uppradade i appen och du klickar på den som är närmast vad det kostar, avrundat uppåt, när du ska betala.
Så inte zero-trust, utan semi-trust (från kundens håll, men zero-trust från butikens håll), men risken enormt mitigerat av den begränsade mängden pengar man kan förlora om butiken försöker blåsa en (som generellt är enormt mycket lägre av naturliga orsaker med face to face affärer jämfört med internet-affärer).
Så, vad missar jag här? Är inte kryptograf så har säkert missat något.
Pros and cons?
Borde det implementeras?
Det är i korta drag en tvåstegsraket, där försändelsen bekräftas i förtid, medan mottagandet bekräftas i efterhand.
Du lägger ut en transaktion till en "transaktionswallet", eller "limobtransaktion", eller "bitcoinsedel", du betalar transaktionsavgiften i förtid. Så när betalning ska göras har den delen av transaktionen massvis med bekräftelser.
Säg att du lägger in 500kr, (eller 500 satoshi) i transaktionswalleten.
Det hamnar på blockkedjan att denna transaktion innehar 500kr. En transaktion som ligger på blockkedjan i limbo med bara en avsändare, men utan mottagare.
Du är i en butik och ska betala för maten, 320kr. Du väljer transaktionswalleten med 500kr och blippar. Terminalen skickar till din mobil förfrågan om 320kr som du måste acceptera, och din mobil skickar transaktions-id:t med ett kryptografiskt bevis att det är det äkta transaktions-id:t, till terminalen.
Terminalen kontrollerar den mottagna informationen med blockkedjan, om transaktionen ligger på blockkedjan och kryptografiska beviset stämmer med transaktions-id:t accepteras det och terminalen skickar förfrågan om nyckeln till mobilen, som mobilen skickar och betalningen är gjord. Bakom kulliserna arbetar terminalen fortfarande, och signalerar till blockkedjan att den wallet som den är programmerad att företräda är mottagaren, tillsammans med det kryptografiska bevis den mottagit från din telefon. Att transaktionen inte är helt färdig när kunden lämnar butiken gör inte butiken något för butikens håll är det redan bekräftat att pengarna kommer hamna på kontot.
Blockkedjan aktiverar transaktionswalleten till en fulländad transaktion i vanlig långsam takt, 320kr till butikens wallet, och 180kr minus eventuella transaktionsavgifter tillbaka till walleten som skapade transaktionswalleten.
Det är osäkrare för ägaren av walleten (kunden) då man måste lita på att butiken faktiskt kommer signalera just 320kr till blockkedjan och inte alla 500kr (om det inte går att kryptografiskt ge en nyckel för precis 320kr, och en för 319.2313421kr etc utan extrem komplexitet eller tungarbetat vilket jag spontant tror det gör), men alla är begränsade att bli av med just de 500 kronorna, inte mer. Blir som en vanlig plånbok med sedlar i. Du gör ett tiotal transaktionswallets hemma då och då, några med 100kr, några med 300kr, några med 500 och några med 1000, så ligger de bara uppradade i appen och du klickar på den som är närmast vad det kostar, avrundat uppåt, när du ska betala.
Så inte zero-trust, utan semi-trust (från kundens håll, men zero-trust från butikens håll), men risken enormt mitigerat av den begränsade mängden pengar man kan förlora om butiken försöker blåsa en (som generellt är enormt mycket lägre av naturliga orsaker med face to face affärer jämfört med internet-affärer).
Så, vad missar jag här? Är inte kryptograf så har säkert missat något.
Pros and cons?
Borde det implementeras?