Table of Contents
Il ruolo di selezione nella sicurezza dei dati
La selezione dei dati è un'operazione fondamentale nella scienza del computer, ma la sua integrazione nei protocolli di crittografia e di sicurezza è spesso sottovalutata. I meccanismi di selezione aiutano a far rispettare la coerenza tra i dataset crittografati, accelerano il recupero dei dati senza esporre il testo normale e consentono funzioni di sicurezza avanzate come la verifica dell'integrità e il rilevamento di anomalie.
Ordinare strategie in flussi di lavoro di crittografia
Ordinazione di pre-crittografia
L'approccio più comune è quello di ordinare i dati prima] che applicano gli algoritmi di crittografia. Questo è particolarmente utile quando si tratta di database relazionali, registri di serie temporali, o qualsiasi set di dati in cui si prevedono frequenti query di gamma o aggregazioni.
In molti ambienti di produzione, la chiave di selezione non è la chiave primaria ma un attributo secondario, come una data di creazione o un codice di regione geografica. Gli sviluppatori devono garantire che l'ordine di selezione scelto rimanga stabile tra gli aggiornamenti e non trasmetta inavvertitamente informazioni sulla distribuzione dei dati.
Post-Encryption Sorting
La gestione dei dati crittografati senza prima decifrazione è una tecnica più avanzata, tipicamente abilitata da la crittografia di riserva (OPE)] o i sistemi di crittografia più diffusi. In questi sistemi, la funzione di crittografia è appositamente costruita in modo che l'ordine relativo dei testi semplici venga conservato nel testo cifrato.
I sistemi OPE intrinsecamente trascurano l'ordine dei dati, che possono essere un sottile canale laterale. Un attaccante che osserva i relativi valori di cifratura può dedurre l'ordine relativo dei testi semplici originali — informazioni che potrebbero essere dannose in contesti come database di calcolo dello stipendio o registri medici.
Ordinazione durante la crittografia (Hybrid Approaches)
Alcuni protocolli interleave che si occupano del processo di crittografia stesso per ottenere proprietà più forti. Ad esempio, il ] o [FLT: 1]] dati-oblivious sorting] sistema di dati che rendono i dati di archiviazione più semplici, che possono essere utilizzati come strumenti di archiviazione affidabili (TE)
Tecniche crittografiche per la crittografia ordinabile
Crittografia di prenotazione dell'ordine (OPE)
OLTT è la famiglia più conosciuta di crittografia selezionabile. Il classico schema OPE di Boldyreva et al. (2009) mappa i fornitori di testo chiaro per i testi cifrati in un modo che preserva l'ordine totale. Funziona crittografando ogni testo normale ad un valore casuale all'interno di una gamma che rispetta l'ordine originale, con la distribuzione dell'intervallo progettata per essere il più vicino all'uniforme possibile per resistere agli attacchi statistici.
Crittografia ordinabile tramite codifica del dizionario
Un'alternativa a OPE è usare un ] schema di crittografia determinativa (ad esempio, utilizzando un vettore di inizializzazione fisso) combinato con un dizionario ordinato di tutti i valori del testo normale possibili. In questo approccio, ogni testo normale è mappato ad un testo cifrato unico che preserva l'ordine per disegno: la crittografia del più piccolo testo normale è il più piccolo testo di progresso nel dizionario.
Computazione Multi-Party sicura (MPC) per la selezione
Quando più parti hanno bisogno di ordinare insieme un set di dati crittografati senza rivelare i loro singoli input l'uno all'altro, i protocolli MPC forniscono una soluzione. In uno scenario di smistamento MPC, ogni parte detiene una parte dei dati o un insieme privato. Essi si impegnano in una serie di protocolli di riservatezza crittografati (come i circuiti guasti o i confronti basati su condivisione segreta) per calcolare l'ordine ordinato come un'uscita combinata.
Migliori Pratiche per l'attuazione della selezione nei protocolli di sicurezza
- Cuocate la giusta strategia di selezione per il vostro modello di minaccia. Se la minaccia principale è un eavesdropper passivo che vede solo il testo cifrato, la selezione di pre-crittografia con AES ordinario può essere sufficiente. Se il server stesso è non attendibile, OPE o le enclavi sicure diventano necessarie.
- Utilizza criteri di selezione coerenti tra crittografia e decrittografia. Un errore nell'ordine di ordine di ordine (ad esempio, ascendendo alla crittografia ma scendendo alla decrittografia) produrrà risultati errati e potrebbe corrompere i valori di integrità-check.
- Combina che ordina con controlli di integrità e di schiava. Dopo aver selezionato i record di testo, calcolare una catena di hash (ad esempio, Merkle tree) sopra l'elenco ordinato. Ogni hash del nodo include l'hash del precedente nodo e il contenuto di testo normale. Quindi crittografare l'intero albero.
- Minimizzare perdite laterali. Quando si utilizza la crittografia OPE o deterministica, essere consapevoli che l'ordine del testo cifrato rivela l'ordine del testo normale. In contesti di alta sicurezza, aggiungere dischi fitti o applicare tecniche di frequenza-hiding. Inoltre assicurarsi che gli algoritmi di selezione stessi sono costante-tempo o inblivious per evitare perdite di informazioni di tempo.
- La selezione automatica all'interno dei flussi di lavoro di crittografia.] La selezione manuale è incerta. Utilizzare funzionalità di database integrate (come prima della crittografia) o script di pipeline che si ordinano prima di schiantare. L'automazione riduce il rischio di implementare la logica personalizzata che rompe inavvertitamente l'ordine di tipo.
- Test con grandi e realistici datasets.[] La selezione e la crittografia possono interagire in modi inaspettati con distribuzioni di dati o casi di bordo skewed come valori NULL. Convalida che il programma scelto gestisce duplicati, valori vuoti e numeri estremamente grandi o piccoli con grazia.
Sfide e Mitigazioni
Prestazioni Overhead
La selezione di grandi dataset è intrinsecamente O(n log n) nella complessità del tempo, e la crittografia aggiunge un altro strato O(n). Per i set di dati con miliardi di record, il costo combinato può diventare proibitivo. Le mitigazioni includono l'utilizzo di smistamento incrementale (solo riscuotere le porzioni modificate), sfruttando gli indici del database che memorizzano il testo cifrato già ordinato e impiegando l'accelerazione hardware come AES-NI per colonna di crittografia applicata.
Informazioni Leakage attraverso Ordinare
Un attaccante con un accesso ripetuto ai risultati delle query può eseguire attacchi di inferenza, dedurre valori approssimativi o anche valori esatti se il dominio del testo è piccolo. Per mitigare questo, distribuire frequenza-disturbo OPE ]] o combinare smistamento con privacy differenziale
Attacco laterale-canale su Algoritmi di selezione
Se il tempo di esecuzione dell'algoritmo di smistamento o il modello di accesso alla memoria dipende dai dati, un attaccante co-locato sullo stesso hardware (ad esempio, in una nuvola multi-tenant) potrebbe osservare questi modelli e dedurre alcune informazioni. Ad esempio, una selezione standard del pivot può trapelare la magnitudine approssimativa del valore mediano.
Complessità di attuazione
L'integrazione di smistamento con crittografia richiede un coordinamento attento tra più strati: codice applicazione, database di storage engine, key management e politiche di backup. Un errore comune è quello di crittografare i dati nello strato di applicazione, ma si basa sulla funzionalità di database nativi, che ordina il testo cifrario lexicographically - un ordine senza significato.
Applicazioni reali e studi di casi
Database crittografati nel cloud
I provider cloud come Amazon Web Services (AWS) e Microsoft Azure offrono una crittografia basata su OPE per specifici tipi di dati. Ad esempio, AWS CloudHSM e AWS Database Encryption SDK supportano le query degli attributi crittografati utilizzando le funzionalità di conservazione degli ordini.
Ricerca sicura in Healthcare
Le organizzazioni sanitarie spesso devono cercare i record dei pazienti per data di servizio o per codice ICD-10 mantenendo i dati crittografati a riposo. Ordinando le date crittografate utilizzando OPE, una piattaforma di analisi dell'ospedale può rispondere “list tutti i pazienti trattati nell'ultimo trimestre” senza esporre le date effettive al processore di query. Il sistema memorizza l'elenco dei querelatori crittografati, e lo strato di applicazione decifra solo i record corrispondenti dopo il recupero.
Transazioni di blockchain e criptovaluta
Blocco che supporta le transazioni private (ad esempio, Zcash, Monero) impiega meccanismi di selezione per elaborare transazioni schermate. In Zcash, le uscite delle transazioni vengono memorizzate in un albero Merkle ordinato (l’albero dell’impegno del noto) che è crittografato. L’ordine ordinato è fondamentale per produrre prove di zero-knowledge che una transazione è valida senza rivelare quale nota è spesa.
Enclavi sicure per l'analisi dei dati
L'impostazione all'interno di un'ennclave è semplice: il codice decritta, smista e ri-critta i dati prima dell'output. Tuttavia, per prevenire la pagina-fault e la tempistica canali laterali, gli sviluppatori adottano algoritmi di smistamento obbligato. Aziende come Microsoft (nel loro framework di calcolo confidentiale) forniscono dati di integrazione di librerie di dati.
Conclusioni
Incorporando la selezione dei dati nella crittografia dei dati e dei protocolli di sicurezza non è solo una convenienza — è un abilitatore strategico di gestione dei dati efficiente e sicura. Sia attraverso la selezione pre-encryption per la struttura deterministica, post-crittografia possibile smistamento con OPE per database cloud, o avanzato smistamento obliquo in ambienti di esecuzione affidabili, l'attenta integrazione di smistamento può migliorare significativamente sia le prestazioni e la riservatezza.