27
Seminararbeit Homomorphe Verschl¨ usselung Niklas A. Zbick 28. Juni 2012 Gutachter: Prof. Dr. Jan J¨ urjens Dipl.-Inform. Sebastian Pape Prof. Dr. Jan J¨ urjens Lehrstuhl 14 Software Engineering Fakult¨ at Informatik Technische Universit¨ at Dortmund Otto-Hahn-Straße 14 44227 Dortmund http://www-jj.cs.uni-dortmund.de/secse

Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

Seminararbeit

Homomorphe Verschlusselung

Niklas A. Zbick28. Juni 2012

Gutachter: Prof. Dr. Jan JurjensDipl.-Inform. Sebastian Pape

Prof. Dr. Jan Jurjens Lehrstuhl 14 Software EngineeringFakultat InformatikTechnische Universitat DortmundOtto-Hahn-Straße 1444227 Dortmundhttp://www-jj.cs.uni-dortmund.de/secse

Page 2: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

ii

Niklas A. [email protected]: 127413Studiengang: Master Angewandte Informatik

Ausgewahlte Themen des Modellbasierten Sicherheits-EngineeringsThema: Homomorphe Verschlusselung

Eingereicht: 28. Juni 2012

Betreuer: Sebastian Pape

Prof. Dr. Jan Jurjens Lehrstuhl 14 Software EngineeringFakultat InformatikTechnische Universitat DortmundOtto-Hahn-Straße 1444227 Dortmund

Page 3: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

iii

Page 4: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

iv

Page 5: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

v

Ehrenwortliche Erklarung

Ich erklare hiermit ehrenwortlich, dass ich die vorliegende Arbeit selbststandig ange-fertigt habe; die aus fremden Quellen direkt oder indirekt ubernommenen Gedankensind als solche kenntlich gemacht.

Die Arbeit wurde bisher keiner anderen Prufungsbehorde vorgelegt und auch nochnicht veroffentlicht.

Dortmund, den 28. Juni 2012

Niklas A. Zbick

Page 6: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

vi

Page 7: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

vii INHALTSVERZEICHNIS

Inhaltsverzeichnis

Abbildungsverzeichnis ix

1 Einleitung 11.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Aufbau der Arbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 Homomorphe Verschlusselung 52.1 Begriffserklarung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2 Anwendungsszenarien . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.3 Entwicklung und derzeitiger Stand . . . . . . . . . . . . . . . . . . . 6

3 Das Verfahren von Gentry 93.1 Ansatz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93.2 Hintergrund . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3.2.1 Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.2.2 Mathematische Gitter . . . . . . . . . . . . . . . . . . . . . . 113.2.3 Gitterprobleme . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3.3 Analogie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

4 Zusammenfassung und Ausblick 15

Literaturverzeichnis 17

Page 8: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

INHALTSVERZEICHNIS viii

Page 9: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

ix ABBILDUNGSVERZEICHNIS

Abbildungsverzeichnis

1.1 Homomorphe Operationen in der Cloud . . . . . . . . . . . . . . . . . 2

3.1 Closest Vector Problem . . . . . . . . . . . . . . . . . . . . . . . . . . 113.2 Bootstrapping in der Handschuhbox . . . . . . . . . . . . . . . . . . . 13

Page 10: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

ABBILDUNGSVERZEICHNIS x

Page 11: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

1

1 Einleitung

1.1 Motivation

Seit Hunderten von Jahren setzen Menschen Kryptografie ein, um vertrauliche Bot-schaften und personliche Informationen vor den Augen unerwunschter Leser zuschutzen. Von der Casar-Chiffre bis zur Enigma haben VerschlusselungsverfahrenKriege entschieden und die Geschichte mitgepragt. Mit dem Beginn des Computer-zeitalters veranderten sich die Anforderungen an Kryptosysteme. Diese konnten undmussten nun auf sehr viel komplexeren Berechnungen basieren.

Mitte der 1970er Jahre wurde mit dem RSA-Algorithmus das erste funktionierendeasymmetrische Kryptosystem vorgestellt. Dies ermoglicht zwei Parteien eine sichereKommunikation, ohne dass diese sich zuvor uber einen ungesicherten Kanal auf einengemeinsamen Schlussel einigen mussen, wie es bei symmetrischen Verfahren notwen-dig ist. RSA (benannt nach seinen Erfindern Ron Rivest, Adi Shamir und LeonardAdleman) ist auch heute noch die Grundlage aktueller Sicherheitsprotokolle wie z.B.SSL (Secure Socket Layer). Hier wird die Public-Key-Kryptografie gemeinsam mitsymmetrischer Verschlusselung eingesetzt. Daruber hinaus hat sich diese traditio-nelle Technik mit modernen Protokollen wie AES (Advanced Encryption Standard)fur die Sicherung privater Daten etabliert. Sowohl Firmen als auch Privatpersonensind in der Lage, ihre geheimen Daten mittels Verschlusselung effektiv zu schutzen.

Mit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nichtmehr zwingend auf den eigenen Servern, sondern werden ausgelagert. Uber Dienstewie Amazon E3, iCloud von Apple oder Dropbox, um nur ein paar zu nennen, sindwir in der Lage, von uberall auf der Welt auf unsere personlichen Daten zuzugreifen.Dies stellt die Kryptografie vor eine neue Herausforderung. Mochte man seine Datenin der Cloud schutzen, weil man etwa Sicherheitslecks oder gar bose Absichten beidem Cloudanbieter befurchtet, kann man diese einfach verschlusseln. Jedoch gehenClouddienstleistungen weit uber das normale Storage-Angebot hinaus. Anstatt nurSpeicherplatz zu benutzen, konnen in der Cloud auch Rechenoperationen ausgefuhrtwerden. Dies bietet eine gunstige Alternative zu teurer Hardware, schließlich ist eineCloud in ihrer Rechenkapazitat skalierbar.

Zumeist konnen Rechenoperationen bisher jedoch nur auf unverschlusselten Datenstattfinden. Zwar erlaubt z.B. RSA auf verschlusselten Daten Multiplikationen aus-zufuhren, aber die Moglichkeit, sinnvolle und komplexe Berechnungen auszufuhren,

Page 12: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

KAPITEL 1. EINLEITUNG 2

Abbildung 1.1: Homomorphe Operationen in der Cloud

bietet keines dieser Verfahren. Hier setzt die Homomorphe Kryptografie an. Wasware, wenn es zu der eigentlichen Operation, z.B. eine einfache Addition, eine aqui-valente Operation gabe, die auf den chiffrierten Daten stattfindet und das gleicheErgebnis liefert, als wenn diese zuerst dechiffriert, dann berechnet und anschließendwieder chiffriert worden waren? Dann ware es gar nicht mehr notig, auf Sicherheitim Gegenzug fur Arbeiten in der Cloud zu verzichten. Die Cloud bzw. der Anbieterfuhrt zwar die Berechnungen aus, weiß aber nicht, auf was fur Daten er arbeitet.Nach Abschluss der Operation kann der User bzw. Besitzer seine Daten herunterla-den und entschlusseln und hat somit das gewunschte Ergebnis.

Kryptografen auf der ganzen Welt haben bereits mogliche Anwendungsszenarien ent-worfen, bei denen homomorphe Verschlusselung zum Einsatz kommt. Jedoch exis-tieren bisher nur wenige Verfahren, die noch sehr neu und nicht fur den produktivenEinsatz geeignet sind. Die Schwierigkeit besteht darin, ein geeignetes Verfahren zuentwickeln, das a) voll homomorph ist, d.h. alle gewunschten Operationen ausfuhrenkann, b) so sicher ist wie normale Verfahren und c) in etwa auch ebenso effizient ist.

1.2 Aufbau der Arbeit

Im weiteren Verlauf dieser Ausarbeitung werden zunachst in Kapitel 2 die Grund-lagen homomorpher Kryptografie behandelt. Dazu erfolgt als erstes eine Begriffs-erklarung in Kapitel 2.1. Anschließend werden in Abschnitt 2.2 konkrete Anwen-dungsszenarien beleuchtet, in denen ein auf homomorpher Kryptografie basierendesVerfahren zum Einsatz kommt. Zum Abschluss des ersten Teils erfolgt ein kurzerhistorischer Abriss der Entwicklung bis zum heutigen Stand homomorpher Verfah-ren (Kapitel 2.3).

Der zweite Teil der Arbeit legt den Schwerpunkt auf das von Craig Gentry vorge-stellte Verfahren. Dieses stellt die erste funktionierende Methode voll homomorpher

Page 13: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

3 1.2. AUFBAU DER ARBEIT

Verschlusselung dar. Dazu erfolgt zunachst eine grobe Beschreibung der Vorgehens-weise in Abschnitt 3.1. Es folgen Details zu dem Verfahren, u.a. eine Vorstellungwichtiger Funktionen und mathematischer Grundlagen, in Abschnitt 3.2. Um dievorgestellten Konzepte zu veranschaulichen wird abschließend in Abschnitt 3.3 eineAnalogie vorgestellt, mittels derer das Verfahren von Gentry anschaulich beschrie-ben wird.

Zu guter Letzt erfolgt eine kurze Zusammenfassung der Kernpunkte dieser Arbeitsowie ein Ausblick auf die Zukunft der homomorphen Kryptografie. Dabei werdenihre Vor- und Nachteile sowie die damit verbundenen Chancen kritisch beaugt.

Page 14: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

KAPITEL 1. EINLEITUNG 4

Page 15: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

5

2 Homomorphe Verschlusselung

2.1 Begriffserklarung

In der Mathematik steht der Begriff”Homomorphismus“ fur eine strukturerhaltende

Abbildung. Bezogen auf das Thema Kryptografie liegt demnach genau dann Homo-morphismus vor, wenn es zu einem Reintext m und dem Geheimtext c = enc(m)mit der Verschlusselungsfunktion enc und der Entschlusselungsfunktion dec fur eineOperation op(m) eine weitere Operation op ∗ (c) gibt und es gilt:

op(m) = dec(op ∗ (c))

Zum Verstandnis hier ein kleines Beispiel: Der Reintext m sei die Zahl 7. Als Ver-schlusselungsmethode wahlen wir einfach die Addition mit der Zahl 3. Demzufolgelautet der Geheimtext c = enc(7) = 7+3 = 10. Zum Entschlusseln wendet man dannlogischerweise die Subtraktion mit der Zahl 3 an: m = dec(10) = 10−3 = 7. Da die-ses Beispiel nun mal sehr einfach gestrickt ist, fallt es nicht schwer, eine Abbildungund ein dazu homomorphes Aquivalent zu finden. Wir verwenden als Datenoperationop(m) = m− 2.In diesem Fall ist op ∗ (c) = c− 2, denn es gilt:

op(m) = 7− 2 = 5 = (10− 2)− 3 = dec(op ∗ (c))

Naturlich ist dies ein sehr simples Beispiel und es gilt daher ausnahmsweise op = op∗.Verallgemeinern auf andere Kryptosysteme und Operationen lasst sich diese Eigen-schaft nicht. Angenommen, wir hatten anstatt einer einfachen Addition eine Multi-plikation gewahlt, dann ware op(7) = 7∗2 = 14 und dec(op∗(10)) = (10∗2)−3 = 17.op∗ ist demnach nicht gleich op, sondern kann nur mit Kenntnis des Schlussels er-mittelt werden. Das Beispiel ist

”additiv homomorph“ [NB08].

Bekannte Kryptoverfahren wie RSA und ElGamal sind dagegen”multiplikativ homo-

morph“, besitzen also eine Homomorphieeigenschaft nur fur die Multiplikation. Dasich mittels Addition und Multiplikation ein Großteil der Operationen eines Com-puters abbilden lassen, benotigt ein vollstandig homomorphes Kryptosystem u.a. furbeide Arten von Operationen diese Eigenschaft.

Beim Versuch, ein vollstandig homomorphes Verfahren zu entwickeln stellte sich je-doch heraus, dass die Ergebnisse haufig in der Anzahl der moglichen Operationenbegrenzt waren. Solche Systeme werden als

”nahezu vollstandig homomorph“ (engl.

Page 16: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

KAPITEL 2. HOMOMORPHE VERSCHLUSSELUNG 6

”somewhat homomorphic“ ) bezeichnet. Beispielsweise sind in solchen Systemen nur

zwei Additionen und eine Multiplikation moglich, da ansonsten das Ergebnis ver-falscht ist. Der Grund dafur ist, dass die Verfahren auf Berechnungen mit Fehlernberuhen. Solange der Fehler ein bestimmtes Toleranzmaß nicht uberschreitet, ist dieKorrektheit des Chiffretextes auch weiterhin gegeben. Wird dieses Maß aber uber-schritten, kann diese Korrektheit nicht mehr gewahrleistet werden.

Fur einen Fehler der Große n im Klartext m und der Fehlerschranke N < n ∗n sindje nach n mehrere Additionen mit entsprechend kleinen Summanden moglich. DasGleiche gilt fur Multiplikationen. Wird m jedoch mit sich selbst multipliziert, giltdasselbe fur den Fehler n, der damit zu groß wird.

2.2 Anwendungsszenarien

Noch bevor es den Ansatz fur einen Algorithmus zur voll homomorphen Verschlus-selung gab, entwickelten Kryptografen eine Reihe moglicher Anwendungsszenarien.Ein relativ simples Beispiel ist die Suche auf verschlusselten Daten [Gen09]. In die-sem Szenario hat der User Alice ihre personlichen Daten auf einem externen Serverabgelegt. Da Alice misstrauisch ist, hat sie ihre Daten verschlusselt, damit der Betrei-ber diese nicht lesen kann. Wenn sie nun auf diesen Daten Suchen mochte, erstellt sieeine entsprechende Query mit den Suchbegriffen und ubermittelt diese dem Server.Der Server interpretiert diese als Operation und sendet die verschlusselten Dateienals Ergebnis zuruck. Da nur Alice diese Daten entschlusseln kann, weiss der Servernie, was fur Dateien dies sind. Alice kann sie nun entschlusseln und hat das Ergebnisihrer Suche.

Ein weiteres Beispiel ist ein Spam-Filter fur verschlusselte E-Mails [Gen09]. UnterKenntnis des Verschlusselungsschemas und Alices offentlichem Schlussel kann derE-Mail nach Spam suchen. Handelt es sich bei einer Nachricht tatsachlich um Spam,fugt der Server der Nachricht ein verschlusseltes 1-Bit hinzu, andernfalls ein 0-Bit.Wenn Alice nun ihre E-Mails abruft, decodiert sie zunachst nur dieses Bit pro Nach-richt. Den Rest entschlusselt sie nur dann, wenn das Bit den Wert 0 hat.

Daruber hinaus gibt es noch komplexere Anwendungsgebiete, z.B. elektronische Pa-tientenakten oder Online-Auktionen [JK05]. Hier konnen Statistiken erstellt werden,ohne das dabei nahere Informationen zu den Patienten bzw. Bietern zuganglich sind.Ein ahnliches Thema sind elektronische Wahlen [K04].

2.3 Entwicklung und derzeitiger Stand

Der Begriff der Homomorphen Entschlusselung entstand kurze Zeit nach der Er-findung von RSA Ende der siebziger Jahre [MD]. Der RSA-Algorithmus wies dieEigenschaft auf, dass er multiplikativ homomorph war, denn fur einen offentlichenSchlussel pk = (N, e) und mehrere Chiffretexte {ψi = πe

imodN} waren das Pro-

Page 17: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

7 2.3. ENTWICKLUNG UND DERZEITIGER STAND

dukt der Chiffretexte und die Chiffre des Produkte des originalen Daten identisch[Gen09]: ∏

i

ψi = (∏i

πi)emodN

RSA-Erfinder Ron Rivest et al. [MD] fragten sich, ob es ein Verfahren geben konne,welches beliebige Operationen auf verschlusselten Daten so ausfuhren konne, als obsie gar nicht verschlusselt waren.

Erst 2009 wurde ein solches (theoretisches) Verfahren vorgestellt. IBM-ForscherCraig Gentry beschrieb es in seiner Dissertation an der Stanford University [Gen09].Die Grundgedanken dieses Verfahren werden in Kapitel 3 naher erlautert. Spates-tens seit Gentrys Entwurf gilt die voll homomorphe Verschlusselung als

”Heiliger

Gral der Kryptografie“ [Sim06].

Inzwischen sind verschiedene Implementierungen und Weiterentwicklungen des Ver-fahrens bekannt. Gentry selbst stellte im Februar 2011 eine solche Implementierungvor [SH10]. Eine weitere Implementierung wurde 2010 vom Briten Nigel Smart vonder University of Bristol und dem Belgier Frederik Vercauteren von der UniversitatLeuven entwickelt [Sim06] [JK05]. Daneben existieren einige Losungen auf Basis desRing Learning with Errors Problem [Reg]. Der Vorteil bei diesen ist, dass das vonGentry konstruierte und aufwendige Bootstrapping nicht mehr erforderlich ist. Einsolches Verfahren wurde von Zvika Brakerski und Vinod Vaikuntanathan vorgestellt[VV11].

Der Begriff”Implementierung“ bedeutet in diesem Rahmen jedoch nicht, dass es

bereits eine fertige, kommerziell nutzbare Software dazu gibt. Es handelt sich dabeilediglich um mathematische Verfahren, die entsprechend in einer Software umgesetztwerden konnen. Noch liegt aber keine ausgereifte technische Implementierung vor,da sich ausnahmslos samtliche Verfahren bisher als zu aufwendig erwiesen haben,um effektiv mit und auf verschlusselten Daten arbeiten zu konnen. Gentrys Imple-mentierung beispielsweise benotigt allein fur die Schlusselgenerierung mehr als zweiStunden bei Schlusselgroßen von 2,25 GB [SH10].

Die einzig praktikable Losung stammt von Kristin Lauter et al. [LNV11]. Den Leu-ten vom Microsoft Research Center gelang es, einen Algorithmus zu entwickeln, densie als

”halbwegs homomorph“ bezeichnen. Der Algorithmus kann ausschließlich mit

Additionen und Subtraktionen umgehen und ist daher noch nicht voll homomorph.Es fehlen noch unterstutzte Operationen wie die Division oder das Wurzelziehen.Trotzdem lassen sich damit schon viele praktische Anwendungen umsetzen. Die Er-stellung der Schlussel dauert hierbei gerade einmal 250 Millisekunden. Damit istdas Verfahren deutlich effizienter als Gentrys Implementierung und konnte in naherZukunft praktisch angewendet werden[NB08].

Nach heutigem Stand wurde jedoch kein Cloud-Anbieter eine Software-Losung furvoll homomorphe Verschlusselung fur Privatkunden anbieten, da der Aufwand, der

Page 18: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

KAPITEL 2. HOMOMORPHE VERSCHLUSSELUNG 8

mit zur Zeit bekannten Verfahren betrieben werden musste, in keinen Verhaltnis zumNutzen steht. Eine solche Software wird noch ein paar Jahre auf sich warten lassen.Die voll homomorphe Kryptografie existiert sozusagen erst seit dem Erscheinen vonGentrys theoretischem Verfahren vor drei Jahren. Da jedoch das Outsourcing vonDaten in die Cloud immer bedeutender wird, ist davon auszugehen, dass sich hierin den kommenden Jahren noch einiges tun wird [Sim06].

Page 19: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

9

3 Das Verfahren von Gentry

In diesem Teil der Arbeit wird das Verfahren von Craig Gentry beschrieben, welcheser 2009 in seiner Dissertation [Gen09] an der Stanford University vorstellte. Auchwenn er darin noch keine konkrete Implementation zur praktischen Umsetzung vor-schlug, gelten seine theoretischen Uberlegungen als Meilenstein der homomorphenKryptografie.

3.1 Ansatz

Die Idee von Gentry zur Konstruktion eines voll homomorphen Verfahrens ist simpel:Benutze ein nahezu voll homomorphes Verfahren und minimiere vor jeder Operationden Fehler auf den verschlusselten Daten so, dass er fur die anstehend Berechnunghinreichend gering ist.

Wie in Kapitel 2.1 erklart, kann ein nahezu voll homomorphes Verfahren zwar mitverschiedenen Rechenoperationen umgehen, doch ist die Korrektheit nach einer ge-wissen Anzahl derer nicht mehr gewahrleistet. Dies liegt daran, dass jedes Verfahreneinen Fehler (von Gentry

”noise parameter“ genannt) mit sich fuhrt. Bis zu einem

gewissen Grad hat der Fehler keinen Einfluss auf das Ergebnis. Sobald er diese Gren-ze uberschreitet, wird das Resultat verfalscht. Ein Beispiel hierfur sind Parameter inModulo-Operationen, die in der Kryptografie haufig fur Einwegfunktionen benutztwerden und auch bei Gentry zum Einsatz kommen.

Angenommen, wir haben ein Schema mit einer maximalen Fehlertoleranz N und zweiChiffretexte mit Fehlergroße n >

√N . Wenn man diese beiden nun miteinander mul-

tipliziert, dann gilt gleiches fur die Fehler. Dies hat zur Folge, dass die Fehlertoleranzuberschritten wurde und die Berechnung kein korrektes Ergebnis mehr garantierenkann.

Gentry schlagt in seiner Dissertation [Gen09] vor, vor jeder Rechenoperation dieChiffretexte neu zu berechnen - und zwar so, dass sie weiterhin dieselben Daten co-dieren, jedoch mit geringerem Fehler. Ist dieser Fehler nun klein genug, d.h. n <

√N ,

kann die korrekte Ausfuhrung der anschließenden Operation gewahrleistet werden.

Page 20: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

KAPITEL 3. DAS VERFAHREN VON GENTRY 10

3.2 Hintergrund

3.2.1 Funktionen

In Gentrys theoretischem Ansatz kommen hauptsachlich funf Funktionen zum Ein-satz. Diese mussten fur eine praktische Umsetzung implementiert werden. Naturlichsind diese nicht die einzigen, aber sie helfen dabei, die zugrunde liegenden Ideen desVerfahrens formal zu beschreiben. Daher werden sie hier kurz vorgestellt.

KeyGen(λ): Geriert das Schlusselpaar. Erhalt als Eingabe den security parameter,der die Komplexitat der Schlussel und damit auch der Berechnungen vorgibt.

Encrypt(pk, π): Die Funktion verschlusselt den Reintext π unter Verwedung des of-fentlichen Schlussels pk (public key). Das Ergebnis ist der Geheimtext ψ.

Decrypt(sk, ψ): Methode zum Entschlusseln. Erhalt als Parameter den Privatschlus-sel sk (sekret key) und den Geheimtext ψ. Liefert den Reintext π zuruck.

Evaluate(pk, C, ψ1, ..., ψt): Diese Funktion fuhrt die Datenoperationen aus. Die ent-sprechende Operation wird in C ubergeben. Weitere Parameter sind sind der offent-liche Schlussel sowie t verschiedene Chiffretexte fur die Operation.

Recrypt: Dies ist die Bootstrapping-Funktion. Sie hat die Aufgabe, aus einem Chif-fretext ψ einen neuen Chiffretext ψ∗ zu generieren. Dieser soll denselben Reintextverschlusseln, jedoch einen geringeren Fehler enthalten. Der naheliegende Weg ist,ψ zunachst zu dechiffrieren und den resultierenden Reintext anschließend erneut zuverschlusseln. Das Ergebnis ware ψ∗, da wir davon ausgehen, dass Encrypt einenhinreichend kleinen Fehler produziert. Doch dann ware der Reintext ja fur kurzeZeit sichtbar. Um dies zu vermeiden, wendet Gentry ein besondere Methode an.Dazu wird zunachst der private Schlussel selbst so verschlusselt, dass nun nicht derReintext das Resultat von Decrypt unter Verwendung dieses Schlussels ist, sondernψ∗.

Wie Gentry erklart [Gen09], ist es notwendig, dass die Schlussel angepasst werden,da ansonsten das Bootstrapping nicht funktionieren wurde. Konkret bedeutet dies,dass ein Hinweis auf den privaten Schlussel im public key gespeichert werden muss.Diese Information wird in den anderen Funktionen genutzt, um die Komplexitat derBerechnungen zu reduzieren. In Abschnitt 3.3 wird eine Analogie beschrieben, in derdieser Umstand anschaulicher dargestellt wird.

Mittels der genannten Funktionen ist es moglich, vollstandig homomorphe Krypto-grafie formal zu definieren. Nach Gentry [Gen09] ist ein Verschlusselungsschema εgenau dann vollstandig homomorph, wenn gilt:

Evaluateε(pk, C, ψ1, ..., ψt) = ψ

Page 21: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

11 3.2. HINTERGRUND

sodassDecryptε(sk, ψ) = C(π1, ..., πt)

3.2.2 Mathematische Gitter

Was sich in der Theorie bislang noch einfach anhoren mag, stellt in der Umsetzungjedoch eine nicht triviale Herausforderung dar. Schließlich wird eine mathetischeGrundlage benotigt, mittels der sich die Funktionen umsetzen lassen. Gentry greiftdabei auf Idealgitter zuruck. Die konkrete Realisierung des Verfahrens mit Ideal-gittern zu beschreiben, ware im Rahmen dieser Arbeit nicht einmal ansatzweisemoglich. Daher seien an dieser Stelle lediglich die Grundlagen genannt.Ein Gitter ist die Menge aller ganzzahligen Vielfachen von beliebig vielen line-ar unabhangigen Vektoren. Formal ausgedruckt, bedeutet dies, dass fur die linearunabhangigen Vektoren b1, ..., bm das Gitter lautet:

Γ = 〈b1, ..., bm〉Z = {m∑i=1

gibi|gi ∈ Z}

Die Menge {bi} ist die sogenannte Basis.

Ein Idealgitter besteht aus Vektoren, die aus den Koeffizienten von Idealen in Rin-gen zusammengesetzt sind. Das bedeutet das sie Elemente einer Menge darstellen,die gegen Operationen wie der Addition und Division abgeschlossen sind [SH10].Idealgitter werden daher in vielen Verfahren der Kryptografie und Kryptoanalyseeingesetzt. Gentry benutzt sie sowohl bei der Berechnung des Schlusselpaares alsauch fur die Ver- und Entschlusselung.

3.2.3 Gitterprobleme

Nachdem nun mathematische (Ideal-)Gitter kurz vorgestellt wurden, wird an dieserStelle kurz die Sicherheit von Gentrys Verfahren diskutiert. Wie Gentry in seinerDissertation zeigt [Gen09], lasst sich diese reduzieren auf bekannte Gitterprobleme.Jedes dieser Probleme ist NP-schwer.

Abbildung 3.1: Das Closest Vector Problem

Page 22: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

KAPITEL 3. DAS VERFAHREN VON GENTRY 12

Closest Vector Problem (CVP): Gegeben sind ein Gitter L und ein Vektor v imVektorraum V. Die Aufgabe ist, den zu v am nachsten liegenden Gittervektor l zufinden [Mic08].

Bounded Distance Decoding Problem(BDDP): Dieses Problem ist ahnlichCVP. Es gibt einen Vektor v zuruck wenn dieser dem Gitter L am nachsten ist undgleichzeitig. Gleichzeitig darf der Abstand nicht großer als ein vorgegebener Wertsein. In der Entscheidungsvariante dieses Problems wird entschieden ob es Vektor vmit diesem maximalen Abstand zu L uberhaupt gibt.

3.3 Analogie

Abschließend wird zu diesem Verfahren eine Analogie betrachtet. Diese wurde vonGentry selbst in seiner Dissertation erlautert, um seine Ansatze zwecks einer besserenVerstandlichkeit bildlich zu beschreiben [Gen09]. Gentry selbst halt diese Analogiefur sehr konstruiert. Trotzdem hilft sie, die Kerngedanken seines Ansatzes zu ver-stehen.

Gentry vergleicht ein voll homomorphes Verschlusselungsschema mit einer Hand-schuhbox in einem Juweliergeschaft. Der Juwelier ? auch in diesem Beispiel ist eswieder Alice ? mochte sichergehen, dass keine wertvollen Materialien gestohlen wer-den konnen. Die Angestellten sollen aber trotzdem die Moglichkeit haben, mit diesenMaterialien zu arbeiten und daraus Schmuckgegenstande herzustellen. Daher besorgtsich Alice eine Handschuhbox, also eine geschlossene Box, in die Handschuhe einge-baut sind, sodass die Mitarbeiter mit diesen die Materialien im Innern bearbeitenkonnen.

Die Box ist Transparent, da die Mitarbeiter sonst nicht arbeiten konnten. Die Box istverschlossen und nur Alice hat den Schlussel. In dieser Analogie bedeutet die Ver-schlusselung daher nicht, dass Unbefugte das Innere nicht sehen konnen, sonderndass sie nicht fahig sind, etwas herauszunehmen. Es besteht fur die Angestelltenjedoch die Moglichkeit, Materialien in die Box hinein zu legen. Wie bei der vollhomomorphen Kryptografie sind sie also in der Lage, mit Daten bzw. Materialienzu arbeiten ohne anschließend Zugriff auf das Ergebnis zu haben. In der Realitatwurden bei diesem Beispiel zwar Restmaterialien ubrig bleiben, was bei einem vollhomomorphen Verschlusselungsschema nicht der Fall ist.

Fur das Bootstrapping zieht Gentry nun folgenden Vergleich: Leider sind die vonAlice aufgestellten Boxen defekt. Nach genau einer Minute werden die Handschuhesteif und fur die Arbeit unbrauchbar. Kein Mitarbeiter ist schnell genug, um in einerMinute etwas fertigen zu konnen. Daher hat sich Alice einen Trick ausgedacht. EinMitarbeiter arbeitet zunachst an Box 1. Wird diese unbrauchbar, packt er sie inBox 2, die großer ist und in der neben einer exakten Kopie der Materialien auchder Schlussel fur Box 1 liegt. Der Mitarbeiter bedient nun Box 2, indem er durchdie Handschuh greift, mit dem Schlussel Box 1 offnet, das dort liegende Erzeugnis

Page 23: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

13 3.3. ANALOGIE

Abbildung 3.2: Bootstrapping in der Handschuhbox

entnimmt und seine Arbeit damit fortsetzt. Nach einer weiteren Minute ist dannauch Box 2 unbrauchbar, daher packt er diese nun in Box 3. Diese enthalt naturlicheinen Schlussel fur Box 2 und so weiter.

Der Unterschied zu Gentrys Bootstrapping besteht einzig darin, dass hier jede Boxihren eigenen Schlussel hat, wahrend es bei der Verschlusselung einen einzigen priva-ten Schlussel gibt. Außerdem wurden die Boxen mit der Zeit immer großer werden.Diese Tatsache kann aber wohl vernachlassigt werden.

In Abschnitt 3.2.1 wird beschrieben, dass innerhalb des offentlichen Schlussels einHinweis auf den privaten Schlussel versteckt wird, um so die Komplexitat er Berech-nungen entscheidend zu verringern. Auch dieser Umstand lasst sich in der Analogiebildlich darstellen. Angenommen, das Offnen einer Box erfolgt nun mittels einerchemischen Reaktion. Der Schlussel ist eine Chemikalie, die auf die Box gegossenwird. Dadurch lost sich die Box auf. Das Problem ist, dass diese Reaktion zu langsamist. Bevor sich die Box ganz auflost, sind ihre Handschuhe schon wieder unbrauchbar.

Daher gibt Alice ihren Angestellten fur jede Box eine weitere Chemikalie, die die Re-aktion beschleunigt. Sie enthalt einige Informationen uber den Schlussel, aber nichtgenug, um daraus einen eigenen Schlussel zu erzeugen. Die Chemikalie kann jedochnur angewendet werden, bevor die Box in eine andere Box gepackt wird, da sonstderen Handschuhe nicht mehr benutzbar sind.

Page 24: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

KAPITEL 3. DAS VERFAHREN VON GENTRY 14

Page 25: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

15

4 Zusammenfassung und Ausblick

Voll homomorphe Verschlusselung erlaubt es, auf verschlusselten Daten Berechnun-gen auszufuhren. Diese Tatsache ermoglicht Anwendungsszenarien, in denen der Be-sitzer der Daten die Berechnungen nicht selbst ausfuhren muss, sondern diese vonjemand anderen (einen Server- oder Cloudanbieter) durchfuhren lasst. Trotzdembleiben die Daten sicher verschlusselt.

Obwohl die Homomorphieeigenschaft bereits in alteren Kryptosystemen wie RSAnachgewiesen wurde, gelang erst 2009 mit dem ersten Ansatz eines voll homomor-phen Verschlusselungsschemas der Durchbruch. Seitdem wurden auf diesem Gebietgroße Fortschritte erzielt, aber noch gibt es keinen effizienten Algorithmus, der aufeinem ublichen Heim-PC in annehmbarer Zeit voll homomorphe Operationen aus-fuhren konnte. Bis es eine entsprechende Software im Handel zu kaufen gibt, wirdes noch einige Jahre dauern.

Bis es soweit ist, werden vorsichtige User ihre Daten verschusselt in der Cloud able-gen und fur jede Operationen herunterladen und berechnen mussen. Als Alternativebietet sich ein eigener Server an. Sicherheitsenthusiasten werden wohl auch dannauf diese Moglichkeiten vertrauen, wenn es Cloud-Losungen mit voll homomorpherSicherheit tatsachlich eines Tages geben sollte. Schließlich besteht weiterhin die Mog-lichkeit, dass der Server-Provider einfach samtliche Daten loscht oder in irgendeinerForm bearbeitet.

Homomorphe Kryptografie schutzt einzig davor, dass die Daten von jemand anderemals dem Eigentumer gelesen werden konnen. Schutz vor Zerstorung durch Loschenoder willkurliche Manipulation bietet sie nicht. Daher wird sie es schwer haben,sich in diesen Einsatzbereichen durchzusetzen. Solange sie nicht so effizient ist, dassder User durch sie in seinem Handeln (zeitlich) nicht beeintrachtigt wird, wird siewahrscheinlich kaum Verbreitung finden. Dazu sind die Alternativen zu zahlreichund werden außerdem bereits seit Jahren praktiziert.

Page 26: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

KAPITEL 4. ZUSAMMENFASSUNG UND AUSBLICK 16

Zudem ist fraglich, inwieweit homomorphe Kryptografie zukunftig auf externen Da-tenspeichern wie der Cloud eingesetzt werden durfen. Moglich ist, das der Gesetz-geber dies untersagt. Das klingt vielleicht unwahrscheinlich, aber tatsachlich gibtes das bereits. Durch den Patriot Act, der in den USA nach dem 11. Septemberin Kraft trat, haben amerikanische Behorden das Recht, in Sonderfallen private, inder Cloud gespeicherte Daten einzusehen. Dass sie ein Interesse daran haben, dasssamtliche Daten in Zukunft verschlusselt sind, kann daher wohl bezweifelt werden.

Anwendungen auf Basis voll homomorpher Verschlusselung werden kommen. Dasssich diese in privaten Cloud-Speicher-Losungen etablieren werden, ist aus den o.g.Grunden nicht zwingend zu erwarten. Es ist jedoch vorstellbar, dass sich elektroni-sche Wahlen oder Patientenakten langfristig etablieren werden. Sobald die Technikausgereift ist, wird es auch Moglichkeiten geben, sie zu nutzen.

Page 27: Seminararbeit - rgse.uni-koblenz.de fileMit dem Cloud-Computing setzt jedoch ein neuer Trend ein. Daten liegen nun nicht Daten liegen nun nicht mehr zwingend auf den eigenen Servern,

17 LITERATUR

Literatur

[Gen09] Craig Gentry.”A fully homomorphic encryption scheme“. crypto.stanf

ord.edu/craig. Diss. Stanford University, 2009.

[JK05] Matthew Broersma und Jan Karden. Wissenschaftler ermoglicht erstmalsHintergrundverschlusselung von Daten. 27.05.2010. url: www.zdnet.de/news/41532543/wissenschaftler-ermoeglicht-erstmals-hintergru

ndverschluesselung-von-daten.htm.

[K04] Birger Kuhnel. Elektronische Wahlen. 2004. url: www.birger-kuehnel.de/uploads/media/elektronische-wahlen_02.pdf.

[LNV11] Kristin Lauter, Michael Naehrig und Vinod Vaikuntanathan. Can Ho-momorphic Encryption be Practical? Cryptology ePrint Archive, Report2011/405. http://eprint.iacr.org/. 2011.

[MD] Ron Rivest und Len Adleman und Michael Dertouzos. On data banks andprivacy homomorphisms. http://people.csail.mit.edu/rivest/RivestAdlemanDertouzos-OnDataBanksAndPrivacyHomomorphisms.pdf.

[Mic08] Daniele Micciancio. Closest Vector Problem. https://cseweb.ucsd.edu/~daniele/papers/CryptoEncyclopediaCVP.ps. 11.08.2003.

[NB08] Tom Simonite und Niels Boeing. Mehr Sicherheit fur Datenwolken. 18.08.2011.url: http://www.heise.de/tr/artikel/Mehr-Sicherheit-fuer-Datenwolken-1324650.html.

[Reg] Oded Regev. The Learning with Errors Problem. www.cs.tau.ac.il/~odedr/papers/lwesurvey.pdf.

[SH10] Craig Gentry und Shai Halevi. Implementing Gentry’s Fully-HomomorphicEncryption Scheme. Cryptology ePrint Archive, Report 2010/520. http://eprint.iacr.org/. 2010.

[Sim06] Tom Simonite. Sicheres Computing fr die Cloud. 16.06.2010. url: www.heise.de/tr/artikel/Sicheres-Computing-fuer-die-Cloud-102107

1.html.

[VV11] Zvika Brakerski und Craig Gentry und Vinod Vaikuntanathan. Fully Ho-momorphic Encryption without Bootstrapping. Cryptology ePrint Archi-ve, Report 2011/277. http://eprint.iacr.org/. 2011.