rechnen mit verschluesselten programmen und daten rechnen mit verschlأ¼sselten programmen und...

Download Rechnen mit verschluesselten Programmen und Daten Rechnen mit verschlأ¼sselten Programmen und Daten

If you can't read please download the document

Post on 07-Nov-2019

3 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Rechnen mit verschlüsselten Programmen und Daten

    Der Fakultät für Elektrotechnik und Informatik der

    Gottfried Wilhelm Leibniz Universität Hannover

    zur Erlangung des Grades

    Doktor der Naturwissenschaften

    Dr. rer. nat.

    genehmigte Dissertation

    von

    M. Sc. Michael Brenner

    geboren am 7. August 1974 in Neustadt a. Rbge.

    2012

  • Referent: Prof. Dr. Matthew Smith Koreferent: Prof. Dr. Jörg Hähner

    Tag der Promotion: 7. Dezember 2012

  • Vorwort

    Die vorliegende Arbeit entstand während meiner Tätigkeit in der Einrichtung Leibniz Universität IT Services (ehemals Regionales Rechenzentrum für Nie- dersachsen) und am Forschungszentrum L3S in Hannover.

    Ich danke besonders Herrn Prof. Dr. Matthew Smith für die Unterstützung bei der Erstellung dieser Arbeit und das entgegengebrachte Vertrauen. Ich danke weiterhin Herrn Prof. Dr. Jörg Hähner für die Übernahme des Koreferats und Frau Prof. Dr. Gabriele von Voigt für die Unterstützung und eine stets offene Tür.

    Außerdem bedanke ich mich bei meinen Kollegen in der Distributed Computing & Security Group für eine fruchtbare und vertrauensvolle Arbeitsatmosphä- re, insbesondere bei Henning Perl für die wertvolle Tätigkeit während seiner Master-Arbeit und die unzähligen, konstruktiven Diskussionen.

    Bedanken möchte ich mich bei meiner Familie für den steten Zuspruch und bei meiner Frau Nadine für die aufgebrachte Geduld.

    Neustadt a. Rbge. im Dezember 2012

    iii

  • Zusammenfassung

    Verteilte IT-Infrastrukturen bestimmen längst den Lebensalltag der meisten Menschen. Während Unternehmen das mittlerweile etablierte Ressourcen-Pa- radigma des Cloud-Computing anwenden, um auf entfernten Miet-Ressourcen Rechenleistung auszulagern und somit die Kostenstruktur der eigenen IT- Infrastruktur dynamisch und bedarfsgerecht zu gestalten, kommen deren Kun- den mit den gemieteten Ressourcen mittelbar dadurch in Kontakt, dass die zu verarbeitenden Daten auf die entfernten Infrastrukturen übertragen werden. Aber auch Privatpersonen können Cloud-Ressourcen direkt verwenden, indem sie die in letzter Zeit vermehrt angebotenen Speicherdienste für Endanwender buchen und ihre Daten, Digitalfotos und sonstige Informationen mit dem Vor- teil der ortsungebundenen Abrufbarkeit dort sichern oder virtuelle Maschinen zur universellen Verwendung anmieten. In jedem Falle müssen möglicherwei- se vertrauliche Daten in eine potenziell ungeschützte Umgebung transferiert werden, wobei der Anwender die Kontrolle darüber verliert, mit welchen Me- chanismen und mit welchem Sicherheitsniveau die Informationen verarbeitet werden. Mit den gegenwärtig verfügbaren Sicherheitstechnologien kann ledig- lich der Transport der Daten geschützt werden, die Verarbeitung selbst findet dagegen stets unverschlüsselt statt.

    Ausgangspunkt für diese Arbeit ist die Herausforderung, dass auf entfernten Ressourcen verarbeitete Daten und Programme auch während des eigentlichen Verarbeitungsvorgangs verschlüsselt und damit geschützt bleiben können. Dies erlaubt es, die Verarbeitung auch vertraulicher Informationen unabhängig von der Vertrauenswürdigkeit und dem Sicherheitsniveau des Delegenten durchzu- führen. Diese Dissertation beschreibt unterschiedliche Lösungen für die Proble- matik des vertraulichen Rechnens auf fremden und potenziell risikobehafteten Ressourcen und schlägt neue Konstruktionen zum Schutz der Vertraulichkeit

    v

  • von Programmen und Daten während der Verarbeitung vor. Die technische Grundlage für die in dieser Arbeit vorgestellten Methoden

    bildet die homomorphe Kryptografie. Diese gestattet es prinzipiell, elementa- re binärarithmetische Operationen auf verschlüsselten Bits auszuführen. Auf Basis dieser Eigenschaft werden in dieser Arbeit zunächst einige elementa- re digitale Schaltungselemente konstruiert, die bereits zur Lösung einzelner Problemstellungen verwendet werden können. Im weiteren Verlauf dienen die- se Elemente zur Bildung einer vollständigen Abstraktion der unterliegenden Kryptografie in Gestalt eines verschlüsselten Computersystems, bestehend aus verschlüsseltem Prozessor und verschlüsseltem Arbeitsspeicher.

    Zur Verbesserung der Leistungsfähigkeit homomorph verschlüsselter Algo- rithmen werden in dieser Arbeit hybride Systeme eingeführt, bei denen nur ein geringer Teil tatsächlich verschlüsselt abläuft. Die Herausforderung bei dieser Vorgehensweise ist die Formulierung entsprechender Protokolle, welche die ver- schlüsselten und unverschlüsselten Komponenten so zusammenführen, dass die Vertraulichkeit der Verarbeitung dennoch gewährleistet bleibt.

    Die vorgestellten Konzepte werden mit prototypischen Implementierungen überprüft und in ihrer Leistungsfähigkeit untersucht. Die Basis hierzu bildet die erste frei verfügbare Implementierung des homomorphen Smart-Vercauteren Kryptosystems, welche im Rahmen dieser Arbeit entstand. Aufbauend dar- auf werden die verschlüsselten Prozessor- und Speicherkomponenten auf un- terschiedlichen Plattformen realisiert, um die Übertragbarkeit und univer- selle Einsetzbarkeit nachzuweisen. Die weiteren Konstruktionen und Hybrid- Systeme in dieser Arbeit werden mit unterschiedlichen homomorphen Krypto- systemen evaluiert. Die so validierten Mechanismen können die Sicherheit des Rechnens in verteilten Systemen wie dem Cloud-Computing signifikant ver- bessern und so zur Erschließung sicherheitsrelevanter Anwendungsgebiete für das verteile Rechnen in modernen Ressourcen-Paradigmen beitragen.

    Schlagwörter: Computersicherheit, Homomorphe Kryptografie, Verschlüsseltes Rechnen

  • Abstract

    Networked information systems permeate modern life. Companies apply the widely accepted cloud computing paradigm to delegate computation to hired remote resources for the purpose of cost structure controlling and to dyna- mically shape the infrastructure size according to actual requirements. The customers of these companies are affected by this strategy, because their data is uploaded to the remote resources in order to be processed. But also in- dividuals are directly confronted with cloud computing when accepting the various offers to save data, pictures and other information in one of the cloud storage spaces, a service that recently has become increasingly popular. The advantage for the user is high availability of the data and accessibility from any location. In either case, customer or individual, private information has to be transferred into potentially insecure environments, where the user can no longer control under what mechanisms and security levels the information is being processed. Using the currently available encryption technologies, on- ly transport and storage of data can be secured. However, data processing is usually still unencrypted.

    The starting point for this thesis is the challenge to safely process data on remote resources by protecting programs and data even during processing. This allows to outsource the computation of confidential information independently from the trustworthiness or the security level of the remote delegate. This thesis describes different solutions for the problem of confidential computation in potentially insecure remote environments and proposes novel constructions to protect the confidentiality of programs and data during the processing step.

    The technological basis for the methods presented in this thesis is homo- morphic cryptography which allows to compute elementary binary operations on encrypted bits. Taking advantage of this property, this thesis first describes

    vii

  • a number of basic digital circuits that can already be used to solve different fundamental problems of limited complexity. These elements are then app- lied to construct an encrypted computer system with encrypted memory and encrypted processor circuits. The result is an abstraction of the underlying homomorphic cryptography.

    To improve the performance of homomorphically encrypted algorithms, this thesis introduces the concept of hybrid systems that are only partly encryp- ted and most elements process information in plain or non-homomorphically encrypted. The challenge of this approach is to formulate protocols that com- bine encrypted and unencrypted components in a way that still guarantees the confidentiality of the processed information.

    The presented concepts are evaluated with prototypic implementations that provide performance figures. The foundation is the first open-source implemen- tation of the fully homomorphic Smart-Vercauteren cryptosystem which has been realized during the course of this thesis. On top of this, the encryp- ted processor- and memory circuits are implemented for different platforms to prove portability and to sketch a universal deployment model. The further constructions and hybrid system examples are evaluated with different homo- morphic cryptosystems and show, how limited homomorphic schemes can be practically applied. The validation of the mechanisms significantly improves the security of computation in distributed environments like the cloud. This enables access to new security-relevant use cases for distributed computing in modern resource paradigms.

    Keywords: computer security, homomorphic cryptography, encrypted compu- ting

  • Inhaltsverzeichnis

    1 Einleitung 1

    1.1 Einführung: Stand der Kryptografie . . . . . . . . . . . . . . . . 3

    1.2 Motivation: vertrauliches Rechnen . . . . . . . . . . . . . . . . . 9

    1.2.1 Verteiltes Rechnen - Grid Computing . . . . . . . . . . . 9

    1.2.2 Cloud Computing . . . . . . . . . . . .

Recommended

View more >