Alla språk
Målet med Harmony är att skapa en shard-baserad blockkedja med full skalbarhet och säkerhet. Den har studerat många blockkedjelösningar på marknaden och föreslagit en egen plan för teknisk implementering. Det är här Harmony förtjänar allas uppmärksamhet.
Detta är ett mycket högt mål. Först och främst har det fullständig skalbarhet. Harmonys sharding inkluderar inte bara transaktionsbekräftelse, nätverkskommunikation, utan även blockchain-tillståndsskärning. För det andra måste vi säkerställa säkerheten för fragmentering. Harmonys skärning är baserad på DRG-processen (Distributed Random Generation), som gör den oförutsägbar, rättvis, verifierbar och skalbar. Dessutom använder Harmony PoS-mekanismen istället för PoW-mekanismen för att välja validatorer, och den har sin egen optimering för PBFT-konsensusmekanismen. PoS har en viss tröskel, inte bara för att säkerställa att små aktörer kan delta i nätverket och tjäna inkomst, utan också för att förhindra illvilliga angripare från att få kontroll över en enda skärva. Harmony implementerar informationsspridning inom en shard och över ett shard-nätverk genom att använda Adaptive Information Dispersal Algorithm. Harmony använder också Kademlia-routing för att realisera cross-shard-transaktioner som skalas logaritmiskt när antalet shards ökar. Med sharding måste också konsistensen av cross-shard-transaktioner bibehållas. Harmony stöder även cross-shard-transaktioner, stöder direkt kommunikation mellan shards och säkerställer konsekvensen av cross-shard-transaktioner genom en atomlåsningsmekanism.
Sammantaget försöker Harmony tillhandahålla en skalbar, säker och decentraliserad blockkedja genom att optimera protokolllagret och nätverkslagret, vilket kan stödja mer vanliga decentraliserade applikationsscenarier, inklusive spel, decentraliserade utbyten, IoT, etc. Detta är en ambitiös vision.
För närvarande försöker många nya blockchain-projekt att öka transaktionsbehandlingshastigheten (genomströmning), men nya lösningar som dPoS i EOS och TRON, Rootchain i Quarkchain, etc. måste offra några nyckelelement, Till exempel decentralisering och säkerhet kan förbättra prestandan avsevärt.
Även om ett sådant system går väldigt snabbt, kan det bara betraktas som ett semi-centraliserat system, som förlorar kärnkonceptet med blockchain - decentralisering.
Som en lösning för blockkedjeexpansion kan sharding förbättra nätverkets prestanda avsevärt utan att kompromissa med säkerhet och decentralisering.
Harmony löser problemet med blockkedjeexpansion genom att introducera tillståndsskärning i blockkedjan – eftersom varje nod bara behöver köra och lagra en del av blockkedjedata för att slutföra transaktionen, delas arbetsbelastningen av transaktionsbearbetning av Detta förbättrar avsevärt skalbarhet av själva blocket.
Skalning är en av de mest omtalade frågorna i blockkedjebranschen just nu. Den som löser detta problem först kommer att bli ledande i branschen. Naturligtvis är förutsättningen här att under förutsättningen att man tar hänsyn till de två attributen säkerhet och decentralisering, om ett genombrott uppnås genom att offra dessa två nyckelattribut, är detta bara ett genombrott på låg nivå, eller så går det mot ett olika utvecklingsvägar.
Under förutsättningen att ta hänsyn till säkerhet och decentralisering är sharding en av de viktigaste vägarna för blockchain-expansion. Detta är i fokus för Harmonys utforskning. Även om det finns andra blockkedjeprojekt för splittring, inklusive Ethereum 2.0, finns det också projekt över kedjor. Om Harmony kan utforska skärning kan det vara mer gediget än andra projekt. Då har det en chans att få ett försprång på tävlingen.
Självklart valde Harmony-teamet en svår väg, som kräver mycket ansträngning och har mycket starka konkurrenter. Enligt Harmony-teamets introduktion till Blue Fox Notes har projektet slutfört 18 miljoner US-dollar i finansiering, och investerare har medel från Silicon Valley, Australien, Hong Kong och Singapore, och det har fått en bra start.
Av Harmonys vitbok kan man se att teamet har ett tydligt tekniskt tänkande och har funderat djupt på de problem som ska mötas vid genomförandet av skärningsprojekt.Teamet består huvudsakligen av FoU-personal, främst från bakgrunden från Microsoft, Google och Apple.
Skalbar FBFT-konsensusmekanism
Harmony använder inte PoW, utan PoS-mekanism, användare får rättigheterna och belöningarna för att producera block genom att satsa tokens. Samtidigt använder Harmony FBPT-mekanismen i blockproduktions- och verifieringsprocessen. Innan vi förklarar vad som är FBFT vet vi att PBFT är praktisk bysantinsk feltolerans. Eftersom PBFT har en mekanism som verifierare behöver för att sända sina röster till andra verifierare, ökar detta avsevärt kommunikationskomplexiteten för PBFT, vilket gör det svårt att expandera blockkedjan om systemet har hundratals eller tusentals noder.
För problemet med att PBFT är svårt att expandera har FBFT optimerats och FBFT kan uppnå linjär expansion när det gäller kommunikationskomplexitet. Specifikt, hur uppnår man det? I FBFT-mekanismen har den också rollerna som ledare och verifierare och kräver inte att alla verifierare sänder sina röster. Ledaren kör en multisignatursignaturprocess för att samla in verifierarnas röster. Storleken på denna multisignatur är O(1 ), och sedan sända omröstningen. Detta innebär att varje validator bara behöver ta emot en multisignatur, vilket minskar kommunikationskomplexiteten från O(n^2) till O(n).
Schnorr-signaturmekanismen kan uppnå multisignaturaggregering i konstant storlek och bilda ett multicastträd bland verifierare för att underlätta meddelandeleverans, men schnorr-multisignaturen kräver hemliga åtaganderonder, vilket kommer att leda till problemet med två tur och returresor för en enda multisignatur , FBFT använder BLS (Boneh-Lynn-Shacham) multisignaturschema för att optimera detta problem, och det krävs bara en tur och retur för att uppnå det. Därför är FBFT 50 % snabbare än BFT med Schonorr-signaturmekanismen. Slutligen använder Harmony också RaptorQ-fontänkoden för att påskynda blocksändningsprocessen.
En sak att notera är att alla Harmony konsensusverifierare väljs baserat på PoS-mekanismen. Validatorer med fler röstandelar har fler röster än alla andra, snarare än att skriva under en röst i taget. Detta betyder också att det som ledaren väntar på inte är signaturen från 2f+1-verifierare, utan röstandelarna för 2f+1-verifierare.
Slumpmässig algoritm som integrerar VRF och VDF
För blockkedjan måste den utökas snabbt. Till exempel kan ovannämnda FBFT uppnå snabbare transaktionsbekräftelse, men säkerheten är alltid den största viktigt av. I processen att validera block är upprätthållande av slumpmässighet en högsta prioritet för säkerheten.
En bra slumpmässig algoritm måste vara oförutsägbar, verifierbar, icke-diskriminerande och skalbar på samma gång. Vissa protokoll kan vara oförutsägbara, icke-diskriminerande och verifierbara, men skalbarheten är svag, till exempel RandHound-protokollet. De har sina egna fördelar och nackdelar.
Harmony föreslår en slumpmässig genereringsalgoritm som kombinerar VRF- och VDF-teknologier. VRF är en verifierbar slumpmässig funktion och VDF är en verifierbar fördröjningsfunktion. Algorand använder kryptografisk klassificering baserad på VRF (Verifiable Random Function) för att välja en konsensusverifieringsgrupp; Ethereum 2.0 föreslår VDF (Verifiable Delay Function) för att fördröja avslöjandet av det faktiska slumptalet och förhindra attacken från den sista avslöjaren.
På grund av VDF kan ledaren inte veta det faktiska slutliga slumptalet förrän pRnd skickas till blockkedjan. Eftersom VDF används för att beräkna Rnd, har pRnd redan begåtts i föregående block, så ledaren kan inte manipulera det. Om ledaren inte skickar pRnd för att stoppa protokollet, har FBFT en timeout-mekanism för att byta ledare och starta om protokollet. Dessutom är komplexiteten i DRG-protokollet som antagits av Harmony O(n), vilket är åtminstone en storleksordning snabbare än vissa projekt.
PoS-baserad sönderdelning
Både PoW och PoS måste förhindra Sybil-attacker. PoW-kedjan använder datorkraft för att bevisa sin identitet och får därmed rätten att producera block. Harmony använder PoS-mekanismen, och PoS använder validatorns equity token-löfte för att bevisa det. För att bli en validator av Harmony måste du först satsa vissa tokens. Ju fler tokens som satsas, desto fler röstandelar för validatorn kan du få. Varje röstandel motsvarar en röst för BFT-konsensus.
Insatsare får röstandelar proportionellt mot de polletter de satsar. Röstaparterna är slumpmässigt fördelade på skärvor. Intressenter som blir shardvaliderare får motsvarande rösträtt i shard.
I Harmonys konsensus- och skärningsprocess finns det ett koncept med cykler (epoker). Perioder är förutbestämda tidsintervall under vilka skärvstrukturen är fixerad och varje skärva löper kontinuerligt konsensus med samma uppsättning validerare.
I början av varje cykel kommer ett slumptal att genereras av DRG-protokollet, och fragmenteringsstrukturen kommer att bestämmas baserat på slumptalet. Validatorer måste satsa sina tokens under föregående period om de vill validera transaktioner under en viss period. Deadline för insatslöfte är innan slumptalet preimage pRnd skickas till blockkedjan.
I början av varje ny valideringscykel tilldelas den nya validerarens röstandelar slumpmässigt till skärvorna. Nya validerare ansluter sig till en skärva och deras röstandelar delas ut. Shard-konsensus kräver blocksignaturer med minst 2f+1 röstande aktier.
För att säkerställa säkerheten för en enskild shard, antar Harmony en adaptiv tröskel PoS, som justerar priset på röstande aktier genom algoritmer på ett adaptivt sätt, och tilldelar individuella röstande aktier till shards istället för en enda verifiering av.
För att förhindra storskaliga utlovade tokenattacker, skär Harmony inte genom verifierare, utan skär genom röstandelar för att förhindra ett stort antal myntinnehavare från att ockupera en enda skärva. En enda validator kan tilldelas flera shards om den har röstandelar tilldelade olika shards. Ledaren för en skärva är fast besluten att vara valideraren med den första röstandelen i en viss grupp.
Samtidigt är röstandelarna så små att illvilliga angripare inte kan samla makten i en enda skärva. Efter beräkning, anser Harmony att en gång mer än 600 röstberättigade aktier kan den höga säkerheten för skärning garanteras.
Med tanke på ekonomiska fördelar har validerare med fler insatta tokens fler chanser att bli valda som ledare. I händelse av skadligt beteende fruktar validerare som har satt ut tokens att deras intressen kommer att försämras, vilket säkerställer nätverkets säkerhet.
Utöver ovanstående mekanismer använder Harmony också ett omblandat skärningsschema för att förbättra dess säkerhet. För om skärvorna förblir strukturerade har illvilliga angripare fortfarande möjlighet att utföra sina attacker. Såsom genomförandet av statisk cykelattack, långsam anpassningsattack eller full anpassningsattack och så vidare. Harmony använder en omskärningsmekanism baserad på Cuckoo-regler för att lösa dessa problem. I slutet av en valideringscykel där validerare som drar tillbaka sin insats utvisas från nätverket, stannar de som behåller sin insats.
Snabb tillståndssynkronisering
Det första blocket i en epok innehåller en hash-länk till det första blocket från den föregående epoken. Detta gör att tillståndet för nya noder snabbt kan synkroniseras, där de kan lita på grå block för att snabbt verifiera det aktuella tillståndet.
Om du behöver ladda ner hela blockchain-historiken för att verifiera shard-transaktioner är tiden för lång. Om du har synkroniserat Ethereums blockchain-historik vet du att det kan ta flera dagar. Harmony behöver bara ladda ner det aktuella tillståndet inom ett cykeltidsfönster.
I Harmony laddar nya validerare som går med i en shard först ned den aktuella statusen för den shard. Nya noder laddar ner historiska blockrubriker och verifierar blockrubrikerna genom att kontrollera deras signaturer. Shard-tillståndet är giltigt så länge det finns kryptografiska spår från det nuvarande tillståndet tillbaka till genesis-blocket, såsom hashpekare och signaturer.
Samtidigt, för att minska kostnaden och tidskostnaden för beräkning av signaturverifiering, innehåller det första blocket i varje cykel av Harmony en extra hash-pekare som pekar på det första blocket i föregående cykel. På detta sätt kan en ny nod hoppa över andra block i en cykel när den spårar sin hash-pekare till genesis-blocket, och därigenom påskynda verifieringen av det aktuella blockkedjetillståndet. Slutligen, för att ytterligare optimera tillståndssynkroniseringsprocessen, kommer Harmony att hålla själva blockkedjetillståndet så litet som möjligt.
Relaterade länkar:
https://www.qukuaiwang.com.cn/szhb/3285.html###