Een Bitcoin Improvement Proposal (BIP) is een voorstel om de Bitcoin blockchain te verbeteren. De bedoeling is om verbeterde procedures of features toe te voegen aan het Bitcoin protocol. In 2011 werd het eerste BIP (0001) voorstel gedaan door programmeur Amir Taaki, waarin gedefinieerd werd wat een BIP is en wie ze mag implementeren. In deze les gaan we in op wat een BIP is, welke belangrijke er zijn en hoe ze werken.
Omdat Bitcoin gedecentraliseerd is en autonoom is het noodzakelijk om veranderingen aan de blockchain voor te stellen met een Bitcoin Improvement Proposal, omdat miners het eens moeten zijn met een verandering en zij hebben de hoogste economische belangen
Omdat Bitcoin geen vast team heeft van programmeurs en geen roadmap bespreken ontwikkelaars op GitHub welke voorstellen goed genoeg zijn om aan de miners voor te stellen
Bitcoin Improvement Proposals kunnen over hele kleine dingen gaan als design of een kleine bug, maar ook over de allergrootste, zoals een hard fork
Elk Bitcoin Improvement Proposal is een fork, te vergelijken met software versie 1, 1.1, 1.2, enzovoorts. Een hard fork is heel ingrijpend, want dan ontstaan er twee afzonderlijke blockchains en dit kun je zien als versie 2 van de software
Een soft fork is backwards compatible met oudere versies van de Bitcoin software, een hard fork niet
Segregated Witness is de belangrijkste Bitcoin Improvement Proposal, omdat er een schisma optrad in de gemeenschap en Bitcoin Cash geboren werd
Taproot was een uitgebreide upgrade van de Bitcoin blockchain en draaide vooral om verdere schaalbaarheid van het netwerk, maar ook om sterkere privacy en eenvoudigere updates in de toekomst
Het invoeren van een Bitcoin Improvement Proposal heeft vooral voordelen, maar ook nadelen
Met Bitcoin Ordinals werd de NFT op Bitcoin mogelijk, met Bitcoin Runes werd het maken van een nieuw token op Bitcoin net zo eenvoudig als op andere populaire blockchains
Bitcoin Improvement Proposals lijken een onhandige manier om dingen te regelen, maar Bitcoin is nog steeds veruit de populairste coin. Zonder roadmap kan dit echter snel bergafwaarts gaan. Of dit ooit gebeurt staat in de sterren geschreven
Bitcoin is gedecentraliseerd en autonoom. Computers die de Bitcoin software moeten draaien en het netwerk veilig moeten houden staan bekend als miners of nodes. Zij stemmen over de voorstellen die gedaan worden om het netwerk te verbeteren, omdat zij het netwerk draaiende houden en de hoogste belangen hebben.
Het Bitcoin netwerk heeft geen vast team, zoals veel andere belangrijke blockchains als Ethereum of Solana. Programmeurs die werken aan de ontwikkeling van de Bitcoin Core zijn vrijwilligers of ze worden gesponsord. Een enkeling werkt betaald full time om de Bitcoin blockchain te verbeteren.
Met zulk een wisselende samenstelling wordt het moeilijk om dingen te regelen en Bitcoin up to date te houden. Er moet dus een manier zijn om zowel de programmeurs als de miners op één lijn te krijgen. En dat is het Bitcoin Improvement Proposal.
Nadat BIP 0001 de toon gezet had werden er regelmatig verbeteringen aan het Bitcoin protocol voorgesteld. Elk onderdeel kan hierbij het onderwerp zijn, zoals het consensus mechanisme, ontwikkelprocedures, gas fees, een bug fix, schaalbaarheid, beveiliging, blokgrootte of community standaarden.
Er kan ook gestemd worden voor ingrijpende zaken, zoals de hard fork. Dit is een laatste toevlucht en zal slechts in zeer uitzonderlijke gevallen toegepast worden, zoals bij de Bitcoin Cash hard fork, waarover later meer.
Als iemand een idee heeft dat gunstig is voor de Bitcoin blockchain, kan er een procedure gestart worden om er een BIP van te maken door op GitHub de discussie te starten onder ontwikkelaars. Als de ontwikkelaars overeenstemmen dat het belangrijk genoeg is om toe te voegen aan het Bitcoin blockchain protocol kan er gewerkt worden aan de technische kant.
Als het BIP volledig is kan er een stemming plaatsvinden door de miners en nodes of ze het goed genoeg vinden om te accepteren en te implementeren. Elke upgrade aan het Bitcoin netwerk startte zijn “carrière” als BIP.
Er zijn meerdere soorten BIP:
Informational: geeft slechts richtlijnen of design vraagstukken weer.
Proces: beschrijft een verandering van processen.
Standaard: beschrijft veranderingen aan het protocol, transactie valideringen of hoe een blok uitziet.
Consensus: stelt veranderingen voor aan het consensus mechanisme van Bitcoin.
Deployment: hoe veranderingen ingevoerd worden.
Extension layer: stelt extensies of verbeteringen voor aan specifieke layers van het Bitcoin protocol.
Transactie type: stelt nieuwe transactietypes of formats voor.
Layer2: layer2 of off-chain oplossingen voor het opschalen van de Bitcoin blockchain.
Economisch: gaat over de economische aspecten van Bitcoin, bijvoorbeeld transactie fees die miners krijgen.
Onderzoek: research ideeën of experimentele veranderingen aan het Bitcoin protocol.
De lijst met alle BIP’s is te vinden op GitHub: https://github.com/bitcoin/bips
Het doorvoeren van een BIP is eigenlijk een fork. De soft fork kun je zien als versie 1 van software, dan 1.1 en 1.2 en bij versie 2.0 is er sprake van een hard fork. Forks zijn volkomen normaal bij software, omdat er altijd nieuwe ontwikkelingen zijn in de crypto wereld. Een fork op Bitcoin kent vier varianten.
Als er een soft fork wordt doorgevoerd is er een update van de blockchain software beschikbaar, die miners of nodes kunnen downloaden. Deze zijn niet verplicht en nodes die nog oudere versies van de software draaien zijn backwards compatible met de nieuwe software. Een soft fork kun je zien als een kleine aanpassing aan een blockchain die niet veel stof doet opwaaien, zoals een sneller netwerk of bugs die opgelost worden.
Zodra het gaat over verdiensten van miners worden de oren gespitst van Bitcoin miners. Dan kan er heftig gereageerd worden, want de miners houden het netwerk draaiende en hebben genoeg inkomsten nodig om te blijven minen.
Met een hard fork worden verplichte ingrijpende veranderingen doorgevoerd aan het consensus protocol van het netwerk en is er geen backwards compatibiliteit met het oude netwerk. Als je de nieuwe software niet downloadt kun je dus niet meer meedoen met minen en het valideren van nieuwe blokken. Door een hard fork ontstaan twee verschillende blockchains, zoals BTC en BCH.
Bij de vorming van Bitcoin Cash als hard fork van Bitcoin ging het om de grootte van een blok. Bitcoin supporters wilden de blocksize klein houden, zodat nodes minder zware hardware hoefden te draaien. Bij een hele grote blocksize zouden alleen bedrijven of grote organisaties genoeg geld hebben om deze dure nodes te draaien. Dit staat bekend als de “Blocksize Wars” en het ging natuurlijk om geld. De miners wilden niet uit de markt gedrukt worden door SegWit en het Lightning Network en hielden de blocksize op 8 MB, terwijl Bitcoin Cash via een hard fork een andere weg insloeg met grotere blocksizes en daardoor lagere transactiekosten en schaalbaarder.
Als twee miners op hetzelfde moment de oplossing vinden van de cryptografische puzzel en een nieuw blok mogen maken zullen ze dat ook doen. Hierdoor komen er opeens twee blockchains tevoorschijn. De langste keten geldt altijd als de correcte en bij het vormen van een nieuw blok zal deze aan een van de twee blockchains toegevoegd worden. De andere miner met de juiste oplossing heeft dan pech, maar er is wel weer een enkele blockchain over.
Aangezien Bitcoin open source is, kun je er technisch gesproken een nieuwe coin mee maken. Dat is ook wel eens gebeurd, zoals door Litecoin. Als je met de software van Bitcoin een nieuwe coin maakt noemen we dat ook een fork, zeg maar een spin-off zoals bij series of films.
Een aantal BIP’s zijn een stuk bekender dan andere, omdat ze meer impact gehad hebben op het Bitcoin netwerk. We zullen de belangrijkste de revue laten passeren.
In 2015 werd dit voorstel door Peter Wuille voorgesteld en in 2017 geïmplementeerd. Segregated witness betekent afgescheiden getuige en staat voor het scheiden van de digitale handtekening van de transactiegegevens. Oorspronkelijk was hier geen hard fork voor nodig.
Naarmate Bitcoin meer gebruikt werd, begon het gebrek aan schaalbaarheid duidelijk te worden. Transactiekosten rezen de pan uit en een transactie kon lang op zich laten wachten. Digitale handtekeningen besloegen 65% van een blok en met SegWit konden dus meer transacties worden gedaan per tijdsperiode en tegen een lagere prijs. Ook werd de blockgrootte verhoogd, zodat er nog meer transacties per blok konden worden verwerkt. Privacy en veiligheid werden ook verbeterd.
Door de hogere blocksize werd minen ook moeilijker en duurder, hier waren vooral veel Chinese miners op tegen. Ook verdienden miners minder aan transactiekosten. Door de controverse hieromheen ontstond de Bitcoin Cash hard fork, precies de reden waarom dit het bekendste BIP is geworden.
Overigens, als SegWit en grotere blocksizes niet waren ingevoerd zouden transactiekosten en wachttijden waarschijnlijk zo hoog geworden zijn dat het de handel in Bitcoin had stilgelegd.
De Taproot soft fork werd in 2018 voorgesteld door Gregory Maxwell en in 2021 na goedkeuring door de miners geactiveerd.
Bitcoin werkte met het Elliptic Curve Digital Signature Algorithm (ECDSA) voor het maken van digitale cryptografische handtekeningen vóór de Schnorr signatures.
Hierbij wordt een digitale handtekening aan iedere transactie toegevoegd om te bewijzen dat de eigenaar van een Bitcoin adres toegang heeft tot de private key, zonder deze private sleutel mede te delen. Elke input in een transactie had zijn eigen digitale handtekening nodig.
Schnorr signatures kunnen het aantal digitale handtekeningen drastisch verminderen door onder andere MultiSigs en het onderbrengen van verschillende digitale handtekeningen in één enkele. Zo werd niet alleen aan de privacy gewerkt, maar ook werd de hoeveelheid data in een blok verminderd, waardoor er meer transacties in een blok passen.
Schnorr was een soft fork en is backwards compatible met ECDSA. Naarmate de tijd voortschrijdt zullen er echter steeds meer miners en nodes zijn die de Schnorr update downloaden.
Bouwt verder op de SegWit upgrade qua privacy via Merkelized Alternative Script Trees (MAST, soms ook Merkelized Abstract Syntax Tree genoemd), die alleen de uitgevoerde voorwaarden van een smart contract transactie vastleggen op de blockchain in plaats van alle details. Vóór Taproot moest je met het Bitcoin script alle voorwaarden van een smart contract invoeren in een blok, hetgeen meer ruimte kost en privacygevoelige informatie onthult.
Een Merkle tree bewijst dat gegevens bestaan zonder de gehele gegevensverzameling te onthullen. Door te werken met een root tree, die uit een enkel getal bestaat, kunnen Merkle trees een flink aantal gegevens samenvoegen en vervangen door een enkel getal. Als dit getal klopt, klopt ook de hele Merkle tree met alle gegevens erin en is er veel ruimte bespaard in een blok van een blockchain.
Met Bitcoin Taproot upgrade wordt gevoelig private informatie afgeschermd en wordt Bitcoin schaalbaarder omdat veel informatie wordt samengevoegd voordat het in een blok verschijnt.
Dit is een update voor het Bitcoin script. Het maakt gebruik van Schnorr signatures voor meer efficiëntie in de script language. Tapscript maakt het ook gemakkelijker om in de toekomst updates voor Bitcoin te implementeren door integratie van nieuwe soorten opcodes (instructies voor een transactie), zoals Pay-to-Taproot outputs.
De totale Taproot update moet gaan zorgen voor meer ruimte op de Bitcoin blockchain en kan allerlei nieuwe mogelijkheden bevorderen op Bitcoin, zoals DeFi en andere ontwikkelingen gebaseerd op smart contracts.
Met dit Bitcoin Improvement Proposal moest het eenvoudiger worden om een soft fork toe te passen. Miners konden aangeven of ze het eens waren met een update door een bepaalde bit van het 32bits version field van Bitcoin op 0 of 1 te zetten, eens of oneens.
Als voldoende miners het eens waren (meer dan 95%) kon de update of de BIP geactiveerd worden en was er een nieuwe versie geboren van het Bitcoin protocol, die de miners en nodes konden downloaden en gebruiken.
Door Versionbits werd het voorstellen van een protocol upgrade ook gemakkelijker gemaakt en een stuk gedecentraliseerder.
Regelt de distributie als een aantal Bitcoins over meerdere ontvangstadressen moeten worden verdeeld.
Een nieuw standaard transactietype en eenvoudigere regels voor het doorvoeren van een transactie door Gavin Andresen uit 2013. Deze BIP zorgde ook voor meer privacy. Dit was de eerste update na het vertrek van Satoshi Nakamoto.
Smart contracts op het Bitcoin netwerk. Dit BIP staat nog ter discussie, maar is belangrijk genoeg om te vermelden.
Voordelen:
Door een BIP kan het Bitcoin netwerk gebruiksvriendelijker worden.
Een BIP kan Bitcoin betrouwbaarder en veiliger maken.
Een BIP kan Bitcoin schaalbaarder en efficiënter maken.
Nadelen:
Door al dat stemmen en upgrades en updates kan het Bitcoin netwerk gefragmenteerd raken, doordat al die BIP’s wel of niet geïmplementeerd worden door een miner of node.
Elke BIP is een risico voor het netwerk, omdat er bugs in kunnen zitten en gebruikers er geen weet van hebben.
Gebruikers van het Bitcoin netwerk kunnen in sommige gevallen financiële risico’s lopen als ze niet snappen hoe een BIP werkt.
Een aantal snel populair geworden mogelijkheden op Bitcoin mogen we niet onbesproken laten, of ze nou een BIP zijn of niet.
Bitcoin Ordinals brengt de NFT (non fungible token) naar de Bitcoin blockchain. Ordinals werken samen met het Taproot protocol, waarmee men data kan koppelen aan een specifieke satoshi (het kleinste deel van een Bitcoin). Het is gemaakt door Casey Rodarmor, die niet eens werkt in het Bitcoin team.
Een Ordinal kun je vertalen met de positie van een nummer in een reeks. Zo zou je een Ordinal kunnen maken van satoshi 100.000 van Bitcoin 100.000. Dit zou betekenen dat je een NFT maakt op de 100.000e satoshi van de 100.000e Bitcoin die ooit gemined is. Je krijgt hiervoor 400 Kb ruimte, dus je kunt hier een schilderij, plaatje, geluidsfragment of wat dan ook in plaatsen en hebt dan een NFT gemaakt. Dan moet je die satoshi natuurlijk wel in je bezit hebben.
Sinds de lancering van Ordinals zijn er flink veel extra Bitcoin adressen gemaakt voor het gebruik van Ordinals. Ordinals bezetten ongeveer 50% van een blok in de Bitcoin blockchain, waar natuurlijk niet iedereen blij mee is. Hierdoor krijg je meer netwerkcongestie en verdienen miners meer geld, wat zij dan weer niet zo erg vinden.
Casey Rodarmor heeft veel kritiek gekregen op zijn Ordinals creatie, vanwege het nodeloos opvullen van een Bitcoin blok met “junk”. Hierdoor gaan de transactiekosten omhoog en wordt het Bitcoin netwerk langzamer.
Hij heeft dus zijn beste beentje voorgezet en is aan de slag gegaan om de problemen van zijn creatie op te lossen. Deze oplossing noemde hij Bitcoin Runes. Het is een nieuwe token standaard op de Bitcoin blockchain die je wel kunt vergelijken met andere standaarden als ERC-20 en BEP-20.
De bedoeling van Bitcoin Runes is dat je eenvoudig en goedkoop nieuwe fungible tokens kunt maken op Bitcoin, zonder dat een Bitcoin blok gevuld wordt met “junk UTXO”, zoals bij Ordinals. Door deze standaard wordt het maken van funcoins of meme coins even simpel als op andere belangrijke netwerken als Ethereum en Solana.
Bitcoin Runes werken vrijwel identiek aan het ERC-20 token, je geeft een aantal variabelen op als Symbol, ID, Amount, Decimals en hebt binnen korte tijd je token bij elkaar en kunt het token gaan verhandelen. Het kan de populariteit van het Bitcoin netwerk sterk verhogen.
Bitcoin Runes heeft nog geen eigen BIP, maar gezien de techniek zal dit waarschijnlijk niet lang meer duren, als de Bitcoin community het tenminste eens kan worden over wat de functie van de Bitcoin blockchain nou eigenlijk is, want veel miners zien Bitcoin als een store of value en willen niks weten van een “bruikbare blockchain”. Bitcoin is puur digitaal goud voor ze en deze miners zullen altijd tegen ontwikkelingen stemmen die van Bitcoin een netwerk voor smart contracts, memecoins of andere zijwegen maken.
Aangezien Bitcoin geen vast team heeft en miners het laatste woord hebben zullen er steeds weer nieuwe BIP’s worden voorgesteld. Bitcoin kan niet achterblijven bij allerlei ontwikkelingen, anders kan het sprookje opeens ophouden.
Daarom zal er waarschijnlijk steeds vaker een BIP worden voorgesteld, omdat ontwikkelingen in blockchain en cryptocurrency steeds sneller gaan. Zo lang het team van Bitcoin geen echte leiders heeft zullen miners zich iedere keer moeten buigen over ieder BIP.
Een van de nadelen van decentraliteit van blockchain is de trage ontwikkeling en het gebrek aan centraal bestuur. Dit is zeker naar de visie van Satoshi Nakamoto, maar als een BIP het gevolg is van puur toeval of een geniale ingeving van het moment van een ontwikkelaar, kan de ontwikkeling van Bitcoin sterk achterblijven bij de blockchains met een vast sterk team.
Zonder roadmap lijkt Bitcoin op een schip zonder roer. Toch vaart het nog steeds en is het nog altijd de belangrijkste cryptocurrency in de wereld. Of ze dat ook blijven als Bitcoin Improvement Proposals de weg moeten plaveien valt nog maar te bezien.