Zcash | |
---|---|
Type | Betalingssystem |
Forfatter | William Scott |
Udvikler | Zerocoin Electric Coin Company (ZECC) |
Skrevet i | C++ [1] |
Operativ system | Linux, Windows, macOS (mods) [2] [3] |
Første udgave | 28. oktober 2016 |
nyeste version | 2.1.2 |
Internet side | z.kontanter |
Mediefiler på Wikimedia Commons |
Zcash er en open source cryptocurrency udviklet af Zerocoin Electric Coin Company [ 4] , der giver privatliv og selektiv gennemsigtighed af transaktioner. Zcash-betalinger offentliggøres på den offentlige blockchain, men afsenderen, modtageren og beløbet for transaktionen forbliver hemmelige [5] . Zcashs varemærke, ZEC, er ikke en officiel ISO 4217 . Minimumsværdien, der overføres - 10 −8 ZEC - blev kaldt "zatoshi", svarende til "satoshi" - en tilsvarende mængde bitcoin . Ligesom Bitcoin har Zcash et fast maksimalt samlet udbud på 21 millioner enheder [6] . Den aktuelle gennemsnitlige blokoprettelsestid er 75 sekunder (1,25 minutter) [7] . Annonceret 20. januar 2016 [8] [9] .
Anonymitetsniveauet for Zcash er noteret af mange kendte virksomheder og enkeltpersoner. For eksempel begyndte WikiLeaks at acceptere donationer i Zcash [10] , Edward Snowden , som var en af udviklerne, kaldte kryptovalutaen det mest interessante alternativ til Bitcoin [11] , og Europol udtrykte officielt bekymring over kryptovalutaens voksende popularitet [12] .
Andre populære anonyme kryptovalutaer med lignende formål er Monero og Dash .
I 2014 blev " Zerocash " -protokollen udviklet af Zerocoin-udviklere ved Johns Hopkins University og grupper af kryptografer fra Massachusetts Institute of Technology , Israel Institute of Technology og Tel Aviv University . Sammen var de i stand til at forbedre protokollen, hvilket gjorde den mere effektiv og mere anonym.
"Takket være den nye Zerocash-protokol, i modsætning til Zerocoin, kan brugere foretage direkte betalinger til hinanden ved hjælp af en meget mere effektiv kryptografisk protokol, der skjuler ikke kun oprindelsen, men også beløbet for betalingen" [13] .
Zcash-projektet blev officielt annonceret af CEO Zooko Wilcox20. januar 2016 som en udvikling af det eksisterende Zerocoin-projekt (arbejde af Matthew Green, Jan Maier, Christina Garman, Aviel D. Rubin, ved Johns Hopkins University , Department of Computer Science) [8] .
Med brugen af den nye protokol dukkede en uafhængig kryptovaluta Zcash (ZEC), som ophørte med at være en "tilføjelse" til bitcoin. Den 28. oktober 2016 afholdt Zuko Wilcox den officielle "kryptografiske ceremoni" for lanceringen af Zcash [14] .
Zcash er den første kryptovaluta [15] baseret på en nul-viden bevis kryptografisk protokol . Protokollens logik forudsætter, at en af de interagerende parter er i stand til at verificere gyldigheden af en matematisk erklæring uden at have andre oplysninger fra den anden part [16] . Faktisk er Zcash den første virkelig anonyme kryptovaluta, da det kan bekræftes, at transaktionen blev foretaget, men der er ingen måde at kende beløbet, afsenderen og modtageren [17] .
Zcash-softwaren genererer en række tilfældige værdier, der tages som startparametre. Det genererer også kryptografiske nøglefragmenter, som sammen kan bruges til at generere nye ZEC'er. Ved lanceringsceremonien den 28. oktober blev det vist, hvordan disse kryptografiske nøglefragmenter skabes og distribueres, således at selve nøglen aldrig er tilgængelig i sin helhed [18] .
Zcash-protokollen gemmer ikke oplysninger om adressen, hvorfra transaktionen blev foretaget, til hvilken adresse overførslen blev foretaget, og hvad beløbet er; kun kendsgerningen om transaktionen er synlig. Transaktionsoplysninger på blockchain kan afsløres eller skjules efter anmodning fra brugere, hvilket er et kendetegn for Zcash [19] .
Zcash krypterer indholdet af sikre transaktioner. Bruger zk-SNARK kryptografisk protokol til validering(Zero-Knowledge Succinct Non-Interactive Argument of Knowledge), udviklet af skaberne af cryptocurrency baseret på nul-viden bevis . Protokollen tillader dannelsen af en sikker hovedbog over saldi uden at oplyse de relevante parter eller beløb, men det kan ikke bevises, at transaktionen ikke er bedrageri eller tyveri. Zcash giver også brugere mulighed for at oprette offentlige transaktioner, svarende til Bitcoin-transaktioner. En af funktionerne ved Zcash er, at afsendelse af værdier fra sikre adresser til offentlige adresser afslører information om balancen på en sikker adresse, mens afsendelse fra offentlige til sikre adresser bevarer privatlivets fred [20] [21] .
For at have nul viden i Zcash, skal en funktion, der bestemmer sandheden af en transaktion i henhold til netværkets regler, returnere et svar om, hvorvidt transaktionen er sand eller ej, uden at afsløre nogen information om de udførte handlinger. Dette opnås ved at indkode nogle af netværkets konsensusregler i zk-SNARK'er. På et højt niveau forvandler zk-SNARK det, du vil bevise, til en tilsvarende form for at kende løsningen af en algebraisk ligning [22] . Zk-SNARK-designerne kan anvendes i en bred vifte af applikationer, hvilket giver tilstrækkelig høj effektivitet og forskelligartet funktionalitet [23] .
Brugere, der ønsker at modtage udbetalinger, genererer en nøgletuppel bestående af forbrugsnøgle, visningsnøgle og faktureringsadresse. Visningsnøglen og faktureringsadressen er afledt af forbrugsnøglen. Typisk er sættet af faktureringsadresse, visningsnøgle og forbrugsnøgle krypteret og ikke tilgængeligt for brugerne. Men da Zcash kan levere offentlige transaktioner, kan oplysninger om disse nøgler gives efter anmodning [24] .
En seddel (note) er en tupel bestående af en betalingsnøgle, en værdi (beregnet i zatoshi), en nulstillingssekvens og en tilfældig bitsekvens - en overførselsfælde . Noten betyder, at værdien kan bruges af en modtager, der har en forbrugsnøgle, der matcher betalingsnøglen . Når et notat sendes, er det kun ejerskabet af de angivne værdier, der er offentligt tilgængeligt, hvilket holder værdien og modtageren privat, mens ejerskabet bruges af nul-vidensbeviset til at verificere eksistensen af notatet på blockchain [25 ] .
På et givet tidspunkt svarer hver komplet node til et bestemt sæt af blokke, der danner et træ, hvor hver node er knyttet til forælderen ved hjælp af blokoverskriften hashPrevBlock . Stien fra roden til noderne, der går gennem sekvensen af gyldige blokke, der opfylder konsensusreglerne, kaldes en gyldig blokkæde [26] .
Hver blok i kæden indeholder en eller flere transaktioner. Input tilføjer værdier til poolen, output fjernes fra poolen; ligesom i Bitcoin er saldoen i puljen minearbejderens belønning . Konsensusreglen her er, at restværdien i den åbne pulje skal være ikke-negativ [27] .
Hver transaktion svarer til træets begyndelsestilstand. Tilstanden er beskrevet af et notetransmissionstræ, en nul-sekvens og strukturer, der ligner Bitcoin (for eksempel UTXO [28] ).
Fra juni 2021 var blockchain-størrelsen 32 GB [7] .
Deltag i SplitjoinSplit-beskrivelsen er et stykke transaktionsdata, der beskriver den værdi, der sendes. JoinSplit er en af hovedparametrene for zk-SNARK teknologien og er unik for Zcash. JoinSplit-beskrivelsen er baseret på (men er ikke identificeret med) JoinSplit-sætningerne, der bruges til zk-SNARK-verifikation. Hver ny JoinSplit-beskrivelse afhænger af outputværdien i den foregående blok [29] .
NoteoverførselstræMemooverførselstræet er et inkrementelt Merkle-træ af en given dybde, der gemmer de memoer, der er genereret af JoinSplit. I lighed med UTXO bruges det til at beskrive den aktuelle værdi og muligheden for at bruge det, men forskellen fra UTXO er, at dette træ ikke beskytter mod dobbeltforbrug [30] .
Nulling funktionHver fuld node opretter en null-funktion, der er logisk forbundet med hver tilstand i træet. Null-funktionen består af nullere , som også kan findes i JoinSplit-beskrivelserne. Zeroizers skal være unikke, fordi de beskytter mod henholdsvis dobbeltforbrug, følgende regel gælder for dem: Nullifieren må ikke gentages hverken i en transaktion eller inden for en gyldig blokkæde [30] .
Miner belønningEmission i Zcash sker på samme måde som i Bitcoin – når nye blokke oprettes. Belønningen for at oprette en blok består af to dele - belønningen tildelt minearbejderen i transaktioner og den såkaldte founders belønning , som er 20% af blokværdien i de første 4 år efter Zcashs eksistens, og i udgangen vil være 10% af mængden af alle udstedte ZEC.
Kryptovalutaer | |
---|---|
PoW baseret på SHA-2 | |
PoW baseret på Scrypt | |
PoW baseret på CryptoNote | |
Andre PoW-algoritmer | |
PoS algoritmer | |
Andre teknologier | |
relaterede emner |
|
Elektroniske betalingssystemer | |
---|---|
Online betalingssystemer | |
Mobile betalingssystemer | |
Brug af elektroniske penge | |
Brug af elektroniske penge (historie) | |
Brug af kryptovalutaer |