IBM apre il toolkit di crittografia omomorfica per Linux

azienda IBM ha annunciato il sull'apertura dei testi originali del toolkit FHE (IBM Fully Homomorphic Encryption) con implementazione del sistema crittografia omomorfica completa per il trattamento dei dati in forma crittografata. FHE consente di creare servizi per l'elaborazione confidenziale, in cui i dati vengono elaborati crittografati e non appaiono in nessuna fase in forma aperta. Anche il risultato viene generato crittografato. Il codice è scritto in C++ e distribuito da sotto licenza MIT. Oltre alla versione per Linux, toolkit simili per macOS и iOS, scritto in Obiettivo-C. La pubblicazione di una versione per Android.

La FHE sostiene pieno operazioni omomorfe che consentono di eseguire addizioni e moltiplicazioni di dati crittografati (ovvero è possibile implementare calcoli arbitrari) e ottenere un risultato crittografato in output, il che sarebbe simile alla crittografia del risultato dell'addizione o della moltiplicazione dei dati originali. La crittografia omomorfa può essere considerata la fase successiva nello sviluppo della crittografia end-to-end: oltre a proteggere la trasmissione dei dati, offre la possibilità di elaborare i dati senza decrittografarli.

Dal punto di vista pratico, il framework può essere utile per organizzare il cloud computing confidenziale, nei sistemi di voto elettronico, nei protocolli di routing anonimizzati, per l'elaborazione crittografata delle query in un DBMS, per l'addestramento confidenziale dei sistemi di apprendimento automatico. Un esempio di applicazione dell'FHE è l'organizzazione dell'analisi delle informazioni sui pazienti delle istituzioni mediche nelle compagnie di assicurazione senza che la compagnia di assicurazione abbia accesso alle informazioni che potrebbero identificare pazienti specifici. Anche menzionato sviluppo di sistemi di machine learning per rilevare transazioni fraudolente con carte di credito basati sull'elaborazione di transazioni finanziarie anonime crittografate.

Il toolkit include una libreria HElib con l'implementazione di diversi schemi di crittografia omomorfica, un ambiente di sviluppo integrato (il lavoro viene eseguito tramite un browser) e una serie di esempi. Per semplificare l'implementazione sono state preparate immagini docker già pronte basate su CentOS, Fedora e Ubuntu. Sono inoltre disponibili le istruzioni per assemblare il toolkit dal codice sorgente e installarlo su un sistema locale.

Il progetto è in fase di sviluppo dal 2009, ma solo ora è stato possibile ottenere indicatori di prestazione accettabili che ne consentano l'utilizzo nella pratica. Da notare che FHE rende accessibili a tutti i calcoli omomorfi; con l’aiuto di FHE i normali programmatori aziendali potranno fare in un minuto lo stesso lavoro che prima richiedeva ore e giorni quando coinvolgevano esperti con titolo accademico.


Tra gli altri sviluppi nel campo dell'informatica confidenziale si può notare pubblicazione del progetto OpenDP con l'implementazione dei metodi privacy differenziale, consentendo di eseguire operazioni statistiche su un set di dati con una precisione sufficientemente elevata senza la possibilità di identificare i singoli record in esso contenuti. Il progetto è stato sviluppato congiuntamente da ricercatori di Microsoft e dell’Università di Harvard. L'implementazione è scritta in Rust e Python e in dotazione con licenza MIT.

L'analisi che utilizza metodi di privacy differenziali consente alle organizzazioni di creare campioni analitici da database statistici, senza consentire loro di isolare i parametri di individui specifici da informazioni generali. Ad esempio, per identificare le differenze nella cura dei pazienti, è possibile fornire ai ricercatori informazioni che consentano loro di confrontare la durata media della degenza dei pazienti negli ospedali, mantenendo comunque la riservatezza del paziente e non evidenziando le informazioni sui pazienti.

Per proteggere le informazioni personali o riservate identificabili vengono utilizzati due meccanismi: 1. Aggiunta di una piccola quantità di "rumore" statistico a ciascun risultato, che non influisce sull'accuratezza dei dati estratti, ma maschera il contributo dei singoli elementi di dati.
2. Utilizzare un budget per la privacy che limiti la quantità di dati prodotti per ciascuna richiesta e non consenta richieste aggiuntive che potrebbero violare la riservatezza.

Fonte: opennet.ru

Aggiungi un commento