Hur gör dom det? Granskning av anonymiseringsteknologier för kryptovaluta

Visst var du, som användare av Bitcoin, Ether eller någon annan kryptovaluta, orolig för att vem som helst kunde se hur många mynt du har i din plånbok, till vem du överförde dem och från vem du fick dem. Det finns en hel del kontroverser kring anonyma kryptovalutor, men en sak vi inte kan hålla med om är hur han sade Monero projektledare Riccardo Spagni på sitt Twitter-konto: "Tänk om jag bara inte vill att kassörskan på snabbköpet ska veta hur mycket pengar jag har på mitt saldo och vad jag spenderar dem på?"

Hur gör dom det? Granskning av anonymiseringsteknologier för kryptovaluta

I den här artikeln kommer vi att titta på den tekniska aspekten av anonymitet - hur de gör det, och ge en kort översikt över de mest populära metoderna, deras för- och nackdelar.

Idag finns det ett dussintal blockkedjor som tillåter anonyma transaktioner. Samtidigt, för vissa, är anonymiteten för överföringar obligatorisk, för andra är det valfritt, vissa döljer endast adresserna och mottagarna, andra tillåter inte tredje part att se ens överföringsbeloppen. Nästan all teknik vi överväger ger fullständig anonymitet – en utomstående observatör kan inte analysera vare sig saldon, mottagare eller transaktionshistorik. Men låt oss börja vår recension med en av pionjärerna inom detta område för att spåra utvecklingen av synsätt på anonymitet.

För närvarande existerande anonymiseringsteknologier kan grovt delas in i två grupper: de som är baserade på blandning - där de använda mynten blandas med andra mynt från blockkedjan - och tekniker som använder bevis baserade på polynom. Därefter kommer vi att fokusera på var och en av dessa grupper och överväga deras för- och nackdelar.

Knådningsbaserad

CoinJoin

CoinJoin anonymiserar inte användaröversättningar, utan komplicerar bara deras spårning. Men vi bestämde oss för att inkludera denna teknik i vår recension, eftersom det var ett av de första försöken att öka nivån på konfidentialitet för transaktioner på Bitcoin-nätverket. Denna teknik är fängslande i sin enkelhet och kräver inte att reglerna för nätverket ändras, så den kan enkelt användas i många blockkedjor.

Det bygger på en enkel idé - vad händer om användare chippar in och gör sina betalningar i en enda transaktion? Det visar sig att om Arnold Schwarzenegger och Barack Obama chippade in och gjorde två betalningar till Charlie Sheen och Donald Trump i en transaktion, då blir det svårare att förstå vem som finansierade Trumps valkampanj – Arnold eller Barack.

Men från den största fördelen med CoinJoin kommer dess största nackdel - svag säkerhet. Idag finns det redan sätt att identifiera CoinJoin-transaktioner i nätverket och matcha uppsättningar av indata till uppsättningar av utgångar genom att jämföra mängden mynt som spenderas och genereras. Ett exempel på ett verktyg för sådan analys är CoinGå med i Sudoku.

Fördelar:

• Enkelhet

Nackdelar:

• Påvisad hackbarhet

Monero

Den första associationen som uppstår när man hör orden "anonym kryptovaluta" är Monero. Detta mynt bevisade dess stabilitet och integritet under mikroskopet av underrättelsetjänster:

Hur gör dom det? Granskning av anonymiseringsteknologier för kryptovaluta

I en av hans senaste artiklar Vi har beskrivit Monero-protokollet i detalj, och idag kommer vi att sammanfatta vad som har sagts.

I Monero-protokollet blandas varje utdata som spenderas i en transaktion med minst 11 (i skrivande stund) slumpmässiga utdata från blockkedjan, vilket komplicerar nätverkets överföringsgraf och gör uppgiften att spåra transaktioner beräkningsmässigt komplex. Blandade bidrag signeras med en ringsignatur, vilket garanterar att signaturen tillhandahållits av ägaren till ett av de blandade mynten, men gör det inte möjligt att avgöra vem.

För att dölja mottagarna använder varje nygenererat mynt en engångsadress, vilket gör det omöjligt för en observatör (lika svårt som att bryta krypteringsnycklarna, förstås) att associera någon utdata med en offentlig adress. Och sedan september 2017 började Monero stödja protokollet Konfidentiella transaktioner (CT) med några tillägg, och döljer därmed också överföringsbeloppen. Lite senare ersatte kryptovalutautvecklare Borromean-signaturer med Bulletproofs, vilket avsevärt minskade transaktionsstorleken.

Fördelar:

• Tidstestad
• Relativ enkelhet

Nackdelar:

• Bevisgenerering och verifiering är långsammare än ZK-SNARKs och ZK-STARKs
• Inte resistent mot hackning med kvantdatorer

mimblewimble

Mimblewimble (MW) uppfanns som en skalbar teknologi för att anonymisera överföringar på Bitcoin-nätverket, men fann sin implementering som en oberoende blockkedja. Används i kryptovalutor Flin и STRÅLE.

MW är anmärkningsvärt eftersom det inte har allmänna adresser, och för att skicka en transaktion utbyter användare utdata direkt, vilket eliminerar möjligheten för en extern observatör att analysera överföringar från mottagare till mottagare.

För att dölja summan av in- och utdata används ett ganska vanligt protokoll som föreslagits av Greg Maxwell 2015 - Konfidentiella transaktioner (CT). Det vill säga beloppen är krypterade (eller snarare, de använder åtagandesystem), och istället för dem arbetar nätverket med så kallade åtaganden. För att en transaktion ska anses vara giltig måste mängden mynt som spenderas och genereras plus provisionen vara lika. Eftersom nätverket inte direkt arbetar med siffror säkerställs jämlikhet genom att använda ekvationen för samma åtaganden, som kallas engagemang till noll.

I den ursprungliga CT, för att garantera icke-negativiteten hos värden (det så kallade avståndsbeviset), använder de Borromean Signatures (Borromean ringsignaturer), som tog upp mycket utrymme i blockkedjan (cirka 6 kilobyte per utgång ). I detta avseende inkluderade nackdelarna med anonyma valutor som använder denna teknik den stora transaktionsstorleken, men nu har de beslutat att överge dessa signaturer till förmån för en mer kompakt teknik - Bulletproofs.

Det finns inget koncept för en transaktion i själva MW-blocket, det finns bara utgångar som spenderas och genereras inom det. Ingen transaktion - inga problem!

För att förhindra avanonymisering av överföringsdeltagaren i det skede då transaktionen skickas till nätverket används ett protokoll Maskros, som använder en kedja av nätverksproxynoder av godtycklig längd som överför transaktionen till varandra innan den faktiskt distribueras till alla deltagare, och på så sätt fördunklar banan för transaktionen som kommer in i nätverket.

Fördelar:

• Liten blockkedjestorlek
• Relativ enkelhet

Nackdelar:

• Bevisgenerering och verifiering är långsammare än ZK-SNARKs och ZK-STARKs
• Stöd för funktioner som skript och multisignaturer är svårt att implementera
• Inte resistent mot hackning med kvantdatorer

Bevis på polynom

ZK-SNARKs

Det komplicerade namnet på denna teknik står för "Nollkunskap Kortfattat icke-interaktivt kunskapsargument", som kan översättas som "kortfattat icke-interaktivt noll-kunskapsbevis." Det blev en fortsättning på zerocoin-protokollet, som vidareutvecklades till zerocash och implementerades först i kryptovalutan Zcash.

I allmänhet tillåter nollkunskapsbevis en part att bevisa för en annan att ett matematiskt påstående är sant utan att avslöja någon information om det. När det gäller kryptovalutor används sådana metoder för att bevisa att till exempel en transaktion inte producerar fler mynt än den spenderar, utan att avslöja mängden överföringar.

ZK-SNARKs är mycket svårt att förstå, och det skulle krävas mer än en artikel för att beskriva hur det fungerar. På den officiella sidan för Zcash, den första valutan som implementerar detta protokoll, ägnas en beskrivning av dess funktion till 7 artiklar. Därför kommer vi i detta kapitel att begränsa oss till endast en ytlig beskrivning.

Med hjälp av algebraiska polynom bevisar ZK-SNARKs att avsändaren av betalningen äger de mynt han spenderar och att mängden mynt som spenderas inte överstiger mängden mynt som genereras.

Detta protokoll skapades med målet att minska storleken på beviset på giltigheten av ett påstående och samtidigt snabbt verifiera det. Ja, enligt presentationer Zooko Wilcox, VD för Zcash, bevisstorleken är bara 200 byte, och dess korrekthet kan verifieras på 10 millisekunder. Dessutom, i den senaste versionen av Zcash, lyckades utvecklarna minska provgenereringstiden till cirka två sekunder.

Innan den här tekniken används krävs dock en komplicerad pålitlig installationsprocedur av "offentliga parametrar", som kallas en "ceremoni" (Ceremonin). Hela svårigheten är att under installationen av dessa parametrar har ingen av parterna några privata nycklar kvar för dem, kallat "giftigt avfall", annars kommer det att kunna generera nya mynt. Du kan lära dig hur denna procedur går till från videon på Youtube.

Fördelar:

• Liten bevisstorlek
• Snabb verifiering
• Relativt snabb provgenerering

Nackdelar:

• Komplex procedur för inställning av publika parametrar
• Giftigt avfall
• Teknikens relativa komplexitet
• Inte resistent mot hackning med kvantdatorer

ZK-STARKs

Författarna till de två senaste teknologierna är bra på att leka med akronymer, och nästa akronym står för "Zero-Knowledge Scalable Transparent ARguments of Knowledge." Denna metod var avsedd att lösa de befintliga bristerna hos ZK-SNARKs vid den tiden: behovet av en pålitlig inställning av offentliga parametrar, närvaron av giftigt avfall, instabiliteten hos kryptografi till hackning med hjälp av kvantalgoritmer och otillräckligt snabb bevisgenerering. ZK-SNARK-utvecklarna har dock hanterat den sista nackdelen.

ZK-STARKs använder också polynombaserade bevis. Tekniken använder inte kryptografi med publik nyckel, utan förlitar sig istället på hash- och överföringsteori. Att eliminera dessa kryptografiska medel gör tekniken resistent mot kvantalgoritmer. Men detta har ett pris - beviset kan nå flera hundra kilobyte i storlek.

För närvarande har ZK-STARK ingen implementering i någon av kryptovalutorna, utan existerar endast som ett bibliotek libSTARK. Utvecklarna har dock planer för det som går långt utöver blockkedjor (i deras Vitt papper författarna ger ett exempel på bevis på DNA i en polisdatabas). För detta ändamål skapades den StarkWare Industries, som i slutet av 2018 samlat in 36 miljoner dollar investeringar från de största företagen i branschen.

Du kan läsa mer om hur ZK-STARK fungerar i Vitalik Buterins inlägg (Del 1, Del 2, Del 3).

Fördelar:

• Motstånd mot hackning av kvantdatorer
• Relativt snabb provgenerering
• Relativt snabb bevisverifiering
• Inget giftigt avfall

Nackdelar:

• Teknikens komplexitet
• Stor provstorlek

Slutsats

Blockchain och den växande efterfrågan på anonymitet ställer nya krav på kryptografi. Således har grenen av kryptografi som uppstod i mitten av 1980-talet – nollkunskapsbevis – fyllts på med nya, dynamiskt utvecklande metoder på bara några år.

Således har den vetenskapliga tankeflykten gjort CoinJoin föråldrad och MimbleWimble till en lovande nykomling med ganska fräscha idéer. Monero förblir en orubblig jätte när det gäller att skydda vår integritet. Och SNARKs och STARKs, även om de har brister, kan bli ledare på området. Kanske kommer punkterna som vi angav i kolumnen "Nackdelar" för varje teknik att bli irrelevanta under de kommande åren.

Källa: will.com

Lägg en kommentar