Indice dei contenuti:
Wat is Mimblewimble?
Het idee bestaat al tientallen jaren, hoewel de naam en de toepassing ervan op cryptocurrencies recent zijn. Mimblewimble gebruikt een vorm van elliptische curvecryptografie die kleinere sleutels vereist dan andere typen cryptografie. In een netwerk dat het Mimblewimble-protocol gebruikt, zijn er geen adressen op de blockchain en is de gegevensopslag van het netwerk zeer efficiënt. Mimblewimble vereist slechts ongeveer 10% zoveel gegevensopslag als het Bitcoin-netwerk. Dit maakt Mimblewimble zeer schaalbaar voor blockchain-opslag, aanzienlijk sneller en minder gecentraliseerd. Bovendien staat de aard van het protocol privétransacties toe die zeer anoniem zijn (hierover later meer).
De geboorte van Mimblewimble
Harry Potter-fans verheugen zich! Een andere verwijzing heeft zijn weg gevonden van de denkbeeldige wereld van magie naar degene waarin we leven. De mimblewimble Whitepaper werd voor het eerst gepubliceerd in juli 2016 op het Bitcoin-zoekkanaal onder het pseudoniem ‘Tom Elvis Judisor’ – de Franse naam voor de man die harry potter’s aartsvijand werd, Voldemort. Kort nadat de whitepaper was gepubliceerd, eind 2016, startte een andere anonieme auteur onder het pseudoniem ‘Ignotus Peverell’ (de oorspronkelijke eigenaar van de onzichtbaarheidsmantel van het Harry Potter-universum) een Github-project met behulp van het Mimblewimble-protocol. Dit project heet Grin, dat op 15 januari 2019 zijn Mainnet uitbracht. Mimblewimble is ook geïmplementeerd op een andere nieuw geïntroduceerde applicatie genaamd. We zullen zowel Grin als Beam verderop in dit artikel behandelen.
Hoe werkt Mimblewimble?
Om Mimblewimble te begrijpen, moet u eerst het UTXO-model (unspent transaction output) van Bitcoin begrijpen. Als u met fiat betaalt, zou een transactie als volgt verlopen:
Als Alice Bob $ 1 geeft Alice: -1 USD Bob: 1 USD Het is niet hetzelfde in het Bitcoin-netwerk. BTC-transacties bestaan uit verschillende in- en uitgangen, variërend van zender tot ontvanger. Als u uw recente Bitcoin-transacties hebt gecontroleerd, heeft u waarschijnlijk zowel in- als uitgangen van uw account op de blockchain gezien. Bitcoin werkt als volgt:
Alice wil 1 BTC naar Bob sturen. In plaats van slechts één Bitcoin af te trekken van de portemonnee van Alice, bundelt het netwerk meerdere invoer van eerdere BTC-transacties die naar Alice zijn verzonden om die munt die Alice naar Bob stuurt in evenwicht te brengen. Daarom kan deze Bitcoin-transactie er als volgt uitzien: Alice: – (0.1, 0.25, 0.35, 0.3) BTC, waarbij A Bobsleeën: + 1 BTC In dit voorbeeld bestond Alice’s BTC 1 uit vier ingangen. Maar er zijn gevallen in het Bitcoin-netwerk waarin een transactie honderden vermeldingen heeft. Als de som van de inputs groter is dan het transactiebedrag, zal de overdracht extra output creëren. Op deze manier bevat de eerste uitvoer het exacte bedrag dat naar de ontvanger gaat en de rest wordt teruggestuurd naar de afzender. Aangezien elke transactie afzonderlijk moet worden ondertekend door een wallet-software, moet het netwerk tonnen gegevens verwerken. Dit proces is zeer inefficiënt.
Vertrouwelijke transacties
Dit is waar Mimblewimble echt begint te schitteren. Zoals hierboven vermeld, maakt het protocol gebruik van een veel efficiënter systeem dat de noodzaak van in- en uitgangen elimineert. Het UTXO-model wordt vervangen door een multi-signature model voor alle in- en uitgangen. Dit worden Vertrouwelijke transacties genoemd. Als Alice een munt naar Bob wil sturen, maken zowel Alice als Bob een sleutel met meerdere handtekeningen die wordt gebruikt om de transactie te verifiëren. Vertrouwelijke transacties maken gebruik van het Pedersen Commitment-schema, wat betekent dat er geen adressen nodig zijn. Integendeel, de partijen delen een “verblindende factor”. De blindingfactor versleutelt de in- en uitgangen van de transactie, samen met de openbare en privésleutels van beide partijen. Deze verblindende factor wordt in het geheim gedeeld tussen de twee partijen die betrokken zijn bij de transactie. Vanwege de blinderende factor die adressen vervangt, weten alleen de twee partijen bij een transactie dat ze bij die transactie betrokken zijn geweest. Dit houdt de netwerkprivacy extreem hoog. Het Pedersen Commitment-programma werkt als volgt:
Volledige knooppunten trekken gecodeerde hoeveelheden af van zowel invoer als uitvoer, waardoor een uitgebalanceerde vergelijking ontstaat die laat zien dat er geen munt uit het niets is geproduceerd. Het knooppunt kent op geen enkel moment tijdens het proces het werkelijke bedrag van de transactie. De enige verificatie die vereist is voor het Mimblewimble-protocol is om te verifiëren dat er geen nieuwe munten zijn gemaakt en dat de partijen die deelnemen aan de transactie eigenaar zijn van hun sleutels. Beide verificatieprocessen gebruiken de blindingfactor om de transactiewaarde privé te houden. Hier is een voorbeeld van het proces: 5/ 5/10 x 5-10
Het eenvoudige voorbeeld hierboven laat zien dat er geen nieuwe munten zijn gemaakt, wat aangeeft dat het netto saldo nul is. 5(10) – 5(10) – 10(10)
Een geheim getal (10) – de blinderende factor – wordt aan deze berekening toegevoegd en vermenigvuldigd met alle variabelen. Het wordt gebruikt om de oorspronkelijke waarden te verdoezelen. 50/ 50/100
In deze vergelijking blijven zowel de blinderende factor – die 10 was in de tweede vergelijking – als de waarden privé, terwijl anderen nog steeds kunnen verifiëren dat er geen nieuwe munten zijn gemaakt in de transactie. Bij Mimblewimble is de blinderende factor een combinatie van publieke en private sleutels. Op deze manier kunnen de partijen, naast het bewijs dat er geen nieuwe munten zijn gemaakt, bewijzen dat zij de eigenaren van hun sleutels zijn. Beide partijen bij de transactie krijgen een header met meerdere handtekeningen aan het einde van de transactie. Deze multisig header bestaat uit alle in- en uitgangen die tijdens de transactie zijn samengevoegd.
Doorsnijden
Als het gaat om schaalbaarheid, is het belangrijkste kenmerk van het Mimblewimble-protocol ‘Cut Through’. Een enkel blok bestaat uit honderden transacties en veel informatie die op de blockchain moet worden opgeslagen. Deze blokken kunnen echter worden gecomprimeerd met de Cut Through-functie van Mimblewimble, omdat veel van de informatie uit de blokken kan worden verwijderd zonder de veiligheid van de blockchain in gevaar te brengen. Hier is een eenvoudig voorbeeld:
- Alice stuurt 1 BTC naar Bob.
- Bob stuurt 1 BTC naar Charles.
In dit geval heeft een typisch blok twee UTXO’s. De eerste UTXO zal de input voor 1 BTC bevatten en weerspiegelt hoe het bij Alice terecht is gekomen. De output voor de eerste UTXO is het resultaat van de transactie, die verifieert dat de Bitcoin nu eigendom is van Bob. De tweede UTXO bestaat uit de output van de eerste UTXO – die nu de input is van de tweede UTXO – en de output van de tweede transactie aan Charles. Mimblewimble verwijdert de uitvoer van de eerste transactie en de invoer van de tweede transactie. Dit betekent dat er slechts één invoer en uitvoer nodig is om te controleren hoe Alice aan haar 1 Bitcoin kwam en hoe Charles de hare ontving. Dit comprimeert de grootte van de blockchain, waardoor Mimblewimble veel lichter wordt in termen van het opslaan van de vereiste gegevens.
Grijns & Beam vs. Zcash &monero
Vanaf januari 2019 hebben twee ASIC-resistente munten het Mimblewimble-protocol geïmplementeerd. Grin is sinds eind 2016 in ontwikkeling. Het Mainnet werd gelanceerd op 15 januari 2019. Beam heeft al een werkend Mainnet. Hoewel de twee valuta’s hetzelfde protocol gebruiken – Mimblewimble – zijn er ook grote verschillen tussen hen. Beam heeft een bedrijfsstructuur. Het bedrijf haalde VC-fondsen op en huurde een ontwikkelingsteam in. Dit hielp hen de ontwikkelingsrace tegen Grin te winnen. De oprichting van Beam is gebaseerd op het percentage blokbeloningen dat het ontvangt om de ontwikkeling van zijn netwerk te ondersteunen. Het zal in 2019 van zijn huidige bedrijfsstructuur naar een volwaardige non-profitstichting gaan, terwijl het bedrijf zich verplaatst naar het bouwen van enterprise use cases bovenop de Beam-valuta. Aan de andere kant van de medaille heeft Grin een bestuursstructuur die is afgestemd op de cyberpunk-ideologie en die gericht is op het versterken van door de gemeenschap geleide decentralisatie. Er is geen ICO of token pre-mining en de ontwikkelaars zijn allemaal vrijwilligers. De twee munten verschillen ook in bruikbaarheid en hun publiek. Beam heeft een meer “professionele” positie als het gaat om cryptocurrency use cases. Hun ontwikkelingsteam heeft een eenvoudige e-wallet-interface gebouwd die gebruiksvriendelijk en implementeerbaar is op verschillende besturingssystemen (waaronder Mac, Windows en Linux). Op deze manier heeft de gewone crypto-liefhebber toegang tot de Beam-blockchain. Grin daarentegen is niet zo gebruiksvriendelijk. De munt werkt alleen met een command-line wallet, die voornamelijk toegankelijk is voor meer technisch onderlegde gebruikers. Grin gebruikt de programmeertaal ‘Rust’, terwijl Beam is gecodeerd in C. Dit is geen significant verschil tussen de twee valuta’s. Hetzelfde kan niet gezegd worden van de economische modellen die zij hanteren. Het doel van Beam is om te worden gebruikt als een anonieme winkel van waarde, waar Grin-ontwikkelaars beweren dat hun munt moet worden gebruikt als een “valuta” in plaats van een waardevolle winkel. Grijnzende aanhangers willen early adopters niet “oneerlijk belonen”; In plaats daarvan willen ze de adoptie vergroten. Als het gaat om datamining, gebruiken beide valuta’s aangepaste versies van het Equihash-algoritme. Hoewel beide munten bestand zijn tegen ASIC, zijn hun doelen anders. Grin probeert hun versie van Equihash (Cuckoo Cycle) binnen twee jaar volledig te implementeren. Beam wil 12 maanden lang een ASIC-resistent mijnbouwalgoritme gebruiken om gpU-mijnwerkers een voorsprong te geven. Laten we nu eens kijken hoe deze twee munten zich verhouden tot de drie meest populaire privacymunten: .consh, Monero en Dash. Volgens critici zijn de ringhandtekeningen van zk-SNARK te rekenintensief, wat resulteert in trage en dure transacties (in vergelijking met Beam en Grin). Monero gebruikt “mixins” om transacties privé te houden. Volgens een analist bevat 64% van alle inputs geen mixins, wat betekent dat dergelijke transacties niet echt privé zijn. Andere onderzoekers hebben betoogd dat tot 80% van de Monero-transacties kon worden getraceerd. Dash wordt beschouwd als de meest gecentraliseerde van alle privacymunten. Deze centralisatie maakt een cryptocurrency minder privé. Hoewel Dash voordelen heeft op het gebied van schaalbaarheid, zullen mensen die volledig anoniem willen blijven waarschijnlijk worden ontmoedigd om de munt te gebruiken vanwege de toegenomen centralisatie.
Conclusie
Hoewel Monero en cconesh populaire privacymunten zijn die veel worden gebruikt in de crypto-gemeenschap, kunnen hun netwerken zeker worden verbeterd door nieuwe technologieën zoals Mimblewimble te implementeren. Als meer traditionele muntmakers (waaronder mogelijk niet-anonieme valuta’s, zoals Bitcoin) meer in de richting van Grin en Beam bewegen, kunnen cryptocurrencies weer privé en anoniem worden.