Siamo tutti abituati a condividere le nostre informazioni personali per accedere a prodotti e servizi su Internet. Non c’è dubbio che Internet abbia rivoluzionato il modo in cui comunichiamo. Allo stesso modo la tecnologia blockchain sta diventando sempre più rilevante per diversi settori come quello bancario, sanitario, immobiliare, della gestione della catena di approvvigionamento e della produzione di energia.

Contemporaneamente la diffusione sempre più ampia degli e-commerce sta aumentando il rischio che i consumatori siano esposti a violazioni della sicurezza e all’uso illecito dei loro dati, tanto da portare l’UE ad emanare il Regolamento generale sulla protezione dei dati (GDPR) il 25 maggio 2018.

I numerosi vantaggi della blockchain includono trasparenza, immutabilità e decentralizzazione. Tuttavia, la blockchain è un registro distribuito (DLT) che condivide le informazioni tra molteplici parti per verificare la validità delle transazioni e questo potrebbe creare problemi inerenti la privacy dei dati. Siamo tutti d’accordo sul fatto che meno informazioni vengono condivise, meno si è esposti a violazioni della sicurezza. E se ci fosse un modo per verificare l’autenticità delle transazioni senza rivelare i dati sottostanti?

Gli algoritmi a conoscenza zero o Zero Knowledge Proof (ZKP) utilizzano tecniche crittografiche per verificare le transazioni senza rivelare le informazioni sottostanti. La tecnologia blockchain combinata con gli algoritmi ZKP rappresenta una potente combinazione per scambi più che sicuri.

Cos’è la blockchain?

La blockchain è conosciuta come la tecnologia che alimenta i mercati delle criptovalute. In effetti ha rivoluzionato questo settore, ma non solo.

La blockchain è una tecnologia di registro distribuito (DLT) che memorizza le informazioni su una rete di computer peer-to-peer. Ciò significa che nessuna singola parte in una transazione possiede e controlla le informazioni. Ogni parte della rete ha uguali diritti nel controllo e nella verifica delle transazioni, a differenza ad esempio di una banca tradizionale che possiede e archivia tutti i dati scambiati in una transazione.

La blockchain utilizza algoritmi crittografici per convalidare le transazioni. Ciò elimina gli intermediari e le relative spese, consentendo ai partecipanti di negoziare in modo conveniente e sicuro. Svariati settori come quello bancario, immobiliare, sanitario, della gestione della catena di approvvigionamento e delle arti hanno trovato applicazioni rilevanti per la tecnologia blockchain.

Cos’è lo Zero-Knowledge Proof?

Gli algoritmi Zero-Knowledge Proof (ZKP) sono algoritmi crittografici che calcolano la probabilità che una parte in una transazione possieda un’informazione senza dover rivelare di cosa si tratta.

È un po’ come cercare di scoprire se qualcuno ha visitato un Paese. Puoi porre una serie di domande, se la controparte risponde correttamente, dimostra che hanno visitato il Paese. Più sono le domande a cui risponde correttamente, più puoi essere certo che abbia effettivamente visitato il Paese. Anche se sai che ha visitato il Paese, non deve ad esempio rivelare i nomi di chi ha visitato in quel Paese. E tu non hai bisogno di chiedere perchè non è pertinente alla transazione. In questo modo, le informazioni sensibili sono protette.

Esempio intuitivo

Gli algoritmi ZKP creano una serie di enigmi matematici che, se risolti correttamente dalla parte ricevente, dimostrano che la parte ricevente è genuina.

I primi passi verso il Zero-knowledge Proof sono stati fatti negli anni ’80 da tre ricercatori del MIT: Shafi Goldwasser, Charles Rackoff e Silvio Micali. In tale occasione i tre hanno proposto il concetto di “Knowledge Complexity of Interactive Proof Systems“.

Esistono due tipi di algoritmi ZKP:

  1. ZKP interattivi: gli algoritmi ZKP interattivi consistono in una serie di quesiti matematici che la parte ricevente deve risolvere.
  2. ZKP non interattivi: gli algoritmi ZKP non interattivi non comportano alcuna interazione tra le parti che effettuano la transazione o il processo di verifica, ma implica una funzione crittografica di hash come “controparte”.

Le dimostrazioni a conoscenza zero devono soddisfare tre condizioni:

  1. Completezza delle informazioni: Se un’affermazione è vera, la parte che verifica può confermare che la parte ricevente possiede un’informazione.
  2. Solidità dell’informazione: una dichiarazione non può essere falsificata. Una parte non può essere indotta con l’inganno a credere che l’altra possieda un’informazione se ciò non è vero.
  3. Conoscenza zero delle informazioni: la parte verificante non è a conoscenza di altre informazioni oltre alla verità o falsità di una dichiarazione.

Perché la ZKP è una potente aggiunta alla blockchain

La tecnologia blockchain ha creato molte opportunità. Fornisce una registrazione indelebile delle transazioni e aumenta la fiducia. Tuttavia, pur ovviando alla necessità di fiducia, la blockchain deve condividere le informazioni con altri sistemi per verificare le transazioni. Ad esempio, nella gestione della supply chain, ha bisogno di interfacciarsi con i sistemi dei produttori, fornitori, distributori, consumatori…

Gli algoritmi a prova di conoscenza zero consentono il trasferimento di informazioni tra le parti senza rivelare password o dati sensibili. Ciò elimina molti dei punti deboli della sicurezza associati ai protocolli di autenticazione abilitati tramite password.

Gli sviluppatori stanno incorporando algoritmi ZKP in soluzioni blockchain che consentono ai consumatori di interagire con servizi digitali a valore aggiunto rispettando la privacy dei propri dati. Le ZKP offrono flessibilità e scelta ai consumatori che desiderano controllo e libertà sulle proprie informazioni.

ZKP nelle applicazioni di messaggistica

Le applicazioni di messaggistica si basano sulla crittografia end-to-end per proteggere le comunicazioni. Ciò richiede agli utenti di verificare la propria identità su un server utilizzando una password. I protocolli ZKP potrebbero verificare la validità di una password senza conoscerla effettivamente.

ZKP nella gestione delle identità

La verifica senza password potrebbe applicarsi anche alla gestione dell’identità, aggirando le complicazioni associate a passaporti, certificati di nascita, patenti di guida e altre forme di verifica dell’identità. I protocolli ZKP potrebbero anche convalidare le credenziali dell’utente nei sistemi di prevenzione delle frodi o rendere anonimi i dati personali per conformarsi a normative come il GDPR.

ZKP nel settore bancario

Immaginate un’app alimentata da ZKP che controlla se un beneficiario ha fondi sufficienti nel proprio conto senza conoscerne il saldo bancario prima di autorizzare le transazioni. O transazioni di criptovaluta che vengono convalidate su una blockchain senza rivelare quali portafogli hanno emesso pagamenti o quanta valuta è stata scambiata. I vantaggi sono dunque evidenti.

ZKP nel settore immobiliare

Allo stesso modo, nel settore immobiliare, gli agenti di locazione elaborano frequentemente transazioni per conto dei proprietari di immobili. Le app abilitate per ZKP potrebbero consentire loro di controllare i fondi senza dover chiedere estratti conto o buste paga agli inquilini.

ZKP nella sicurezza internazionale

Negli Stati Uniti, il Dipartimento della Difesa ha avviato il programma SIEVE (Securing Information for Encrypted Verification and Evaluation). Il programma cerca di avanzare prove a conoscenza zero in complesse applicazioni di difesa. SIEVE mira a verificare una specifica competenza senza rivelare dati sensibili.

Ad esempio, lo ZKP potrebbe verificare l’origine di un’informazione senza rivelare come è stata ottenuta. Potrebbe attribuire un attacco informatico a un’entità o nazione specifica senza rivelare come è stata ottenuta l’informazione. Oppure gli ZKP potrebbero verificare le capacità nucleari dei paesi senza bisogno di ispezionare fisicamente i loro armamenti.

In poche parole, gli ZKP aiuterebbero a proteggere le informazioni sensibili protette da segreto di Stato.

Altre applicazioni dello ZKP

Le applicazioni blockchain spesso condividono documenti sensibili. Gli ZKP consentono alle applicazioni blockchain di limitare l’accesso ai dati all’interno di blocchi selezionati, rendendo così più sicura la condivisione dei documenti.

Gli smart contract sfruttano dati forniti da altre fonti per innescare determinate azioni. Gli ZKP consentono agli smart contract di attivare questi eventi senza richiedere l’accesso a informazioni sensibili. Ciò vale sia per le applicazioni centralizzate in cui l’origine dei dati è nota, sia per le applicazioni decentralizzate (DApp) in cui l’origine dei dati è verificata da algoritmi crittografici.

Quorum è una piattaforma blockchain aziendale progettata attorno a smart contract privati. La piattaforma è stata sviluppata da JPMorgan Chase per consentire il regolamento privato di asset digitalizzati. La banca di investimento ha integrato la tecnologia ZKP di Zcash per migliorare la privacy della sua piattaforma.

Nel 2019, la società di servizi professionali EY ha rilasciato Nightfall, un protocollo ZKP che consente alle aziende di condurre transazioni privatamente su una blockchain pubblica.

Conclusioni

Le Zero-knowledge Proofs (ZKP) eliminano la necessità di condividere password o qualsiasi altro tipo di informazione sensibile. Le prove a conoscenza zero possono aiutare a mediare tutti i tipi di transazioni, accordi e interazioni sensibili in un modo più privato e sicuro. Gli ZKP aggiungono in sostanza un altro livello di sicurezza alle transazioni blockchain.

 

 

Contacts:

info@mangrovia.solutions

+39 02 45391390

 

Follow Mangrovia Blockchain Solutions: LinkedIn | Twitter | https://mangrovia.solutions

 

 

 

0 commenti

Lascia un Commento

Vuoi partecipare alla discussione?
Fornisci il tuo contributo!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *