Du, som bruker av Bitcoin, Ether eller en hvilken som helst annen kryptovaluta, var sikkert bekymret for at hvem som helst kunne se hvor mange mynter du har i lommeboken, hvem du overførte dem til og fra hvem du mottok dem. Det er mye kontrovers rundt anonyme kryptovalutaer, men en ting vi ikke kan være uenige i er hvordan
I denne artikkelen skal vi se på det teknologiske aspektet ved anonymitet – hvordan de gjør det, og gi en kort oversikt over de mest populære metodene, deres fordeler og ulemper.
I dag er det omtrent et dusin blokkjeder som tillater anonyme transaksjoner. Samtidig, for noen, er anonymiteten til overføringer obligatorisk, for andre er det valgfritt, noen skjuler bare adressater og mottakere, andre tillater ikke tredjeparter å se selv overføringsbeløpene. Nesten alle teknologiene vi vurderer gir fullstendig anonymitet – en ekstern observatør kan ikke analysere verken saldo, mottakere eller transaksjonshistorikk. Men la oss starte vår anmeldelse med en av pionerene på dette feltet for å spore utviklingen av tilnærminger til anonymitet.
Dagens eksisterende anonymiseringsteknologier kan grovt deles inn i to grupper: de som er basert på blanding – hvor myntene som brukes blandes med andre mynter fra blokkjeden – og teknologier som bruker bevis basert på polynomer. Deretter vil vi fokusere på hver av disse gruppene og vurdere deres fordeler og ulemper.
Eltebasert
CoinJoin
Det er basert på en enkel idé - hva om brukere chiper inn og betaler i en enkelt transaksjon? Det viser seg at hvis Arnold Schwarzenegger og Barack Obama chippet inn og utførte to betalinger til Charlie Sheen og Donald Trump i én transaksjon, så blir det vanskeligere å forstå hvem som finansierte Trump-valgkampen – Arnold eller Barack.
Men fra hovedfordelen med CoinJoin kommer dens største ulempe - svak sikkerhet. I dag er det allerede måter å identifisere CoinJoin-transaksjoner på i nettverket og matche sett med innganger til sett med utganger ved å sammenligne mengden mynter brukt og generert. Et eksempel på et verktøy for slik analyse er
Pros:
• Enkelhet
Cons:
• Påvist hackbarhet
Monero
Den første assosiasjonen som oppstår når du hører ordene "anonym kryptovaluta" er Monero. Denne mynten
I en av hans siste
I Monero-protokollen blandes hver utgang brukt i en transaksjon med minst 11 (i skrivende stund) tilfeldige utganger fra blokkjeden, noe som kompliserer nettverkets overføringsgraf og gjør oppgaven med å spore transaksjoner komplisert. Blandede oppføringer signeres med en ringsignatur, som garanterer at signaturen er gitt av eieren av en av de blandede myntene, men gjør det ikke mulig å fastslå hvem.
For å skjule mottakerne, bruker hver nylig genererte mynt en engangsadresse, noe som gjør det umulig for en observatør (så vanskelig som å bryte krypteringsnøklene, selvfølgelig) å knytte utdata til en offentlig adresse. Og siden september 2017 begynte Monero å støtte protokollen
Pros:
• Tidstestet
• Relativ enkelhet
Cons:
• Bevisgenerering og verifisering er tregere enn ZK-SNARKs og ZK-STARKs
• Ikke motstandsdyktig mot hacking ved bruk av kvantedatamaskiner
Mumblewimble
Mimblewimble (MW) ble oppfunnet som en skalerbar teknologi for anonymisering av overføringer på Bitcoin-nettverket, men fant implementeringen som en uavhengig blokkjede. Brukes i kryptovalutaer
MW er bemerkelsesverdig fordi den ikke har offentlige adresser, og for å sende en transaksjon utveksler brukere utdata direkte, og eliminerer dermed muligheten for en ekstern observatør til å analysere overføringer fra mottaker til mottaker.
For å skjule summene av innganger og utganger, brukes en ganske vanlig protokoll foreslått av Greg Maxwell i 2015 -
I den originale CT-en, for å garantere at verdier ikke er negativ (det såkalte rekkeviddebeviset), bruker de Borromean Signatures (Borromean-ringsignaturer), som tok opp mye plass i blokkjeden (omtrent 6 kilobyte per utgang) ). I denne forbindelse inkluderte ulempene med anonyme valutaer som bruker denne teknologien den store transaksjonsstørrelsen, men nå har de bestemt seg for å forlate disse signaturene til fordel for en mer kompakt teknologi - Bulletproofs.
Det er ikke noe konsept for en transaksjon i selve MW-blokken, det er bare utganger brukt og generert i den. Ingen transaksjon - ikke noe problem!
For å forhindre de-anonymisering av overføringsdeltakeren ved sending av transaksjonen til nettverket, brukes en protokoll
Pros:
• Liten blokkjedestørrelse
• Relativ enkelhet
Cons:
• Bevisgenerering og verifisering er tregere enn ZK-SNARKs og ZK-STARKs
• Støtte for funksjoner som skript og multisignaturer er vanskelig å implementere
• Ikke motstandsdyktig mot hacking ved bruk av kvantedatamaskiner
Bevis på polynomer
ZK-SNARKs
Det intrikate navnet på denne teknologien står for "
Generelt tillater null-kunnskapsbevis en part å bevise for en annen sannheten til en matematisk påstand uten å avsløre noen informasjon om det. Når det gjelder kryptovalutaer, brukes slike metoder for å bevise at for eksempel en transaksjon ikke produserer flere mynter enn den bruker, uten å avsløre mengden overføringer.
ZK-SNARKs er svært vanskelig å forstå, og det vil kreve mer enn én artikkel for å beskrive hvordan det fungerer. På den offisielle siden til Zcash, den første valutaen som implementerer denne protokollen, er en beskrivelse av driften viet til
Ved å bruke algebraiske polynomer beviser ZK-SNARKs at avsenderen av betalingen eier myntene han bruker og at mengden mynter brukt ikke overstiger mengden mynter som genereres.
Denne protokollen ble laget med mål om å redusere størrelsen på beviset for gyldigheten av en erklæring og samtidig raskt verifisere den. Ja, ifølge
Før du bruker denne teknologien, kreves det imidlertid en kompleks pålitelig oppsettsprosedyre av "offentlige parametere", som kalles en "seremoni" (
Pros:
• Liten bevisstørrelse
• Rask verifisering
• Relativt rask bevisgenerering
Cons:
• Kompleks prosedyre for å sette offentlige parametere
• Giftig avfall
• Relativ kompleksitet av teknologi
• Ikke motstandsdyktig mot hacking ved bruk av kvantedatamaskiner
ZK-STARKs
Forfatterne av de to siste teknologiene er flinke til å leke med akronymer, og det neste akronymet står for "Zero-Knowledge Scalable Transparent ARguments of Knowledge." Denne metoden var ment å løse de eksisterende manglene til ZK-SNARKs på den tiden: behovet for en pålitelig innstilling av offentlige parametere, tilstedeværelsen av giftig avfall, ustabiliteten til kryptografi til hacking ved bruk av kvantealgoritmer og utilstrekkelig rask bevisgenerering. ZK-SNARK-utviklerne har imidlertid håndtert den siste ulempen.
ZK-STARKs bruker også polynombaserte bevis. Teknologien bruker ikke offentlig nøkkelkryptering, og er i stedet avhengig av hashing og overføringsteori. Eliminering av disse kryptografiske midlene gjør teknologien motstandsdyktig mot kvantealgoritmer. Men dette har en pris – beviset kan nå flere hundre kilobyte i størrelse.
Foreløpig har ikke ZK-STARK en implementering i noen av kryptovalutaene, men eksisterer kun som et bibliotek
Du kan lese mer om hvordan ZK-STARK fungerer i Vitalik Buterins innlegg (
Pros:
• Motstand mot hacking av kvantedatamaskiner
• Relativt rask bevisgenerering
• Relativt rask bevisverifisering
• Ingen giftig avfall
Cons:
• Teknologiens kompleksitet
• Stor prøvestørrelse
Konklusjon
Blockchain og den økende etterspørselen etter anonymitet stiller nye krav til kryptografi. Dermed har grenen av kryptografi som oppsto på midten av 1980-tallet – null-kunnskapsbevis – blitt fylt opp med nye, dynamisk utviklende metoder på bare noen få år.
Dermed har den vitenskapelige tankeflukten gjort CoinJoin foreldet, og MimbleWimble til en lovende nykommer med ganske friske ideer. Monero er fortsatt en urokkelig gigant når det gjelder å ivareta personvernet vårt. Og SNARKs og STARKs, selv om de har mangler, kan bli ledende på feltet. Kanskje i løpet av de kommende årene vil punktene vi indikerte i kolonnen "Ideles" for hver teknologi bli irrelevante.
Kilde: www.habr.com