Computing on encrypted data using trusted execution environments
Creators: name: Fischer, Andreas
Publisher: name: Universität Paderborn
Year: 2021

description: Cloud-Dienste bieten Zugang zu kostengünstiger IT-Infrastruktur wie Speicherplatz und Rechenleistung. Bei der Nutzung dieser Dienste besteht jedoch die Gefahr, dass Daten von Angreifern gestohlen werden. Um die Vertraulichkeit sensibler Daten zu gewährleisten, können sie vor der Übertragung verschlüsselt werden. Um jedoch die Rechenleistung der Cloud zu nutzen, ohne die Vertraulichkeit zu beeinträchtigen, muss die Cloud mit verschlüsselten Daten rechnen. Sicheres und effizientes Rechnen mit verschlüsselten Daten ist eine Herausforderung. Herkömmliche Verschlüsselungsverfahren verhindern, dass ein nicht vertrauenswürdiger Dienstanbieter mit Chiffraten rechnet. Vollhomomorphe Verfahren erlauben beliebige Berechnungen mit Chiffraten, verursachen jedoch hohe Rechenkosten. Auf Hardware-basierter Sicherheit beruhende Ansätze wie Intel SGX verursachen nur geringen Rechenaufwand, sind jedoch anfällig für Seitenkanalangriffe, die die Sicherheitsmechanismen außer Kraft setzen können. Diese Dissertation präsentiert eine Architektur, die kryptografische Verfahren mit einem Hardwaresicherheitsmodul kombiniert, um mit verschlüsselten Daten zu rechnen. Im Vergleich zu einer rein auf Hardware-basierter Sicherheit beruhenden Lösung bietet der vorgestellte Ansatz eine minimale und programmunabhängige Softwarebasis, die über alle Anwendungen hinweg wiederverwendet werden kann. Somit kann die Angriffsfläche für Softwareschwachstellen in der geschützten Anwendung erheblich reduziert werden. Im Vergleich zu einer ausschließlich auf vollhomomorpher Verschlüsselung basierenden Lösung wird eine hohe Effizienz erreicht, da Kontrollflussentscheidungen unterstützt werden und Chiffrat-Operationen erheblich effizienter sind. ...
description: Cloud services provide on-demand access to cost-efficient computer resources such as data storage and computing power. However, when using these services, data is at risk of being stolen by attackers observing the cloud, e.g., malicious administrators or external intruders. To ensure the confidentiality of sensitive data, encryption can be applied prior to transferring it to the cloud. However, in order to use the cloud's computing power without compromising data confidentiality, the cloud must compute on encrypted data. Secure and efficient computation on encrypted data is difficult. Common symmetric encryption schemes can be used to achieve confidentiality for outsourced data but prevent untrusted cloud service providers from computing on ciphertexts. Fully homomorphic encryption (FHE) can perform arbitrary computations on ciphertexts, but suffers high computational costs. Hardware-based trusted execution environments such as Intel Software Guard Extensions (SGX) entail only little computational overhead but are vulnerable to side-channel attacks which can completely dismantle their security guarantees. This dissertation presents a novel architecture combining cryptographic primitives with hardware-based security to compute on encrypted data. Compared to a solution solely relying on SGX, our approach provides a program-independent trusted code base implemented in a small trusted module, which can be reused across programs and hardened against side-channels. Thus, our approach significantly reduces the surface for attacks exploiting software vulnerabilities in the protected application. Compared to only using FHE, our approach provides high efficiency due to fast ciphertext operations and support for control flow. ...