Ethereum News

Fujitsu renderà gli Smart Contracts Ethereum affidabili al 100%

Non troppo tempo fa vi abbiamo riportato la scoperta di ben 34000 Smart Contracts Ethereum soggetti a diverse vulnerabilità. Stando agli studi, è stata riscontrata una percentuale di fallimento del contratto prossima al 3.5%.

Sembra una percentuale bassa, ma sufficiente a provocare perdite anche di alcuni milioni di dollari ai diretti interessati. Per eliminare questo problema, il team di Fujitsu sembra aver trovato una soluzione potenzialmente perfetta, visto che il sistema sviluppato permetterebbe di abbattere la percentuale di fallimento allo 0%.

Smart Contracts Ethereum: perché vi è un rischio di fallimento del 3.5%?

Partiamo dunque dalla radice del problema. Come ben sappiamo, la blockchain è un registro pubblico e distribuito che registra tutte le transazioni ed è immutabile, dunque estremamente sicuro. Tuttavia, stando agli studi dei ricercatori, vi è una probabilità di fallimento del sistema, imputabile ad errori umani. Nello specifico, per Ethereum è stato riscontrato un tasso di fallimento dello 3.5%.

Smart Contracts

Dopo aver studiato più di un milione di Smart Contract, i ricercatori hanno trovato 34.200 contratti vulnerabili. Un valore significativo che porta la probabilità di successo del contratto al 97% circa. Elevata vero, ma non affidabile al 100% e dunque potenzialmente soggetta ad una perdita di denaro da parte degli enti che utilizzano un contratto incriminato.

ethereum smart contracts

Come vi dicevo prima, tale tasso di errore non è colpa diretta della tecnologia blockchain di Ethereum, ma dei programmatori degli Smart Contract. Sono state infatti scoperte tre differenti tipologie di contratti difettosi:

  • Greedy Contracts: possono essere manipolati per bloccare i fondi in essi contenuti;
  • Prodigal Contracts: possono forzare il rilascio dei fondi ad un indirizzo esterno al contratto;
  • Suicidal Contracts: nonostante il nome, sono contrati che possono essere letteralmente uccisi da un estraneo.

Vediamoli ora in maniera più approfondita.

Greedy Contracts

Il nome dice tutto: greedy, ovvero avido. I contratti di greedy bloccano i fondi in essi contenuti. Vi è dunque il rischio che tutti i token/Ethereum di tale contratto possano essere congelati in esso per un tempo indeterminato. Dallo studio effettuato è emerso che buona parte dei contratti difettosi rinvenuti poteva ricevere Ethereum ma non inviarne. Dunque sarebbero andati “perduti”, poiché non vi alcun modo per riscattarli.

Prodigal Contracts

Nella maggior parte dei casi, gli Smart Contracts di Ethereum devono sbloccare i fondi in essi contenuti ed assegnarli ad un destinatario. Come accade in molti giochi basati su Ethereum ad esempio. Un giocatore può “vincere” o “acquistare” un oggetto virtuale, ma se non si verifica alcuna vendita o vittoria i fondi devono essere restituiti all’utente originale.

Negli Smart Contratcs classificati come Prodigal, un indirizzo esterno al contratto può prelevare fondi senza rispettare le regole del contratto. Tale prelievo comporta una perdita di fondi da parte del mittente, in quanto il destinatario non riceverà mai la transazione prevista.

Suicidal Contracts

Il terzo ed ultimo tipo di contratto malevolo riscontrato utilizza i “Kill Switches” in maniera impropria. Di solito i Kill Switches vengono utilizzati in caso di malfunzionamento del contratto.

Quello che accade in questa tipologia di contratti è dovuto al fatto che non sono state impostate le autorizzazioni adeguate per far scattare il kill. Dunque, chiunque abbia delle buone competenze con la blockchain di Ethereum può letteralmente uccidere questi contratti tutt’altro che intelligenti.

La soluzione di Fujitsu

Il problema degli Smart Contracts di Ethereum dunque, riguarda la difficolta di programmazione che comporta errori anche gravi, visto che è necessario imparare un apposito linguaggio, ovvero Solidity. Non è un caso che proprio la figura dello sviluppatore di Smart Contracts Ethereum sia fortemente ricercata.

Per risolvere questo problema ed aumentare l’affidabilità al 100% di tale tecnologia, i ricercatori di Fujitsu hanno creato un sistema automatico per riconoscere le vulnerabilità dei contratti.  Il team ha sviluppato un algoritmo che consente di individuare rapidamente le sequenze di transazioni a rischio sul codice sorgente degli Smart Contracts di Ethereum.

Secondo Fujitsu, questo nuovo sistema è in grado di individuare in modo completo sei tipi di rischi che vengono facilmente trascurati durante le revisioni manuali.

Smart Contracts

Tale tecnologia aiuterà gli sviluppatori a creare contratti più sicuri. Il team ha affermato infatti che:

 La blockchain di Ethereum offre alcune interessanti funzionalità, ovvero gli Smart Contracts. Tali contratti possono essere creati automaticamente nel sistema e possono essere controllati ed eseguiti in maniera autonoma. Poiché i contratti sono replicati in più sedi ed eseguiti in maniera distribuita, una volta che un contratto è stato trasmesso non può essere interrotto o rivisto, nemmeno se esso presenta delle vulnerabilità. Difatti, si è già verificato più di un incidente in cui, a causa contratto buggato, sono state eseguite transazioni anomale, provocando perdite di fondi.

Le prestazioni e capacità dell’algoritmo

L’algoritmo di Fujitsu identifica completamente i bug nascosti nel codice sorgente che potrebbero rendere l’applicazione vulnerabile a manipolazioni ed attacchi da parte di persone non autorizzate. Il team ha anche spiegato che la soluzione può identificare accuratamente la parte esatta del codice sorgente potenzialmente rischiosa.

Smart Contracts

Fujitsu ha dichiarato che tale strumento ha un tasso di rilevamento coretto del 100% e un tasso di precisione dell’88%, valori mai raggiunti da altri sistemi.

Al momento il sistema non è stato ancora reso disponibile ma Fujitsu ha annunciato che continuerà a sviluppare tale tecnologia. L’obbiettivo è di estenderla anche ad altri ambienti, fra cui l’Hyperledger Fabric, un framework di implementazione della blockchain. Inoltre, i laboratori Fujitsu svilupperanno anche un’ampia gamma di tecnologie che utilizzeranno la blockchain. Una bella notizia dunque.

cripto

Vi invitiamo a seguirci sul nostro canale Telegram ed anche sul gruppo ufficiale Telegram, dove sarà possibile discutere insieme delle notizie e dell’andamento del mercato, sulla nostra pagina Facebook e sul nostro account Twitter.


La più grande community italiana dedicata alle criptovalute: Italian Crypto Club (ICC)

 

[ VIA | VIA ]

Marco Picchi

Ingegnere Elettronico, da anni appassionato di hardware, IoT e reti. Ho scoperto Bitcoin nel 2012 per poi buttarmi sul mining casalingo l'anno successivo. Ad oggi seguo con interesse lo sviluppo di tecnologia Blockchain.
Follow Me:

Related Posts

Rispondi