Una visió general de les plataformes de contractes intel·ligents de criptomonedes més fiables
Un contracte intel·ligent és un contracte digital escrit mitjançant el codi d’ordinador condicional If-Then per definir un acord entre dues o més parts, amb certes regles i sancions, registrat a la cadena de blocs. Les parts contractants són anònimes, però el contracte en si mateix s’emet al llibre major. Un esdeveniment desencadenant, com ara assolir un preu de vaga o arribar a una data de caducitat, encén l’execució del contracte segons les condicions de l’acord codificades dins del contracte intel·ligent.
Els contractes intel·ligents són mitjans per intercanviar diners, accions, propietats o qualsevol forma d’actiu d’una manera transparent, segura i lliure de conflictes, tot ometent la necessitat d’intermediació per part d’un intermediari..
Al llarg d’aquest article, revisarem les plataformes de contractes intel·ligents més àmpliament utilitzades que han demostrat ser eficients i fiables en diverses aplicacions empresarials. Si ho desitgeu conèixer els contractes intel·ligents i com funcionen, tenim una classe de Cointelligence Academy que els cobreix en detall.
Les plataformes de contractes intel·ligents més populars
Ethereum (ETH)
Ethereum és una plataforma descentralitzada basada en blockchain que executa contractes intel·ligents, que també ha obert la porta a les aplicacions descentralitzades (DApps). La màquina virtual Ethereum (EVM) és una màquina virtual que executa tots els contractes intel·ligents. EVM és una màquina virtual Turing Complete de 256 bits. Els contractes intel·ligents basats en Ethereum es codifiquen mitjançant Solidity, que és un llenguatge de programació Turing Complete que permet codificar sentències de codi de bucle i ramificació. Solidaritat "Completesa de Turing" fa que Ethereum sigui ideal per codificar contractes intel·ligents amb una lògica sofisticada.
"Gas" és el combustible dels contractes intel·ligents d’Ethereum. Quantifica la quantitat de potència de càlcul necessària per executar contractes intel·ligents mitjançant EVM. Quan envieu un contracte intel·ligent, heu de determinar el seu valor de gas. Cada pas al llarg del codi del contracte intel·ligent requereix una quantitat predeterminada de gas per executar-se.
Els contractes intel·ligents d’Ethereum poden:
– Actuar com "multi-signatura" comptes ethereum, de manera que les monedes només es gasten si hi ha un nombre predeterminat d’usuaris d’acord
– Oferiu utilitat a altres contractes intel·ligents de la cadena de blocs d’Ethereum
– Registre informació sobre propietat d’actius, registre de dominis, privilegis de pertinença, drets d’aplicació i molt més
– Gestioneu acords entre diverses parts, com ara lloguers, col·laboracions empresarials i assegurances
– Estigueu codificat per emetre fitxes com ara fitxes ICO utilitzades per al finançament multitudinari. Hi ha diversos estàndards de token que s’utilitzen per emetre fitxes a la plataforma d’Ethereum, inclosos els estàndards ERC-20, ERC223 i ERC77. ERC-20 és l’estàndard més utilitzat per emetre fitxes amb finalitats ICO, tot i els seus greus errors que ja han provocat pèrdues per valor de milions de dòlars a la indústria criptogràfica..
ERC-20 realitza una transacció de token mitjançant una de dues maneres:
1- transfer (): aquesta funció encén l’enviament de fitxes a l’adreça d’un usuari específic.
2- approve () + transferFrom (): aquesta funció encén el dipòsit de fitxes a un contracte intel·ligent predefinit.
Tanmateix, si la funció transfer () s’utilitza accidentalment per enviar fitxes a un contracte intel·ligent, la transacció s’executarà amb èxit, però aquesta transacció mai no serà reconeguda per l’adreça del contracte intel·ligent del destinatari. Aquest error va inspirar els desenvolupadors a crear els estàndards ERC223 i ERC77.
– ERC223: Aquest estàndard mitiga l’error crític ERC-20 mitjançant la modificació de la funció transfer () de manera que llançaria un error en resposta a les transferències no vàlides i cancel·laria la transacció perquè no es perdin fons.
– ERC777: aquest estàndard resol el problema d’ERC20 de manca d’operacions de gestió de transaccions.
Ethereum és una opció popular per crear contractes intel·ligents, però els problemes d’escalabilitat de la plataforma la fan inadequada per a moltes aplicacions del món real. La solidesa no té la flexibilitat de codificació que proporcionen els llenguatges de programació més recents. La solidesa no admet matrius multidimensionals tant en paràmetres d’entrada com en paràmetres de sortida. A més, Solidity només admet 16 paràmetres dins d’una funció de contracte intel·ligent.
Malgrat això, els contractes intel·ligents basats en Ethereum s’utilitzen en diverses aplicacions. Per exemple, PCHAIN va ser el primer projecte de cadena de blocs que va crear un sistema natiu de múltiples cadenes que admeti completament la màquina virtual Ethereum (EVM): l’entorn d’execució dels contractes intel·ligents d’Ethereum.
EOS
EOS s’està convertint cada vegada més en una de les plataformes de contractes intel·ligents més populars. La plataforma ha captat l’atenció de la comunitat criptogràfica a causa d’una infinitat de raons, és a dir, que les transaccions a la plataforma requereixen comissions gairebé nul·les i la capacitat de la plataforma per gestionar milions de transaccions per segon.
Els contractes intel·ligents es programen mitjançant C ++, cosa que augmenta la flexibilitat de programació. Els contractes intel·ligents EOS s’implementen a la cadena de blocs en forma d’assemblea web precompilada (WASM), que promou l’execució més ràpida dels contractes en comparació amb els contractes intel·ligents basats en Ethereum. WASM es compila amb C / C ++ mitjançant clang i LLVM. Els desenvolupadors han de tenir coneixement de C / C ++ per poder codificar contractes intel·ligents a la cadena de blocs d’EOS. Tot i que C es pot utilitzar per crear contractes, es recomana utilitzar l’API EOS.IO C ++, que reforça la seguretat del contracte i facilita la lectura del seu codi. EOS utilitza el mecanisme de consens de prova de participació delegada (dPoS), que actua amb avaluació parcial i execució paral·lela per oferir una plataforma de contractes intel·ligent amb alts nivells d’escalabilitat i comissions de transacció gairebé nul·les.
Tot i que EOS és molt menys popular que Ethereum, ha establert el "llançament aeri" model com a competidor del model de finançament multitudinari ICO d’Ethereum.
Aion (AION):
Aion és una plataforma de contractes intel·ligents que permet enrutar transaccions i missatges entre diferents cadenes de blocs mitjançant la seva innovadora tecnologia "pont" protocols. Aion és una xarxa de diversos nivells formada pels components següents:
– Ponts
– Connexió de xarxes
– Transaccions entre cadenes
– Xarxes participants
Els ponts d’Aion permetran fer transaccions a través de múltiples cadenes de blocs (transaccions entre cadenes) a través de l’ecosistema de cadenes de blocs AION. Les transaccions entre cadenes s’executen a través de ponts i xarxes de connexió. Les xarxes de connexió representen els protocols mitjançant els quals totes les cadenes de blocs públiques i privades es poden intercomunicar amb l’ecosistema de cadenes de blocs d’AION. Les xarxes participants són xarxes que han complert un conjunt especial de requisits per formar part de l’ecosistema blockchain d’AION. Les xarxes participants han de donar suport a la transmissió de transaccions atòmiques i implementar un temps de bloqueig que els permeti congelar les transaccions que entren en un estat de "Oh, espera".
La màquina virtual Aion (AVM) permet executar contractes intel·ligents. AVM és una implementació de JVM dissenyada per executar la lògica de cadena. El llenguatge Aion és el llenguatge de script que s’utilitza per programar contractes intel·ligents a l’AVM. Actualment, el nucli d’Aion funciona amb Java, de manera que els desenvolupadors han d’utilitzar llenguatges com Python o Groovy per codificar contractes intel·ligents a la cadena de blocs d’Aion. Tanmateix, la plataforma acabarà per confiar en el llenguatge Aion per crear scripts de contractes intel·ligents.
Aion-1 és la plataforma independent d’Aion que permet l’execució de contractes intel·ligents creats en altres cadenes de blocs. Ara mateix, Aion confia en l’EVM d’Ethereum, tot i que finalment Aion-1 s’activarà i permetrà als desenvolupadors executar els seus contractes intel·ligents basats en Ethereum i DApps molt més barats i ràpids que en l’EVM.
NEM
NEM és una plataforma de contractes intel·ligents més escalable que Ethereum. Quan Ethereum pot gestionar 15 transaccions per segon, NEM pot gestionar centenars de transaccions per segon. NEM és més ràpid, més segur i proporciona una simple tecnologia de contractes intel·ligents. NEM utilitza codi fora de blockchain per programar contractes intel·ligents, cosa que fa que la cadena de blocs de NEM sigui menys descentralitzada que la d’Ethereum, tot i que promou nivells de seguretat més alts, confirmació més ràpida de les transaccions i codi de programació més lleuger. Les funcions de seguretat en cadena de NEM, com ara signatures múltiples i actius intel·ligents, resolen aquest problema.
Els actius intel·ligents són aplicacions exclusives de gestió de dades que es poden utilitzar per crear registres de dades, fitxes, sistemes de votació i noves monedes mitjançant un codi de programació senzill. La funcionalitat extrema de la cadena de blocs de NEM es proporciona a través de la seva potent API, que permet l’ús de qualsevol llenguatge de programació (com JS, Python i altres) per codificar contractes intel·ligents. L’API de NEM s’utilitza per desenvolupar-se "contractes fora de la cadena", que es pot actualitzar en qualsevol moment, sense comunicar-se amb la cadena de blocs de NEM.
Estel·lar
Stellar és una plataforma de contractes intel·ligents on les transaccions són més segures, més ràpides i més econòmiques que les transaccions a la cadena de blocs d’Ethereum. Els contractes intel·ligents estel·lars (SSC) no s’acaben de Turing i s’implementen en forma d’acords programats entre múltiples parts que s’apliquen per transaccions. Tot i que es triga uns 3,5 minuts a confirmar-se una transacció a la cadena de blocs d’Ethereum, una transacció a la cadena de blocs de Stellar només requereix uns 5 segons per confirmar-se. Les comissions de transaccions són insignificants, amb una mitjana aproximada (0,0001 XLM ~ = 0,0000002 $). SSC es pot codificar mitjançant qualsevol llenguatge de programació com Python, JS, PHP, Golang i altres mitjançant l’API de Stellar. Un SSC es compon de transaccions interconnectades i executades mitjançant múltiples restriccions, incloses signatures múltiples, lots / atomicitat, seqüència i límits de temps. El lot permet la inclusió de múltiples operacions en una única transacció. Atomicity garanteix que en enviar una sèrie d’operacions a la xarxa de Stellar, totes les operacions d’una transacció fracassarien si una sola operació no s’executa. La seqüència és un concepte únic que apareix a la cadena de blocs de Stellar mitjançant el "Número de seqüència". Amb els números de seqüència, les transaccions específiques fallarien si s’executa correctament una transacció alternativa. Els límits de temps representen limitacions del període de validesa d’una transacció. La utilització de límits de temps permet la representació de períodes de temps en un SSC.
Teixit Hyperledger (HLF)
Hyperledger Fabric (HLF) és una cadena de blocs autoritzada dissenyada amb flexibilitat avançada. Es coneixen com a contractes intel·ligents de HLF "codi de xinc". HLF està escrit en llenguatge Go, el llenguatge de programació de codi obert de Google, de manera que chaincode també admet aquest llenguatge força bé.
Corda
Corda és una plataforma de contractes intel·ligents ideal per crear acords financers. Els contractes intel·ligents de Corda són transaccions vàlides que han de ser acceptades pel contracte intel·ligent de cadascun dels seus estats d’entrada i sortida. Els contractes intel·ligents es codifiquen mitjançant un llenguatge de programació JVM com ara Java o Kotlin. L’execució d’un contracte intel·ligent és determinista i l’acceptació d’una transacció només es basa en el contingut de la transacció. De tant en tant, la validesa d’una transacció es basa en una informació externa, com ara un preu simbòlic. En aquest cas, es necessita un oracle. Es pot codificar un fet per formar part de l’ordre d’una transacció. Un oracle representa un servei que només confirmarà una transacció, si el fet de l’ordre és cert.
Els DApps de Corda, o CorDapps, s’instal·len al nivell dels nodes de xarxa, en lloc de fer-ho a la pròpia xarxa blockchain. CorDapps es codifica mitjançant Java o Kotlin. CorDapps es codifica per executar-se a la plataforma de Corda. Això s’aconsegueix mitjançant la definició de fluxos que els operadors de nodes Corda poden invocar mitjançant trucades RPC.
NEO
NEO és una plataforma de contractes intel·ligents que compta amb contractes intel·ligents de tarifes baixes i eficients. Els contractes intel·ligents es poden codificar mitjançant una infinitat de llenguatges de programació, inclosos C #, F #, Java, Python, VB.Net i Kotlin. NEO ofereix connectors i compiladors per a tots aquests idiomes. En el futur, s’implementarà el suport per a JS, Go language, C i C ++.
Els contractes intel·ligents de NEO s’executen mitjançant la lleugera màquina virtual NEO (NeoVM). L’execució intel·ligent del contracte mitjançant NeoVM consumeix recursos mínims. La recopilació estàtica de contractes intel·ligents i l’emmagatzematge en memòria cau de contractes intel·ligents de punts d’accés pot millorar considerablement mitjançant el compilador JIT en temps real. Actualment, la cadena de blocs de NEO compta amb Smart Contract 2.0, que compta amb suport per a estructures i matrius de dades complexes. A més, Smart Contract 2.0 proporciona un enfocament escalable mitjançant particions dinàmiques i alta concurrència, en combinació amb un disseny d’acoblament baix. El procediment de baix acoblament dels contractes intel·ligents s’executa a NeoVM i interactua amb sistemes fora de la cadena mitjançant una capa de servei interactiva. Com a tal, la majoria de les actualitzacions de la funció de contractes intel·ligents es poden aconseguir mitjançant l’API especial de la capa de servei interactiu.
Onades
Els contractes intel·ligents de Waves es codifiquen mitjançant el llenguatge de programació RIDEON. El llançament dels contractes intel·ligents de Waves es divideix en dues etapes. La primera etapa ja es va llançar el passat mes d’abril i va permetre desenvolupar contractes intel·ligents complets que no fossin de Turing a testnet. La primera fase dels contractes intel·ligents complets que no són de Turing permeten una infinitat de funcions de control de comptes que cobriran múltiples casos d’ús que van des de l’intercanvi de fitxes en diferents cadenes de blocs fins a permetre el control del control pressupostari compartit. Un dels casos d’ús més freqüents dels contractes intel·ligents complets que no són Turing de Waves són els comptes amb signatures múltiples. A més, es poden utilitzar per implementar la congelació de tokens, que consisteix a enviar un testimoni a una adreça i assegurar-se que no es pugui gastar, és a dir, no es pugui transferir, durant un període de temps predefinit. Això serà molt útil per implementar la creació de tokens per als creadors d’un ICO, un cop finalitzada la venda multitudinària.
Després que la primera etapa dels contractes intel·ligents complets que no siguin de Turing hagi estat provada i activada a la xarxa principal de Waves, es posarà en marxa la segona etapa dels contractes intel·ligents complets de Turing.
Stratis
Stratis utilitza el marc popular .NET. Els contractes intel·ligents es codifiquen mitjançant el llenguatge de programació C #. Els contractes intel·ligents s’han d’executar de manera determinista, de manera que no poden utilitzar totes les capacitats de C # ni de totes les biblioteques bàsiques de .NET. Stratis també confia en el "gas" , que és idèntic al concepte de gas d’Ethereum.
Cardano
Cardano és una plataforma de contractes intel·ligents enfocada a proporcionar garanties que un contracte intel·ligent funciona exactament tal com està codificat, sense cap vulnerabilitat oculta. Els contractes intel·ligents es poden codificar mitjançant Solidity o Plutus. Cardano compta amb la capa de càlcul de Cardano (CCL), que consta de dues capes: un marc lingüístic i una màquina virtual especificada formalment. El marc lingüístic inclou un conjunt de llenguatges de programació especificats formalment que faciliten l’autenticació automàtica del codi de contracte intel·ligent llegible per humans.
Tezos
Tezos és una plataforma de contractes intel·ligents que admet la verificació formal del codi de contracte intel·ligent en cadena. Els contractes intel·ligents es codifiquen mitjançant un nou llenguatge de programació, conegut com Michelson, que augmenta la seguretat. A diferència de Solidity, el codi de Michelson no es compila amb res; en canvi, representa un llenguatge de programació complet de Turing de baix nivell, basat en existències, que és interpretat directament per la màquina virtual Tezos. Els contractes intel·ligents programats per Michelson permeten codificar construccions d’alt nivell que inclouen conjunts, mapes, primitives criptogràfiques, lambdas i operacions específiques de contracte que fan que el codi sigui més llegible per a l’home.
Següent (NXT)
El següent és una criptomoneda i una plataforma de contractes intel·ligents. Tot i que els contractes intel·ligents de Next no són complets de Turing, la plataforma utilitza una capa de script completa completa de Turing que permet als usuaris crear plantilles de contractes intel·ligents fàcilment. Els usuaris poden escollir la plantilla més adequada a les seves necessitats i modificar-ne els paràmetres per crear els seus propis contractes intel·ligents. Els desenvolupadors de la plataforma Next creuen que aquestes plantilles de contractes intel·ligents cobreixen gairebé totes les aplicacions empresarials, a més de ser senzilles de codificar i implementar.
Pensaments finals
Hi ha altres criptomonedes que permeten el desenvolupament de plataformes de contractes intel·ligents com Quorum, Wanchain, Aeternity, Zen, Counterparty, Rootstock, RChain, Qtum, Ark, Neblio, DFINITY, BOSCoin, Agoras Tauchain, Burst, iOlite, ByteBall, XTRABYTES, PolkaDot Radix, Exonum, Universa, Urbit, Soil, Expanse, Monax i probablement d’altres. Tot i això, les plataformes que apareixen en aquest article són les més utilitzades i les que han demostrat ser fiables en diverses aplicacions.