Zcash in het kort
Zcash (ZEC) is de eerste open, rechtenloze cryptocurrency die de privacy van transacties volledig kan beschermen met zero-knowledge cryptografie. Bitcoin en de meeste cryptocurrencies stellen je volledige betalingsgeschiedenis aan het publiek bloot. Als je graag privé wilt blijven is Zcash een goede optie als betaalmiddel.
Het project is gestart op 28 oktober 2016 en is gemaakt als een fork van Bitcoin. Net als bitcoin heeft het ook een limiet van 21 miljoen munten. Maar dat is waar de vergelijking eindigt. In tegenstelling tot bitcoin, biedt Zcash volledige en volledige privacy voor hun gebruikers door het gebruik van een ingenieuze cryptografie. Eerder heette het ‘het Zerocoin-protocol’ voordat het werd omgezet in ‘het Zerocash-systeem’ en ten slotte is het Zcash genoemd.
Een belangrijk onderdeel van Zcash is dat je kunt kiezen tussen twee soorten transacties. Je kunt een ‘normale’, transparante transactie uitvoeren, of een afgeschermde, privétransactie.
Stel dat je 1 ZEC (de afkorting van Zcash) naar je vriend wil sturen. Als je vriend het goed vindt om de transactie transparant en open te houden voor de wereld om te zien, dan kan je hem de ZEC sturen naar zijn transparante adres, ook wel “t-addr” genoemd.
Als hij echter enige privacy wil en niet wil dat de transactiegegevens voor het publiek toegankelijk zijn, kan hij eenvoudig het geld naar zijn afgeschermde adres laten sturen, ook wel “z-addr” genoemd. Als zowel jij als je vriend hun afgeschermde adressen gebruiken om met elkaar te communiceren, zijn alle details van de transactie privé. Dit omvat de identiteit van jou, de identiteit van je vriend en de details van de transactie zelf.
Zcash bereikt dit niveau van privacy door gebruik te maken van “zk-SNARKS”, kort voor “Zero-Knowledge Succint Non-Interactive Arguments of Knowlegde”.
Wat zijn Zero-Knowledge-Proofs?
Zero-Knowlegde-Proofs is in 1980 in het leven geroepen door drie onderzoekers genaamd Shafi Goldwasser, Silvio Micali en Charles Rackoff. Ze werkten aan bewijssystemen, waarbij een ‘bewijzer’ berichten uitwisselt met een ‘verificateur’ om hem te overtuigen dat hij kennis heeft van een bepaald bewijs zonder te verklaren wat die kennis is.
Een “Zero-Knowlegde”-bewijs moet de volgende punten voldoen:
- Volledigheid: als de bewering waar is, kan een eerlijke verificateur ervan overtuigd worden door een eerlijke bewijzer.
- Deugd: als de bewijzer oneerlijk is, kan hij de verificateur niet overtuigen van de deugdelijkheid van de verklaring door te liegen.
- Nul-kennis (Zero-Knowledge): als de bewering waar is, heeft de verificateur geen idee wat de bewering eigenlijk is.
Laten we kijken naar een voorbeeld.
Alibaba’s grot
In dit voorbeeld zegt de bewijzer (P) tegen de verificateur (V) dat hij het wachtwoord van de geheime deur aan de achterkant van de grot kent. Hij wil dit aan de verificateur bewijzen zonder hem het wachtwoord te vertellen. Dus dit is hoe het eruit ziet:
De bewijzer kiest één van de paden, A of B. In dit voorbeeld kiest besluit hij om via pad A te gaan en zo de geheime deur aan de achterkant te bereiken. Wanneer hij dit heeft gedaan, komt de verificateur binnen bij de ingang, zonder te weten welk pad de bewijzer heeft genomen, en verklaart dat hij de bewijzer vanuit pad B wil zien verschijnen.
In de afbeelding, zoals je kunt zien, verschijnt de bewijzer inderdaad uit pad B. Maar wat als dit stom geluk was? Wat als de bewijzer de toegangscode niet kende en het pad B nam, en vervolgens verteld de verificateur dat hij moet verschijnen vanaf pad B, het pad wat hij bij toeval al had genomen?
Dus, om de geldigheid te testen, wordt het experiment meerdere keren gedaan. Als de bewijzer elke keer uit het juiste pad kan verschijnen, bewijst hij aan de verificateur dat de hij inderdaad het wachtwoord kent, ook al weet de verificateur niet wat het wachtwoord eigenlijk is.
Laten we eens kijken hoe de drie punten van “Zero-Knowledge” zijn voldaan in dit voorbeeld:
- Volledigheid: sinds de bewering waar was, overtuigde de eerlijke bewijzer de eerlijke verificateur.
- Deugd: als de bewijzer oneerlijk was, kon hij de verificateur niet voor de gek houden omdat de test meerdere keren was uitgevoerd. Uiteindelijk moest het geluk van de bewijzer toch opraken.
- Nul-kennis: De verificateur wist nooit wat het wachtwoord was, maar was ervan overtuigd dat de bewijzer het in bezit had.
Wat zijn Zk-SNARKS?
Zoals eerder al is aangegeven staat Zk-SNARKS voor “Zero-Knowledge Succint Non-Interactive Argument of Knowledge”. Om de toepassing ervan te begrijpen, is het belangrijk om te weten hoe een smart contract werkt. Een simpele manier om dit te begrijpen is om ze te zien als een “als/dan-functie”. ALS conditie A zich voordoet, DAN wordt functie B uitgevoerd.
Voorbeeld: Anna zet 100 ETH in een slim contract dat ze met Carl aangaat. Carl moet een bepaalde taak uitvoeren, waarna Carl de 100 ETH van het smart contract krijgt. Oftewel: ALS Carl taak A uitvoert, DAN krijgt hij 100 ETH.
Dit wordt ingewikkeld wanneer taken die Carl moet uitvoeren, vertrouwelijk zijn. Stel dat je een slim contract hebt afgesloten met Anna. Je krijgt alleen de betaling als je taak A, B en C uitvoert. Wat als je de details van A, B en C niet wilt onthullen omdat ze vertrouwelijk zijn voor je bedrijf en je niet wilt dat concurrenten weten wat je moet doen?
Wat “Zk-SNARK” doet, is dat het bewijst dat die taken in het smart contract zijn gedaan zonder te onthullen wat die taken in werkelijkheid zijn. Het is erg handig om de privacy van jou en jouw bedrijf te beschermen. Het kan een deel van het proces gewoon onthullen zonder het hele proces zelf te tonen en te bewijzen dat je eerlijk bent over je claims.
Zcash en Ethereum
Ook Ethereum is de voordelen die “Zk-SNARKS” kunnen leveren niet ontgaan. Ethereum wil “Zk-SNARKS” integreren in haar Metropolis-fase en de manier waarop ze dit willen doen, is door een alliantie te sluiten met Zcash, die een wederzijdse uitwisseling van waarde omvat. Volgens Zooko Wilcox, de hoofdontwikkelaar van Zcash, zijn er 3 manieren waarop Z-Cash en “Zk-SNARKS” kunnen worden geïntegreerd met Ethereum.
De eerste methode heet Baby ZoE (ZoE = Zcash op Ethereum). Het voegt een “Zk-SNARKS” pre-compiler toe aan Ethereum en maakt een mini Zcash-smart contract op Ethereum. Het idee is om te zien of het Ethereum-systeem een “Zk-SNARKS”-geactiveerde dApps kan maken bovenop zijn blockchain.
De tweede methode is om de Ethereum-rekenkracht in de Zcash-blockchain te integreren. Zoals Wilcox zegt is de grootste trots van Ethereum de rekenkracht en mensen willen zien of ze het kunnen integreren op een “Zk-SNARKS”-gebaseerde blockchain zoals Zcash. Kunnen mensen dApps maken op een blockchain gemaakt op basis van “Zero Knowledge” bewijzen? Dat is iets waar ze op wachten om te zien.
Het derde en meest geanticipeerde methode is Project Alchemy. Dit is in feite de verbinding en de interoperabiliteit van de twee blockchains, zodat men naadloos tussen de twee kan schakelen. De manier waarop Zcash dat wil doen, is door de “BTC Relay” te klonen. Het is een Ethereum-script dat is geschreven om een brug te creëren tussen Bitcoin en Ethereum. De Zcash-kloon gebruikt hetzelfde concept om een brug te maken tussen Zcash en Ethereum.
De beste Zcash exchanges voor Nederland
Er zijn veel verschillende plekken waar je ZEC kunt kopen en verkopen. Juist doordat er zoveel opties zijn, is het soms moeilijk te bepalen welke exchange je het best kunt gebruiken. Hier is een lijst van de beste Zcash exchanges voor Nederland:
De beste Zcash wallets
Er zijn tegenwoordig veel verschillende Zcash wallets beschikbaar. De een nog wat veiliger en betrouwbaarder dan de ander, maar uiteindelijk delen ze allemaal dezelfde functionaliteiten: het opslaan en beheren van ZEC (en vaak ook andere cryptomunten). Met een goede ZEC wallet staat je cryptogeld veilig opgeslagen en kan je eenvoudig transacties versturen en ontvangen. Hier is een lijst met de beste Zcash wallets:
- Hardware wallet (aanbevolen)
- Exodus
- Jaxx