Cosmos Blockchain är ett nytt svar på “sidokedjor”, som syftar till att göra det möjligt för användare att enkelt korsa en galax av blockkedjor. Cosmos vill erbjuda flera parallella blockkedjor för att interoperera samtidigt som de behåller sina säkerhetsegenskaper. Tidigare försök med bevis på arbete var inte lika framgångsrika som förväntat eftersom en barnkedja kunde attackeras när majoriteten av gruvkraften tilldelades föräldrakedjan eller en annan barnkedja. Cosmos fokuserar på interoperabilitet mellan blockkedjor och en lågenergikrävande version av en blockchain med stor skalningsflexibilitet.
Vitbok om Cosmos beskriver de aktuella blockchainrelaterade problemen:
Hittills har blockkedjor drabbats av ett antal nackdelar, inklusive deras brutto energiineffektivitet, dålig eller begränsad prestanda och omogna styrmekanismer. Förslag för att skala Bitcoins transaktionsflöde, såsom Segregated-Witness och BitcoinNG, är vertikala skalningslösningar som förblir begränsade av kapaciteten hos en enda fysisk maskin för att säkerställa egenskapen för fullständig granskbarhet. Lightning Network kan hjälpa till att skala Bitcoin-transaktionsvolymen genom att lämna vissa transaktioner från huvudboken helt och är väl lämpad för mikrobetalningar och sekretessbevarande betalningsspår, men kanske inte passar för mer generaliserade skalningsbehov.
Det råder ingen tvekan om att blockchain kommer att spela en nyckelroll i vår framtid, men vi måste erkänna de befintliga problemen. Cosmos-projektet förvärvade Tendermint blockchain-konsensusalgoritm eftersom den är mycket effektiv och använder den mer mogna bysantinska feltoleransen.
Möt Tendermint
Cosmos använder proof-of-stake, vilket innebär att det inte finns någon beräkningslopp för att säkra blockchain som med proof-of-work. Ju större insats av mynt du äger, desto större mängd mynt får du. Cosmos använder dock en något annorlunda metod eftersom den använder en proof-of-stake-version av Tendermint blockchain-konsensus.
För att uttrycka det enkelt är Tendermint en programvara som kan användas för att uppnå Byzantine Fault Tolerance (BFT) i vilken distribuerad datorplattform som helst. Idén bakom BFT är årtionden gammal, men intresset har bara ökat sedan blockchain-trenden har börjat. Blockchain-teknik är inget annat än BFT i en modern miljö, med tonvikt på kryptografi och p2p-nätverk.
Varför behöver vi Tendermint?
För ett decentraliserat system är det tekniskt inte möjligt att alla noder kommunicerar via en central nod. Därför är tillräckligt snabb kommunikation endast möjlig via ett nätverk. Ett nätnät tillåter dock det bysantinska felet där falsk information sprids och ingen vet vem som talar sanningen. Det är här Tendermint behövs eftersom det har flera mekanismer för att bestämma pålitligheten hos noder. Tendermint förlitar sig på en grupp semi-betrodda noder för att rösta på block; så länge mer än två tredjedelar av röstnoder är ärliga kommer protokollet att förbli aktivt.
Tendermint Architecture
Tendermint har byggts upp med hjälp av två kärnkomponenter, nämligen Tendermint Core som fungerar som en konsensusmotor och Application Blockchain Interface (ABCI). Tendermint Core är lika ansvarig för att säkerställa rätt ordning på de registrerade transaktionerna på varje nod i nätverket. En ABCI ger utvecklare ett gränssnitt för att behandla transaktioner med önskat programmeringsspråk och fungerar såväl som en port till Tendermint Core. Det är till och med möjligt att hantera flera applikationstillstånd via Tendermint Core med hjälp av ett socketprotokoll som de har utvecklat.
Kort sagt, Tendermint ansvarar för:
- Validerar transaktionssignaturer.
- Förhindrar att skadliga transaktioner läggs till i världsstaten.
- Uppdatera och hantera världsstatus för din blockchain.
- Erbjuder frågefunktionalitet mot världsstaten. Blockkedjor som Bitcoin är inte utformade för att erbjuda frågefunktioner.
- Skicka transaktioner till Tendermint Core via ett lättanvänt API.
Kosmosnav och zoner
Cosmos gör att flera blockkedjor kan köras samtidigt som denna interoperabilitet bibehålls. Cosmos Hub är ansvarig för att hantera olika zoner. Genom att använda hubbar och zoner har Cosmos skapat inter-blockchain-kommunikation (IBC) som är ganska unik. Varje zon accepterar en ström av senaste blockförpliktelser som vidarebefordras till navet. Navet är ansvarigt för att upprätthålla världsstaten. Validering sker genom att kommunicera Merkle-bevis mellan zoner för att bevisa till andra zoner att informationen behandlades korrekt.
A Nav är värd för en distribuerad huvudbok med flera tillgångar, där tokens kan innehas av både användare eller zoner. Det coolaste här är att det är möjligt att flytta tokens från en zon till en annan. Detta åstadkoms igen genom IBC-kommunikation av ett myntpaket. I grund och botten är navet också en routing-mekanism.
A Zon är en oberoende blockchain som kan utbyta dessa IBC-meddelanden med motsvarande Hub.
Validerare
Vi nämnde tidigare Cosmos använder proof-of-stake. Cosmos-nätverket kräver att du spelar Atoms, plattformens interna valuta. En validerare är knuten till en zon i Cosmos-navet som han validerar transaktioner för. Din röststyrka beräknas av mängden staking Atoms. Validerare som agerar skadligt kommer att straffas och förlorar sålunda alla sina insatta atomer och sin del av reservpoolen. Dessutom kommer han att förlora all trovärdighet inom nätverket.
När mer än en tredjedel av noderna agerar skadligt eller går ner kommer nätverket att stoppas, eftersom Tendermint föredrar säkerhetsegenskapen framför levnad. Det enda sättet att starta om nätverket är att återställa det med ett förslag om omorganisation av hård gaffel.
Det är viktigt att veta att Tendermint begränsar antalet validerare av naturen eftersom det upptäcktes att blockkedjor blir långsammare när det finns fler validatorer på grund av den ökade komplexiteten i att kommunicera med varandra. Under det första året sätts antalet validerare till 100. Detta antal kommer att öka med 13% varje år under en period av tio år, vilket är 300 validerare.
Atom-token
De Atom-token är den inhemska tillgången till Cosmos Hub, som kan användas över de olika distribuerade huvudböckerna i varje zon. Atomer ger användarna rätt att rösta, validera eller delegera till andra validerare. Liksom Ethereum anses Atom-token vara gasen för att betala för transaktioner. Denna avgift genomförs för att mildra skräppost.
Använd fodral
Distribuerat utbyte
Ett distribuerat utbyte är ett av de coola koncepten som är möjliga med Cosmos. Genom att använda nav- och zonsarkitekturen är denna massreplicerade huvudbok mindre sårbar för interna och externa hackningsförsök.
En distribuerad börs är inte exakt densamma som en decentraliserad börs (DEX). En DEX använder atombyten, som är transaktioner mellan kedjor. Nackdelen med en DEX är att båda användarna måste vara online för att handeln ska lyckas. En distribuerad börs kräver inte detta eftersom handelmatchningstjänsten tar hand om transaktionen.
En distribuerad börs mervärde är dess höga transaktionsgenomströmning och kapacitet med hjälp av zonerna och Tendermint-kärnan. Enligt whitepaperna från Cosmos är den fördröjda latensen för en transaktion jämförbar med den för centraliserade börser.
Överbrygga till andra kryptovalutor
En viss zon kan fungera som en brygga som ska bytas mot en annan kryptovaluta, vilket skapar en länk mellan en utländsk och en Cosmos-lokal kryptovaluta. För att uppnå detta måste en brozon hålla jämna steg med både den interna zonen och den utländska kryptovalutan.
Skalar Ethereum Dapp på Cosmos Stack
Om du hålls tillbaka av Ethereums prestanda finns det olika sätt att skala din Dapp med Cosmos-stacken.
Peg Zone
Peg-zonen – kallad ‘Peggy’ – tillåter användare att överföra ERC20-tokens till Cosmos Hub där de kan bytas i mycket snabbare takt. Dessutom erbjuder Cosmos Hub speciella EVM-zoner för ERC20-tokens. När användarna är färdiga kan de dra tillbaka sina tokens till Ethereum-nätverket.
Tendermint Plasma
Plasma tillåter utvecklare att använda Cosmos SDK för att utveckla Dapps medan deras tokens placeras i Ethereum-nätverket. Dessa projekt kan förlita sig på mycket snabbare transaktionstider inom Tendermint-zoner.
Cosmos SDK
Cosmos SDK v0.10.0 tillkännagavs den 28 februari 2018. Cosmos SDK ger Dapp-utvecklare ett annat sätt att bygga säkra blockchain-applikationer förutom EVM-smarta kontrakt. Det är nu möjligt att ha olika kedjor med olika mynt, vilket möjliggör ett riktigt kosmosekosystem.
Cosmos ger ett exempel på ett mynt, kallat BaseCoin, som använder Cosmos Ecosystem. Du ser här ett exempel på koden där vi ställer in några alternativ för vårt nya mynt som ett leverans- och tokennamn. [/ Caption]
Som du kan se är koden skriven i Golang. Cosmos SDK visar oss också en kod för användare som ska användas för att skicka meddelanden som innehåller godtycklig information.
För närvarande är dokumentationen på Cosmos SDK inte bra än. Låt oss hoppas att detta kommer att förändras i framtiden.