Cosmos Blockchain: moltes cadenes, moltes fitxes, un ecosistema
El Cosmos Blockchain és una nova resposta a les “cadenes laterals”, que té com a objectiu permetre als usuaris travessar fàcilment una galàxia de cadenes de blocs. Cosmos vol oferir diverses cadenes de blocs paral·leles per interoperar mantenint les seves propietats de seguretat. Els intents previs amb proves de treball no van ser tan reeixits com s’esperava, ja que es podia atacar una cadena infantil quan la majoria de la potència minera s’assignava a la cadena principal o a una altra cadena infantil. Cosmos se centra en la interoperabilitat entre cadenes de blocs i una versió de baix consum d’energia d’una cadena de blocs amb una gran flexibilitat d’escala.
El llibre blanc de Cosmos descriu els problemes actuals relacionats amb la cadena de blocs:
Fins ara, les cadenes de blocs han patit diversos inconvenients, inclosa la seva ineficiència energètica bruta, un rendiment baix o limitat i mecanismes de govern immadurs. Les propostes per escalar el rendiment de transaccions de Bitcoin, com Segregated-Witness i BitcoinNG, són solucions d’escala vertical que resten limitades per la capacitat d’una única màquina física, per tal de garantir la propietat d’una auditoria completa. Lightning Network pot ajudar a escalar el volum de transaccions de Bitcoin deixant algunes transaccions fora del llibre major i és molt adequat per a micropagaments i rails de pagament que preserven la privadesa, però pot no ser adequat per a necessitats d’escala més generalitzades.
No hi ha dubte que la cadena de blocs tindrà un paper clau en el nostre futur, però hem de reconèixer els problemes existents. El projecte Cosmos va adquirir l’algoritme de consens de la cadena de blocs Tendermint, ja que és molt eficient i utilitza la tolerància a fallades bizantina més madura.
Coneix Tendermint
Cosmos utilitza proves de participació, el que significa que no hi ha cap carrera computacional per assegurar la cadena de blocs com passa amb la prova de treball. Com més gran sigui la vostra participació, més quantitat rebrà. Tanmateix, Cosmos utilitza un enfocament lleugerament diferent, ja que utilitza una versió de prova d’aposta del consens de blockchain de Tendermint.
En poques paraules, Tendermint és un programari que es pot utilitzar per aconseguir la tolerància a fallades bizantines (BFT) a qualsevol plataforma informàtica distribuïda. La idea darrere de BFT té dècades d’antiguitat, però l’interès només ha augmentat des que ha començat la tendència blockchain. La tecnologia Blockchain no és res més que BFT en un entorn modern, amb èmfasi en la criptografia i les xarxes p2p.
Per què necessitem Tendermint?
Per a un sistema descentralitzat, tècnicament no és possible que tots els nodes es comuniquin a través d’un node central. Per tant, la comunicació prou ràpida només és possible mitjançant una xarxa de malla. Tot i això, una xarxa de malla permet la falla bizantina on es difon informació falsa i ningú sap qui diu la veritat. És aquí on es necessita Tendermint ja que disposa de diversos mecanismes per determinar la fiabilitat dels nodes. Tendermint confia en un grup de nodes semi-fiables per votar sobre blocs; mentre més de dos terços dels nodes de votació siguin honestos, el protocol continuarà actiu.
Tendermint Architecture
Tendermint s’ha construït utilitzant dos components bàsics, a saber, Tendermint Core, que serveix de motor de consens i la interfície d’aplicacions Blockchain (ABCI). Tendermint Core és també responsable d’assegurar l’ordre correcte de les transaccions registrades a tots els nodes de la xarxa. Un ABCI proporciona als desenvolupadors una interfície per processar transaccions mitjançant el llenguatge de programació desitjat i actua, així com una porta d’entrada a Tendermint Core. Fins i tot és possible gestionar estats de diverses aplicacions mitjançant Tendermint Core mitjançant un protocol de sòcol que han desenvolupat.
En resum, Tendermint és responsable de:
- Validació de signatures de transaccions.
- Evitar que s’afegeixin transaccions malicioses a l’estat mundial.
- Actualització i gestió de l’estat mundial de la vostra cadena de blocs.
- Ofereix funcionalitats de consulta contra l’estat mundial. Les cadenes de blocs com Bitcoin no estan dissenyades per oferir funcions de consulta.
- Enviament de transaccions a Tendermint Core mitjançant una API senzilla d’utilitzar.
Centres i zones del Cosmos
Cosmos permet que diverses cadenes de blocs s’executin simultàniament mentre manté aquesta interoperabilitat. El Cosmos Hub s’encarrega de gestionar diferents zones. Mitjançant l’ús de concentradors i zones, Cosmos ha creat una comunicació inter-blockchain (IBC) que és bastant única. Cada zona accepta un flux de confirmacions de bloqueig recents que es reenvien al concentrador. El Hub és responsable de mantenir l’estat mundial. La validació es produeix comunicant proves de Merkle entre zones per demostrar a altres zones que la informació s’ha processat correctament.
A Hub allotja un llibre major distribuït amb múltiples actius, on els tokens poden ser mantinguts per usuaris o zones. El més interessant aquí és que és possible moure les fitxes d’una zona a l’altra. Això es torna a aconseguir mitjançant la comunicació IBC d’un paquet de monedes. Bàsicament, el Hub també és un mecanisme d’encaminament.
A Zona és una cadena de blocs independent que és capaç d’intercanviar aquests missatges IBC amb el Hub corresponent.
Validadors
Vam esmentar anteriorment que Cosmos utilitza proves de participació. La xarxa Cosmos requereix que participeu en Atoms, la moneda interna de la plataforma. Un validador està lligat a una zona del hub Cosmos per a la qual valida les transaccions. El vostre poder de vot es calcula per la quantitat d’àtoms de participació. Els validadors que actuïn maliciosament seran penalitzats i, per tant, perden tots els seus àtoms implicats i la seva part de la reserva. A més, perdrà tota credibilitat a la xarxa.
Quan més d’un terç dels nodes actuen maliciosament o baixen, la xarxa s’aturarà, perquè Tendermint prefereix la propietat de seguretat per sobre de la vida. L’única manera de reiniciar la xarxa és recuperar-la amb una proposta de reorganització dura.
És important saber que Tendermint limita el nombre de validadors per naturalesa, ja que es va descobrir que les cadenes de blocs es tornen més lentes quan hi ha més validadors, a causa de l’augment de la complexitat de comunicar-se entre elles. El primer any, el nombre de validadors s’estableix en 100. Aquest nombre augmentarà un 13% cada any en un període de deu anys, fins a establir-se en 300 validadors..
El testimoni Atom
El Testimonis d’àtoms és l’actiu natiu del Cosmos Hub, que es pot utilitzar a través dels diferents llibres distribuïts de cada zona. Els àtoms donen als usuaris el dret a votar, validar o delegar en altres validadors. Igual que Ethereum, el testimoni Atom es considera el gas per pagar les transaccions. Aquesta tarifa s’implementa per mitigar el correu brossa.
Casos d’ús
Intercanvi distribuït
Un intercanvi distribuït és un dels conceptes interessants que és possible amb Cosmos. En utilitzar l’arquitectura de concentradors i zones, aquest llibre major replicat en massa és menys vulnerable per als intents de pirateria interna i externa.
Un intercanvi distribuït no és exactament el mateix que un intercanvi descentralitzat (DEX). Un DEX fa ús de permutes atòmiques, que són transaccions entre cadenes. L’inconvenient d’un DEX és que tots dos usuaris han d’estar en línia perquè l’operació tingui èxit. Un canvi distribuït no ho requereix, ja que el servei de concordança comercial s’encarregarà de la transacció.
El valor afegit d’un intercanvi distribuït és el seu elevat rendiment i capacitat de transacció mitjançant les zones i el nucli Tendermint. Segons el llibre blanc de Cosmos, la latència de confirmació d’una transacció és comparable a la dels intercanvis centralitzats.
Unió a altres criptomonedes
Una zona determinada pot actuar com a testimoni pont que es pot canviar per una altra criptomoneda, creant un enllaç entre una criptomoneda estrangera i una criptomoneda nativa de Cosmos. Per aconseguir-ho, una zona pont ha de mantenir-se al dia tant amb la zona interna com amb la criptomoneda estrangera.
Escalant Ethereum Dapp a Cosmos Stack
Si el rendiment d’Ethereum us frena, hi ha diferents enfocaments per escalar el vostre Dapp mitjançant la pila Cosmos.
Peg Zone
La zona de clavilles (anomenada “Peggy”) permet als usuaris transferir els tokens ERC20 al Cosmos Hub on es poden intercanviar a un ritme molt més ràpid. A més, el Cosmos Hub proporciona zones EVM especials per als tokens ERC20. Un cop finalitzats els usuaris, poden retirar les seves fitxes a la xarxa Ethereum.
Plasma Tendermint
Plasma permet als desenvolupadors utilitzar l’SDK de Cosmos per desenvolupar Dapps mentre les seves fitxes s’interessen a la xarxa Ethereum. Aquests projectes poden confiar en temps de transacció molt més ràpids a les zones de Tendermint.
SDK Cosmos
El Cosmos SDK v0.10.0 es va anunciar el 28 de febrer de 2018. El Cosmos SDK ofereix als desenvolupadors de Dapp una altra forma de crear aplicacions de blockchain segures a més dels contractes intel·ligents EVM. Ara és possible tenir cadenes diferents amb diferents monedes, cosa que permet un veritable ecosistema del cosmos.
Cosmos proporciona un exemple d’una moneda, anomenada BaseCoin, que fa ús de l’ecosistema Cosmos. Aquí veieu un exemple del codi on establim algunes opcions per a la nova moneda, com ara un subministrament i un nom de testimoni. [/ Caption]
Com podeu veure, el codi està escrit en Golang. El Cosmos SDK també ens mostra un codi per als usuaris, que s’utilitzarà per enviar missatges que continguin informació arbitrària.
En aquest moment, la documentació de l’SDK de Cosmos encara no és excel·lent. Esperem que això canviï en el futur.