Alle sprog
Målet med Harmony er at skabe en shard-baseret blockchain med fuld skalerbarhed og sikkerhed. Det har studeret mange blockchain-løsninger på markedet og foreslået sin egen ingeniørimplementeringsplan. Det er her, Harmony fortjener alles opmærksomhed.
Dette er et meget højt mål. Først og fremmest har det fuldstændig skalerbarhed. Harmonys sharding omfatter ikke kun transaktionsbekræftelse, netværkskommunikation, men også blockchain-tilstandssharding. For det andet skal vi sikre fragmenteringens sikkerhed. Harmonys sharding er baseret på DRG-processen (Distributed Random Generation), som gør den uforudsigelig, retfærdig, verificerbar og skalerbar. Derudover anvender Harmony PoS-mekanismen i stedet for PoW-mekanismen til at vælge validatorer, og den har sin egen optimering til PBFT-konsensusmekanismen. PoS har en vis tærskel, ikke kun for at sikre, at små stakers kan deltage i netværket og tjene penge, men også for at forhindre ondsindede angribere i at få kontrol over et enkelt shard. Harmony implementerer informationsformidling inden for et shard og på tværs af et shard-netværk ved at bruge Adaptive Information Dispersal Algorithm. Harmony bruger også Kademlia-routing til at realisere cross-shard-transaktioner, der skaleres logaritmisk, efterhånden som antallet af shards stiger. Med sharding skal konsistensen af cross-shard-transaktioner også opretholdes.Harmony understøtter også cross-shard-transaktioner, understøtter direkte kommunikation mellem shards og sikrer konsistensen af cross-shard-transaktioner gennem en atomlåsemekanisme.
Alt i alt forsøger Harmony at levere en skalerbar, sikker og decentraliseret blockchain ved at optimere protokollaget og netværkslaget, som kan understøtte mere mainstream decentraliserede applikationsscenarier, herunder spil, decentraliserede udvekslinger, IoT osv. Dette er en ambitiøs vision.
På nuværende tidspunkt forsøger mange nye blockchain-projekter at øge transaktionsbehandlingshastigheden (throughput), men nye løsninger som dPoS i EOS og TRON, Rootchain i Quarkchain osv. skal ofre nogle nøgleelementer, For eksempel decentralisering og sikkerhed kan forbedre ydeevnen betydeligt.
Selvom et sådant system kører meget hurtigt, kan det kun betragtes som et semi-centraliseret system, som mister kernekonceptet med blockchain - decentralisering.
Som en løsning til blockchain-udvidelse kan sharding forbedre netværkets ydeevne betydeligt uden at kompromittere sikkerhed og decentralisering.
Harmony løser problemet med blockchain-udvidelse ved at introducere state sharding i blockchain-da hver node kun behøver at køre og gemme en del af blockchain-dataene for at fuldføre transaktionen, deles arbejdsbyrden af transaktionsbehandling af Dette forbedrer i høj grad skalerbarheden af selve blokken.
Skalering er et af de mest omtalte problemer i blockchain-industrien lige nu. Den, der først løser dette problem, bliver førende i branchen. Naturligvis er præmissen her, at under forudsætningen om at tage højde for de to egenskaber sikkerhed og decentralisering, hvis et gennembrud opnås ved at ofre disse to nøgleegenskaber, er dette kun et gennembrud på lavt niveau, eller det bevæger sig i retning af et anderledes udviklingsvej.
Under forudsætningen om at tage sikkerhed og decentralisering i betragtning, er sharding en af de vigtigste veje til blockchain-udvidelse. Dette er fokus for Harmony's udforskning. Selvom der er andre sharding blockchain-projekter, herunder Ethereum 2.0, er der også cross-chain-projekter. Hvis Harmony kan udforske sharding, kan det være mere solidt end andre projekter. Så har det en chance for at få et forspring på konkurrencen.
Selvfølgelig valgte Harmony-teamet en svær vej, som kræver en stor indsats og har meget stærke konkurrenter. Ifølge Harmony-teamets introduktion til Blue Fox Notes har projektet gennemført 18 millioner amerikanske dollars i finansiering, og investorer har midler fra Silicon Valley, Australien, Hong Kong og Singapore, og det har fået en god start.
Ud fra Harmonys hvidbog kan det ses, at teamet har en klar teknisk tænkning og har tænkt dybt over de problemer, der skal stilles over for implementeringen af sharding-projekter Teamet er hovedsageligt sammensat af R&D-personale, hovedsageligt fra baggrunden fra Microsoft, Google og Apple.
Skalerbar FBFT-konsensusmekanisme
Harmony vedtager ikke PoW, men PoS-mekanisme, brugere opnår rettighederne og belønningen ved at producere blokke ved at satse tokens. Samtidig bruger Harmony FBPT-mekanismen i blokproduktions- og verifikationsprocessen. Før vi forklarer, hvad der er FBFT, ved vi, at PBFT er praktisk byzantinsk fejltolerance. Da PBFT har en mekanisme, som verifikatorer har brug for for at udsende deres stemmer til andre verifikatorer, øger dette i høj grad kommunikationskompleksiteten af PBFT, hvilket gør det vanskeligt at udvide blockchainen, hvis systemet har hundredvis eller tusindvis af noder.
For det problem, at PBFT er svært at udvide, er FBFT blevet optimeret, og FBFT kan opnå lineær udvidelse med hensyn til kommunikationskompleksitet. Konkret, hvordan opnår man det? I FBFT-mekanismen har den også rollen som leder og verifikator og kræver ikke, at alle verifikatorer udsender deres stemmer. Lederen kører en multi-signatur-signaturproces for at indsamle verifikatorernes stemmer. Størrelsen af denne multi-signatur er O(1 ), og udsende derefter afstemningen. Det betyder, at hver validator kun behøver at modtage én multisignatur, hvilket reducerer kommunikationskompleksiteten fra O(n^2) til O(n).
Schnorr-signaturmekanismen kan opnå konstant størrelse multi-signatur-aggregering og danne et multicast-træ blandt verifikatorer for at lette levering af meddelelser, men schnorr multi-signatur kræver hemmelige forpligtelsesrunder, hvilket vil føre til problemet med to rundrejser for en enkelt multi-signatur , FBFT bruger BLS (Boneh-Lynn-Shacham) multi-signatur-skemaet til at optimere dette problem, og der kræves kun én tur-retur for at opnå det. Derfor er FBFT 50 % hurtigere end BFT ved hjælp af Schonorr-signaturmekanismen. Endelig anvender Harmony også RaptorQ-fontænekoden til at fremskynde blokudsendelsesprocessen.
En ting at bemærke er, at alle Harmony-konsensusverifikatorer er valgt baseret på PoS-mekanismen. Validatorer med flere stemmeberettigede andele har flere stemmer end alle andre i stedet for at underskrive én stemme ad gangen. Det betyder også, at det, lederen venter på, ikke er signaturen fra 2f+1-verifikatorer, men stemmeandelen af 2f+1-verifikatorer.
Tilfældig algoritme, der integrerer VRF og VDF
For blockchain skal den udvides hurtigt. For eksempel kan ovennævnte FBFT opnå hurtigere transaktionsbekræftelse, men sikkerheden er altid den mest vigtigt af. I processen med at validere blokke er opretholdelse af tilfældighed en topprioritet for sikkerhed.
En god tilfældig algoritme skal være uforudsigelig, verificerbar, ikke-diskriminerende og skalerbar på samme tid. Nogle protokoller kan være uforudsigelige, ikke-diskriminerende og verificerbare, men skalerbarheden er svag, såsom RandHound-protokollen. De har deres egne fordele og ulemper.
Harmony foreslår en tilfældig generationsalgoritme, som kombinerer VRF- og VDF-teknologier. VRF er en verificerbar tilfældig funktion, og VDF er en verificerbar forsinkelsesfunktion. Algorand bruger kryptografisk klassificering baseret på VRF (Verifiable Random Function) til at vælge en konsensusverifikationsgruppe; Ethereum 2.0 foreslår VDF (Verifiable Delay Function) for at forsinke afsløringen af det faktiske tilfældige tal og forhindre angrebet af den sidste afslørende.
På grund af VDF kan lederen ikke kende det faktiske endelige tilfældige tal, før pRnd er indsendt til blockchain. Da VDF'en bruges til at beregne Rnd, er pRnd allerede blevet begået i den forrige blok, så lederen kan ikke manipulere den. Hvis lederen ikke sender pRnd for at stoppe protokollen, har FBFT en timeout-mekanisme til at skifte leder og genstarte protokollen. Derudover er kompleksiteten af DRG-protokollen vedtaget af Harmony O(n), hvilket er mindst en størrelsesorden hurtigere end nogle projekter.
PoS-baseret sharding
Både PoW og PoS skal forhindre Sybil-angreb. PoW-kæden bruger computerkraft til at bevise sin identitet og opnår dermed retten til at producere blokke. Harmony anvender PoS-mekanismen, og PoS bruger validatorens equity token-løfte til at bevise det. For at blive validator af Harmony skal du først satse visse tokens. Jo flere tokens, der sættes ind, jo flere validator-stemmeandele kan du få. Hver stemmeberettiget andel svarer til én stemme for BFT-konsensus.
Staking-aktører får stemmeandele proportionalt med de tokens, de satser. De stemmeberettigede aktier er tilfældigt fordelt på skærver. Interessenter, der bliver shard-validatorer, får tilsvarende stemmeret i shard.
I Harmonys konsensus- og skæringsproces er der et begreb om cyklusser (epoker). Perioder er forudbestemte tidsintervaller, hvor shard-strukturen er fast, og hvert shard kører kontinuerligt konsensus med det samme sæt af validatorer.
I begyndelsen af hver cyklus vil et tilfældigt tal blive genereret af DRG-protokollen, og fragmenteringsstrukturen vil blive bestemt baseret på det tilfældige tal. Validatorer skal satse deres tokens i den foregående periode, hvis de ønsker at validere transaktioner i en bestemt periode. Fristen for indsatstilsagn er før det tilfældige antal preimage pRnd indsendes til blockchain.
Ved begyndelsen af hver ny valideringscyklus tildeles den nye validators stemmeandele tilfældigt til shards. Nye validatorer tilslutter sig et skærv, og deres stemmeandele fordeles. Shard-konsensus kræver bloksignaturer med mindst 2f+1 stemmeberettigede aktier.
For at sikre sikkerheden af et enkelt shard, vedtager Harmony en adaptiv tærskel PoS, som justerer prisen på stemmeberettigede aktier gennem algoritmer på en adaptiv måde, og tildeler individuelle stemmeberettigede aktier til shards i stedet for en enkelt verifikation af.
For at forhindre storstilede lovede token-angreb, skærer Harmony ikke gennem verifikatorer, men skærer gennem stemmeandele for at forhindre et stort antal møntholdende verifikatorer i at besætte et enkelt skår. En enkelt validator kan tildeles flere shards, hvis den har stemmeandele tildelt forskellige shards. Lederen af et shard er fast besluttet på at være validatoren med den første stemmeandel i en bestemt gruppe.
Samtidig er stemmeandelen så lille, at ondsindede angribere ikke kan samle magten i et enkelt skår. Efter beregning mener Harmony, at når der er mere end 600 stemmeberettigede aktier, kan den høje sikkerhed ved sønderdeling garanteres.
I betragtning af økonomiske fordele har validatorer med flere indsatte tokens flere chancer for at blive valgt som ledere. I tilfælde af ondsindet adfærd frygter validatorer, der har satset tokens, at deres interesser vil blive forringet og derved sikre netværkets sikkerhed.
Ud over de ovennævnte mekanismer, anvender Harmony også en omblandet sharding-ordning for at forbedre sikkerheden. For hvis skårene forbliver strukturerede, har ondsindede angribere stadig mulighed for at udføre deres angreb. Såsom implementering af statisk cyklusangreb, langsom tilpasningsangreb eller fuld tilpasningsangreb og så videre. Harmony bruger en resharding-mekanisme baseret på Cuckoo-regler til at løse disse problemer. Ved afslutningen af en valideringscyklus, hvor validatorer, der trækker deres indsats, udelukkes fra netværket, bliver de, der beholder deres indsats.
Hurtig tilstandssynkronisering
Den første blok i en epoke indeholder et hash-link til den første blok af den forrige epoke. Dette gør det muligt hurtigt at synkronisere tilstanden af nye noder, hvor de kan stole på grå blokke for hurtigt at verificere den aktuelle tilstand.
Hvis du har brug for at downloade hele blockchain-historikken for at verificere shard-transaktioner, så er tiden for lang. Hvis du har synkroniseret Ethereum blockchain-historien, vil du vide, at det kan tage flere dage. Harmony skal kun downloade den aktuelle tilstand inden for et cyklustidsvindue.
I Harmony downloader nye validatorer, der slutter sig til et shard, først, den aktuelle tilstand forsøger for det shard. Nye noder downloader historiske blokoverskrifter og verificerer blokoverskrifterne ved at tjekke deres signaturer. Shard-tilstanden er gyldig, så længe der er kryptografiske spor fra den aktuelle tilstand tilbage til genesis-blokken, såsom hash-pointere og signaturer.
Samtidig, for at reducere omkostningerne og tidsomkostningerne ved signaturverifikationsberegning, indeholder den første blok i hver cyklus af Harmony en ekstra hash-pointer, der peger på den første blok i den foregående cyklus. På denne måde kan en ny node springe andre blokke over i en cyklus, når den sporer sin hash-pointer til genesis-blokken, og derved fremskynde verifikationen af den aktuelle blockchain-tilstand. Endelig, for yderligere at optimere tilstandssynkroniseringsprocessen, vil Harmony holde selve blockchain-tilstanden så lille som muligt.
Relaterede links:
https://www.qukuaiwang.com.cn/szhb/3285.html###