lørdag 16. januar 2016

Bitcoins store skalerings-utfordring

"Hard fork" eller "soft fork" for Bitcoin?
Foto: Bitcoin Magazine
Bitcoin står no framfor den største utfordringa sidan starten i januar 2009: korleis skal den veksande mengda transaksjonar handterast? Denne veka vart det full fyr i teltet då Mike Hearn, ex-Google og ein av dei sentrale i utviklarmiljøet rundt Bitcoin, melde seg ut av vennegjengen og smelte att døra i det han storma ut. Hearn var ikkje snauare enn at han kunngjorde Bitcoins død i bloggartikkelen sin, og føydde seg dermed inn i den lange rekkja over Bitcoin-nekrologar.

Utspelet hans må helst sjåast i samanheng med selskapet R3 han er engasjert i, der meir enn 40 storbankar deltek. Der er Bitcoin som valuta eit tabu, og berre blokk-kjeda gjeld. Mange mistenkjer difor Mike Hearns utblåsing for å vera nøye planlagt. Men det kan også vera at han vart så forbanna fordi Bitcoin XT (BIP 101) ikkje fekk støtte, at han kasta korta. For å forstå meir av utspelet og dei steile frontane, er Nathaniel Poppers artikkel i New York Times også nyttig. Popper er journalisten bak boka "Digital Gold". Og Reddits Bitcoin-forum er sjølvsagt fullt av diskusjonar om Hearns "drama queen"-sorti .

Hearn har vore ein av dei mest aggressive og minst kompromissvillige i spørsmålet om korleis Bitcoin skal utviklast for å takla fleire transaksjonar. Saman med tidlegare sjefsutviklar Gavin Andresen, lanserte dei Bitcoin XT i august i fjor og kunngjorde at så fort versjonen fekk 75 % støtte frå Bitcoin-gravarane ("miners"), vart det den offisielle Bitcoin-versjonen.

Blokkstørrelse og faren for sentralisering
Det store spørsmålet er altså korleis Bitcoin skal skalera, dvs. klara å handtera fleire transaksjonar pr. sek. Dagens versjon har ei teoretisk grense på 7 trans./sek, noko som ikkje er veldig mykje samanlikna med dei store aktørane innan betalingshandtering (VISA med fleire tusen transaksjonar pr. sekund). Dagens grense på 7 trans./sek (i realiteten mindre) skuldast blokkstørrelsen som er på 1 MB. Det var i starten ei heller teoretisk grense på 32 MB, men Satoshi endra dette til 1 MB for å hindra spam og "Denial of Service"-angrep.

Det er store motsetningar i synet på blokkstørrelse, og det har komme mange forslag til løysingar på problemet i form av såkalla Bitcoin Improvement Proposal (BIP). BIP er Bitcoins svar på Internetts RFC. Motsetningane eksisterer på grunn av dilemmaet som ligg innbakt i ein auke av blokkstørrelsen: eit meir sentralisert Bitcoin. Det kan synast som om Bitcoin-samfunnet har valet mellom pest og kolera: maksimal desentralisert struktur eller maksimal kapasitet målt i trans./sek.

Samanheng blokkstørrelse og desentralisering?
Men er det ein samanheng mellom blokkstørrelse og desentralisering? Ikkje alle er einige i det, t.d. meiner Philipp Knirck i ein kommentar i Bitcoin Magazine at det ikkje nødvendigvis er ein slik samanheng:

"The block-size dispute... represents a trade-off between the number of transactions the Bitcoin network can handle and its decentralization"
This is factually wrong. Bigger or smaller blocks do not impact decentralization. Decentralization challenges and corresponding security concerns come from design decisions that lead to centralisation, such as storing all transactions forever, having a race for mining, not incentivising decentralization but incentivizing centralization etc. The blocksize limit has the effect of capping the amount of transactions and therefore is about the scalability. Scalability and decentralization are two different problems bitcoin has. Decentralization needs to be addressed via a different tool than blocksize.
Folks that argue with blocksize for decentralization are either lying/using propaganda for other purposes, simply do not understand the mechanics of bitcoin or are making wrong associations & logical mistakes (being stupid). I understand that many very smart people are proclaiming the correlation of blocksize and decentraliation (i.e. Szabo) but that does not mean they are correct.
Bitcoin-religiøse mot Bitcoin-business
Enkelt sagt går skiljelinjene mellom opprinnelege, "hard core" Bitcoin-fans som set friheit og desentralisering (eigentleg distribuert) struktur over alt anna. Mange av dei meiner at dagens blokkstørrelse ikkje skal endrast, og at marknaden så må styra gebyra ("fees"). Det vil unekteleg føra til høgre gebyr, men det meiner dei er berre ei nødvendig tilpassing til det som uansett må skje når tilførselen av nye Bitcoin gradvis vil avta. Mange er også "religiøse" Satoshi-tilhengjarar og meiner at Bitcoin slik Satoshi designa systemet er det einaste rette. Men som med Koranen og Bibelen, er det ulik tolking av den første skrifta..

På den andre sida finn me pragmatikarane og business-folka. Dei meiner at Bitcoin må utvikla seg til å konkurrera med dagens betalingssystem, også i kapasitet, og at blokkstørrelsen difor må aukast. Dei er ikkje så redde for sentraliseringa som eventuelt vil følgja. Ei stor utfordring i dag er at talet på nodar som køyrer full Bitcoin-klient (Bitcoin-kjernen/Bitcoin core) minkar. Sjølv i dag vil det ta mange dagar å synkronisera heile blokk-kjeda, og det vil ta ein del ressursar av ein vanleg pc å ha Bitcoin-klienten køyrande. Dei fleste som brukar Bitcoin i dag, brukar difor ein lettvektsvariant (Simple Payment Verification - SPV) som ikkje har full verifisering og dermed ikkje er fullverdige nodar i systemet.

Tilpassinga til ein gebyrfinansiert «mining»-marknad er likevel eit godt argument, spørsmålet er berre om tida er moden for eit så drastisk steg. Slik sett har dei også rett dei som meiner at å ikkje gjera noko, er minst like drastisk som å auka blokkstørrelsen.

Mike Hearn har vore den tydelegaste forkjemparen for eit business-Bitcoin, medan Gregory Maxwell har vore den store motpolen. Mellom desse ytterpunkta finn me Bitcoin-utviklarar på ein glidande skala. Sentrale utviklarar som Gavin Andresen og Jeff Garzik heller i retning av Hearn, men er ikkje så kompromisslause.

BIP 101 – eit radikalt forslag
Det mest radikale forslaget, BIP 101, kom likevel frå sjefsutviklar Gavin Andresen, men med Mike Hearn som pådrivar. Det er ei oppgradering av Bitcoin-kjernen som dei kallar BitcoinXT fordi den representerer eit hardt brot ("hard fork"). Eit hardt brot betyr at det eksisterande Bitcoin og den nye BitcoinXT  ikkje vil vera kompatible. På mange måtar er Bitcoin XT difor ein altcoin, og mange insisterer på å behandlar den nettopp som det.

Bitcoin XT medfører ein auke i blokkstørrelsen til 8 MB straks, og deretter ei dobling annakvart år i 20 år, opp til 8 GB blokker. Dei har vidare sagt at BitcoinXT vil overta for dagens Bitcoin når 75 % av "Bitcoin-gravarane" har stemt for forslaget. Eit eige felt i blokk-headeren gir muleheit for å visa støtte til eit av BIP-forslaga. Dette er også diskutabelt; det er altså berre «gravarane» som får stemma, ikkje dei som driv resten av Bitcoin-nettverket ved å køyra Bitcoin Core. Dei som køyrer full Bitcoin-klient er avgrensa til valet om å lasta ned den nye versjonen når/viss den blir sett i drift.

Så langt har ikkje BIP 101 fått mykje støtte, forslaget har heller skapt sterkare motsetningar i Bitcoin-leiren. Reaksjonane mot BIP 101 er skapte delvis av framgangsmåten (Andresen og Hearn har alt gjort endringa og vil setja den i verk så fort forslaget får meir enn 75 % av stemmene) og delvis fordi dei ikkje søkjer konsensus, men baserer seg på 75 % av stemmene (i realiteten 75 % av datakrafta  i form av hash rate). Moderatoren på reddit/r/bitcoin har stengt for BitcoinXT-relaterte innlegg fordi han meiner BitcoinXT ikkje er Bitcoin, men ein altcoin.

BIP 100 og 102 som meir moderate løysingar
Mellom desse posisjonane finn me fleire forslag til ei meir forsiktig utvikling i kapasitet. Jeff Garzik står bak BIP 100 og BIP 102 som begge er meir moderate forslag til auke i blokkstørrelse. BIP 100 føreslår ein flytande blokkstørrelse mellom 1 og 32 MB der det blir overlate til marknaden å bestemma. Forslaget inneber eit hardt brot ("hard fork").

BIP 102 er ein slags "plan B"-forslag dersom verken 101 eller 102 skulle få gjennomslag, og er ein forsiktig auke til 2 MB blokkstørrelse, mest for å "trø vatnet". Men også denne endringa vil representera eit hardt brot ("hard fork").

"Scaling Bitcoin"
Det vart arrangert to "Scaling Bitcoin"-konferansar i 2015, ein i Montreal og ein i Hong Kong, for å diskutera problemet med skalering og forslag til løysingar og for å prøva å få til konsensus. Etter Montreal-konferansen var det god optimisme om at ein til slutt skulle bli einige, men etter Hong Kong-arrangementet er det slutt på idyllen og forvirringa er om muleg endå større.

Segregated Witness (SegWit)
Ein viktig grunn til det er at i staden for å nærma seg konsensus om eitt av forslaga, kom det endå eit nytt og avvikande forslag på bordet: Segregated Witness er eit forsøk på å "lura" inn større kapasitet utan å tvinga gjennom eit hardt brot. Forslaget vart presentert av Pieter Wuille og går enkelt sagt ut på å halda ein god del transaksjonsinformasjon utanfor blokk-kjeda. Det vil føra for langt å gå inn på detaljar i forslaget, det er betre å lesa desse artiklane:

  1. SegWit part 1: «How a Clever Hack Could Significantly Increase Bitcoin’s Potential
  2. SegWit part 2: “Why You Should Care About a Nitty-Gritty Technical Trick” https://bitcoinmagazine.com/articles/segregated-witness-part-why-you-should-care-about-a-nitty-gritty-technical-trick-1450827675
  3. SegWit part 3: “How a Soft Fork Might Establish a Block-Size Truce (or Not)

Og så kan det vera lurt å lesa artikkelen «Segregated Witness: The Right Answer to the Wrong Question» som heller litt kaldt vatn i blodet på dei mest entusiastiske. SegWit kan visa seg å bli viktig for Bitcoin, men kanskje ikkje som løysing på skaleringsutfordinga.

Bitcoin Unlimited, Bitcoin Classic og BitPay Core
Inspirert av Bitcoin XT og viljen til å bryta den etablerte konsensuslinja, har det dukka opp fleire nye implementeringar av Bitcoin-kjernen. Alle desse løysingsforslaga inneber eit hardt skifte ("hard fork") på ein eller annan måte, og på eit eller anna tidspunkt, men elles er dei ulike. For meir informasjon om alternativa kan ein lesa denne artikkelen i Bitcoin Magazine.

Kva blir resultatet?
Det mest sannsynlege utfallet av skaleringsdiskusjonen er eit kompromiss i retning av BIP 102 eller Bitcoin Classic, altså ein moderat auke av blokkstørrelsen - i første omgang til 2 MB. Det vil likevel krevja eit hardt brot (hard fork) og utfordra Bitcoin-samfunnet. Dei som skulle velja å ikkje følgja den nye standarden, vil plutseleg sitja med ein altcoin og ikkje Bitcoin!

Det som er ganske sikkert, er at Bitcoin ikkje er død, og at denne utfordringa heller ikkje vil ta livet av teknologien. Det er ein revolusjonerande teknologi som vil få stor betydning for utviklinga på nettet, enten den framleis vil ha namnet Bitcoin eller noko anna.

Andre følgjer av denne intense diskusjonen er eit sannsynleg skifte av sentrale Bitcoin-utviklarar, og diskusjonen har også vist behovet for ei meir gjennomtenkt og strukturert styring av Bitcoin-utviklinga. Bitcoin Governance blir like viktig som Bitcoin Scaling i 2016!

Når det gjeld Bitcoin si framtid, er det elles berre å slå fast: Ånda er ute av flaska; den vil ikkje vera muleg å stappa innatt! Om det vil heita Bitcoin eller noko anna, er ei anna sak.

mandag 11. januar 2016

Til minne om Aaron Swartz

Aaron Swartz vart dessverre berre 27 år.
Foto: Fred Benenson, CCBY 2.0
I dag er det tre år sidan Aaron Swartz tok sitt eige liv. Då hadde han levd med ein alvorleg tiltale frå påtalemakta og risikerte lang fenselsstraff. Sjølv om me aldri vil få vita kvifor Aaron valde så dramatisk som han gjorde, vil presset frå påtalemakt og MIT sin passivitet liggja som ein svart skugge over det heile.

Aaron Swartz var ein Internett-«wonderboy» som alt i ein alder av 14 år deltok i utvikling av viktige Internett-standardar! Han var ein entreprenør og ein aktivist; ein ekte «hacker» i ordets eigentlege og positive forstand. Han var mellom anna med på å starta diskusjonsforumet Reddit, ein av dei mest brukte nettstadene i dag.

Han var ein viktig Internett-aktivist og mellom anna sentral i å stoppa lovaforslaget Online Piracy Act, gjennom aksjonen Stop Online Piracy Act (STOPA). Han starta også aktivistorganisasjonen Demand Progress, ein grasrotaksjon for å sikra fridom i eit moderne (og stadig meir digitalt) demokrati. Som om ikkje det var nok, var han også aktiv i utforminga av Creative Commons-rammeverket for meir fleksibel handtering av opphavsrett.

Tiltalen mot han skuldast at han lasta ned store mengder akademisk litteratur frå databasen/forlaget JSTOR ved Massachusetts Institute of Technology (MIT) i 2011. Påtalemakta la fram ein tiltale basert på 13 brot på «Computer Fraud and Abuse»-lova og med ei maksimal strafferamme på 35 år. Tiltalen hang over Aaron Swartz i nærmare to år, og i januar 2013 enda det med at han tok sitt eige liv. Saka viser også den groteske ubalansen mellom enkeltmenneske og dei store bedriftene i juridisk samanheng. At ei handling som den Aaron Swartz gjennomførte i verste fall kunne gi 235 års fengsel er heilt absurd.

Sjølv om Aaron Swartz hadde hatt psykiske problem tidlegare, etterlet saka ein svart skugge over amerikansk påtalemakt og MIT. Der JSTOR trekte politimeldinga, valde MIT å vera passive og føretok seg ikkje noko. Dei kunne truleg fått påtalemakta til å trekkja saka om dei hadde gått aktivt inn og forsvart Aaron Swartz. Saka skapte mykje oppstyr ved den renommerte institusjonen og det vart sett ned eit internt granskingsutval. Utvalet kom fram til at MIT ikkje hadde gjort noko klanderverdig, men like fullt er det mange som meiner at MIT ikkje levde opp til sine eigne ideal og at dei faktisk svikta ein av sine eigne i denne saka.

MIT er den institusjonen i USA, ja kanskje heile verda, som har vore den sterkaste tilhengjaren og pådrivaren for ein open kultur. Det var her hacker-kulturen vart utvikla på 1950- og 60-talet, og universitetet har vore svært liberal i haldningar om openheit. Dessverre etterlevde dei ikkje desse ideala i saka mot Aaron Swartz, og den feige "nøytralitetslinja" står i skarp motsetnad til ideala. MIT burde stått i fremste rekkje og forsvart Aaron Swartz, ikkje fordi han var den han var, men fordi det han stod for, var dei reelle verdiane MIT er bygde på. Det var ei leiingssak, og det var leiinga ved MIT som først og fremst svikat har. Shame on you, MIT!

onsdag 6. januar 2016

Bitcoin-året 2015

Gartners hype-kurve brukt på Bitcoin. Mykje tyder på at me
er på veg opp skråninga av opplysning..
Det er tid for ei oppsummering av Bitcoin-året 2015, og Frank Sinatras "It was a very good year" fangar det best. 2015 har vore eit veldig bra år for Bitcoin, i sterk kontrast til 2014 som var "annus horribilis". Mt. Gox og andre skandalar har komme i bakgrunnen og vekslingskursen stabiliserte seg, om ein kan bruka eit slikt ord om ein så volatil valuta som Bitcoin.

Den 3. januar i fjor (2015) var Bitcoin-kursen ca. US $280 medan den i dag (03.01.16) var ca. 430. I det meste av fjoråret varierte kursen mellom 200 og 300 US $ pr. BTC. Det betyr likevel ikkje at det ikkje finst utfordringar for Bitcoin framover..

Blokk-kjeda
Året 2015 var året då blokk-kjeda som teknologi verkeleg fekk gjennomslag. Alle bankar med respekt for seg sjølv har starta eksperimentering med blokk-kjedeteknologi, og om lag 40 store bankar har gått saman i R3 CEV, eit konsortium for å prøva ut blokk-kjedeteknologi saman med bedrifta R3.

Blokk-kjede utan Bitcoin?
Men jubelen for blokk-kjeda står i sterk kontrast til haldninga til valutaen bitcoin. Dei færraste av dei etablerte finansaktørane ønskjer å ta ordet "bitcoin" i sin munn, og vil distansera seg frå den delen. Det er på ein måte forståeleg, men på den andre sida vil det bli svært interessant å sjå kva dei då skal få ut av teknologien. Som Andreas Antonopolous og andre seier: "Blokk-kjeda er ikkje noko anna enn ein treg database". Det er bitcoin som er sprengstoffet, ikkje blokk-kjeda. Det blir som om ein for 20 år sidan sa:
Eg har stor tru på intranett, men ikkje på Internett..
Få formulerer denne schizofrenien betre enn Bitcoin-ekspert Andreas Antonopolous:


Skaleringsspørsmål og blokkstørrelse
Eit av dei store spørsmåla i 2015 var korleis Bitcoin skal skalera, dvs. klara å handtera fleire transaksjonar pr. sek. Dagens versjon har ei teoretisk grense på 7 trans./sek, noko som ikkje er veldig mykje samanlikna med dei store aktørane innan betalingshandtering (VISA med fleire tusen transaksjonar pr. sekund). Den reelle grensa for Bitcoin er likevel lågare, rundt 3-4 trans. pr. sekund. Det er fordi maksimal blokkstørrelse er på 1 MB i dag. Det var i starten inga grense, men Satoshi endra dette til 1 MB for å hindra spam/Denial of Service-angrep.

Det er store motsetningar i synet på blokkstørrelse, og det har komme mange forslag til løysingar på problemet i form av såkalla Bitcoin Improvement Proposal (BIP). BIP er Bitcoins svar på Internetts RFC. Gamle skiljer mellom Bitcoin-idealistar og Bitcoin-pragmatikarar (business) kjem til syne att. Enkelt sagt vil "idealistane" halda på dagens 1 MB-grense og la marknaden avgjera gebyra ("fees"), sidan det uvegerleg vil føra til høgare gebyr. Business-folka og Bitcoin-entreprenørar på den andre sida ønskjer å utvikla Bitcoin til å kunna konkurrera med dagens betalingssystem som VISA og Mastercard, og ser det som heilt nødvendig å auka blokkstørrelsen sjølv om det vil føra til at blokk-kjeda veks endå meir i omfang.

Eg begynte å skriva om dei ulike sidene og forslaga, og aktivitetar i 2015, men ser at det er nok til eit eige blogginnlegg og let det liggja inn til vidare.

Bitcoin i Norge

Det positive er den aukande interessa frå fleire hald, men særleg finanssektoren. Eg har halde mange presentasjonar siste året, og særleg for bankar. Det er også positivt med ei fornya interesse i Bitcoin-samfunnet slik det mellom anna kjem til uttrykk i Oslo Bitcoin Meetup - kjekt å sjå at det kjem stadig fleire på møta!

Norsk finansnæring
Dessverre er det lite aktivitet å spora i næringsutvikling og i involvering frå finanssektoren. Bankenes standardiseringskontor (BSK) har positivt nok sagt dei vil setja i gang initiativ og kalla saman aktuelle aktørar til ein slags rundebordskonferanse. Men opp i det heile er eit nytt firma for betalingsformidling under etablering som ei samanslåing av BSK og Finans Norge si fagavdeling for betalingsformidling. Det nye firmaet skal ha felles infrastruktur i betalingsformidling som hovudoppgåve, og Bitcoin og blokk-kjedeteknologi bør bli sentralt her. Så får me tru at fusjonsprosessen ikkje stel for mykje tid, for norsk finanssektor er alt seint ute. Planen er at det nye firmaet skal vera opp og gå i løpet av første kvartal i år.

Eg har møtt fleire bankfolk som er ganske oppegåande på temaet, så det er ikkje der skoen trykkjer. Det er truleg eit leiarproblem, her som elles.

Fjellseminar i Lom
Eg nemnde dei mange oppdraga eg har hatt siste året og må trekkja fram fjellseminaret i Lom som eit absolutt høgdepunkt. Det var eit veldig bra arrangement, med ein veldig bra tittel: "Kva er pengar?". Den tverrfaglege tilnærminga med økonomar, historikarar, språkvitarar og teknologar var interessant og givande. Eg ser gjerne fleire initiativ av denne sorten.
13:36 06.01.2016