ZEC: ongeëvenaarde privacy in een openbare blockchain

We hebben onlangs bijna 200 uur besteed aan het beoordelen van het volledige Zcash-project en de cryptocurrency van ZEC. Bij het analyseren van het project is het ons duidelijk dat Zcash een van de belangrijkste projecten in de gehele cryptoruimte is.

In de begindagen van digitale valuta geloofden velen dat Bitcoin-transacties volledig anoniem en privé waren. De populariteit van de Silk Road, de eerste moderne darknet-markt, voedde deze misvatting en leidde ertoe dat veel early adopters anonimiteit en pseudonimiteit samenvoegen.

Zoals waarschijnlijk inmiddels bekend, zijn Bitcoin-gebruikers pseudoniem; hun adressen en saldi zijn volledig openbaar, maar hun echte identiteit is dat niet. Hoewel adressen niet aan individuen kunnen worden gekoppeld door simpelweg naar de blockchain te kijken, wordt de pseudonimiteit van Bitcoin niettemin verbroken wanneer een persoon het eigendom van een adres bewijst, meestal door een uitwisseling te gebruiken. Als zodanig hadden de gelovigen van Bitcoins anonimiteitmythe een ruw ontwaken na de ondergang van de zijderoute, een van de belangrijkste gebeurtenissen in de geschiedenis van Bitcoin.

Naast illegale gebruikssituaties benadrukte de Silk Road-situatie dat het streven naar privacy als een fundamenteel mensenrecht op dat moment onverenigbaar was met publieke blockchains. Dit besef leidde ertoe dat veel onderzoekers begonnen te werken aan oplossingen om de privacy van bitcoin-transacties te vergroten. CoinJoin van Greg Maxwell was een van de eerste pogingen om de privacy en efficiëntie van Bitcoin te vergroten door meerdere verzenders van BTC in één transactie samen te voegen; een methode die over het algemeen muntmenging wordt genoemd.

Mixen maakt het moeilijk om de specifieke afzenders en ontvangers van een transactie te bepalen, omdat saldi als een groep worden verzonden. De efficiëntie van CoinJoin-mixen maakt het verreweg de meest gebruikte methode om identiteiten in openbare blockchains te verbergen. Hoewel zeer primitief, wordt de methode tegenwoordig nog steeds veel gebruikt in cryptocurrencies zoals DASH.

Net als CoinJoin gebruikt Monero ook een systeem met de naam RingCT om de afzender van een transactie te maskeren. We hebben RingCT in het verleden geanalyseerd en, in vergelijking met implementaties van CoinJoin, is het een veel geavanceerdere methode om gegevens te verbergen. RingCT verzamelt de handtekeningen die aan een transactie zijn gekoppeld en codeert de waarde ervan. Hoewel dit een elegant en efficiënt systeem is, realiseren we ons dat er problemen zijn met deze aanpak.

Simpel gezegd, het fundamentele probleem van het combineren van munten is dat transactiegegevens niet worden verborgen door codering. In plaats daarvan zijn zowel CoinJoin als RingCT systemen van dissociatie. In dergelijke systemen is alle informatie openbaar zichtbaar, maar transactiespecifieke gegevens, zoals het verzonden bedrag, worden losgekoppeld van gebruikersspecifieke informatie, zoals de adressen die aan het saldo zijn gekoppeld. Als de heuristiek die wordt gebruikt om deze gegevenspunten te scheiden, wordt verbroken, zoals het geval was bij de meeste Monero-transacties vóór februari 2017, is de privacy van het hele systeem ook verbroken.

In plaats van dissociatie, is een gezondere benadering van privacy er een die een sterkere cryptografie gebruikt, waarbij de hele transactiegegevens verborgen zijn. Op het eerste gezicht kan dit onverenigbaar zijn met openbare blockchains, een van de waardevoorstellen van Bitcoin is immers een openbare en verifieerbare eigendomsketen van elk afzonderlijk saldo. Verbergen van transacties zou dat verificatieproces voorkomen door alleen de drager van een specifieke sleutel een transactie te visualiseren.

Om deze reden is de enige manier om een ​​blockchain zowel gecodeerd als publiek verifieerbaar te maken, via zeer geavanceerde cryptografie. Gelukkig kan dit worden bereikt via een van de krachtigste tools die cryptografen ooit hebben bedacht: Zero-Knowledge Proofs.

NUL-KENNIS MAGISCH

Het magische concept achter Zero-Knowledge Proofs is om cryptografisch te bewijzen dat er iets bestaat, zonder te weten wat dat iets is.

Zcash gebruikt een variant van Zero Knowledge Proofs genaamd zero-knowledge Succinct Non-interactive Argument of Knowledge, of zk-SNARK, om privé-transacties in het netwerk mogelijk te maken. Met deze specifieke implementatie kunnen gecodeerde transacties in milliseconden worden geverifieerd. Gebruikers kunnen zk-SNARK's genereren om de bron, bestemming en hoeveelheid ZEC selectief te beschermen via vier verschillende soorten transacties:

Hoewel zk-SNARK's ongelooflijk krachtig zijn, hebben ze ook een behoorlijk deel van de tekortkomingen. Een van de grootste hindernissen bij het gebruik van privétransacties op Zcash is dat zk-SNARK's rekenintensief zijn en tijd nodig hebben om te produceren. Dergelijke vereisten verbieden het gebruik van deze technologie op mobiele telefoons, wat ongetwijfeld de goedkeuring van particuliere Zcash-transacties heeft beïnvloed. We hebben zelfs geconstateerd dat slechts ongeveer 13% van de Zcash-transacties momenteel zk-SNARK's gebruiken. Volledig privétransacties, waarbij zowel afzender als ontvanger zijn afgeschermd, zijn slechts ongeveer 0,36% van de totale Zcash-transacties.

Hoewel Zcash meer transacties in zijn netwerk heeft verwerkt dan Monero, is 86% daarvan niet afgeschermd en zien er precies uit als een reguliere bitcoin-transactie. Aan de andere kant zijn XMR-transacties inherent gemengd en is Monero standaard privé. Als we het totale aantal privé-transacties in beide netwerken zouden vergelijken, zou Monero de duidelijke winnaar zijn.

Zoals de industrie is gaan realiseren, heeft de afweging tussen inherente versus optionele privacy ongetwijfeld invloed op de waarschijnlijkheid dat een actief op een gereglementeerde beurs wordt genoteerd. Zoals opgemerkt aan Monero's hoofdontwikkelaar Riccardo "fluffypony" Spagni toen hij een toespraak hield op Coinbase, maakt regeldruk het onwaarschijnlijk dat een uitwisseling van het aandeel van Coinbase in de nabije toekomst Monero zal kunnen ondersteunen. Regelgevers zijn warmer van inherent private blockchains omdat ze moeilijker te controleren en te reguleren zijn.

Omgekeerd vermindert de optionele privacy in Zcash de regelgevingsangst en kunnen deze instellingen onbeschermde ZEC vermelden. Dit werd geïllustreerd in mei 2018, toen het New York Department of Financial Services (NYDFS) Gemini toestemming gaf om de handel en bewaring van Zcash te ondersteunen. Dit is een teken dat regelgevers mogelijk meer openstaan ​​voor projecten waarbij privacy optioneel is. Deze bereidheid is ideaal voor de liquiditeit van ZEC en fiat-paren en hoeft niet noodzakelijkerwijs de fungibiliteit van de activa in het netwerk te schaden; twee rondes van afgeschermde transacties naar verschillende z-adressen kunnen voldoende zijn om de bewaarketen van een specifiek saldo volledig te verbergen.

De garantie van privacy

In ons rapport hebben we het gehad over de garantie van privacy, oftewel de mate waarin gebruikers erop kunnen vertrouwen dat transacties in het verleden vertrouwelijk blijven. Voor velen komt het debat over Zcash versus Monero neer op de kracht en duurzaamheid van de mechanismen die door beide protocollen worden gebruikt om privacy mogelijk te maken.

Het trackrecord van Monero in dat opzicht werd sterk aangetast in april 2017, toen onderzoekers van Princeton en de Universiteit van Illinois een aanzienlijke kwetsbaarheid vonden in het mixins-protocol van Monero. Dit beveiligingslek stelde hen in staat om de echte afzender van de meeste XMR-transacties te identificeren voorafgaand aan de activering van RingCT in februari 2017. Ze noemden deze exploit "kettingreactie" -analyse en beweerden dat de heuristiek in de whitepaper het adres kon lokaliseren van bepaalde pre-RingCT XMR-transacties met 80% nauwkeurigheid. Hoewel de activering van RingCT in februari de kwetsbaarheden met betrekking tot blockchain-analyse verminderde, verhoogde dit het bewustzijn hoe erg het probleem was voordat het werd geactiveerd. Zoals we eerder al aangaven, is Monero een systeem van dissociatie; daarom is privacy afhankelijk van het aantal nepentiteiten dat aan een transactie is gekoppeld.

Aan de andere kant zijn de privacygaranties in Zcash veel minder onderworpen aan geavanceerde blockchain-analyse. In mei 2018 brachten onderzoekers van University College London een uitgebreid rapport uit dat de anonimiteit in Zcash evalueerde via vergelijkbare blockchain-analyse. Aangezien op dit moment slechts een fractie van transacties in Zcash privé is, is het mogelijk om een ​​kleine fractie van transacties te clusteren op basis van het gebruikspatroon van een adres. In dit opzicht is het aandeel van de Zcash-transacties dat wordt beïnvloed door blockchain-analyse bleek in vergelijking met die van Monero. De onderzoekers vonden in de hele studie 23 Zcash-adressen die gedeeltelijk door analyse konden worden opgespoord, terwijl meer dan 200.000 XMR-adressen waarschijnlijk kwetsbaar waren voor exploiteren van kettingreacties.

Om deze reden zijn wij van mening dat de privacygaranties die worden geboden door de zk-SNARK's van Zcash sterker zijn dan die van Monero's RingCT. Dat gezegd hebbende, er zijn nog steeds veel risico's verbonden aan het gebruik van zk-SNARK's. Om goed te kunnen werken, vertrouwen zk-SNARKs op een vertrouwde ceremonie genaamd The Powers of Tau die werd gebruikt om een ​​set sleutels te genereren die nodig is om zk-SNARKs te bewijzen en te verifiëren. Indien gecompromitteerd (en er is geen indicatie dat een van de ceremonies gecompromitteerd is), vormt dit een systematisch risico voor het gehele project. Zoals we in ons rapport hebben onderzocht, zullen het proces voor het genereren van deze sleutels, evenals de vereisten voor het genereren van zk-SNARK's worden herzien op 28 oktober, wanneer een nieuwe versie van Zcash wordt geactiveerd.

Zcash Sapling

Jong boompje is een belangrijke update en het is bedoeld om het gebruik van zk-SNARK's te vergroten door hulpmiddelen te gebruiken die hun rekenvereisten verlagen. Jonge boompjes kunnen het geheugengebruik van de constructie van zk-SNARKs met 98% verminderen en het proces van het verifiëren van deze bewijzen 80% sneller maken. Hierdoor kunnen zk-SNARK's op smartphones worden gebouwd, iets wat bijna onmogelijk is in de huidige versie van het protocol. We verwachten dat de implementatie van Sapling een katalysatorevenement zal zijn gezien het belang ervan en onze ervaring met belangrijke netwerkupgrades op andere cryptocurrencies.

De meest verwachte verbetering in Sapling is een nieuw elliptisch curve-algoritme dat wordt gebruikt om de uitdagingen in het verificatieproces van zk-SNARKs te bepalen. Hoewel de technische naam van deze nieuwe curve BLS12-381 is, hebben de onderzoekers van de Zcash-stichting besloten het JubJub te noemen. Het werk aan JubJub was gebaseerd op een baanbrekend raamwerk dat in 2015 werd uitgebracht met de naam C∅C∅; een raamwerk dat kan worden gebruikt om zeer efficiënte, compositeerbare nulkennisbewijzen te bouwen.

Zoals we eerder al aangaven, was een van de problemen met de adoptie van Zcash de moeilijkheid om zk-SNARKS te bouwen en te verifiëren. Overweeg voor de context dat een rekenkundige instantie die vereist is om een ​​zk-SNARK in de huidige versie van het protocol te verifiëren, meer dan 3 GB RAM van een knooppunt kan gebruiken. Met JubJub kan Sapling het geheugengebruik met 98% verminderen en kunnen zk-SNARK's worden gegenereerd en geverifieerd op smartphones. De testtijd wordt ook met 80% verminderd, waardoor zk-SNARK's in slechts zeven seconden kunnen worden geverifieerd.

Financiering door Coinbase

Opmerking: we hebben onze post bijgewerkt om een ​​verduidelijking weer te geven met betrekking tot de beloningen van blok en oprichter. Bedankt aan het Zcash-team voor het verduidelijken van dit onderscheid.

Zcash gebruikt een onorthodoxe strategie om protocolontwikkeling te financieren en zijn team te belonen. In tegenstelling tot Bitcoin geeft Zcash niet 100% van de blokbeloning aan mijnwerkers. In plaats daarvan gaat een deel van de medaille van elk blok rechtstreeks naar het Zcash-team. Ze noemen dit de "Founders 'Reward" en het is ontworpen om het kernteam van Zcash en vroege investeerders te financieren. Deze structuur is eerder getest in protocollen die een masternode-structuur hebben, zoals DASH, maar het is nog steeds atypisch in PoW-blockchains die Nakamoto-consensus gebruiken.

Zcash-blokbeloningen worden verdeeld volgens de onderstaande verdeling:

· 3% gaat naar de Zcash Foundation

· 2,8% gaat naar de Zcash Electric Coin Company

· 14,2% gaat naar Zcash-medewerkers, adviseurs en oprichters

Als zodanig gaat in totaal 20% van de blokbeloning naar deze entiteiten voor de komende 4 jaar. Gezien het halveringsschema van het protocol, zal het Zcash-team 10% van de monetaire basis hebben ontvangen, of 2,1 miljoen ZEC wanneer alle ZEC zijn gedolven. Ik merk op dat dit een veel lager deel is van het totale aanbod dat naar het oprichtende team gaat, vergeleken met de overgrote meerderheid van projecten in de ruimte.

Dit financieringsmodel is controversieel gezien zijn onorthodoxy, en heeft recent een oproer gecreëerd op sociale media toen meer mensen zich hiervan bewust werden. Desalniettemin is er een argument dat moet worden aangevoerd dat het tot nu toe positief heeft bijgedragen aan de groei van Zcash en het onderzoek rond zk-SNARKs in de afgelopen jaren. Zonder significante middelen voor onderzoek, zou het moeilijk zijn om voor te stellen hoe de geavanceerde cryptografie van Sapling in dit tijdsbestek had kunnen worden ontwikkeld.

Maak verbinding met Digital Asset Research

Voor institutionele beleggers die zich willen inschrijven voor het onderzoek van DAR, kunt u hier een verzoek om informatie indienen.

Als u zich wilt aanmelden voor onze gratis dagelijkse nieuwsbrief, kunt u zich hier aanmelden.