Dopo aver dedicato un articolo ad Ethereum 2.0, la cui roadmap consiste di tre punti chiave (PoS, Sharding, eWASM), oggi dedichiamo spazio ad Ethereum Constantinople.
Constantinople è il prossimo grosso upgrade di Ethereum ed è quasi pronto. Constantinople include cinque diverse migliorie (in gergo tecnico chiamate EIPs) e una volta rilasciato cambierà in modo permanente la blockchain in quanto diverse modifiche non sono retrocompatibili.
Ciò significa che i nodi, ovvero la rete di computer che eseguono il software ethereum, devono essere aggiornati insieme all'intero sistema o continuare a funzionare su una blockchain parallela (ma separata). Formalmente quello appena descritto è un "hard fork" che di fatto produce due versioni differenti della medesima blockchain. In termini semplici con hard fork si fa riferimento a una scissione senza retrocompatibilità con la blockchain precedente. Questo comporta una netta divisione dei due codici e quindi non potranno più esserci scambi di dati.
Ethereum Constantinople
La maggior parte degli aggiornamenti contenuti in Constantinople non saranno notati dagli utenti, come ha dichiarato Lane Rettig:
l'imminente hard fork non presenterà "grandi cambiamenti" per gli utenti finali.Rettig l'ha definito un aggiornamento che va ad ottimizzare il network e che contiene migliorie tecniche difficili da comprendere ma fondamentali per migliorare diversi aspetti di Ethereum (efficienza, fee, scaling).
Attualmente gli sviluppatori stanno testando e revisionando il codice prima di rilasciarlo definitivamente.
Il testing richiede tempo e non possiamo sbagliare.le parole di Eric Conner.
Cinque EIPs
Le cinque grosse migliorie sono le seguenti:- EIP 145: technical upgrade pensato dagli sviluppatori Alex Beregszaszi e Pawel Bylica, EIP 145 implementa un metodo più efficiente per il processing delle informazioni formalmente noto come bitwise shifting;
- EIP 1052: sviluppato da Nick Johnson e Bylica, EIP 1052 va ad ottimizzare l'esecuzione di grosse moli di codice;
- EIP 1283: si basa su EIP 1087, questa miglioria beneficia gli sviluppatori di smart contract introducendo un metodo di determinazione dei prezzi più equo per l'archiviazione dei dati;
- EIP 1014: sviluppato da Vitalik Buterin, questo aggiornamento intende facilitare l'implementazione di alcune soluzioni di scaling e le transazioni "off-chain";
- EIP 1234: è l'EIP più discusso, riduce il reward dei miner da 3 ETH a 2 ETH per ogni blocco.
Ottimizzazione del codice
EIP 145 e 1052 mirano a migliorare l'efficienza della rete, apportando modifiche alla macchina virtuale sottostante di ethereum: l'EVM. L'EVM elabora contratti intelligenti in una serie di uni e zeri chiamati anche bytecode.Va detto che un gruppo di sviluppatori, sta lavorando per rimpiazzare l’esistente EVM (Ethereum Virtual Machine) con un’altra costruita sulla base del linguaggio di programmazione WebAssembly, anche chiamato Wasm ma questo è un altro discorso.
EIP 145 mediante il "bitwise shifting" introduce la possibilità di eseguire bytecode senza fare affidamento su operazioni aritmetiche come la moltiplicazione e la divisione. Questo significa che gli smart contracts di Dapps quali Cryptokitties saranno processati più rapidamente da EVM.
EIP 1052 impone la scansione e il controllo delle sole porzioni di codice fondamentali quando uno smart contract viene eseguito. In sostanza piuttosto che verificare l'intero contratto, EIP 1052 permette di controllare un "hash" risparmiando tempo e costi di elaborazione, soprattutto per smart contracts lunghi migliaia di righe di codice.
Storage economico
EIP 1283 riduce il prezzo che i developers devono pagare per i propri smart contracts. Ad oggi alcuni aggiornamenti costano un elevato quantitativo di GAS, l'unità computazionale necessaria per eseguire operazioni sulla piattaforma Ethereum. EIP 1283 implementa una migliore analisi dei costi per i contratti.
Se poche o nessuna delle modifiche finiscono sulla blockchain i costi vengono ridotti drasticamente. Di seguito riportiamo le parole di Johnson, autore della proposta originaria:
In passato addebitavamo gas agli sviluppatori per modifiche che in realtà non comportavano lavoro aggiuntivo nè richiedevano risorse. Con questo aggiornamento facciamo pagare solo per reali modifiche che ci fanno perdere tempo.Johnson ha poi anticipato che sono al lavoro sulle rent fees. L'idea è di addebitare una commissione per gli utenti che conservano i dati memorizzati in modo permanente sulla blockchain. Johnson ha detto che questo sarebbe un modo efficace per disincentivare l'uso di storage per cose di cui gli utenti non hanno realmente bisogno.
State channels
EIP 1014 aiuta a sviluppare una soluzione di scaling chiamata state channels. Questi canali minimizzano il numero di operazioni che devono verificarsi sulla blockchain liberando risorse e spazio.Sviluppata da Vitalik Buterin, l'EIP 1014 è spiegata su GitHub da Liam Horne. Diversi sviluppatori ne hanno sollecitato l'inclusione in Costantinople affermando che l'EIP 1014 è fondamentale per facilitare le transazioni off-chain.
Politica economica
In ultimo c'è EIP 1234, l'ultima aggiunta alle quattro altre proposte che si occupa dell'aumento incrementale della difficoltà nota anche come difficulty bomb. EIP 1234 è pensata per incentivare il passaggio al prrof-of-stake e quindi a Casper che però è lungi dall'essere pronto.
In parole povere, data la rimozione della difficulty bomb, i blocchi saranno più veloci da minare in seguito all'aggiornamento. Ciò significa che devono essere adottate misure per ridurre la ricompensa che passa da 3 ETH a 2 ETH per blocco. Questa modifica è stata ritenuta la proposta migliore per stabilizzare l'emissione di ETH in seguito al delay della difficulty bomb.
Ovviamente tantissimi miners si sono opposti a questa decisione portando tra le varie motivazioni una possibile centralizzazione del network nelle mani di pochi.
In conclusione
In sintesi, tutti e cinque gli EIP hanno impatti sul network e toccano una vasta serie di punti. In questa fase di testing non ci resta che attendere la release finale di Constantinople.
Il testing, come detto all'inizio dell'articolo, richiede tempo. La data di rilascio ufficiale era l'8 Ottobre 2018 ma il fork non sarà pronto prima di Novembre.
[sc name="firma"]
Posted from my blog with SteemPress : https://www.cryptominando.it/2018/09/14/ethereum-constantinople-fork-ethereum/
This user is on the @buildawhale blacklist for one or more of the following reasons:
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit