Simple Science

Scienza all'avanguardia spiegata semplicemente

# Informatica# Crittografia e sicurezza# Basi di dati

EncDB: Un Nuovo Approccio alla Gestione dei Dati Crittografati

EncDB offre una sicurezza e un'efficienza migliori per gestire dati criptati nel cloud.

― 7 leggere min


EncDB: Gestione SicuraEncDB: Gestione Sicuradei Dati nel Clouddelle query crittografate efficiente.Presentiamo EncDB per un'elaborazione
Indice

L'informatica cloud è diventata popolare per gestire i dati. Molte aziende usano servizi esterni per immagazzinare e gestire i loro database. Anche se questo porta vantaggi come costi più bassi e flessibilità, solleva anche preoccupazioni sulla privacy dei dati. Quando le aziende permettono che i loro dati siano gestiti da fornitori esterni, perdono il controllo diretto su di essi. Questo crea rischi, specialmente se la sicurezza del fornitore viene compromessa.

Un modo per proteggere i dati sensibili è attraverso la crittografia. Questo significa trasformare i dati in un codice sicuro in modo che nessuno possa leggerli senza la chiave appropriata. I metodi esistenti permettono di eseguire alcune operazioni sui dati crittografati o usano ambienti sicuri speciali per tenere i dati al sicuro. Proponiamo un nuovo sistema chiamato EncDB che combina questi metodi per migliorare il modo in cui vengono elaborate le query crittografate.

La Necessità di Servizi di Database Crittografati

Con le aziende che spostano i loro dati sui fornitori cloud per la gestione, le preoccupazioni sulla privacy crescono. Quando i dati sono immagazzinati nel cloud, gli utenti non possono controllarli fisicamente. La protezione di questi dati dipende dalle pratiche di sicurezza del fornitore cloud. Se queste misure falliscono, informazioni sensibili possono essere esposte a minacce potenziali, inclusi hacker o anche dipendenti poco affidabili all'interno dell'organizzazione del fornitore.

Per mantenere la riservatezza, i dati possono essere crittografati prima di essere immagazzinati nel cloud. La crittografia tradizionale protegge i dati quando non vengono utilizzati, ma può rendere difficile eseguire operazioni sul database. Per superare questo, alcuni sistemi usano la Crittografia omomorfica, che permette alcune operazioni sui dati crittografati. Tuttavia, questo metodo può avere difficoltà con query complesse a causa delle sue elevate richieste di elaborazione.

Un'altra strategia prevede l'uso di Ambienti di Esecuzione Attendibili (TEE). Un TEE crea uno spazio sicuro all'interno di un computer dove i dati sensibili possono essere elaborati senza esposizione al sistema operativo o all'ambiente esterno. Tuttavia, alcune soluzioni esistenti che utilizzano TEE hanno anche delle limitazioni.

Introduzione di EncDB

Il nostro nuovo sistema, EncDB, mira a risolvere i problemi affrontati dai metodi esistenti. Funziona su database popolari come PostgreSQL e openGauss. EncDB utilizza un mix di tecniche di crittografia e ambienti sicuri per migliorare l'elaborazione delle query mantenendo i dati al sicuro.

EncDB combina due modalità: una che utilizza solo soluzioni software e un'altra che utilizza Ambienti di Esecuzione Attendibili. Questo consente al sistema di scegliere in modo adattivo il miglior metodo per elaborare le query, a seconda della situazione. Questa flessibilità può portare a migliori prestazioni e maggiore efficienza.

Algoritmi di Crittografia

Per fornire un livello di sicurezza robusto, EncDB integra vari algoritmi di crittografia. Un'area cruciale è la crittografia omomorfica, che consente calcoli sui dati crittografati. Sebbene la crittografia omomorfica completamente omomorfica (FHE) permetta qualsiasi operazione sui dati crittografati, spesso è inefficace per un uso reale. D'altra parte, la crittografia omomorfica parziale (PHE) supporta operazioni specifiche con prestazioni migliori.

Utilizziamo anche la Crittografia che Preserva Proprietà (PPE) per determinati compiti, come le query di intervallo, che richiedono confronti tra dati crittografati. Un altro componente chiave del nostro approccio è l'uso dei TEE, che forniscono un'area sicura per l'elaborazione dei dati.

Architettura del Sistema di EncDB

La struttura di EncDB è costruita attorno a due componenti principali: il server dell'applicazione e il server non fidato. Il server dell'applicazione è dove avvengono operazioni sicure, mentre il server non fidato gestisce i dati crittografati.

All'interno del sistema, ci sono diversi elementi cruciali:

  1. Motore di Crittografia e Decrittografia: Questo componente gestisce le chiavi di crittografia, esegue la crittografia dei dati e decripta i risultati ricevuti dal cloud. Memorizza anche informazioni sui diversi metodi di crittografia utilizzati.

  2. Riscrittore di Query: Questo compito è convertire le query degli utenti in formati compatibili con i dati crittografati.

  3. Driver del Database: Questo consente all'applicazione di interagire con il database, inviando query e ricevendo risposte.

  4. Servizi di Calcolo lato Server: Questo include funzioni definite dall'utente (UDF) che possono eseguire operazioni sui dati crittografati.

Il processo di gestione di una query SQL coinvolge l'upload di dati in chiaro, la loro crittografia e l'invio al server. Il server esegue operazioni sui dati crittografati e restituisce i risultati, che vengono poi decrittografati dal client.

Due Modalità di Operazione

EncDB funziona in due modalità: una modalità solo software e una modalità abilitata TEE.

Modalità Solo Software

Nella modalità solo software, le colonne dei dati sono immagazzinate come testo cifrato o forme crittografate utilizzando varie tecniche di crittografia. Quando viene emessa un'istruzione SQL, le colonne coinvolte vengono sostituite con i loro equivalenti crittografati. Questa modalità non richiede hardware speciale, abbassando così i costi di implementazione. Tuttavia, ha i suoi lati negativi. Ci possono essere significativi ridondanze nei dati e sovraccarico computazionale, specialmente quando devono essere eseguite operazioni complesse.

Modalità Abilitata TEE

La modalità abilitata TEE migliora l'efficienza utilizzando ambienti sicuri. In questa modalità, funzioni specifiche vengono eseguite all'interno di un'area sicura. I dati vengono decrittografati e le operazioni vengono eseguite su dati in chiaro, evitando le inefficienze di elaborare direttamente i dati crittografati. Questa modalità semplifica le esigenze di crittografia poiché qualsiasi metodo di crittografia simmetrica può essere utilizzato per i calcoli, poiché i dati sensibili rimangono protetti all'interno dell'ambiente sicuro.

Strategia di Decisione per l'Elaborazione delle Query

EncDB impiega una strategia unica per determinare quale modalità utilizzare durante l'elaborazione delle query. Il sistema può utilizzare un interruttore statico o un interruttore dinamico in base allo stato attuale delle risorse.

Interruttore Statico

In un interruttore statico, il sistema pre-determina quali operazioni saranno gestite in quale modalità. Questo approccio può portare a inefficienze se la modalità selezionata non corrisponde alle capacità attuali del sistema.

Interruttore di Modalità Auto-adattivo

La strategia auto-adattiva valuta dinamicamente le condizioni e commuta tra le due modalità in tempo reale. Questo avviene attraverso un processo di micro-benchmarking che monitora la disponibilità attuale delle risorse e regola le operazioni di conseguenza. Adattandosi alle esigenze in tempo reale, questa strategia migliora le prestazioni riducendo il rischio di ritardi nell'elaborazione.

Tecniche di Indicizzazione per l'Accelerazione delle Query

Un altro aspetto significativo di EncDB è il suo meccanismo di indicizzazione dei testi cifrati. I metodi standard di indicizzazione non possono essere applicati direttamente ai dati crittografati. Pertanto, introduciamo un indice specializzato che può supportare vari tipi di query, comprese quelle di intervallo e le funzioni aggregative.

Tipi Definiti dall'Utente

Creiamo un tipo definito dall'utente (UDT) chiamato "oreen" per gestire come i dati crittografati vengono elaborati nel database. Questo nuovo tipo consente una migliore indicizzazione e interrogazione su colonne crittografate, migliorando l'efficienza.

Ottimizzazione delle Query

Introducendo un indice cifrato compatibile con i sistemi di database esistenti, gli utenti possono creare indici attraverso comandi SQL standard. Questo garantisce che le interazioni con il sistema rimangano intuitive mentre beneficiano di migliori prestazioni dietro le quinte.

Valutazione delle Prestazioni di EncDB

Abbiamo condotto ampi test di prestazione per valutare come EncDB funziona in diversi scenari. Utilizzando benchmark come TPC-C, abbiamo misurato le prestazioni attraverso varie configurazioni.

Throughput e Latenza

Con l'aumentare del numero di transazioni concorrenti, abbiamo osservato come le varie configurazioni gestiscono il carico. La modalità solo software ha mostrato prestazioni ridotte rispetto al database in chiaro, mentre la modalità abilitata TEE ha offerto risultati migliori, specialmente in condizioni di alta concorrenza.

Efficienza delle Modalità Ibride

Confrontando gli interruttori statici e dinamici, abbiamo trovato che l'interruttore dinamico ha fornito le migliori prestazioni durante gli scenari di alta concorrenza. Ha regolato le operazioni in base alla disponibilità attuale delle risorse, riducendo efficacemente le sostituzioni di pagina e ottimizzando l'esecuzione delle query.

Considerazioni di Sicurezza

EncDB garantisce che nessun dato in chiaro sia esposto al server. Vari schemi di crittografia vengono distribuiti in modo da minimizzare la quantità di informazioni rivelate a potenziali aggressori.

Vulnerabilità Affrontate

Il sistema è progettato per proteggere contro le vulnerabilità comuni presenti nei metodi di crittografia tradizionali. Utilizziamo schemi di crittografia avanzati con una resistenza dimostrata agli attacchi di inferenza, assicurando che i dati sensibili rimangano protetti.

Conclusione

EncDB rappresenta un significativo avanzamento nel campo dei sistemi di database crittografati. Combina tecniche innovative di crittografia, indicizzazione e elaborazione adattativa per migliorare sia le prestazioni che la sicurezza.

Utilizzando una combinazione di modalità solo software e modalità abilitata TEE, insieme a strategie auto-adattive, EncDB offre un approccio flessibile ed efficiente per gestire dati sensibili nel cloud. Con sempre più aziende che si rivolgono a soluzioni cloud, garantire la riservatezza e l'integrità dei loro dati sarà fondamentale, e sistemi come EncDB saranno essenziali per soddisfare queste esigenze.

Fonte originale

Titolo: Enc2DB: A Hybrid and Adaptive Encrypted Query Processing Framework

Estratto: As cloud computing gains traction, data owners are outsourcing their data to cloud service providers (CSPs) for Database Service (DBaaS), bringing in a deviation of data ownership and usage, and intensifying privacy concerns, especially with potential breaches by hackers or CSP insiders. To address that, encrypted database services propose encrypting every tuple and query statement before submitting to the CSP, ensuring data confidentiality when the CSP is honest-but-curious, or even compromised. Existing solutions either employ property preserving cryptography schemes, which can perform certain operations over ciphertext without decrypting the data over the CSP, or utilize trusted execution environment (TEE) to safeguard data and computations from the CSP. Based on these efforts, we introduce Enc2DB, a novel secure database system, following a hybrid strategy on PostgreSQL and openGauss. We present a micro-benchmarking test and self-adaptive mode switch strategy that can dynamically choose the best execution path (cryptography or TEE) to answer a given query. Besides, we also design and implement a ciphertext index compatible with native cost model and query optimizers to accelerate query processing. Empirical study over TPC-C test justifies that Enc2DB outperforms pure TEE and cryptography solutions, and our ciphertext index implementation also outperforms the state-of-the-art cryptographic-based system.

Autori: Hui Li, Jingwen Shi, Qi Tian, Zheng Li, Yan Fu, Bingqing Shen, Yaofeng Tu

Ultimo aggiornamento: 2024-04-10 00:00:00

Lingua: English

URL di origine: https://arxiv.org/abs/2404.06819

Fonte PDF: https://arxiv.org/pdf/2404.06819

Licenza: https://creativecommons.org/licenses/by/4.0/

Modifiche: Questa sintesi è stata creata con l'assistenza di AI e potrebbe presentare delle imprecisioni. Per informazioni accurate, consultare i documenti originali collegati qui.

Si ringrazia arxiv per l'utilizzo della sua interoperabilità ad accesso aperto.

Altro dagli autori

Articoli simili