On 5/10/23 16:56, Giacomo Tesio wrote:
Ciao Davide e 380,
On Wed, May 10, 2023 at 02:20:48PM +0200, 380° wrote:
Domanda: ma è proprio necessario consentire che i dati siano oggetto di computazione "nel cloud" (cioè sul computer di qualcun altro)? No, non è necessario. E' solo una possibilità in più che la HE potrebbe rendere possibile: usare Public Cloud senza essere visti dai proprietari. scusa se puntualizzo ma tecnicamente si tratta di usare la CPU (computazione) in una Public Cloud senza che input e output siano "interpretabili" dai proprietari
...e però dal punto di vista sistemistico avendo accesso all'hardware si possono fare così Tante Cose™ che dubito seriamente che un proprietario sufficientemente motivato non sia in grado di leggere i bit in chiaro.
Grazie mille, Giacomo, dell'articolo che hai inviato. Trovo stupefacente e mi fa davvero piacere, che in Nexa si arrivi a livelli così alti di analisi in ambiti di ricerca super-specialistici. Rispondo ai tuoi punti.
banalmente, la Homomorphic Encryption temo resterà sempre fortemente vulnerabile a timing attack.
Attenzione! L'articolo parla di una specifica software library, molto diffusa in HE, ma certamente non l'unica. Altri importanti librerie sono ad esempio: HElib PALISADE TFHE HEAAN ma ne esistono moltissime altre. Inoltre i ricercatori che hanno scoperto la vulnerabilità di cui si parla nell'articolo, hanno lavorato su versioni di Microsoft SEAL inferiori alla 3.6, dopo la quale è stato introdotto un diverso protocollo di campionatura. Tutto questo per dire che gli studi di crittografia in generale, e in particolare quelli di crittografia omomorfica, che rappresenta una specializzazione completamente a sé, hanno una lunghissima storia e una notevole vitalità. Di HE si è parlato moltissimo dopo che Craig Gentry, uno studente di dottorato della Duke University, è riuscito, nel 2009, ad ideare per primo nella storia uno schema di Fully Homomorphic Encryption. Ma di HE i matematici (molto più che gli informatici) si occupano da ben prima, sicuramente dagli anni '80, e continuano a farlo, come dimostra questo e numerosissimi altri articoli, che mettono alla prova i sistemi ideati da loro colleghi. Questo succede anche nella crittografia di uso comune, ma non è sufficiente per dire che la crittografia resterà _sempre_ vulnerabile a questo o quell'attacco. E' un processo continuo di verifiche, di rotture di protocolli, di schemi, di sistemi, volto a migliore continuamente l'applicabilità della cifratura. L'HE è solo più indietro degli altri tipi di cifratura, perché è notovolmente più complessa. Ma la comunità è molto più che vitale, ci sono migliaia di articoli che escono ogni anno.
Un ipotetico fornitore cloud che abbia accesso alla chiave PUBBLICA di cifratura (NB: non quella privata, basta quella pubblica) può cifrare una elaborazione arbitraria e applicarla ai dati cifrati ottenendo un risultato anch'esso cifrato.
Questo però lo puoi fare anche con la cifratura di uso comune.
Il bello della FHE è che tale avversario non può decifrare il risultato senza la chiave privata.
Anche questo è vero per qualunque meccanismo di cifratura.
Tuttavia, nulla gli impedisce di cifrare un elaborazione che è estremamente lenta se il primo bit del testo cifrato è 1 ed estremamente veloce se è 0.
Applicando tale elaborazione cifrata e misurando i tempi di risposta può dedurre il valore del primo bit del testo in chiaro.
E' questo il punto importante in cui si evidenzia la particolare vulnerabilità. Non possiamo però estenderla alla HE tout court. La HE è molto di più di Microsoft SEAL.
Ho un vaghissimo ricordo di una tecnica simile presentata l'anno scorso ma non ritrovo l'articolo accademico che ne parlava.
Grazie ancora per l'articolo e per lo scambio. D. (null)