Hvordan gjør de det? Gjennomgang av anonymiseringsteknologier for kryptovaluta

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 han sa Monero-prosjektleder Riccardo Spagni på sin Twitter-konto: "Hva om jeg bare ikke vil at kassereren på supermarkedet skal vite hvor mye penger jeg har på saldoen og hva jeg bruker dem på?"

Hvordan gjør de det? Gjennomgang av anonymiseringsteknologier for kryptovaluta

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

CoinJoin anonymiserer ikke brukeroversettelser, men kompliserer bare sporingen deres. Men vi bestemte oss for å inkludere denne teknologien i vår anmeldelse, siden det var et av de første forsøkene på å øke konfidensialiteten til transaksjoner på Bitcoin-nettverket. Denne teknologien er fengslende i sin enkelhet og krever ikke endring av reglene for nettverket, så den kan enkelt brukes i mange blokkjeder.

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 Coin Bli med i Sudoku.

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 bevist dens stabilitet og personvern under etterretningstjenesters mikroskop:

Hvordan gjør de det? Gjennomgang av anonymiseringsteknologier for kryptovaluta

I en av hans siste Artikkel Vi har beskrevet Monero-protokollen i stor detalj, og i dag skal vi oppsummere det som er sagt.

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 Konfidensielle transaksjoner (CT) med noen tillegg, og skjuler dermed også overføringsbeløpene. Litt senere erstattet kryptovalutautviklere Borromean-signaturer med Bulletproofs, og reduserte dermed transaksjonsstørrelsen betydelig.

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 den grå и STRÅLE.

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 - Konfidensielle transaksjoner (CT). Det vil si at beløpene er kryptert (eller rettere sagt, de bruker tilsagnsordning), og i stedet for dem opererer nettverket med såkalte forpliktelser. For at en transaksjon skal anses som gyldig, må mengden mynter brukt og generert pluss provisjon være lik. Siden nettverket ikke direkte opererer med tall, sikres likhet ved å bruke ligningen for de samme forpliktelsene, som kalles forpliktelse til null.

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 Løvetann, som bruker en kjede av nettverks proxy-noder av vilkårlig lengde som overfører transaksjonen til hverandre før den faktisk distribueres til alle deltakerne, og dermed tilsløre banen til transaksjonen som kommer inn i nettverket.

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 "Nullkunnskap Kortfattet ikke-interaktivt kunnskapsargument", som kan oversettes som "Kriss ikke-interaktivt bevis på null kunnskap." Det ble en fortsettelse av zerocoin-protokollen, som videre utviklet seg til zerocash og først ble implementert i Zcash-kryptovalutaen.

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 7 artikler. Derfor vil vi i dette kapittelet begrense oss til kun en overfladisk beskrivelse.

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 presentasjoner Zooko Wilcox, administrerende direktør i Zcash, bevisstørrelsen er bare 200 byte, og korrektheten kan verifiseres på 10 millisekunder. Dessuten, i den nyeste versjonen av Zcash, klarte utviklerne å redusere bevisgenereringstiden til omtrent to sekunder.

Før du bruker denne teknologien, kreves det imidlertid en kompleks pålitelig oppsettsprosedyre av "offentlige parametere", som kalles en "seremoni" (Seremonien). Hele vanskeligheten er at under installasjonen av disse parameterne har ingen av partene noen private nøkler igjen for dem, kalt "giftig avfall", ellers vil det kunne generere nye mynter. Du kan lære hvordan denne prosedyren skjer fra videoen videre YouTube.

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 libSTARK. Utviklerne har imidlertid planer for det som går langt utover blokkjeder (i deres White Paper forfatterne gir et eksempel på bevis på DNA i en politidatabase). For dette formålet ble den opprettet StarkWare Industries, som ved utgangen av 2018 samlet inn 36 millioner dollar investeringer fra de største selskapene i bransjen.

Du kan lese mer om hvordan ZK-STARK fungerer i Vitalik Buterins innlegg (del 1, del 2, del 3).

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

Legg til en kommentar