DE112011100327T5 - Effizientes homomorphes Verschlüsselungsverfahren für Bilinearformen - Google Patents

Effizientes homomorphes Verschlüsselungsverfahren für Bilinearformen Download PDF

Info

Publication number
DE112011100327T5
DE112011100327T5 DE112011100327T DE112011100327T DE112011100327T5 DE 112011100327 T5 DE112011100327 T5 DE 112011100327T5 DE 112011100327 T DE112011100327 T DE 112011100327T DE 112011100327 T DE112011100327 T DE 112011100327T DE 112011100327 T5 DE112011100327 T5 DE 112011100327T5
Authority
DE
Germany
Prior art keywords
data
ciphertext
encryption method
encryption
matrix
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE112011100327T
Other languages
English (en)
Inventor
Craig B. Gentry
Vinod Vaikun-Tanathan
Shai Halevi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112011100327T5 publication Critical patent/DE112011100327T5/de
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3093Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Abstract

In einer beispielhaften Ausführungsform ein computerlesbares Speichermedium, das ein Programm aus Befehlen physisch verkörpert, die von einer Maschine zum Durchführen von Operationen ausgeführt werden können, wobei die Operationen das Folgende beinhalten: Empfangen von Daten B, die als Chiffriertext C gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion beinhaltet; und Verschlüsseln von B gemäß der Verschlüsselungsfunktion zum Erhalten von C, wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A verwendet, wobei es sich bei B, C und A um Matrizen handelt, die Verschlüsselungsfunktion als Eingaben A und B empfängt und C als C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix, X eine Fehlermatrix, p eine ganze Zahl und q eine ungerade Primzahl darstellen. In anderen beispielhaften Ausführungsformen beinhaltet das Verschlüsselungsverfahren eine Entschlüsselungsfunktion, die als Eingaben mindestens einen privaten Schlüssel T (eine Matrix) und C empfängt und B als B = T–1·(TCTtmodq)·(Tt)–1modp ausgibt.

Description

  • TECHNISCHES GEBIET:
  • Die beispielhaften Ausführungsformen dieser Erfindung beziehen sich allgemein auf Verschlüsselungs- und Entschlüsselungsalgorithmen und speziell auf homomorphe Verschlüsselungsverfahren für Bilinearformen.
  • HINTERGRUND:
  • Verschlüsselungsverfahren, die Operationen an verschlüsselten Daten unterstützen (z. B. homomorphe Verschlüsselung), sind zur sicheren Datenverarbeitung sehr nützlich.
  • Um ein homomorphes Verschlüsselungsverfahren handelt es sich, wenn eine oder mehrere an zwei oder mehr verschlüsselten Texten ausgeführte Operationen (z. B. Addition, Multiplikation) auf den entschlüsselten Text übertragbar sind (das ist die Entschlüsselung der verschlüsselten Texte). Beispielsweise kann ein Verschlüsselungsverfahren als additiv homomorph bezeichnet werden, wenn die Entschlüsselung der Summe der verschlüsselten Texte (C1 + C2) die Summe der entsprechenden Klartexte (B1 + B2) ergibt (möglicherweise modulo einem Restwert): dec(C1 + C2) → B1 + B2. Viele Public-Key-Verschlüsselungssysteme unterstützen entweder Addition oder Multiplikation verschlüsselter Daten, beides aber gleichzeitig zu erhalten, stellt sich als schwieriger heraus.
  • Es ist bekannt, dass das Berechnen beliebiger Funktionen an verschlüsselten Daten z. B. mit Yao's „Garbled Circuit”-Technik umgesetzt werden kann [16, 12], aber die Größe des verschlüsselten Texts und die Komplexität der Entschlüsselung wachsen mindestens linear mit der Anzahl der Gatter in dem berechneten Schaltkreis. Sander u. a. [15] beschreiben auch eine Technik, die die Auswertung beliebiger Schaltkreise erlaubt, aber die Größe des verschlüsselten Texts wächst exponentiell mit der Schaltkreistiefe. Diese beiden Verfahren können nur mit „allgemeinen Härteannahmen” umgesetzt werden (z. B. die Existenz von Zweistrom-Oblivious-Transfer-Protokollen usw.).
  • Boneh, Goh und Nissim beschrieben ein Verschlüsselungssystem, das beliebig viele Additionen und eine Multiplikation erlaubt, ohne dass die Größe des verschlüsselten Texts wächst [5]. Dieses Verfahren wird hier als das BGN-Verschlüsselungssystem bezeichnet. Die Sicherheit des BGN-Verschlüsselungssystems beruht auf dem Untergruppenzugehörigkeits-Problem (subgroup membership Problem) in Gruppen nicht ganzzahliger Ordnung, die bilineare Abbildungen erlauben. Dieses Verschlüsselungssystem schließt unmittelbar ein effizientes Protokoll zum Auswerten der 2-disjunkten Normalform-(2DNF-)Formel (oder allgemeiner Bilinearformen) ein. Boneh u. a. beschrieben auch Anwendungen des BGN-Verschlüsselungssystems zum Verbessern der Effizienz privater Daten-Wiedergewinnungsverfahren (PIR) und für ein Wahlprotokoll.
  • In jüngerer Zeit beschrieben Agular Melchor, Gaborit und Herranz in [2] eine „Vorlage” zum Umwandeln gewisser additiver homomorpher Verschlüsselung in ein Verschlüsselungssystem, das sowohl Additionen wie Multiplikationen erlaubt. Sie zeigen, wie diese Vorlage zum Verknüpfen des BGN-Verschlüsselungssystems mit dem Verschlüsselungssystem von Kawachi u. a. [11] verwendet wird, sodass ein Verschlüsselungssystem erhalten wird, das zwei Multiplikationen und beliebige Additionen erlaubt und das auf der Härte des Untergruppen-Zugehörigkeitsproblems und dem Problem des eindeutigen kürzesten Gittervektors beruht. Sie zeigen auch, wie diese Vorlage mit dem Verschlüsselungssystem von Aguilar Melchor u. a. [1] zum Erhalten unbegrenzter Multiplikationstiefe verwendet werden kann, wobei die Größe des verschlüsselten Textes exponentiell mit der Multiplikationstiefe wächst, aber Additionen ohne Größenzunahme unterstützt werden. (Die Sicherheit dieser letzten Realisierung beruht auf einer vergleichsweise wenig untersuchten Härteannahme, genannt das „differentielle Knapsack-Vektorproblem”.)
  • Es ist bekannt, dass additive homomorphe Verschlüsselungsverfahren aus Gitter- oder Linearcodes konstruiert werden können. Chiffriertexte enthalten implizit einen „Fehler”, der in dem Maße wächst, wie die Chiffriertexte verknüpft werden (z. B. addiert, multipliziert). Somit weisen die resultierenden Chiffriertexte nicht dieselbe Verteilung wie die originalen Chiffriertexte (z. B. wie einzeln entschlüsselt) auf und an einem bestimmten Punkt kann der Fehler so groß werden, dass er zu einer fehlerhaften Entschlüsselung führt. Aus diesem Grund wird der Homomorphismus in solchen Fällen manchmal ein „Pseudohomomorphismus” oder ein „gebundener Homomorphismus” genannt.
  • In jüngster Zeit beschrieb Gentry ein voll homomorphes Verschlüsselungssystem [9], das polynomial viele Additionen und Multiplikationen erlaubt, ohne dass die Chiffriertext-Größe zunimmt, wobei die Sicherheit auf der Härte des Findens kurzer Vektoren in idealen Gittern beruht [8].
  • KURZE ZUSAMMENFASSUNG:
  • In einer beispielhaften Ausführungsform der Erfindung realisiert ein computerlesbares Speichermedium physisch ein Programm aus Befehlen, die von einer Maschine zum Durchführen von Operationen ausgeführt werden können, wobei die Operationen Folgendes umfassen: Empfangen von Daten B zum Verschlüsseln als ein Chiffriertext C gemäß einem Verschlüsselungsverfahren, das eine Verschlüsselungsfunktion umfasst; und Verschlüsseln der Daten B gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten des Chiffriertexts C, wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A verwendet, der zu mindestens einem privaten Schlüssel T gehört, wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt und die Verschlüsselungsfunktion als Eingaben den mindestens einen öffentlichen Schlüssel A und die Daten B empfängt und den Chiffriertext C als C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix, X eine Fehlermatrix, p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • In einer anderen beispielhaften Ausführungsform der Erfindung umfasst eine Vorrichtung das Folgende: wenigstens ein Speichermedium, das zum Speichern von Daten B ausgelegt ist, die als ein Chiffriertext C gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion umfasst; und mindestens ein Prozessor, der zum Verschlüsseln der Daten B gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens geeignet ist, um den Chiffriertext C zu erhalten, wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A verwendet, der zu mindestens einem privaten Schlüssel T gehört, wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt und die Verschlüsselungsfunktion den mindestens einen öffentlichen Schlüssel A und die Daten B als Eingaben empfängt und den Chiffriertext C als C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix, X eine Fehlermatrix, p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • In einer weiteren beispielhaften Ausführungsform der Erfindung handelt es sich um ein computerlesbares Speichermedium, das physisch ein Programm aus Befehlen realisiert, die von einer Maschine zum Durchführen von Operationen ausgeführt werden können, wobei die Operationen das Folgende umfassen: Empfangen eines Chiffriertexts C, der zu Daten B gemäß einem Verschlüsselungsverfahren entschlüsselt werden soll, das eine Entschlüsselungsfunktion umfasst; und Entschlüsseln des Chiffriertexts C gemäß der Entschlüsselungsfunktion des Entschlüsselungsverfahrens zum Erhalten der Daten B, wobei das Entschlüsselungsverfahren mindestens einen privaten Schlüssel T verwendet und es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel T um Matrizen handelt, wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCTtmodq)·(Tt)–1modp ausgibt, wobei p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Um eine andere beispielhafte Ausführungsform der Erfindung handelt es sich bei einer Vorrichtung, die Folgendes umfasst: wenigstens ein Speichermedium geeignet zum Speichern eines Chiffriertexts C, der zu Daten B gemäß einem Verschlüsselungsverfahren entschlüsselt werden soll, das eine Entschlüsselungsfunktion umfasst; und mindestens ein Prozessor geeignet zum Entschlüsseln des Chiffriertexts C gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Daten B, wobei das Verschlüsselungsverfahren mindestens einen privaten Schlüssel T verwendet und es sich bei den Daten B, dem Chiffriertext C und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCTtmodq)·(Tt)–1modp ausgibt, wobei p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Bei einer weiteren beispielhaften Ausführungsform der Erfindung handelt es sich um ein computerlesbares Speichermedium, das ein Programm aus Befehlen physisch realisiert, die von einer Maschine zum Ausführen von Operationen ausgeführt werden können, wobei die Operationen das Folgende umfassen: Empfangen von Daten B, die zu einem Chiffriertext C gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion und eine Entschlüsselungsfunktion umfasst; und Verschlüsseln der Daten B gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten des Chiffriertexts C, wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A und mindestens einen privaten Schlüssel T verwendet, der zu dem mindestens einen öffentlichen Schlüssel A gehört und wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei B ∊ Z m×m / p, C E Z m×m / q, A ∊ Z m×n / q und T ∊ Z m×m / q , n einen Sicherheitsparameter bezeichnet, m, q = poly(n), q eine ungerade Primzahl und p eine ganze Zahl mit q > p darstellen, wobei die Verschlüsselungsfunktion als Eingaben A und B empfängt und den Chiffriertext C als C ← AS + pX + B(modq) ausgibt, wobei es sich bei S um eine Zufallsmatrix handelt und S ← $ Z n×m / q, X eine Fehlermatrix darstellt und X ← $Ψ β(q)m×m, wobei Ψ β eine Fehlerverteilung und β einen Gauss'schen Fehlerparamater gegeben durch β = 1 / poly(n) darstellen, wobei die Entschlüsselungsfunktion als Eingaben T und C empfängt und die Daten B gemäß B = T–1·(TCTtmodq)·(Tt)–1modp ausgibt, wobei das Verschlüsselungsverfahren homomorph ist und das Berechnen von Bilinearformen unterstützt.
  • KURZE BESCHREIBUNG DER MEHREREN ANSICHTEN DER ZEICHNUNGEN:
  • Das Vorige und andere Gesichtspunkte der Ausführungsformen dieser Erfindung werden aus der folgenden ausführlichen Beschreibung noch deutlicher erkennbar, wenn sie in Verbindung mit den angefügten Zeichnungen gelesen wird, in denen:
  • 1A eine beispielhafte Verschlüsselungsoperation/-funktion gemäß den beispielhaften Ausführungsformen der Erfindung darstellt;
  • 1B eine beispielhafte Entschlüsselungsoperation/-funktion gemäß beispielhaften Ausführungsformen der Erfindung darstellt;
  • 1C eine beispielhafte Schlüsselerzeugungs-(KeyGen-)Operation/Funktion gemäß den beispielhaften Ausführungsformen der Erfindung darstellt;
  • 1D eine beispielhafte Chiffriertext-Additionsoperation/-funktion gemäß den beispielhaften Ausführungsformen der Erfindung darstellt;
  • 1E eine beispielhafte Chiffriertext-Multiplikationsoperation/-funktion gemäß den beispielhaften Ausführungsformen der Erfindung darstellt;
  • 1F eine beispielhafte Operation/Funktion „einfaches Entschlüsseln” gemäß den beispielhaften Ausführungsformen der Erfindung darstellt;
  • 2 ein Funktionsschaubild eines Systems veranschaulicht, in dem verschiedene beispielhafte Ausführungsformen der Erfindung umgesetzt sein können;
  • 3 einen logischen Ablaufplan darstellt, der den Betrieb eines beispielhaften Verfahrens und den Betrieb eines beispielhaften Computerprogramms gemäß den beispielhaften Ausführungsformen dieser Erfindung veranschaulicht;
  • 4 einen anderen logischen Ablaufplan des Betriebs eines beispielhaften Verfahrens und den Betrieb eines beispielhaften Computerprogramms gemäß den beispielhaften Ausführungsformen dieser Erfindung veranschaulicht;
  • 5 einen anderen logischen Ablaufplan darstellt, der den Betrieb eines beispielhaften Verfahrens und den Betrieb eines beispielhaften Computerprogramms gemäß den beispielhaften Ausführungsformen dieser Erfindung veranschaulicht;
  • 6 einen anderen logischen Ablaufplan des Betriebs eines beispielhaften Verfahrens und den Betrieb eines beispielhaften Computerprogramms gemäß den beispielhaften Ausführungsformen dieser Erfindung veranschaulicht; und
  • 7 einen anderen logischen Ablaufplan des Betriebs eines beispielhaften Verfahrens und den Betrieb eines beispielhaften Computerprogramms gemäß den beispielhaften Ausführungsformen dieser Erfindung veranschaulicht.
  • AUSFÜHRLICHE BESCHREIBUNG:
  • 1 Kurze Synopsis
  • Beispielhafte Ausführungsformen der Erfindung bilden ein einfaches Public-Key-Verschlüsselungsverfahren, das das Berechnen von Bilinearformen (z. B. polynomial viele Additionen und eine Multiplikation) ähnlich wie das Verschlüsselungssystem von Boneh, Goh und Nissim (BGN) unterstützt Die Sicherheit beruht auf der Härte des Lernen-mit-Fehlern-(LWE-)Problems, das als ebenso hart wie bestimmte ungünstigste Fälle von Gitterproblemen bekannt ist.
  • Zu einigen Kennzeichen des beispielhaften Verschlüsselungssystems zählen die Unterstützung eines großen Nachrichtenraumes, eine einfache Möglichkeit zum Erreichen der Formeln-Privatsphäre, ein besseres Nachrichten-zu-Chiffriertext-Expansionsverhältnis als BGN und eine einfache Möglichkeit des Multiplizierens von zwei verschlüsselten Polynomen. Das Verfahren kann auch identitätsbasiert und abhörsicher ausgestaltet werden (auf Kosten eines höheren Expansionsverhältnisses aus Nachrichten und Chiffriertext).
  • Sämtliche Verweise auf „Z” (z. B. Z m×n / pZ m×n / p ) sind so zu verstehen, dass sie die Menge der ganzen Zahlen bezeichnen. Darüber hinaus beziehen sich alle Verweise auf ein Geheimnis, einen Geheimschlüssel oder eine Falltür auf einen privaten Schlüssel (z. B. wie in Verschlüsselungsverfahren mit öffentlichem und privaten Schlüssel) und umgekehrt.
  • Die hier verwendete Terminologie dient der Beschreibung verschiedener beispielhafter Ausführungsformen der Erfindung und darf nicht als einschränkend für die Erfindung ausgelegt werden. Wie hier verwendet sind die Einzahlformen „ein” und „der, die, das” so zu verstehen, dass sie auch die Pluralformen einschließen, wenn der Zusammenhang nichts eindeutig Anderes angibt. Es ist ferner selbstverständlich, dass die Begriffe „umfassen” und/oder „umfassend”, wenn sie in dieser Beschreibung verwendet werden, die Anwesenheit von angegebenen Kennzeichen, ganze Zahlen, Schritten, Operationen, Elementen und/oder Komponenten angeben, aber nicht die Anwesenheit oder das Hinzufügen eines oder mehreren anderen Kennzeichen, ganze Zahlen, Schritten, Operationen, Elementen, Komponenten und/oder Gruppen davon ausschließen.
  • 1.1 Einleitung
  • In dieser Arbeit wird ein beispielhaftes Verschlüsselungsverfahren beschrieben, das additiv homomorph ist und zusätzlich auch eine Multiplikation erlaubt. Das beispielhafte Verfahren beruht auf der Falltür-Funktion, die von Gentry, Peikert und Vaikuntanathan [10] (hier im Folgenden als die GPV-Falltürfunktion bezeichnet) vorgeschlagen wurde. In der GPV-Falltürfunktion stellt eine Matrix A ∊ Z m×n / q (für Parameter q > p und m > n) den „öffentlichen Schlüssel” dar und bei der entsprechenden Falltür handelt es sich um eine ganzzahlige Matrix mit vollem Rang und kleinen Einträgen T ∊ Zm×m, sodass TA = 0(modq). Die öffentlichen und privaten Schlüssel in dem beispielhaften Verschlüsselungssystem stimmen genau mit denen in der GPV-Falltürfunktion überein. Eine quadratische Matrix B ∊ Z m×m / p wird verschlüsselt durch C = AS + pX + Bmodq, wobei S eine Zufalls-„Koeffizientenmatrix” S ∊ Z n×m / q und X eine „Rauschmatrix” mit Einträgen X ∊ Zm×m darstellt, sodass die Einträge von X wesentlich kleiner als q sind. Die Chiffriertext-Matrizen können addiert werden, und auch eine einzige Matrizenmultiplikation C' = C1·C t / 2modq ist erlaubt. (Ct ist die Transponierte von C.) Zum Entschlüsselt wird B = T–1·(TCTtmodq)·(Tt)–1modp gesetzt.
  • Die Sicherheit des beispielhaften Verfahrens ist äquivalent mit der Härte des Lernens mit Fehlern (LWE). Dieses Problem, das mit dem wohlbekannten „Lernen der Parität mit Rauschen” verknüpft ist, hat sich im Studium der gitterbasierten Kryptographie als Standard etabliert. Das Problem wurde zuerst von Regev [14] vorgeschlagen und von Regev [14] und Peikert [13] als gleichhart wie ungünstigste Fälle verschiedener Probleme in ganzzahligen Gittern bewiesen. Es wird kurz angemerkt, dass das LWE-Problem mit einer zugehörigen Fehlerverteilung in Beziehung steht.
  • 1.2 Beiträge
  • Den vielleicht wichtigsten Unterschied zwischen dem beispielhaften Verfahren und früheren Arbeiten stellt die zu Grunde liegende Härteannahme dar. Insbesondere stellt das beispielhafte Verschlüsselungssystem das erste bekannte auf der Grundlage von LWE dar, das mehr als nur additiven Homomorphismus aufweist. Das beispielhafte Verfahren ist somit sehr leistungsfähig: es kann eine Matrix mit m2 Elementen in der Zeit O ~(m3) verschlüsseln, und die Entschlüsselung beansprucht eine vergleichbare Zeit.
  • Ein wichtiger Unterschied zwischen dem beispielhaften Verfahren und dem BGN-Verschlüsselungssystem besteht darin, dass das BGN-Verschlüsselungssystem nur Nachrichten aus einem kleinen Raum verschlüsseln kann (da bei der Entschlüsselung nur ein Gruppenelement gm wiedergewonnen wird und dann nach der Nachricht m gesucht werden muss). In dem beispielhaften Verfahren können Matrizen über Zp für beliebiges p verschlüsselt werden, sofern q hinreichend größer als p ist. Ein ähnlicher Vorteil besteht darin, dass durch Wahl eines großen Modulus p das beispielhafte Verfahren auf eine Chiffriertext-Expansion von O(1) gebracht werden kann (während das BGN-Verschlüsselungssystem O(logn) Bits Klartext zu O(n) Bits Chiffriertext expandiert).
  • Es wird angemerkt, dass der Modulus p, das den Nachrichtenraum in der beispielhaften Ausführungsform festlegt, durch den Verschlüsseler dynamisch gewählt werden kann: dasselbe Paar öffentlicher/privater Schlüssel kann zum Verschlüsseln/Entschlüsseln von Nachrichten modulo vieler verschiedener Felder (oder Ringe) verwendet werden. Das beispielhafte Verfahren unterstützt sowohl die Chiffriertext-Verblindung (d. h., ein gegebener Chiffriertext wird in einen Zufalls-CT umgewandelt, der dasselbe Objekt verschlüsselt) als auch die stärkere Eigenschaft der modularen Verblindung: Für einen gegebenen Chiffriertext, der eine Matrix B ∊ Z m×n / p verschlüsselt und einen Teiler p' von p kann ein Zufalls-CT erzeugt werden, der Bmodp' verschlüsselt. Wenn beispielsweise die Klartextmatrix ursprünglich n-Bit-Zahlen (z. B. in
    Figure 00100001
    ) aufweist, kann der Chiffriertext so verblindet werden, dass alle Bits außer dem niedrigstwertigen Bit der Einträge in B gelöscht werden.
  • Als eine Folge der (normalen) Verblindungseigenschaft und der Flexibilität beim Wählen des Nachrichtenraumes stellt das beispielhafte Verfahren eine sehr einfache Prozedur zur sicheren Formel/Privat-Datenverarbeitung dar. Es ist nämlich sehr einfach, 2DNF-Formeln (oder eine allgemeine Bilinearform) an Chiffriertexten zu berechnen, während gleichzeitig vor dem Besitzer des Geheimschlüssels alles über die Formel selbst verborgen bleibt (außer das Ergebnis ihrer Anwendung auf die gegebenen Eingaben).
  • Zuletzt übernimmt das beispielhafte Verfahren viel von der Flexibilität, die mit Verschlüsselungssystemen auf der Grundlage von LWE einhergeht. Insbesondere kann es identitätsbasiert mit der Konstruktion von Gentry u. a. [10] und abhörsicher mit einem jüngsten Ergebnis von Dodis u. a. [6] ausgestaltet werden. Diese beiden Anwendungen gehen von der Beobachtung aus, dass das „duale Regev-Verschlüsselungssystem” aus [10] als ein Spezialfall des beispielhaften Verschlüsselungssystems beschrieben werden kann.
  • Anwendungen
  • Natürlich kann das beispielhafte Verfahren auch als ein drop-in-Ersatz in den Anwendungen für Wahlen und PIR verwendet werden, die in der Veröffentlichung von Boneh u. a. [5] beschrieben wurden. Des Weiteren stellt das beispielhafte Verfahren, da es Matrizen nativ verschlüsselt, eine gute Wahl für Anwendungen dar, die von Stapelverarbeitung profitieren oder wenn effiziente lineare Algebra wichtig ist. Manche Beispiele der Stapelverarbeitung schließen Anwendungen ein, die Polynome (deren Koeffizienten in die Einträge der Klartext-Matrix verschlüsselt werden sollen) oder ganze Zahlen (deren Bitdarstellung in die Einträge der Klartextmatrix verschlüsselt werden sollen) multiplizieren (z. B. müssen). Im Abschnitt 5.3. wird beschrieben, wie diese in eine Matrix verschlüsselt werden können, sodass eine einzige Multiplikatin von m×m-Matrizen zum Multiplizieren zweier Polynome vom Grad (m – 1) (oder zwei ganzzahlige m-Bit-Zahlen) verwendet werden kann, sodass das Ergebnis nichts über die Eingaben außer ihrem Produkt aussagt.
  • 1.3 Übersicht über das beispielhafte Verfahren
  • Nachfolgend sind die wesentlichen Ideen hinter der Konstruktion des beispielhaften Verfahrens aufgezeigt. Das beispielhafte Verfahren beruht auf der Härte der Entscheidung des LWE-Entscheidungsproblems, wonach für einen Sicherheitsparameter n und polynomial großes m für eine gegebene gleichmäßig zufällige Matrix A ∊ Z m×n / q der Vektor As + x pseudozufällig ist (für gleichmäßiges s ∊ Z n / q und einen „kleinen Fehlervektor” x ∊ Z m / q ). Die Härte der LWE-Entscheidung stellt mittlerweile eine Standardannahme im Studium gitterbasierter Verschlüsselungssysteme dar, wobei dieses Problem von Regev [14] und Peikert [13] als gleichhart wie das Lösen einer Anzahl von Standard-Gitterproblemen im ungünstigsten Fall bewiesen wurde.
  • Den öffentlichen Schlüssel des beispielhaften Verfahrens stellt die Zufallsmatrix A ∊ Z m×n / q dar, und den Geheimschlüssel bildet eine „Falltürmatrix” T mit kleinen Einträgen, die T·A = 0(modq) erfüllt. Den Nachrichtenraum für das Verschlüsselungsverfahren stellt der Ring von m-mal-m-Matrizen aus ganzen Zahlen modulo p dar (mit den Operationen der Matrixaddition und -Multiplikation). Das Verfahren kann auf jedem beliebigen Ring Zp ausgeführt werden, sofern p hinreichend kleiner als der LWE-Modulus q ist. Weitere Details finden sich in Abschnitt 3.
  • Zum Verschlüsseln einer Matrix B ∊ Z m×m / p wählt der Verschlüsseler eine Zufallsmatrix S ∊ Z n×m / q und eine „kleine Fehlermatrix” X aus der LWE-Fehlerverteilung aus. Der Chiffriertext C ist dann C = A·S + p·X + B
  • Es sollte bedacht werden, dass der Chiffriertext von der Form (niedrigrangige Matrix) + (geringes Rauschen teilbar durch p) + (Nachricht) ist. Das Entschlüsseln des Chiffriertexts ist verbunden mit dem Multiplizieren des Chiffriertexts mit der Falltürmatrix T auf der linken Seite (was die niedrigrangige Matrix beseitigt), dann Multiplizieren mit T–1modp zum Beseitigen des Rauschens, B = T–1·(T·Cmodq)modp.
  • Dies funktioniert, weil T, X und B jeweils klein sind, sodass alle Einträge in T·(pX + B) kleiner als q sind, was bedeutet, dass (T·Cmodq) mit T·(pX + B) über den ganzen Zahlen übereinstimmt (nicht nur modulo q), und deshalb gleich ist mit T·Bmodp.
  • Es ist leicht zu erkennen, dass die Summe der Verschlüsselungen mehrerer Matrizen zur Summe dieser Matrizen verschlüsselt wird, solange alle Einträge (z. B. in T·ΣCi modq) klein bleiben. Um eine Verschlüsselung eines Produkts aus zwei Matrizen zu erhalten, setzte man
    Figure 00130001
  • Dies sieht ähnlich wie eine Verschlüsselung von B1B t / 2 aus (und die Fehlermatrix X ist tatsächlich klein) bis auf den zusätzlichen Querterm S'At. Um diesen Produkt-CT zu entschlüsseln, setze man zuerst M = T·C·Ttmodq, dann werden die beiden Terme AS und S'At eliminiert, und es wird B = T–1·M·(Tt)–1modp.
  • Nun ist klar, wieso dieses Verfahren (z. B. nur) eine einzige Multiplikation unterstützt: jenseits davon gibt es die Querterme der Form S·A·S', die nicht mehr mit der Falltür T eliminiert werden können.
  • 2 Vorüberlegungen
  • Bezeichnung.
  • Skalare werden durch Kleinbuchstaben (a, b, ...), Vektoren durch fettgedruckte Kleinbuchstaben (a, b, ...), und Matrizen durch fettgedruckte Großbuchstaben (A, B, ...) bezeichnet. Die euklidische Norm eines Vektors v wird mit ||v|| und der größte Eintrag in einem Vektor oder einer Matrix jeweils als ||v||a oder ||M|| bezeichnet. Die Operation (amodq) ist als Abbildung der ganzen Zahl a auf das Intervall (–q/2, +q/2] anzusehen.
  • 2.1 Lernen mit Fehlern (LWE)
  • Das LWE-Problem wurde von Regev [14] als eine Verallgemeinerung des „Lernens von Parität mit Rauschen” eingeführt. Für positive ganze Zahlen n und q ≥ 2, einen Vektor s ∊ Z n / q und eine Wahrscheinlichkeitsverteilung χ auf Zq sei As,χ die Verteilung, die durch gleichmäßig zufälliges Auswählen eines Vektors a ∊ Z n / q und eines Rauschterms x ← χ erhalten wird, und es wird (a, 〈a, s〉 + x) ∊ Z n / q × Zq ausgegeben.
  • Definition 1 (LWE) Für eine ganze Zahl q = q(n) und eine Fehlerverteilung χ = χ(n) über Zq wird das Problem des Lernens mit Fehlern LWEn,m,q,χ folgendermaßen definiert: Gib für m unabhängige gegebene Stichproben von As,χ (für einige s ∊ Z n / q ) s mit nennenswerter Wahrscheinlichkeit aus.
  • Die Entscheidungsvariante des LWE-Problems, bezeichnet als distLWEn,m,q,χ, besteht im Unterscheiden (mit nicht vemachlässigbarem Vorteil) von m Stichproben, gewählt gemäß As,χ (für gleichmäßig zufälliges s ∊ Z n / q ) und m Stichproben, gewählt gemäß der gleichmäßigen Verteilung über Z n / q × Zq.
  • Für kryptographische Anwendungen ist hauptsächlich das Entscheidungsproblem distLWE von Interesse. Regev [14] zeigte, dass distLWE für einen Primzahlmodulus q auf den ungünstigsten Fall des LWE mit einem Verlust von bis zu einem Faktor q·poly(n) in dem Parameter m zurückgeführt werden kann.
  • Manchmal kann es vorteilhaft sein, das LWE-Problem LWEn,m,q,χ in einer kompakten Matrixschreibweise anzugeben: zu gegeben (A, As + x), wobei A ← Z m×n / q gleichmäßig zufällig ist, s ← Z n / q das LWE-Geheimnis darstellt und x ← χm, finde s. Eine ähnliche Matrixschreibweise wird auch für die Entscheidungsversion distLWE verwendet.
  • Gauss'sche Fehlerverteilungen Ψ β.
  • Von Hauptinteresse sind die LWE- und distLWE-Probleme, in denen die Fehlerverteilung χ über Zq von einer Gaussverteilung abgeleitet wird. Für beliebige β > 0 ist die Dichtefunktion einer Gaussverteilung über den reellen Zahlen gegeben durch Dβ(x) = 1/β·exp(–π(x/β)2). Definiere für eine ganze Zahl q ≥ 2 Ψ β(q) als die Verteilung auf Zq, die durch Ziehen y ← Dβ erhalten wird, und gib ⌊q·y⌉(modq) aus. Schreibe LWEn,m,q,β als eine Abkürzung für
    Figure 00150001
  • Hier werden einige grundlegende Tatsachen über Gaussverteilungen (angepasst an die Fehlerverteilung Ψ β ) vorgestellt; siehe z. B. [7] (im Folgenden gilt als überwältigende Wahrscheinlichkeit die Wahrscheinlichkeit 1–δ für ein δ, das in n vernachlässigbar ist).
    • Fakt 1 Es sei β > 0, q ∊ Z und der Vektor x gewählt als x ← Ψ β(q)n. Zudem sei y ∊ Zn ein beliebiger Vektor und g = ω(√logn) . Dann gilt mit überwältigender Wahrscheinlichkeit |〈x, y〉| ≤ βq·g·PyP.
    • Fakt 2 Es sei y ∊ R beliebig. Der statistische Abstand zwischen den Verteilungen Ψ β und Ψ β + y beträgt höchstens |y|/(βq).
  • Nachweise für die Härte von LWEn,m,q,β folgen aus den Ergebnissen von Regev [14], der eine Quanten-Rückführung von der Näherung bestimmter Probleme auf n-dimensionalen Gittern im ungünstigsten Fall innerhalb O ~(n/β) Faktoren zum Lösen von LWEn,m,q,β für jedes gewünschte m = poly(n) gab, wenn β·q ≥ 2√n . Jüngst gab Peikert [13] auch eine ähnliche klassische Rückführung für einige andere Probleme mit ähnlichen Parametern an.
  • Wie hier verwendet stammt das relative Attribut „klein” von Ψ β. Allgemein ist ein „kleiner” Wert oder eine „kleine” ganze Zahl von der Größe bis zu q·β. Ähnlich ist ein „großer” Wert oder eine „große” ganze Zahl viel größer als q·β.
  • 2.2 Falltür-Abtastung
  • Die Grundlage dieses beispielhaften Verschlüsselungsverfahrens stellt ein Falltür-Abtastalgorithmus dar, der zuerst von Ajtai [3] konstruiert und später von Alwen und Peikert [4] verbessert wurde. Das Falltür-Abtastverfahren erzeugt eine (fast) gleichmäßige Zufallsmatrix A ∊ Z m×n / q zusammen mit T ∊ Zm×m , sodass: (a) T·A = 0(modq), (b) T invertierbar ist, und (c) die Einträge von T klein sind (z. B. von der Größe O(nlogq)).
  • Die Falltür T kann zum Lösen des LWE-Problems bzgl. A verwendet werden, d. h., für gegebenes y = As + x mit x als irgendein „hinreichend kurzer” Vektor kann sie zum Wiedergewinnen von s verwendet werden. Dies wird folgendermaßen ausgeführt: Berechne Ty = T(As + x) = TAs + Tx = Tx(modq) wobei die letzte Gleichung aus den Zeilen von T folgt, die zum dem Gitter Λ(A) gehören. Da sowohl T als auch x jetzt kleine Einträge enthalten, ist jeder Eintrag des Vektors Tx kleiner als q und somit Txmodq gleich Tx selbst. Multiplizieren mit T–1 (das klar definiert ist, da T eine Basis ist und daher vollen Rang hat) ergibt schließlich x. Das LWE-Geheimnis s kann dann durch Gauss-Elimination wiedergewonnen werden. Das Ergebnis von Alwen und Peikert [4] ist unten angegeben.
  • Lemma 1 ([3, 4]) Es gibt einen effizienten Algorithmus TrapSample, der auf die Eingabe 1n, eine positive ganze Zahl q ≥ 2 und eine poly(n)-beschränkte positive ganze Zahl m ≥ 8n logq die Matrizen A ∊ Z m×n / q und T ∊ Zm×m ausgibt, sodass gilt:
    • • A ist statistisch nahezu gleichmäßig über Z m×n / q ,
    • • die Zeilen von T bilden eine Basis des Gitters A(A) = def {w ∊ Zm: w·A = 0(modq)},
    • • die euklidische Norm aller Zeilen von T (und deshalb auch |T|) ist beschränkt durch O(n log q). (Alwen und Peikert [4] zeigen, dass die in dem O(·) verborgene Konstant nicht größer als 20 ist.)
  • Es wird angemerkt, dass, da die Zeilen von T das Gitter Λ(A) aufspannen, det(T) = qn folgt, weshalb für ein beliebiges p, teilerfremd mit q, T modulo-p-invertierbar ist.
  • 3 Das beispielhafte Verschlüsselungsverfahren
  • Es soll n den Sicherheitsparameter bezeichnen. Andere Parameter des Systems sind die drei Zahlen m, p, q = poly(n) (mit einer ungeraden teilerfremden Zahl q > p) und ein Gauss'scher Fehlerparameter β = 1/poly(n). Siehe den Abschnitt 3.2 für konkrete, beispielhafte Instanziierungen dieser Parameter. Für diese Parameter wird der Nachrichtenraum durch die Menge der m-mal-m Matrizen aufgespannt, d. h. B ∊ Z m×m / p. Bei öffentlichen Schlüssel n handelt es sich um Matrizen A ∊ Z m×n / q, bei Geheimschlüsseln um Matrizen T ∊ Z m×m / q, und bei Chiffriertexten um Matrizen C ∊ Z m×m / q.
  • Das beispielhafte Verschlüsselungsverfahren beinhaltet (z. B. mindestens) die drei folgenden Algorithmen:
    KeyGen(1n): Führe den Falltür-Abtastalgorithmus TrapSample aus Lemma 1 aus, um die Matrix A ∊ Z m×n / q zusammen mit der Falltürmatrix T ∊ Zm×m zu erhalten (A, T) ← TrapSample(n, q, m). Bei dem öffentlichen Schlüssel handelt es sich um A und bei dem Geheimschlüssel um T.
    Enc(A, B ∊ Z m×m / p ): Wähle eine Zufallsmatrix S ← $ Z n×m / q (z. B. eine gleichmäßig zufällige Matrix) und eine „Fehlermatrix” X ← $Ψ β(q)m×m. Gib den Chiffriertext C ← AS + pX + B(modq) aus. (Hier bedeutet pX Multiplizieren jedes Eintrags der Matrix X mit p.)
    Dec(T, C): Setze E ← TCTtmodq, und gib B ← T–1E(Tt)–1modp aus.
  • Um zu erkennen, dass diese Entschlüsselung funktioniert, beachte man T·A = 0(modq) und deshalb TCTt = T(pX + B)Tt(modq). Wenn zusätzlich alle Einträge von T(pX + B)Tt kleiner als q sind, dann folgt auch die Gleichheit über den ganzen Zahlen E = (TCTtmodq) = T(pX + B)Tt und daher T–1E(Tt)–1 = B(modp). Das bedeutet, dass die Entschlüsselung korrekt ausgeführt wird, solange der Parameter β klein genug gewählt wird, so dass mit hoher Wahrscheinlichkeit alle Einträge von T(pX + B)Tt kleiner als q/2 sind.
  • Anmerkung 1 Es wird angemerkt, dass die Rechtsmultiplikation mit Tt und (Tt)–1 bei der Entschlüsselung hier redundant ist – man kann stattdessen nur B ← T–1(TCmodq)modp berechnen. Die Rechtsmultiplikation wird zum Entschlüsseln von Produkt-CTs benötigt, was hier im Folgenden beschrieben ist. Im Unterschied zu dem BGN-Verschlüsselungssystem bestehen in dem beispielhaften Verfahren „normale Chiffriertexte” und die „Product-CTe” in dem gleichen Raum, und man kann dasselbe Entschlüsselungsverfahren zum Entschlüsseln Beider verwenden.
  • Man kann auch die Notwendigkeit zum Multiplizieren mit T–1 und (Tt)–1 durch Optimieren beseitigen, indem die veränderte Falltür T' = (T–1modp)·T verwendet wird (Produkt der ganzen Zahlen). Offensichtlich erhält man T'A = 0(modq), und die Einträge von T' sind nicht viel größer als diejenigen von T (da alle Einträge in (T–1modp) höchstens vom Betrag p/2 sind).
  • 3.1 Homomorphe Operationen
  • Addition.
  • Sind zwei Chiffriertexte C1, C2 gegeben, die entschlüsselt jeweils B1, B2 ergeben, so ist leicht einzusehen, dass die Matrix C = C1 + C2modq zu B1 + B2modp entschlüsselt würde, solange kein „Überlauf” in irgendeinem Eintrag besteht. Speziell wird mit C1 = AS1 + pX1 + B1 und C1 = AS2 + pX2 + B2 dann C = C1 + C2 = A(S1 + S2) + p(X1 + X2) + (B1 + B2), was als B1 + B2 entschlüsselt werden würde, solange alle Einträge in T(p(X1 + X2) + B1 + B2)Tt kleiner als q/2 sind. Siehe Abschnitt 3.2 für Beispiele von exakten Parametern.
  • Multiplikation.
  • Sind zwei Chiffriertexte C1, C2 gegeben, die jeweils B1, B2 verschlüsseln, dann berechne den Produkt-CT als C = C1·C t / 2modq. Wenn C1 = AS1 + pX1 + B1 und C2 = AS2 + pX2 + B2 ist, dann wird
    Figure 00190001
  • Daher ist der Produkt-CT von der Form AS + pX + B + S'At.
  • Wie vorher sieht man, dass gilt TCTt = T(pX + B)Tt(modq) gilt, und wenn alle Einträge von T(pX + B)Tt kleiner als q/2 sind, wird E = (TCTtmodq) = T(pX + B)Tt über den ganzen Zahlen und deshalb T–1E(Tt)–1 = B(modp). Unten werden beispielhafte Parameter besprochen, bei denen dies funktioniert.
  • 3.2 Festlegen der Parameter
  • Theorem 2 Halte den Sicherheitsparameter n, den Parameter p und ein beliebiges c = c(n) > 0 fest. Es seien q, m, β gewählt als
    Figure 00200001
  • Dann unterstützt das obige beispielhafte Verschlüsselungsverfahren mit p, n, m, q, β als Parameter nc Additionen und eine Multiplikation (in beliebiger Reihenfolge) über dem Matrixring Z m×m / p.
  • Anmerkung 3 Beachte, dass man in Theorem 2nc Additionen für ein nicht konstantes c zulassen kann. Der Grund dafür, dass dies nötig werden kann, ist das Verwenden von Linearkombinationen aus Chiffriertexten mit großen Koeffizienten. Wenn speziell die Chiffriertext-Matrizen C1, C2, ..., vorliegen, kann man ΣaiCi homomorph berechnen, solange |Σai| < nc.
  • 4 Erweiterungen und Anwendungen
  • 4.1 Dynamische Wahl des zu Grunde liegenden Rings
  • Es ist zu beachten, dass, sobald die Parameter festgelegt sind, die Wahl des zu Grunde liegenden Rings für den Klartext adaptiv durch den Verschlüsseler erfolgen kann. Genau mit demselben öffentlichen Schlüssel A und dem Geheimschlüssel T kann der Verschlüsseler den zu Grunde liegenden Ring als Zr für jedes r ≤ p wählen (damit Berechnen des Chiffriertexts als C = AS + rX + B), und der Entschlüsseler kann entsprechend entschlüsseln.
  • 4.2 Formel-Privatsphäre
  • Wie bisher beschrieben stellt das Verfahren keine „Formel-Privatsphäre” gegenüber dem Besitzer des Geheimschlüssels sicher. Beispielsweise kann der Entschlüssler für eine gegebene Chiffriertext-Matrix C in der Lage sein, den Fall, in dem der Chiffriertext durch Multiplizieren einer Verschlüsselung der Einheitsmatrix mit einer Verschlüsselung der Nullmatrix erhalten wurde, von dem Fall zu unterscheiden, in dem er durch Multiplizieren von zwei Verschlüsselungen der Nullmatrix erhalten wurde.
  • Dieser Mangel kann durch Standardtechniken behoben werden. Zuerst wird die Größe des Modulus etwas erhöht: Wechseln von q wie in Theorem 2 angegeben zu q' ≥ q·2ω(logn). Für eine gegebene Chiffriertext-Matrix C*, die eine Klartextmatrix modulo p verschlüsselt, verblinde sie durch Festlegen C ← C* + AS1 + pX* + S t / 2At, wobei S, S' in Z n×m / q' gleichmäßig sind und jeder Eintrag von X* aus Ψ β'(q) mit β' super-polynomial größer als der Parameter β gewählt wird, der in dem Verfahren verwendet wird.
  • Mit Fakt 2 kann dann gezeigt werden, dass das Rauschen in dem angefügten X* alle Spuren des Ursprungs dieses Chiffriertexts „ertränkt”. Speziell ist der resultierende Chiffriertext von der Form C = AS'1 + pX' + B + (S'2)tAt, wobei S'1, S'2 zufällig sind (z. B. gleichmäßig zufällig), B der entsprechende Klartext und die Verteilung von X' nahezu unabhängig von der Herkunft des Chiffriertexts ist.
  • Beachte, dass dieselbe Verblindungstechnik selbst dann verwendet werden kann, wenn die verschlüsselte Klartextmatrix aus einem größeren Ring Zp' gewählt wird, solange der Parameter p, der in der Verblindungsprozedur gewählt wird, das ursprüngliche p' teilt.
  • 4.3 Verschlüsseln von Polynomen und großen ganzen Zahlen
  • Zum Verschlüsseln von Polynomen oder großen ganzen Zahlen sind diese als Matrizen so zu verschlüsseln, dass man sich die Matrixoperationen zu Nutze machen könnte, die von dem beispielhaften Verfahren nativ zum Ausführen von Operationen an diesen Polynomen oder Zahlen unterstützt werden.
  • Es soll mit Polynomen begonnen werden: Es ist bekannt, wie die Koeffizienten von zwei Polynomen in zwei Matrizen eingebettet werden, sodass das Multiplizieren dieser Matrizen alle Koeffizienten des resultierenden Produktpolynoms ergeben. Beispielsweise kann man für zwei Polynome a ^(x) = Σaixi und b ^(x) = Σbixi ausnutzen
    Figure 00220001
  • Beachte, dass die Produktmatrix oben insofern nicht privat ist, als sie mehr als nur die Koeffizienten der Produktpolynoms offenlegt. Dies kann leicht behoben werden, indem eine Verschlüsselung einer Matrix mit einer ersten Nullspalte und Nullzeile und Zufallseinträge überall sonst addiert wird. Auch diese einfache Einbettung ist insofern „verschwenderisch”, als sie zu einem Chiffriertext-Expansionsverhältnis von O(m) führt (verschlüssele Polynome vom Grad (m – 1) mit m×m-Matrizen). Wirtschaftlichere Einbettungen können möglich sein.
  • Bezugnehmend auf die Multiplikation ganzer Zahlen besteht eine offensichtliche Vorgehensweise zum Multiplizieren von zwei ganzzahligen m-Bit-Zahlen im bloßen Festlegen des Klartextraums als Zp für gewisse p ≥ 22m, aber das Arbeiten mit einem so großen Klartextraum kann unangenehm sein. Deshalb kann es wünschenswert sein, ein Verfahren zum Umsetzten der Multiplikation großer ganzer Zahlen mit einem kleinen Eingaberaum zu suchen. Eine Möglichkeit stellt das Verwenden derselben Techniken wie für Polynome dar, wobei die ganze Zahl mit der Binärdarstellung a = Σai2i als ein binäres Polynom a ^(x) bei x = 2 ausgewertet wird.
  • Verschlüssele für zwei gegebene ganze Zahlen a, b die binären Koeffizienten der entsprechenden Polynome a ^, b ^ über dem Klartextraum Zp für gewisse p ≥ m. Lies die Koeffizienten des Produktpolynoms ab, und berechne dann a·b = (a ^·b ^)(2) über den ganzen Zahlen.
  • Diese Lösung ist jedoch nicht privat, da sie Daten über a, b außer ihrem bloßen Produkt ganzer Zahlen verrät. Ein Konzept zur Privatisierung besteht darin, Zufallselemente ri ∊ Zp zu der ersten Zeile und Spalte der Produktmatrix so zu addieren, dass Σi2iri = 0(modp). Dies wird es dem Besitzer des Geheimschlüssels erlauben, a·b(modp) wiederzugewinnen. Nach mehrmaligem Wiederholen mit unterschiedlichen p's kann dann der chinesische Restsatz zum vollständigen Wiedergewinnen von a·b verwendet werden.
  • 4.4 Zwei-von-Zwei-Verschlüsselung
  • Es ist zu beachten, dass in dem beispielhaften Verschlüsselungsverfahren, wenn die Verschlüsselung von zwei Matrizen unter zwei verschiedenen öffentlichen Schlüssel n ausgeführt wird, diese zwei Chiffriertexte multipliziert werden können, womit ein „CT” entsprechend dem Produkt der beiden Klartexte erhalten wird. Dieser „CT” kann dann durch Zusammenführen der beiden Geheimschlüssel entschlüsselt werden.
  • Genauer sei vorausgesetzt, dass zwei öffentliche Schlüssel A1, A2 und die zugehörigen Geheimschlüssel T1, T2 vorliegen, wobei beide Paare modulo derselben Primzahl q festgelegt sind. (Zur Vereinfachung wird auch vorausgesetzt, dass beide Paare dieselben Parameter n und m verwenden, obwohl diese Annahme unnötig sein kann.) Sind die zwei Chiffriertexte C1 = A1S1 + pX1 + B1 and C2 = A2S2 + pX2 + B2 gegeben, kann der „Produkt-CT” C = C1C t / 2(modq) berechnet werden, der zu dem Klartext B1B t / 2 (modp) gehört. Dieser Klartext kann, wenn sowohl T1 als auch T2 bekannt sind, wiedergewonnen werden durch Bestimmen von B ← T1 –1·(T1CT t / 2modq)·(T t / 2)–1 modp
  • 4.5 Identitätsbasierte und abhörsichere Verschlüsselung vom Typ BGN
  • Als Nächstes wird gezeigt, wie der Homomorphismus mit einer Multiplikation über die rein normale Public-Key-Verschlüsselung hinaus erweitert werden kann, um mehr „fortschrittliche Eigenschaften” wie z. B. identitätsbasierte Verschlüsselung (IBE) und Abhörsicherheit als nichteinschränkende Beispiele zu erhalten. Dies folgt aus den einfachen Beobachtungen, dass das „duale Regev-Verschlüsselungssystem” aus [10] (mit einer anderen Eingabeverschlüsselung) als ein Spezialfall des beispielhaften Verschlüsselungsverfahrens (für eine besondere Form von Matrizen) angesehen werden kann und es daher dieselben homomorphen Operationen erlaubt. IBE (in de Zufalls-Voraussagemodell) ergibt sich unmittelbar, nachdem Gentry u. a. in [10] gezeigt haben, wie duale Regev-Schlüssel aus einem Masterschlüssel abgeleitet werden, und die Abhörsicherheit folgt, nachdem Dodis u. a. in [6] gezeigt haben, dass das duale Regev-Verschlüsselungssystem abhörsicher ist.
  • Man erinnere sich an das „duale Regev-Verschlüsselungssystem” aus [10]: Bei dem öffentlichen Schlüssel handelt es sich um eine Matrix A ∊ Z m×n / q und bei dem Geheimschlüssel um einen kurzen Vektor im Dualraum, nämlich ein kurzes u → ∊ Z m / q, sodass u →A = 0(modq). Darüber hinaus ist der letzte Eintrag in u → immer –1.
  • In dem Verschlüsselungssystem wie in [10] beschrieben wird ein Bit b verschlüsselt durch Wählen eines gleichmäßigen Vektors s → ∊ Z n / q und eines kleinen Fehlervektors x → ∊ Z m / q und durch Verschlüsseln des Bit b in dem „höchstwertigen Bit” eines Eintrags des Chiffriertext-Vektors, nämlich c → ← As → + x → + 〈0...01〉t·⌈q/2⌉modq. Um einen Homomorphismus zu erhalten, muss die Eingabe in dem niedrigstwertigen Bit verschlüsselt werden durch c → ← As → + 2x → + 〈0...0b〉tmodq. Mit dieser Eingabeverschlüsselung kann man das duale Regev-Verschlüsselungssystem als einen Spezialfall des beispielhaften Verschlüsselungssystems ansehen, wobei der öffentliche Schlüssel dieselbe Matrix A darstellt und der Geheimschlüssel keine vollrangige Matrix, sondern eine Matrix vom Rang 1 darstellt. Die Matrizen T, S, X, B werden definiert als
    Figure 00250001
    (D. h., alles außer der obersten Zeile von T ist null, aber alles außer den rechtsäußeren Spalten von S, X ist null und alles außer dem Element rechts unten von B ist null.)
  • Es ist einfach zu zeigen, dass die semantische Sicherheit aus dem LWE folgt. Da es sich bei dem Schlüssel nur um den dualen Regev-Schlüssel handelt, zeigt derselbe Beweis wie in [6], dass er selbst dann sicher bleibt, wenn ein Teil des Geheimschlüssels nach außen bekannt ist. Es wurde in [10] auch gezeigt, wie dieser Geheimschlüssel aus einem Haupt-Geheimschlüssel in einer identitätsbasierten Umgebung berechnet werden kann (in dem Zufalls-Voraussagemodell).
  • Bei dieser Auswahl ist der Großteil der „CT-Matrix” null, sodass als Chiffriertext tatsächlich nur der eine Vektor c → ← As → + 2x → + 〈0...0b〉tmodq ausgegeben werden muss, der implizit die Matrix C = (0c →) verschlüsselt. Die homomorphen Operationen werden dann auf die impliziten Matrizen angewendet, wobei es sich bei der Addition nur um elementweise Addition modulo q und bei der Multiplikation von zwei Vektoren nur um eine äußere Produktoperation handelt.
  • Zum Entschlüsseln einer Chiffriertext-Matrix wird diese von links und rechts mit dem Geheimschlüssel-Vektor c → multipliziert, das Ergebnis zuerst modulo q und dann modulo 2 reduziert. Wegen der besonderen Form der Klartextmatrix B stimmt dies überein mit dem Multiplizieren mit T von links und mit Tt von rechts und nur Auswählen des rechten unteren Elements als Ergebnis.
  • Obwohl die Matrix nicht länger invertierbar ist, kann das verborgene Bit b immer noch wiedergewonnen werden. Dies geschieht einfach durch Setzen von b ← u →Cu →tmodqmod2, ohne dass mit der Inversen multipliziert werden muss, da gilt
    Figure 00260001
  • Wie man sich erinnert, gilt in dem dualen Regev-Verschlüsselungssystem um = –1, sodass diese Prozedur tatsächlich die richtige Antwort liefert.
  • 4.6 Einfache Entschlüsselung
  • Wie oben beschrieben wird der Chiffriertext gemäß Folgendem entschlüsselt: B = T–1·(TCTtmodq)·(Tt)–1modp
  • Eine Erweiterung davon stellt stattdessen das Verwenden einer „einfachen” Entschlüsselungsformel dar: B = T–1·(TCmodq)modp.
  • Die einfache Entschlüsselung sollte genau genug (z. B. gut genug) zur Entschlüsselung sein, solange der Chiffriertext keiner Multiplikation ausgesetzt war.
  • 5 Weitere beispielhafte Ausführungsformen
  • 1A zeigt eine beispielhafte Verschlüsselungsoperation/-funktion gemäß den beispielhaften Ausführungsformen der Erfindung. 1B zeigt eine beispielhafte Enrschlüsselungsoperation/-funktion gemäß den beispielhaften Ausführungsformen der Erfindung. 1C zeigt eine beispielhafte Schlüsselerzeugungs-(KeyGen-)Operation/funktion gemäß den beispielhaften Ausführungsformen der Erfindung. 1D zeigt eine beispielhafte Additionsoperation/-funktion (z. B. für i Chiffriertexte, für nc Chiffriertexte) gemäß den beispielhaften Ausführungsformen der Erfindung. 1E zeigt eine beispielhafte Chiffriertext-Multiplikationsoperation/-funktion (z. B. für zwei Chiffriertexte C1 und C2) gemäß den beispielhaften Ausführungsformen der Erfindung. 1F zeigt eine beispielhafte Operation/Funktion „einfaches Entschlüsseln” gemäß den beispielhaften Ausführungsformen der Erfindung.
  • 2 veranschaulicht ein Funktionsschaubild eines Systems 200, in dem gewisse beispielhafte Ausführungsformen umgesetzt sein können. In gewissen beispielhaften Ausführungsformen können die in 1 abgebildeten Blöcke kollektiv oder individuell gemäß dem System 200 umgesetzt werden. Das System 200 kann mindestens eine Schaltungseinheit 202 beinhalten, die in gewissen Ausführungsformen mindestens einen Prozessor 204 einschließen kann. Das System 200 kann auch mindestens einen Speicher 206 (z. B. eine nichtflüchtige Speichereinheit) und/oder mindestens eine Speichereinheit 208 beinhalten. Zu der Speichereinheit 208 können eine nichtflüchtige Speichereinheit (z. B. EEPROM, ROM, PROM, RAM, DRAM, SRAM, Flash, Firmware, programmierbare Logik usw.), ein magnetisches Disclaufwerk, ein optisches Disclaufwerk und/oder ein Bandlaufwerk als nichteinschränkende Beispiele gehören. Die Speichereinheit 208 kann eine interne Speichereinheit, eine angeschlossene Speichereinheit und/oder eine netzwerkzugängliche Speichereinheit als nichteinschränkende Beispiele umfassen. Das System 200 kann mindestens eine Programmlogik 210 beinhalten, die Code 212 einschließt (z. B. Programmcode), der in den Speicher 206 geladen und von dem Prozessor 204 und/oder der Schaltungseinheit 202 ausgeführt werden kann. In gewissen beispielhaften Ausführungsformen kann die Programmlogik 210 einschließlich dem Code 212 in der Speichereinheit 208 gespeichert werden. In bestimmten anderen Ausführungsformen kann die Programmlogik 210 in der Schaltungseinheit 202 umgesetzt werden. Deshalb kann, obwohl 2 die Programmlogik 210 getrennt von den anderen Elementen zeigt, die Programmlogik 210 in dem Speicher 206 und/oder der Schaltungseinheit 202 umgesetzt werden.
  • Das System 200 kann mindestens eine Datenübertragungskomponente 214 enthalten, die den Austausch von Daten mit mindestens einem anderen System, einer Einheit und/oder Vorrichtung ermöglicht. Die Datenübertragungskomponente 214 kann einen Sendeempfänger, der zum Senden und Empfangen von Daten ausgestaltet ist, einen Sender, der zum Senden von Daten geeignet ist, und/oder einen Empfänger beinhalten, der zum Empfangen von Daten ausgestaltet ist. Als ein nichteinschränkendes Beispiel können zu der Datenübertragungskomponente 214 ein Modem oder eine Netzwerkkarte gehören. Das System 200 aus 2 kann in einem Computer oder einem Computersystem, wie z. B. ein Desktopcomputer, einem tragbaren Computer oder einem Server als nichteinschränkende Beispiele, umgesetzt werden. Die in 2 abgebildeten Komponenten des Systems 200 können über einen oder mehrere interne Bussen, Verbindungen, Leitungen und/oder (gedruckte) Leiterplatten als nichteinschränkende Beispiele miteinander verbunden oder angeschlossen sein.
  • Es sollte beachtet werden, dass gemäß den beispielhaften Ausführungsformen der Erfindung eine oder mehrere der Schaltungseinheiten 202, Prozessor(en) 204, Speicher 206, Speichereinheiten 208, Programmlogik 210 und/oder Datenübertragungskomponente 214 eines oder mehrere hier beschriebene Objekte (z. B. Matrizen, Variablen, Gleichungen, Formeln, Operationen, Operationslogik, Logik) speichern können. Als ein nichteinschränkendes Beispiel können eine oder mehrere der oben genannten Komponenten die Daten B (z. B. zum Verschlüsseln, als Ergebnis der Entschlüsselung) und/oder den Chiffriertext C empfangen und/oder speichern (z. B. zum Entschlüsseln, als Ergebnis der Verschlüsselung). Als ein weiteres nichteinschränkendes Beispiel können eine oder mehrere der obengenannten Komponenten die Verschlüsselungsfunktion und/oder die Entschlüsselungsfunktion empfangen und/oder speichern, wie es hier beschrieben ist.
  • Es folgen weitere Beschreibungen verschiedener nichteinschränkender beispielhafter Ausführungsformen der Erfindung. Die unten beschriebenen beispielhaften Ausführungsformen werden aus Gründen der Eindeutigkeit getrennt nummeriert. Diese Nummerierung sollte nicht so ausgelegt werden, dass sie die verschiedenen Ausführungsformen vollständig trennt, da Gesichtspunkte der einen oder mehreren beispielhaften Ausführungsformen in Verbindung mit einem oder mehreren anderen Gesichtspunkten oder beispielhaften Ausführungsformen ausgenutzt werden können.
    • (1) In einer beispielhaften Ausführungsform wie in 3 abgebildet ein computerlesbares Speichermedium, das physisch ein Programm mit Befehlen umsetzt, die von einer Maschine zum Durchführen von Operationen ausgeführt werden können, wobei die Operationen Folgendes umfassen: Empfangen von Daten B, die als ein Chiffriertext C gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion (301) umfasst; und Verschlüsseln der Daten B gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten des Chiffriertexts C (302), wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A verwendet, der zu mindestens einem privaten Schlüssel T gehört, wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Verschlüsselungsfunktion als Eingaben den mindestens einen öffentlichen Schlüssel A und die Daten B empfängt und den Chiffriertext C als C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix, X eine Fehlermatrix, p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Ein computerlesbares Speichermedium wie oben erwähnt, wobei B ∊ Z m×m / p, C ∊ Z m×m / q, A ∊ Z m×n / q, S ← $ Z n×m / q und X ← $Ψ β(q)m×m, wobei n einen Sicherheitsparameter und m, q = poly(n) bezeichnen, Ψ β eine Fehlerverteilung und β ein Gauss'scher Fehlerparameter gegeben durch β = 1/poly(n) darstellen. Ein computerlesbares Speichermedium wie oben erwähnt, wobei das Verschlüsselungsverfahren homomorph ist und das Berechnen von Bilinearformen unterstützt (z. B. polynomial viele Additionen und eine Multiplikation). Ein computerlesbares Speichermedium wie oben erwähnt, wobei p = 2 und die Daten B eine Matrix aus Binärwerten umfassen. Ein computerlesbares Speichermedium wie oben erwähnt, wobei c = c(n) > 0, q > 220p2(c + 4)3n3c+4log5n, m = ⌊8nlogq⌋ und
    Figure 00290001
    Ein computerlesbares Speichermedium wie oben erwähnt, wobei das Verschlüsselungsverfahren nc Additionen und eine Multiplikation in beliebiger Reihenfolge über einem Matrixring Z m×m / p erlaubt.
  • Ein computerlesbares Speichermedium wie oben erwähnt, wobei die Operationen ferner Folgendes umfassen: Ausgeben des Chiffriertexts C. Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, wobei p eine Dimension eines Raumes darstellt, der die Daten enthält. Ein computerlesbares Speichermedium wie oben, wobei p eine Dimension eines Raumes Z m×m / p und ∊ Z m×m / p darstellt. Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, wobei das Verschlüsselungsverfahren ferner die formelprivate sichere Berechnung erlaubt, sodass ein Besitzer des privaten Schlüssels zum Entschlüsseln der Chiffriertexte ohne Erhalten weiterer Kenntnis einer Formel der Entschlüsselungsfunktion in der Lage ist. Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, wobei q > p. Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, wobei das Verschlüsselungsverfahren ein homomorphes Verschlüsselungsverfahren für Schaltungseinheiten von logarithmischer Multiplikationstiefe mit einer beliebigen Anzahl von Additionen umfasst und wobei die Sicherheit des homomorphen Verschlüsselungsverfahrens auf der Härte eines Lernen-mit-Fehlern-Problems beruht. Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, wobei (die Einträge von) T, X und B klein sind, sodass die Einträge in T·(2X + B) kleiner als q sind. Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, wobei eine Größe des Chiffriertexts ungefähr (z. B. im Wesentlichen) drei Mal eine Größe des Klartexts B beträgt.
  • Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, wobei das Verschlüsselungsverfahren ferner eine Schlüsselerzeugungsfunktion umfasst und die Schlüsselerzeugungsfunktion als Eingaben 1n, q und m empfängt und den wenigstens einen öffentlichen Schlüssel A und den mindestens einen privaten Schlüssel T ausgibt. Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, wobei die Schlüsselerzeugungsfunktion durch Ausführen eines Falltür-Abtastalgorithmus funktioniert, der bei Eingabe von 1n, einer positiven ganzen Zahl q ≥ 2 und einer poly(n)-beschränkten positiven ganzen Zahl m ≥ 8n log q die Matrizen A ∊ Z m×n / q und T ∊ Z m×m / q ausgibt. Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, wobei A statistisch nahezu gleichmäßig über Z m×n / q ist, die Zeilen von T eine Basis eines Gitters Λ (A) def / = {w ∊ Z: w·A = 0(modq)} bilden und eine euklidische Norm der Zeilen von T durch 0 (nlogq) beschränkt ist. Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, wobei T·A = 0(modq) gilt, T invertierbar ist und die Einträge von T klein sind.
  • Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, wobei das Verschlüsselungsverfahren eine Entschlüsselungsfunktion umfasst, wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCTt modq)·(Tt)–1modp ausgibt. Ein computerlesbares Medium wie ein Beliebiges oben, wobei ∊ Z m×m / q.
  • Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, das ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst.
    • (2) In einer anderen beispielhaften Ausführungsform der Erfindung eine Vorrichtung, die das Folgende umfasst: wenigstens ein Speichermedium, das zum Speichern der Daten B geeignet ist, die als ein Chiffriertext C gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion umfasst; und mindestens ein Prozessor, der zum Verschlüsseln der Daten B gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens geeignet ist, um den Chiffriertext C zu erhalten, wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A verwendet, der zu mindestens einem privaten Schlüssel T gehört, wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt und wobei die Verschlüsselungsfunktion als Eingaben den mindestens einen öffentlichen Schlüssel A und die Daten B empfängt und den Chiffriertext C als C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix, X eine Fehlermatrix, p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Eine Vorrichtung wie irgendeine der oben erwähnten, die ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst.
    • (3) In einer weiteren Ausführungsform der Erfindung wie in 3 abgebildet ein Verfahren, das Folgendes umfasst: Empfangen von Daten B durch mindestens einen Prozessor, die als ein Chiffriertext C gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion (301) umfasst; und Verschlüsseln durch den mindestens einen Prozessor der Daten B gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahren zum Erhalten des Chiffriertexts C (302), wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A verwendet, der zu mindestens einem privaten Schlüssel T gehört, wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt und wobei die Verschlüsselungsfunktion als Eingaben den mindestens einen öffentlichen Schlüssel A und die Daten B empfängt und den Chiffriertext C als C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix, X eine Fehlermatrix, p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Eine Verfahren wie irgendeines der oben erwähnten, das ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst.
    • (4) In einer anderen beispielhaften Ausführungsform der Erfindung eine Vorrichtung, die das Folgende umfasst: ein Mittel zum Speichern der Daten B, die als ein Chiffriertext C gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion umfasst; und ein Mittel zum Verschlüsseln der Daten B gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten des Chiffriertexts C, wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A verwendet, der zu mindestens einem privaten Schlüssel T gehört, und wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt und wobei die Verschlüsselungsfunktion als Eingaben den mindestens einen öffentlichen Schlüssel A und die Daten B empfängt und den Chiffriertext C als C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix, X eine Fehlermatrix, p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Eine Vorrichtung wie oben erwähnt, wobei das Mittel zum Speichern wenigstens ein Speichermedium oder einen Speicher umfasst und wobei das Mittel zum Verschlüsseln mindestens einen Prozessor, mindestens einen Schaltkreis oder mindestens eine integrierte Schaltkreiseinheit umfasst. Eine Vorrichtung wie irgendeine der oben erwähnten, die ferner einen oder mehrere Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst.
    • (5) In einer anderen beispielhaften Ausführungsform der Erfindung eine Vorrichtung, die das Folgende umfasst: eine Speicher-Schaltungseinheit, die geeignet zum Speichern der Daten B geeignet ist, die als ein Chiffriertext C gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion umfasst; und eine Verschlüsselungs-Schaltkreiseinheit, die zum Verschlüsseln der Daten B gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten des Chiffriertexts C geeignet ist, wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A verwendet, der zu mindestens einem privaten Schlüssel T gehört, und wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt und wobei die Verschlüsselungsfunktion als Eingaben den mindestens einen öffentlichen Schlüssel A und die Daten B empfängt und den Chiffriertext C als C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix, X eine Fehlermatrix, p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Eine Vorrichtung wie irgendeine der oben erwähnten, die ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst.
    • (6) In einer anderen beispielhaften Ausführungsform der Erfindung wie in 4 abgebildet ein computerlesbares Speichermedium, das physisch ein Programm aus Befehlen realisiert, die von einer Maschine zum Durchführen der Operationen ausgeführt werden können, wobei die Operationen das Folgende umfassen: Empfangen eines Chiffriertexts C, der zu Daten B gemäß einem Verschlüsselungsverfahren entschlüsselt werden soll, das eine Entschlüsselungsfunktion (401) umfasst; und Entschlüsseln des Chiffriertexts C gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Daten B (402), wobei das Verschlüsselungsverfahren mindestens einen privaten Schlüssel T verwendet und wobei es sich bei den Daten B, dem Chiffriertext C und dem mindestens einen privaten Schlüssel T um Matrizen handelt und die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCTtmodq)·(Tt)–1modp ausgibt, wobei p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Ein computerlesbares Speichermedium wie oben erwähnt, wobei die Operationen ferner das Folgende umfassen: Ausgeben der Daten B. Ein computerlesbares Speichermedium wie oben erwähnt, wobei der mindestens eine private Schlüssel T zu mindestens einem öffentlichen Schlüssel A gehört. Ein computerlesbares Speichermedium wie irgendein oben erwähntes, wobei es sich bei dem mindestens einen privaten Schlüssel T um einen symmetrischen Schlüssel handelt. Ein computerlesbares Speichermedium wie irgendein oben erwähntes, das ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst.
    • (7) In einer anderen beispielhaften Ausführungsform der Erfindung eine Vorrichtung, die das Folgende umfasst: mindestens ein Speichermedium, das zum Speichern eines Chiffriertexts C geeignet ist, der zu Daten B gemäß einem Verschlüsselungsverfahren entschlüsselt werden soll, das eine Entschlüsselungsfunktion umfasst; und mindestens ein Prozessor, der zum Entschlüsseln des Chiffriertexts C gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Daten B ausgestaltet ist, wobei das Verschlüsselungsverfahren mindestens einen privaten Schlüssel T verwendet, wobei es sich bei den Daten B, dem Chiffriertext C und dem mindestens einen privaten Schlüssel T um Matrizen handelt und wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCTtmodq)·(Tt)–1modp ausgibt, wobei p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Eine Vorrichtung wie irgendeine der oben erwähnten, die ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst.
    • (8) In einer weiteren beispielhaften Ausführungsform der Erfindung wie in 4 abgebildet ein Verfahren, das Folgendes umfasst: Empfangen eines Chiffriertexts C, der zu Daten B gemäß einem Verschlüsselungsverfahren entschlüsselt werden soll, das eine Entschlüsselungsfunktion (401) umfasst; und Entschlüsseln des Chiffriertexts C gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Daten B (402), wobei das Verschlüsselungsverfahren mindestens einen privaten Schlüssel T verwendet und wobei es sich bei den Daten B, dem Chiffriertext C und dem mindestens einen privaten Schlüssel T um Matrizen handelt und wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCTtmodq)·(Tt)–1modp ausgibt, wobei p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Ein Verfahren wie irgendeines der oben erwähnten, das ferner einen oder mehrere Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst.
    • (9) In einer anderen Ausführungsform der Erfindung eine Vorrichtung, die Folgendes umfasst: ein Mittel zum Speichern eines Chiffriertexts C, der zu Daten 13 gemäß einem Verschlüsselungsverfahren entschlüsselt werden soll, das eine Entschlüsselungsfunktion umfasst; und ein Mittel zum Entschlüsseln des Chiffriertexts C gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Daten B, wobei das Verschlüsselungsverfahren mindestens einen privaten Schlüssel T verwendet, wobei es sich bei den Daten B, dem Chiffriertext C und dem mindestens einen privaten Schlüssel T um Matrizen handelt und die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCTtmodq)·(Tt)–1modp ausgibt, wobei p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Eine Vorrichtung wie irgendeine der oben erwähnten, wobei das Mittel zum Speichern mindestens ein Speichermedium, eine Speichereinheit oder Speicher umfasst und wobei das Mittel zum Entschlüsseln mindestens einen Prozessor, mindestens eine Schaltungseinheit oder mindestens eine integrierte Schaltungseinheit umfasst. Eine Vorrichtung wie oben erwähnt, die ferner einen oder mehrere Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst.
    • (10) In einer anderen beispielhaften Ausführungsform der Erfindung eine Vorrichtung, die das Folgende umfasst: Speicherschaltungseinheiten, die zum Speichern eines Chiffriertexts C geeignet sind, der zu Daten B gemäß einem Verschlüsselungsverfahren entschlüsselt werden soll, das eine Entschlüsselungsfunktion umfasst; und Entschlüsselungs-Schaltungseinheiten, die zum Entschlüsseln des Chiffriertexts C gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Daten B ausgestaltet sind, wobei das Verschlüsselungsverfahren mindestens einen privaten Schlüssel T verwendet und es sich bei bei den Daten B, dem Chiffriertext C und dem mindestens einen privaten Schlüssel T um Matrizen handelt, und wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B als B = T–1·(TCTtmodq)·(Tt)–1modp ausgibt, wobei p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Eine Vorrichtung wie irgendeine der oben erwähnten, die ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst.
    • (11) In einer weiteren beispielhaften Ausführungsform der Erfindung ein computerlesbares Speichermedium, das physisch ein Programm aus Befehlen verkörpert, die von einer Maschine zum Durchführen von Operationen ausgeführt werden können, wobei die Operationen das Folgende umfassen: Empfangen von Daten B, die gemäß einem Verschlüsselungsverfahren zu einem Chiffriertext C verschlüsselt werden sollen, das eine Verschlüsselungs- und eine Entschlüsselungsfunktion umfasst; und Verschlüsseln der Daten B gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten des Chiffriertexts C, wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A und mindestens einen privaten Schlüssel T verwendet, der zu dem mindestens einen öffentlichen Schlüssel A gehört, wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei B ∊ Z m×m / p, C ∊ Z m×m / q, A ∊ Z m×n / q und T ∊ Z m×m / q, wobei n einen Sicherheitsparameter darstellt und m, q = poly(n), wobei die Verschlüsselungsfunktion als Eingaben A und B empfängt und den Chiffriertext C als C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix darstellt und S ← $ Z n×m / q, X eine Fehlermatrix darstellt und X ← $Ψ β(q)m×m, Ψ β eine Fehlerverteilung und β ein Gauss'scher Fehlerparameter gegeben durch = 1/poly(n) darstellen, wobei die Entschlüsselungsfunktion als Eingaben T und C empfängt und die Daten B gemäß B = T–1·(TCTtmodq)·(Tt)–1modp ausgibt, wobei das Verschlüsselungsverfahren homomorph ist und das Berechnen von Biliniearformen unterstützt (z. B. polynomial viele Additionen und eine Multiplikation).
  • Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, das ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst. Ein Verfahren, eine Vorrichtung oder ein Computerprogramm entsprechend dem oben beschriebenen computerlesbaren Speichermedium.
    • (12) In einer anderen beispielhaften Ausführungsform der Erfindung ein computerlesbares Speichermedium, das physisch ein Programm aus Befehlen verkörpert, die von einer Maschine zum Durchführen von Operationen ausgeführt werden können, wobei die Operationen das Folgende umfassen: Empfangen wenigstens erster Daten B1, die als ein erster Chiffriertext C1 gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion und eine Entschlüsselungsfunktion umfasst, und/oder Empfangen eines zweiten Chiffriertexts C2, der zu zweiten Daten B2 gemäß dem Verschlüsselungsverfahren entschlüsselt werden soll; und wenigstens Verschlüsseln der ersten Daten B1 gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten des ersten Chiffriertexts C1 oder Entschlüsseln des zweiten Chiffriertexts C2 gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der zweiten Daten B2, wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A und mindestens einen privaten Schlüssel T verwendet, der zu dem mindestens einen öffentlichen Schlüssel A gehört, wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Verschlüsselungsfunktion als Eingaben den mindestens einen öffentlichen Schlüssel A und die Daten B empfängt und den Chiffriertext C als C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix und X eine Fehlermatrix, p eine ganze Zahl und q eine ungerade Primzahl darstellen, wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCTtmodq) (Tt)–1modp ausgibt.
  • Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, das ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst. Ein Verfahren, eine Vorrichtung oder ein Computerprogramm entsprechend dem oben beschriebenen computerlesbaren Speichermedium.
    • (13) In einer anderen beispielhaften Ausführungsform der Erfindung wie in 5 abgebildet ein computerlesbares Speichermedium, das physisch ein Programm aus Befehlen verkörpert, die von einer Maschine zum Durchführen von Operationen ausgeführt werden können, wobei die Operationen das Folgende umfassen: Empfangen einer Vielzahl von Daten B1, die als eine Vielzahl von Chiffriertexten Ci gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion und eine Entschlüsselungsfunktion (501) umfasst; Verschlüsseln aller Daten Bi aus der Vielzahl von Daten gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten jedes Chiffriertexts Ci (502); Berechnen eines Ergebnis-Chiffriertexts Cpoly durch Anwenden eines quadratischen Polynoms auf die Chiffriertexte Ci als Cpoly ← ΣiCi × C t / jmodq, wobei die Summe über eine Teilmenge von Indizes i und j (503) läuft; und Entschlüsseln des Ergebnis-Chiffriertexts Cpoly gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Ergebnisdaten Bpoly (504), wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A verwendet, der zu mindestens einem privaten Schlüssel T gehört, wobei es sich bei der Vielzahl von Daten Bi, den Chiffriertexten Ci, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen öffentlichen Schlüssel A und einen Datensatz Bi empfängt und den Chiffriertext Ci als Ci ← AS + pX + Bi(modq) ausgibt, wobei S eine Zufallsmatrix, X eine Fehlermatrix, p eine ganze Zahl, q eine ungerade Primzahl, i eine ganze Zahl und j eine ganze Zahl darstellen und wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Ergebnis-Chiffriertext Cpoly empfängt und die Ergebnisdaten Bpoly gemäß Bpoly = T–1·(TCpolyTtmodq)·(Tt)–1modp = ΣiBi × B t / jmodp über der Teilmenge der Indizes i und j ausgibt.
  • Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, das ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst. Ein Verfahren, eine Vorrichtung oder ein Computerprogramm entsprechend dem oben beschriebenen computerlesbaren Speichermedium.
    • (14) In einer weiteren beispielhaften Ausführungsform der Erfindung ein computerlesbares Speichermedium, das physisch ein Programm aus Befehlen verkörpert, die von einer Maschine zum Durchführen von Operationen ausgeführt werden können, wobei die Operationen das Folgende umfassen: Empfangen eines Chiffriertexts C, der zu Daten B gemäß einem Verschlüsselungsverfahren entschlüsselt werden soll, das eine Entschlüsselungsfunktion umfasst; und Entschlüsseln des Chiffriertexts C gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Daten B, wobei das Verschlüsselungsverfahren mindestens einen privaten Schlüssel T verwendet und wobei es sich bei den Daten B, dem Chiffriertext C und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCmodq)modp ausgibt, wobei p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, das ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst. Ein Verfahren, eine Vorrichtung oder ein Computerprogramm entsprechend dem oben beschriebenen computerlesbaren Speichermedium.
    • (15) In einer weiteren beispielhaften Ausführungsform der Erfindung eine Vorrichtung, die das Folgende umfasst: mindestens ein Speichermedium, das zum Speichern eines Chiffriertexts C ausgestaltet ist, der zu Daten B gemäß einem Verschlüsselungsverfahren entschlüsselt werden soll, das eine Entschlüsselungsfunktion umfasst; und mindestens ein Prozessor, der zum Entschlüsseln des Chiffriertexts C gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Daten B geeignet ist, wobei das Verschlüsselungsverfahren mindestens einen privaten Schlüssel T verwendet und wobei es sich bei den Daten B, dem Chiffriertext C und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCmodq)modp ausgibt, wobei p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Eine Vorrichtung wie irgendeine der oben erwähnten, die ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst.
    • (16) In einer weiteren beispielhaften Ausführungsform der Erfindung wie in 6 abgebildet ein Verfahren, das Folgendes umfasst: Empfangen eines Chiffriertexts C, der zu Daten B gemäß einem Verschlüsselungsverfahren entschlüsselt werden sollen, das eine Entschlüsselungsfunktion (601) umfasst; und Entschlüsseln des Chiffriertexts C gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Daten B (602), wobei das Verschlüsselungsverfahren mindestens einen privaten Schlüssel T verwendet und wobei es sich bei den Daten B, dem Chiffriertext C und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCmodq)modp ausgibt, wobei p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Ein Verfahren wie irgendeines der oben erwähnten, das ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst.
    • (17) In einer weiteren beispielhaften Ausführungsform der Erfindung eine Vorrichtung, die das Folgende umfasst: ein Mittel zum Speichern eines Chiffriertexts C, der zu Daten B gemäß einem Verschlüsselungsverfahren entschlüsselt werden soll, das eine Entschlüsselungsfunktion umfasst; und ein Mittel zum Entschlüsseln des Chiffriertexts C gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Daten B, wobei das Verschlüsselungsverfahren mindestens einen privaten Schlüssel T verwendet, wobei es sich bei den Daten B, dem Chiffriertext C und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCmodq)modp ausgibt, wobei p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Eine Vorrichtung wie oben, wobei das Mittel zum Speichern wenigstens ein Speichermedium oder eine Speichereinheit umfasst und das Mittel zum Entschlüsseln mindestens einen Prozessor, mindestens einen Schaltkreis oder mindestens eine integrierte Schaltungseinheit umfassen. Eine Vorrichtung wie oben, die ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst.
    • (18) In einer weiteren beispielhaften Ausführungsform der Erfindung eine Vorrichtung, die das Folgende umfasst: eine Speicher-Schaltungseinheit, die zum Speichern eines Chiffriertexts C geeignet ist, der zu Daten B gemäß einem Verschlüsselungsverfahren entschlüsselt werden soll, das eine Entschlüsselungsfunktion umfasst; und eine Entschlüsselungs-Schaltungseinheit, die zum Entschlüsseln des Chiffriertexts C gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Daten B geeignet ist, wobei das Verschlüsselungsverfahren mindestens einen privaten Schlüssel T verwendet, wobei es sich bei den Daten B, dem Chiffriertext C und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCmodq)modp ausgibt, wobei p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  • Eine Vorrichtung wie oben, die ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst.
    • (19) In einer weiteren beispielhaften Ausführungsform der Erfindung ein computerlesbares Speichermedium, das physisch ein Programm aus Befehlen verkörpert, die von einer Maschine zum Durchführen von Operationen ausgeführt werden können, wobei die Operationen das Folgende umfassen: Empfangen von Daten B, die zu einem Chiffriertext C gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion und eine Entschlüsselungsfunktion umfasst; und Verschlüsseln der Daten B gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten des Chiffriertexts C, wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A und mindestens einen privaten Schlüssel T verwendet, der zu dem mindestens einen öffentlichen Schlüssel A gehört, wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei B ∊ Z m×m / p, C ∊ Z m×m / q, A ∊ Z m×n / q und T ∊ Z m×m / q, n einen Sicherheitsparamater bezeichnet, m, q = poly(n), q eine ungerade Primzahl und p eine ganze Zahl mit q > p darstellen, wobei die Verschlüsselungsfunktion als Eingaben A und B empfängt und den Chiffriertext C als C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix und S X ← $ Z n×m / q ist, X eine Fehlermatrix und X ← $Ψ β(q)m×m ist, Ψ β eine Fehlerverteilung und β einen Gauss'schen Fehlerparameter gegeben durch β = 1/poly(n) darstellen, wobei die Verschlüsselungsfunktion als Eingaben T und C empfängt und die Daten B gemäß B = T–1·(TCmodq)modp ausgibt, wobei das Verschlüsselungsfunktion homomorph ist und polynomial viele Additionen unterstützt.
  • Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, das ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst. Ein Verfahren, eine Vorrichtung oder ein Computerprogramm entsprechend dem oben beschriebenen computerlesbaren Speichermedium.
    • (20) In einer weiteren beispielhaften Ausführungsform der Erfindung ein computerlesbares Speichermedium, das physisch ein Programm aus Befehlen verkörpert, die von einer Maschine zum Durchführen von Operationen ausgeführt werden können, wobei die Operationen das Folgende umfassen: Empfangen von ersten Daten B1, die zu einem ersten Chiffriertext C1 gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion und eine Entschlüsselungsfunktion umfasst, und/oder Empfangen eines zweiten Chiffriertexts C2, der zu zweiten Daten B2 gemäß einem Verschlüsselungsverfahren entschlüsselt werden soll; und Verschlüsseln der ersten Daten B1 gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten des ersten Chiffriertexts C1 und/oder Entschlüsseln des zweiten Chiffriertexts C2 gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der zweiten Daten B2, wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A und mindestens einen privaten Schlüssel T verwendet, der zu dem mindestens einen öffentlichen Schlüssel A gehört, wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Verschlüsselungsfunktion als Eingaben den mindestens einen öffentlichen Schlüssel A und die Daten B empfängt und den Chiffriertext C gemäß C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix, X eine Fehlermatrix, p eine ganze Zahl q und eine ungerade Primzahl darstellen, wobei die Entschlüsselungsfunktion als Eingaben den wenigstens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCmodq)modp ausgibt.
  • Ein computerlesbares Speichermedium wie irgendeines der oben erwähnten, das ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst. Ein Verfahren, eine Vorrichtung oder ein Computerprogramm entsprechend dem oben beschriebenen computerlesbaren Speichermedium.
    • (21) In einer weiteren beispielhaften Ausführungsform der Erfindung wie in 7 abgebildet ein computerlesbares Speichermedium, das physisch ein Programm aus Befehlen verkörpert, die von einer Maschine zum Durchführen von Operationen ausgeführt werden können, wobei die Operationen das Folgende umfassen: Empfangen einer Vielzahl von Daten Bi, die zu einer Vielzahl von Chiffriertexten Ci gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion und eine Entschlüsselungsfunktion (701) umfasst; Verschlüsseln jeder der Daten Bi aus der Vielzahl von Daten gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens, um jeden Chiffriertext Ci (702) zu erhalten; Berechnen eines Ergebnis-Chiffriertexts Csum durch Anwenden einer Summation auf die Chiffriertexte Ci als Csum ← ΣiCimodq, wobei die Summe über eine Teilmenge von Indizes i (703) erfolgt; und Entschlüsseln des Ergebnis-Chiffriertexts Csum gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Ergebnisdaten Bsum (704), wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A verwendet, der zu mindestens einem privaten Schlüssel T gehört, wobei es sich bei der Vielzahl von Daten Bi, den Chiffriertexten Ci und dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Verschlüsselungsfunktion als Eingaben den mindestens einen öffentlichen Schlüssel A und einen Datensatz Bi empfängt und den Chiffriertext Ci gemäß Ci ← AS + pX + Bi(modq) ausgibt, wobei S eine Zufallsmatrix, X eine Fehlermatrix, p eine ganze Zahl, q eine ungerade Primzahl, i und j eine ganze Zahl darstellen, wobei die Verschlüsselungsfunktion als Eingaben den wenigstens einen privaten Schlüssel T und den Ergebnis-Chiffriertext Csum empfängt und die Ergebnisdaten Bsum gemäß Bsum = T–1·(TCsummodq)modp = ΣiBimodp über der Teilmenge der Indizes i ausgibt.
  • Ein computerlesbares Speichermedium wie oben, das ferner einen oder mehrere zusätzliche Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben umfasst. Ein Verfahren, eine Vorrichtung oder ein Computerprogramm entsprechend dem oben beschriebenen computerlesbaren Speichermedium.
  • Die beispielhaften Ausführungsformen der Erfindung wie hier beschrieben können in Verbindung mit einer Programmspeichereinheit (z. B. mindestens ein Speicher, mindestens ein computerlesbares Speichermedium) umgesetzt werden, das (z. B. für eine Maschine, einen Computer oder einen Prozessor) lesbar ist und physisch ein Programm aus Befehlen (z. B. ein Programm, ein Computerprogramm, Programmcode, Programmbefehle) verkörpert, die von einer/der Maschine (oder Computer oder Prozessor) zum Durchführen der Operationen ausgeführt werden kann. Die Operationen umfassen Schritte der Verwendung (z. B. Nutzen) der beispielhaften Ausführungsformen der Erfindung oder der Verfahrensschritte.
  • Die in den 3 bis 7 abgebildeten Blöcke können ferner als zu einer oder mehreren Funktionen und/oder Operationen gehörend angesehen werden, die von einer oder mehreren Komponenten, Schaltungseinheiten, Chips, Vorrichtungen, Prozessoren, Computerprogrammen und/oder Funktionsblöcken ausgeführt werden. Beliebige Teile und/oder alles Vorangehende können in jeder beliebigen realisierbaren Lösung oder Anordnung umgesetzt werden, die die Operation gemäß der beispielhaften Ausführungsformen der Erfindung wie hier beschrieben erlaubt.
  • Des Weiteren sollte die Anordnung der in den 3 bis 7 dargestellten Blöcke nur als beispielhaft und nichteinschränkend angesehen werden. Es sollte klar sein, dass die in den 3 bis 7 gezeigten Blöcke einer oder mehreren Funktionen und/oder Operationen entsprechen, die in beliebiger (z. B. jeder geeigneten, nutzbaren und/oder möglichen) Reihenfolge und/oder gleichzeitig (z. B. wie geeignet, nutzbar und/oder möglich) ausgeführt werden können, um eine oder mehrere beispielhafte Ausführungsformen der Erfindung zu realisieren. Des Weiteren können eine oder mehrere zusätzliche Funktionen, Operationen und/oder Schritte in Verbindung mit diesen in 3 bis 7 abgebildeten verwendet werden, um eine oder mehrere beispielhafte Ausführungsformen der Erfindung zu realisieren.
  • D. h., die beispielhaften Ausführungsformen der Erfindung wie in 3 bis 7 abgebildet können in Verbindung mit einem oder mehreren weiteren Gesichtspunkten oder jeder beliebigen Kombination (z. B. einer Kombination, die geeignet, nutzbar und/oder möglich ist) verwendet, umgesetzt oder genutzt werden und sind nicht nur auf die in den 3 bis 7 abgebildeten Schritte, Blöcke, Operationen und/oder Funktionen beschränkt.
  • Der Ablaufplan und die Funktionsschaubilder in den 3 bis 7 veranschaulichen die Architektur, Funktionalität und Operation möglicher beispielhafter Umsetzungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen beispielhaften Ausführungsformen der vorliegenden Erfindung. Dabei kann jeder Block in dem Ablaufplan oder den Funktionsschaubildern ein Modul, ein Segment oder einen Codebereich wiedergeben, der eine oder mehrere ausführbare Befehle zum Umsetzen der angegebenen logischen Funktion(en) umfasst. Es sollte auch beachtet werden, dass in manchen alternativen Umsetzungen die in dem Block angegebenen Funktionen auch außerhalb der in den Figuren angegebenen Reihenfolge auftreten können. Beispielsweise können zwei aufeinander folgend dargestellte Blöcke tatsächlich im Wesentlichen gleichzeitig ausgeführt werden oder die Blöcke können manchmal abhängig von der verwendeten Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es wird auch angemerkt, dass jeder Block der Funktionsschaubilder und/oder Ablaufplandarstellung und Kombinationen aus Blöcken in den Funktionsschaubildern und/oder Ablaufplandarstellung durch Systeme, die auf Spezial-Hardware, die die angegebenen Funktionen oder Aktionen ausführt, oder auf Kombinationen aus Spezial-Hardware und Computerbefehlen beruhen, als nichteinschränkende Beispiele umgesetzt werden können.
  • Darüber hinaus sollten die verschiedenen Bezeichner, die für die hier beschriebenen Parameter, Operationen und Funktionen verwendet werden, in keiner Hinsicht als einschränkend ausgelegt werden, da diese Parameter, Operationen und Funktionen mit einem beliebigen Namen benannt werden können.
  • Die jeweiligen Strukturen, Materialien, Aktionen und Gleichwertiges beliebiger und aller hier beschriebener Mittel oder Schritt-plus-Funktions-Elemente sind so zu verstehen, dass sie jede Struktur, jedes Material oder jede Aktion zum Ausführen der Funktion in Verbindung mit anderen beanspruchten Elementen wie jeweils beansprucht beinhalten. Die Beschreibung der beispielhaften Ausführungsformen der Erfindung wurde zum Zweck der Veranschaulichung und Beschreibung vorgestellt, darf aber nicht als umfassend oder beschränkt auf die Erfindung in der offengelegten Form ausgelegt werden. Viele Veränderungen und Variationen sind für den Fachmann in dem Gebiet erkennbar, ohne von dem Geltungsbereich und Wesensgehalt der Erfindung abzuweichen. Die beispielhafte Ausführungsform wurde gewählt und beschrieben, um die Grundgedanken der beispielhaften Ausführungsformen der Erfindung und die praktischen Anwendungen bestmöglich zu beschreiben und anderen Fachleuten in dem Gebiet das Verstehen der Erfindung für verschiedene beispielhafte Ausführungsformen mit verschiedenen Veränderungen zu ermöglichen, die für die jeweilige(n) Verwendung(en) als geeignet angenommen werden.
  • Wie der Fachmann in dem Gebiet erkennt, können Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung als ein System, Verfahren oder Computerprogrammprodukt als nichteinschränkende Beispiele ausgeführt werden. Entsprechend können Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung die Form einer reinen Hardware-Ausführungsform, einer reinen Software-Ausführungsform (darunter Firmware, residente Software, Mikrocode usw.) oder einer Ausführungsform annehmen, die Software- und Hardware-Gesichtspunkte verknüpft, die hier alle als eine „Schaltungseinheit”, ein „Modul” oder „System” als nichteinschränkende Beispiele bezeichnet werden. Darüber hinaus können Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung die Form eines Computerprogrammprodukts annehmen, das in einem oder mehreren computerlesbaren Medien mit einem darauf ausgeführten computerlesbaren Programmcode annehmen.
  • Jede Kombination aus einem oder mehreren computerlesbaren Medien kann verwendet werden. Bei dem computerlesbaren Medium kann es sich um ein computerlesbares Signalmedium oder ein computerlesbares Speichermedium handeln. Als nichteinschränkende Beispiele kann ein computerlesbares Speichermedium eines oder mehreres von Folgendem umfassen: Ein elektronisches, magnetisches, optisches, elektromagnetisches, infrarotes oder ein Halbleiter-System, eine Vorrichtung, eine Einheit oder eine beliebige geeignete Kombination der Vorigen. Zu spezielleren nichteinschränkenden Beispielen eines computerlesbaren Speichermediums können zählen: eine elektrische Verbindung mit einem oder mehreren Leitungen, eine tragbare Computerdiskette, eine Festplatte, ein Speicher mit wahlfreiem Zugriff (RAM), ein Nur-Lesespeicher (ROM), ein löschbarer programmierbarer Nur-Lesespeicher (EPROM oder Flash-Speicher), ein Lichtwellenleiter, ein tragbarer Kompaktdisc-Nurlesespeicher (CD-ROM), eine optische Speichereinheit, eine magnetische Speichereinheit oder eine beliebige Kombination der Vorigen. In Zusammenhang mit diesem Dokument kann es sich bei einem computerlesbaren Speichermedium um ein beliebiges physisches Medium handeln, das zum Enthalten oder Speichern eines Programms zur Verwendung oder in Verbindung mit einem Befehle ausführenden System, einer Vorrichtung oder einer Einheit (z. B. ein Computer oder ein Prozessor) ausgestaltet/betreibbar ist.
  • Ein computerlesbares Signalmedium kann ein sich ausbreitendes Datensignal mit darin umgesetztem Computerprogrammcode beispielsweise im Basisband oder als Teil einer Trägerwelle beinhalten. Solch ein sich ausbreitendes Signal kann eine Vielzahl von Formen, einschließlich, aber nicht darauf beschränkt, elektromagnetische und optische Formen oder eine beliebige Kombination daraus, annehmen. Bei einem computerlesbaren Signalmedium kann es sich um ein beliebiges computerlesbares Medium handeln, das kein computerlesbares Speichermedium darstellt und das Daten übertragen, ausbreiten oder ein Programm zur Verwendung durch oder in Verbindung mit einem Befehle ausführenden System, einer Vorrichtung oder einer Einheit transportieren kann.
  • Der auf einem computerlesbaren Medium ausgeführte Programmcode kann mit einem beliebigen geeigneten Medium einschließlich des Folgenden, aber nicht darauf beschränkt, umgesetzt werden: drahtlose und drahtgebundene Medien, Lichtwellenleiter-Kabel, Hochfrequenz oder eine beliebige geeignete Verknüpfung des Vorigen.
  • Computerprogrammcode zum Durchführen der Operationen für Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung können in jeder Kombination aus einer oder mehreren Programmiersprachen, darunter eine objektorientierte Programmiersprache wie z. B. Java, Smalltalk oder C++ und herkömmliche Programmiersprachen wie z. B. die Programmiersprache „C” oder ähnliche Programmiersprachen als nichteinschränkende Beispiele, geschrieben werden. Der Programmcode kann nur auf dem Computer des Nutzers, teilweise auf dem Computer des Nutzers, als eigenständiges Softwarepaket, teilweise auf dem Nutzer-Computer und teilweise auf einem entfernt angeordneten Computer oder nur auf dem entfernt angeordneten Computer oder Server als nichteinschränkende Beispiele ausgeführt werden. In dem letzten Fall kann der entfernt angeordnete Computer mit dem Nutzercomputer über eine beliebige Art von Netzwerk einschließlich einem lokalen Netzwerk (LAN) oder einem Weitverkehrsnetz (WLAN) verbunden sein, oder die Verbindung kann an einen externen Computer (z. B. durch das Internet mit einem Internet-Diensteanbieter) als nichteinschränkende Beispiele erfolgen.
  • Gesichtspunkte der beispielhaften Ausführungsformen der Erfindung werden hier Bezug nehmend auf die Ablaufplan-Darstellungen und/oder die Funktionsschaubilder der Verfahren, Vorrichtungen (Systeme) und Computerprogrammprodukte gemäß verschiedenen beispielhaften Ausführungsformen der Erfindung beschrieben. Es ist selbstverständlich, dass jeder Block der Ablaufplan-Darstellungen und/oder Funktionsschaubilder und Kombinationen aus Blöcken in den Ablaufplan-Darstellungen und/oder Funktionsschaubilder durch Computerprogramm-Befehle als nichteinschränkende Beispiele umgesetzt werden können. Diese Computerprogramm-Befehle können an einen Prozessor oder einen Allgemeincomputer, einen Spezialcomputer oder andere Datenverarbeitungsvorrichtungen zum Herstellen einer Maschine bereitgestellt werden, sodass die Befehle, die über den Prozessor des Computers oder den anderen programmierbaren Datenverarbeitungsvorrichtungen ausgeführt werden, Mittel zum Umsetzen der Funktionen/Aktionen erzeugen, die in dem Ablaufplan und/oder dem Funktionsschaubild-Block oder den -Blöcken als nichteinschränkende Beispiele angegeben sind.
  • Diese Computerprogrammbefehle können auch in einem computerlesbaren Medium gespeichert werden, das einen Computer, andere programmierbare Datenverarbeitungsvorrichtungen oder andere Einheiten anweisen kann, auf eine bestimmte Vorgehensweise so zu funktionieren, dass die in dem computerlesbaren Medium gespeicherten Befehle einen Herstellungsartikel erzeugen, der Befehle einschließt, die die in dem Ablaufplan und/oder dem Funktionsschaubild-Block oder den -Blöcken angegebenen Befehle umsetzen.
  • Die Computerprogrammbefehle können auch in einen Computer, andere programmierbare Datenverarbeitungsvorrichtungen oder andere Einheiten geladen werden, um das Ausführen einer Reihe von Operationsschritten auf dem Computer, anderen programmierbaren Datenverarbeitungsvorrichtungen oder anderen Einheiten zu veranlassen, um einen computerrealisierten Prozess zu erzeugen, sodass die auf dem Computer oder e anderen programmierbaren Datenverarbeitungsvorrichtungen oder anderen Einheiten ausgeführten Befehle Prozesse zum Umsetzen der Funktionen/Aktionen bereitstellen, die in dem Ablaufplan und/oder Funktionsschaubild-Block oder den -Blöcken angegeben sind (z. B. beispielhafte Ausführungsformen der Erfindung).
  • Jede Verwendung des Begriffs „angeschlossen”, „verbunden” oder Varianten davon sind so zu verstehen, dass sie jeden solchen Anschluss oder solche Verbindung, direkt oder indirekt, zwischen den bezeichneten Elementen bezeichnet. Als ein nichteinschränkendes Beispiel kann eines oder mehrere Zwischenelemente zwischen den „verbundenen” Elementen vorhanden sein. Der Anschluss oder die Verbindung zwischen den bezeichneten Elementen kann als nichteinschränkende Beispiele physisch, elektrisch, magnetisch, logisch oder mit einer beliebigen geeigneten Kombination daraus gemäß den beschriebenen beispielhaften Ausführungsformen ausgeführt sein. Als nichteinschränkende Beispiele kann der Anschluss oder die Verbindung einen oder mehrere gedruckte elektrische Anschlüsse, Leitungen, Medien oder eine beliebige geeignete Kombination daraus umfassen.
  • Allgemein können verschiedene beispielhafte Ausführungsformen der Erfindung in unterschiedlichen Medien wie z. B. Software, Hardware, Logikschaltungen, Spezial-Schaltungen oder eine beliebige Kombination davon umgesetzt werden. Als ein nichteinschränkendes Beispiel können einige Gesichtspunkte in Software umgesetzt werden, die auf einer Datenverarbeitungseinheit ausgeführt werden kann, während andere Gesichtspunkte in Hardware umgesetzt werden können.
  • Die vorangehende Beschreibung hat mit beispielhaften und nichteinschränkenden Beispielen eine umfangreiche und informative Beschreibung des Verfahrens und der Einheit bereitgestellt, die momentan von den Erfindern als zum Durchführen der Erfindung am besten geeignet angesehen werden. Verschiedene Veränderungen und Anpassungen werden jedoch für den Fachmann in dem betreffenden Gebiet mit Blick aus der vorangehenden Beschreibung offensichtlich, wenn sie in Verbindung mit den beigefügten Zeichnungen und den angefügten Ansprüchen gelesen wird. Alle solchen und ähnliche Veränderungen werden weiterhin innerhalb des Erfindungsgedanken der beispielhaften Ausführungsformen der Erfindung liegen.
  • Darüber hinaus könnten einige Eigenschaften der bevorzugten Ausführungsformen dieser Erfindung ohne die entsprechende Verwendung anderer Eigenschaften zum Vorteil verwendet werden. Die vorangehende Beschreibung an sich ist als lediglich veranschaulichend für die Grundgedanken der Erfindung und nicht als Einschränkung anzusehen.
  • 6 Quellennachweise
    • [1] C. Aguilar Melchor, G. Castagnos, und P. Gaborit. Lattice-based homomorphic encryption of vector spaces. In IEEE International Symposium an Information Theory, ISIT'2008, Seiten 1858 bis 1862, 2008.
    • [2] C. Aguilar Melchor, P. Gaborit und H. Javier. Additive Homomorphic Encryption with t-Operand Multiplications. Technical Report 2008/378, IACR ePrint-Archiv, 2008. http://eprint.iacr.org/2008/378/.
    • [3] M. Ajtai. Generating hard instances of the short basis Problem. In ICALP, Seiten 1{9, 1999.
    • [4] J. Alwen und C. Peikert. Generating shorter bases for hard random lattices. In STACS, Seiten 75 bis 86, 2009.
    • [5] D. Boneh, E.-J. Goh und K. Nissim. Evaluating 2-DNF formulas an ciphertexts. Seiten 325 bis 341, 2005.
    • [6] Y. Dodis, S. Goldwasser, Y. T. Kalai, C. Peikert und V. Vaikuntanathan. Publickey encryption schemes with auxiliary inputs. In TCC, Seiten 361 bis 381, 2010.
    • [7] W. Feller. An Introduction to Probability Theory and Its Applications, Band 1. Wiley, 1968.
    • [8] C. Gentry. A fully homomorphic encryption scheme. Doktorarbeit, Stanford University, 2009. http://crypto.stanford.edu/craig.
    • [9] C. Gentry. Fully homomorphic encryption using ideal lattices. In STOC '09, Seiten 169 bis 178. ACM, 2009.
    • [10] C. Gentry, C. Peikert und V. Vaikuntanathan. Trapdoors for hard lattices and new cryptographic constructions. In STOC, Seiten 197 bis 206, 2008.
    • [11] A. Kawachi, K. Tanaka und K. Xagawa. Multi-bit Cryptosystems Based an Lattice Problems. In Public Key Cryptography (PKC'07), Band 4450 der Lecture Notes in Computer Science, Seiten 315 bis 329. Springer, 2007.
    • [12] Y. Lindell und B. Pinkas. A proof of security of yao's protocol for two-party computation. J. Cryptology, 22(2), 2009.
    • [13] C. Peikert. Public-key cryptosystems from the worst-case shortest vector problem. In STOC'09, Seiten 333 bis 342. ACM, 2009.
    • [14] O. Regev. On lattices, learning with errors, random linear codes, and cryptography. J. ACM, 56(6), 2009. Vorabversion in STOC'05.
    • [15] T. Sander, A. Young und M. Yung. Non-interactive CryptoComputing for NC1. In 40th Annual Symposium on Foundations of Computer Science, Seiten 554 bis 567. IEEE, 1999.
    • [16] A. C. Yao. Protocols for secure computations (extended abstract). In 23rd Annual Symposium on Foundations of Computer Science – FOCS '82, Seiten 160 bis 164. IEEE, 1982.

Claims (25)

  1. Computerlesbares Speichermedium, das ein Programm aus Befehlen physisch verkörpert, die von einer Maschine zum Durchführen von Operationen ausgeführt werden kann, wobei die Operationen das Folgende umfassen: Empfangen von Daten B, die als ein Chiffriertext C gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion umfasst; und Verschlüsseln der Daten B gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten des Chiffriertexts C, wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A verwendet, der zu mindestens einem privaten Schlüssel T gehört, wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Verschlüsselungsfunktion als Eingaben den mindestens einen öffentlichen Schlüssel A und die Daten B empfängt und den Chiffriertext C als C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix, X eine Fehlermatrix, p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  2. Computerlesbares Speichermedium nach Anspruch 1, wobei B ∊ Z m×m / p, C ∊ Z m×m / q, A ∊ Z m×n / q, S ← Z n×m / q und X ← Ψ β(q)m×m, wobei n einen Sicherheitsparameter und m, q = poly(n) ist, Ψ β eine Fehlerverteilung und β einen Gauss'schen Fehlerparameter gegeben durch β = 1/poly(n) darstellen.
  3. Computerlesbares Speichermedium nach Anspruch 1, wobei das Verschlüsselungsverfahren homomorph ist und das Berechnen von Bilinearformen unterstützt.
  4. Computerlesbares Speichermedium nach Anspruch 1, wobei p = 2 und die Daten B eine Matrix aus Binärwerten umfassen.
  5. Computerlesbares Speichermedium nach Anspruch 1, wobei c = c(n) > 0,
    Figure 00560001
  6. Computerlesbares Speichermedium nach Anspruch 5, wobei das Verschlüsselungsverfahren nc Additionen und eine Multiplikation in beliebiger Reihenfolge über einem Matrixring Z m×m / p erlaubt.
  7. Vorrichtung, die das Folgende umfasst: Wenigstens ein Speichermedium, das zum Speichern der Daten B geeignet ist, die als ein Chiffriertext C gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion umfasst; und Mindestens ein Prozessor, der zum Verschlüsseln der Daten B gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten des Chiffriertexts C geeignet ist, wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A verwendet, der zu mindestens einem privaten Schlüssel T gehört, wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Verschlüsselungsfunktion als Eingaben den mindestens einen öffentlichen Schlüssel A und die Daten B empfängt und den Chiffriertext C als C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix, X eine Fehlermatrix, p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  8. Vorrichtung nach Anspruch 7, wobei B ∊ Z m×m / p, C ∊ Z m×m / q, A ∊ Z m×n / q, S ← Z n×m / q und X $ / ←Ψ β(q)m×m, wobei n einen Sicherheitsparameter bezeichnet und m, q = poly(n), wobei Ψ β eine Fehlerverteilung und β einen Gauss'schen Fehlerparameter gegeben durch β = 1/poly(n) darstellen.
  9. Vorrichtung nach Anspruch 7, wobei das Verschlüsselungsverfahren homomorph ist und das Berechnen von Bilinearformen unterstützt.
  10. Vorrichtung nach Anspruch 7, wobei p = 2 und die Daten B eine Matrix aus Binärwerten umfassen.
  11. Vorrichtung nach Anspruch 7, wobei c = c(n) > 0, q > 220p2(c + 4)3n3c+4log5n, m = ⌊8nlogq⌋ und
    Figure 00570001
  12. Vorrichtung nach Anspruch 11, wobei das Verschlüsselungsverfahren nc Additionen und eine Multiplikation in beliebiger Reihenfolge über einem Matrixring Z m×m / p erlaubt.
  13. Computerlesbares Speichermedium, das ein Programm aus Befehlen physisch verkörpert, die von einer Maschine zum Durchführen von Operationen ausgeführt werden können, wobei die Operationen das Folgende umfassen: Empfangen eines Chiffriertextes C, der zu Daten B gemäß einem Verschlüsselungsverfahren entschlüsselt werden soll, das eine Entschlüsselungsfunktion umfasst; und Entschlüsseln des Chiffriertexts C gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Daten B, wobei das Verschlüsselungsverfahren mindestens einen privaten Schlüssel T verwendet und es sich bei den Daten B, dem Chiffriertext C und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1·(TCTt modq)·(Tt)–1 modp ausgibt, wobei p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  14. Computerlesbares Speichermedium nach Anspruch 13, wobei B ∊ Z m×m / p, C ∊ Z m×m / q und T ∊ Z m×m / q, wobei n einen Sicherheitsparameter bezeichnet und m, q = poly(n), wobei Ψ β eine Fehlerverteilung und β einen Gauss'schen Fehlerparameter gegeben durch β = 1/poly(n) darstellen.
  15. Computerlesbares Speichermedium nach Anspruch 13, wobei das Verschlüsselungsverfahren homomorph ist und das Berechnen von Bilinearformen unterstützt.
  16. Computerlesbares Speichermedium nach Anspruch 13, wobei p = 2 und die Daten B eine Matrix aus Binärwerten umfassen.
  17. Computerlesbares Speichermedium nach Anspruch 13, wobei c = c(n) > 0, q > 220p2(c + 4)3n3c+4log5n, m = ⌊8nlogq⌋ und
    Figure 00580001
  18. Computerlesbares Speichermedium nach Anspruch 17, wobei das Verschlüsselungsverfahren nc Additionen und eine Multiplikation in beliebiger Reigenfolge über einem Matrixring unterstützt.
  19. Vorrichtung, die das Folgende umfasst: wenigstens ein Speichermedium, das zum Speichern eines Chiffriertexts C geeignet ist, der zu Daten B gemäß einem Verschlüsselungsverfahren entschlüsselt werden soll, das eine Entschlüsselungsfunktion umfasst; und mindestens ein Prozessor, der zum Entschlüsseln des Chiffriertexts C gemäß der Entschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten der Daten B geeignet ist, wobei das Verschlüsselungsverfahren mindestens einen privaten Schlüssel T verwendet und es sich bei den Daten B, dem Chiffriertext C und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei die Entschlüsselungsfunktion als Eingaben den mindestens einen privaten Schlüssel T und den Chiffriertext C empfängt und die Daten B gemäß B = T–1(TCTtmodq)·(Tt)–1modp ausgibt, wobei p eine ganze Zahl und q eine ungerade Primzahl darstellen.
  20. Vorrichtung nach Anspruch 19, wobei B ∊ Z m×m / p, C ∊ Z m×m / q und T ∊ Z m×m / q, wobei n einen Sicherheitsparameter darstellt und m, q = poly(n), wobei Ψ β eine Fehlerverteilung und β einen Gauss'schen Fehlerparameter gegeben durch β = 1/poly(n) darstellen.
  21. Vorrichtung nach Anspruch 19, wobei das Verschlüsselungsverfahren homomorph ist und das Berechnen von Bilinearformen unterstützt.
  22. Vorrichtung nach Anspruch 19, wobei p = 2 und die Daten B eine Matrix aus Binärwerten umfassen.
  23. Vorrichtung nach Anspruch 19, wobei c = c(n) > 0, q > 220p2(c + 4)3n3c+4log5n, m = ⌊8nlogq⌋ und
    Figure 00600001
  24. Vorrichtung nach Anspruch 23, wobei das Verschlüsselungsverfahren nc Additionen und eine Multiplikation in beliebiger Reigenfolge über einem Matrixring Z m×m / p unterstützt.
  25. Computerlesbares Speichermedium, das ein Programm aus Befehlen physisch verkörpert, die von einer Maschine zum Durchführen von Operationen ausgeführt werden können, wobei die Operationen das Folgende umfassen: Empfangen von Daten B, die als Chiffriertext C gemäß einem Verschlüsselungsverfahren verschlüsselt werden sollen, das eine Verschlüsselungsfunktion und eine Entschlüsselungsfunktion umfasst; und Verschlüsseln der Daten B gemäß der Verschlüsselungsfunktion des Verschlüsselungsverfahrens zum Erhalten des Chiffriertexts C, wobei das Verschlüsselungsverfahren mindestens einen öffentlichen Schlüssel A und mindestens einen privaten Schlüssel T verwendet, der zu dem mindestens einen öffentlichen Schlüssel A gehört, wobei es sich bei den Daten B, dem Chiffriertext C, dem mindestens einen öffentlichen Schlüssel A und dem mindestens einen privaten Schlüssel T um Matrizen handelt, wobei B ∊ Z m×m / p, C ∊ Z m×m / q, A ∊ Z m×n / q und T ∊ Z m×m / q, wobei n einen Sicherheitsparameter bezeichnet und m, q = poly(n), wobei q eine ungerade Primzahl und p eine ganze Zahl mit q > p darstellen, wobei die Verschlüsselungsfunktion als Eingaben A und B empfängt und den Chiffriertext C als C ← AS + pX + B(modq) ausgibt, wobei S eine Zufallsmatrix darstellt und S $ / ← Z n×m / q, wobei X eine Fehlermatrix darstellt und X $ / ←Ψ β(q)m×m, wobei Ψ β eine Fehlerverteilung und β einen Gauss'schen Fehlerparameter gegeben durch β = 1/poly(n) darstellt, wobei die Entschlüsselungsfunktion als Eingaben T und C empfängt und die Daten B gemäß B = T–1·(TCTtmodq)·(Tt)–1modp ausgibt, wobei das Verschlüsselungsverfahren homomorph ist und das Berechnen von Bilinearformen unterstützt.
DE112011100327T 2010-03-30 2011-03-29 Effizientes homomorphes Verschlüsselungsverfahren für Bilinearformen Ceased DE112011100327T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/749,944 US8861716B2 (en) 2010-03-30 2010-03-30 Efficient homomorphic encryption scheme for bilinear forms
US12/749,944 2010-03-30
PCT/US2011/030276 WO2011123418A1 (en) 2010-03-30 2011-03-29 An efficient homomorphic encryption scheme for bilinear forms

Publications (1)

Publication Number Publication Date
DE112011100327T5 true DE112011100327T5 (de) 2012-12-20

Family

ID=44709697

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112011100327T Ceased DE112011100327T5 (de) 2010-03-30 2011-03-29 Effizientes homomorphes Verschlüsselungsverfahren für Bilinearformen

Country Status (6)

Country Link
US (2) US8861716B2 (de)
JP (1) JP5812300B2 (de)
CN (1) CN102822816B (de)
DE (1) DE112011100327T5 (de)
GB (1) GB2492698B (de)
WO (1) WO2011123418A1 (de)

Families Citing this family (98)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8843762B2 (en) * 2009-09-04 2014-09-23 Gradiant, Centro Tecnolóxico de Telecomunicacións de Galicia Cryptographic system for performing secure iterative computations and signal processing directly on encrypted data in untrusted environments
US8539220B2 (en) * 2010-02-26 2013-09-17 Microsoft Corporation Secure computation using a server module
US11336425B1 (en) * 2010-06-01 2022-05-17 Ternarylogic Llc Cryptographic machines characterized by a Finite Lab-Transform (FLT)
US11093213B1 (en) * 2010-12-29 2021-08-17 Ternarylogic Llc Cryptographic computer machines with novel switching devices
US8681973B2 (en) * 2010-09-15 2014-03-25 At&T Intellectual Property I, L.P. Methods, systems, and computer program products for performing homomorphic encryption and decryption on individual operations
US9002007B2 (en) * 2011-02-03 2015-04-07 Ricoh Co., Ltd. Efficient, remote, private tree-based classification using cryptographic techniques
US9197613B2 (en) * 2011-12-20 2015-11-24 Industrial Technology Research Institute Document processing method and system
US9313028B2 (en) * 2012-06-12 2016-04-12 Kryptnostic Method for fully homomorphic encryption using multivariate cryptography
WO2013188929A1 (en) * 2012-06-22 2013-12-27 Commonwealth Scientific And Industrial Research Organisation Homomorphic encryption for database querying
EP2873186B1 (de) * 2012-07-26 2018-03-07 NDS Limited Verfahren und system zur homomorphen randomisierung einer eingabe
JP2014068140A (ja) 2012-09-25 2014-04-17 Sony Corp 情報処理装置、情報処理方法及びプログラム
EP2920907A2 (de) 2012-11-16 2015-09-23 Raytheon BBN Technologies Corp. Verfahren für sicheren symbolvergleich
JP6083234B2 (ja) * 2012-12-27 2017-02-22 富士通株式会社 暗号処理装置
CN103051587B (zh) * 2013-01-17 2016-08-03 复旦大学 一类基于格并运用最优规划构造高维星座图的方法
BR112015020422A2 (pt) * 2013-02-28 2017-07-18 Koninklijke Philips Nv primeiro dispositivo de rede configurado para determinar uma chave criptográfica compartilhada de bits de comprimento de chave, sistema de compartilhamento de chave, método para determinar uma chave criptográfica compartilhada de bits de comprimento de chave, e, programa de computador
KR20150123823A (ko) * 2013-03-04 2015-11-04 톰슨 라이센싱 마스크들을 사용한 프라이버시-보존 리지 회귀
CN103269267B (zh) * 2013-04-19 2016-01-13 深圳市全同态科技有限公司 一种全同态加密装置
JP5931797B2 (ja) * 2013-05-27 2016-06-08 日本電信電話株式会社 署名システム及び方法、署名生成装置並びに署名検証装置
CN103475472B (zh) * 2013-07-22 2018-07-20 浙江万里学院 环lwe上ntru型的全同态加密方法
US9313022B2 (en) 2013-12-27 2016-04-12 Xerox Corporation Homomorphic cryptography modeling in support of privacy policies
US9369273B2 (en) * 2014-02-26 2016-06-14 Raytheon Bbn Technologies Corp. System and method for mixing VoIP streaming data for encrypted processing
WO2015130297A1 (en) 2014-02-28 2015-09-03 Empire Technology Development Llc Homomorphic encryption scheme
JP6273951B2 (ja) * 2014-03-24 2018-02-07 富士通株式会社 暗号化装置、暗号化方法、情報処理装置および暗号化システム
US9736128B2 (en) 2014-05-21 2017-08-15 The Board Of Regents, The University Of Texas System System and method for a practical, secure and verifiable cloud computing for mobile systems
CN105337736B (zh) 2014-06-30 2018-10-30 华为技术有限公司 全同态消息认证方法、装置及系统
CN104052607B (zh) * 2014-06-30 2018-03-06 西安电子科技大学 基于非球面高斯抽样的签名验证方法
US9946970B2 (en) 2014-11-07 2018-04-17 Microsoft Technology Licensing, Llc Neural networks for encrypted data
CN104410500B (zh) * 2014-12-24 2017-11-03 数安时代科技股份有限公司 基于指定验证者的签名、签名验证及副本模拟方法和系统
US10333696B2 (en) 2015-01-12 2019-06-25 X-Prime, Inc. Systems and methods for implementing an efficient, scalable homomorphic transformation of encrypted data with minimal data expansion and improved processing efficiency
CN104796475B (zh) * 2015-04-24 2018-10-26 苏州大学 一种基于同态加密的社会化推荐方法
US9729312B2 (en) 2015-04-28 2017-08-08 The United States Of America As Represented By The Secretary Of The Navy System and method for high-assurance data storage and processing based on homomorphic encryption
EP3089398B1 (de) * 2015-04-30 2017-10-11 Nxp B.V. Sicherung einer kryptographischen vorrichtung
KR102423885B1 (ko) * 2015-05-08 2022-07-21 한국전자통신연구원 연산 에러 검출이 가능한 준동형 암호 방법 및 그 시스템
US20160352710A1 (en) 2015-05-31 2016-12-01 Cisco Technology, Inc. Server-assisted secure exponentiation
US10075289B2 (en) 2015-11-05 2018-09-11 Microsoft Technology Licensing, Llc Homomorphic encryption with optimized parameter selection
US10153894B2 (en) 2015-11-05 2018-12-11 Microsoft Technology Licensing, Llc Homomorphic encryption with optimized encoding
US10454668B2 (en) 2015-11-09 2019-10-22 Certsign Sa Fully homomorphic encryption from monoid algebras
US9900147B2 (en) 2015-12-18 2018-02-20 Microsoft Technology Licensing, Llc Homomorphic encryption with optimized homomorphic operations
US20230125560A1 (en) * 2015-12-20 2023-04-27 Peter Lablans Cryptographic Computer Machines with Novel Switching Devices
CN107181584B (zh) * 2016-03-09 2020-02-07 郑珂威 非对称完全同态加密及其密钥置换和密文交割方法
US10296709B2 (en) 2016-06-10 2019-05-21 Microsoft Technology Licensing, Llc Privacy-preserving genomic prediction
US10476661B2 (en) * 2016-06-27 2019-11-12 Fujitsu Limited Polynomial-based homomorphic encryption
KR101905689B1 (ko) 2016-11-18 2018-12-05 서울대학교산학협력단 공개키를 이용하여 암호화하는 연산 장치 및 그 암호화 방법
WO2018093203A1 (ko) 2016-11-18 2018-05-24 서울대학교산학협력단 공개키를 이용하여 암호화하는 연산 장치 및 그 암호화 방법
CN106533684B (zh) * 2016-12-02 2019-03-08 江苏理工学院 基于lpn的公钥加密方法
US11196541B2 (en) 2017-01-20 2021-12-07 Enveil, Inc. Secure machine learning analytics using homomorphic encryption
US11507683B2 (en) 2017-01-20 2022-11-22 Enveil, Inc. Query processing with adaptive risk decisioning
US10728018B2 (en) 2017-01-20 2020-07-28 Enveil, Inc. Secure probabilistic analytics using homomorphic encryption
US11777729B2 (en) 2017-01-20 2023-10-03 Enveil, Inc. Secure analytics using term generation and homomorphic encryption
US10972251B2 (en) 2017-01-20 2021-04-06 Enveil, Inc. Secure web browsing via homomorphic encryption
US10873568B2 (en) 2017-01-20 2020-12-22 Enveil, Inc. Secure analytics using homomorphic and injective format-preserving encryption and an encrypted analytics matrix
EP3364596A1 (de) * 2017-02-15 2018-08-22 Koninklijke Philips N.V. Schlüsselaustauschvorrichtung und verfahren
US10630655B2 (en) 2017-05-18 2020-04-21 Robert Bosch Gmbh Post-quantum secure private stream aggregation
US11165558B2 (en) * 2017-06-20 2021-11-02 Nokia Technologies Oy Secured computing
US11082234B2 (en) * 2017-07-06 2021-08-03 Robert Bosch Gmbh Method and system for privacy-preserving social media advertising
US10567354B2 (en) * 2017-07-15 2020-02-18 Fujitsu Limited Enhanced communication security
WO2019018046A1 (en) * 2017-07-17 2019-01-24 Hrl Laboratories, Llc EXTRACTOR OF PRACTICAL REUSABLE APPROXIMATE VALUES BASED ON ERROR ASSUMPTION HYPOTHESIS AND RANDOM ORACLE
CN107317669B (zh) * 2017-07-21 2019-11-26 西安电子科技大学 基于二元截断多项式环的无噪音全同态公钥加密方法
CN107294698B (zh) * 2017-07-25 2019-11-26 西安电子科技大学 单密文同态计算的全同态加密方法
JP6952337B2 (ja) * 2017-11-29 2021-10-20 国立研究開発法人情報通信研究機構 暗号化システム
CN108111485B (zh) * 2017-12-04 2020-09-22 兰州大学 子密钥生成方法和装置、还原密钥方法和装置
US10778409B2 (en) * 2017-12-15 2020-09-15 Crypto Lab Inc. Terminal device performing homomorphic encryption, server device processing ciphertext and methods thereof
KR102027508B1 (ko) * 2017-12-29 2019-10-01 서울대학교산학협력단 Module-Wavy와 Module-LWR에 기반한 공개키 암호 키 생성 및 암복호화 방법
CN108494738B (zh) * 2018-02-27 2020-10-27 华南理工大学 一种可验证的后量子电子投票系统及其实现方法
WO2019180787A1 (ja) * 2018-03-19 2019-09-26 日本電気株式会社 復号装置、復号方法及びプログラム記録媒体
DE102018108313A1 (de) * 2018-04-09 2019-10-10 Infineon Technologies Ag Verfahren und Verarbeitungsvorrichtung zum Ausführen einer kryptografischen Operation auf Gitterbasis
US20190318118A1 (en) * 2018-04-16 2019-10-17 International Business Machines Corporation Secure encrypted document retrieval
CN108536651B (zh) * 2018-04-19 2022-04-05 武汉轻工大学 生成可逆模m矩阵的方法和装置
US11032061B2 (en) * 2018-04-27 2021-06-08 Microsoft Technology Licensing, Llc Enabling constant plaintext space in bootstrapping in fully homomorphic encryption
US10693628B2 (en) 2018-05-04 2020-06-23 International Business Machines Corporation Enabling distance-based operations on data encrypted using a homomorphic encryption scheme with inefficient decryption
WO2020005853A1 (en) * 2018-06-25 2020-01-02 Virtual Software Systems, Inc. Systems and methods for securing communications
DE102018122278A1 (de) * 2018-09-12 2020-03-12 Infineon Technologies Ag Ausführen einer kryptographischen Operation
US10902133B2 (en) 2018-10-25 2021-01-26 Enveil, Inc. Computational operations in enclave computing environments
KR102215245B1 (ko) * 2018-11-07 2021-02-16 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. 준동형 암호화를 사용하는 블록체인 데이터 보호
ES2876926T3 (es) * 2018-11-07 2021-11-15 Advanced New Technologies Co Ltd Protección de datos de cadena de bloques utilizando cifrado homomórfico
CN109361510B (zh) * 2018-11-07 2021-06-11 西安电子科技大学 一种支持溢出检测和大整数运算的信息处理方法及应用
US10817262B2 (en) 2018-11-08 2020-10-27 Enveil, Inc. Reduced and pipelined hardware architecture for Montgomery Modular Multiplication
WO2020117015A1 (ko) * 2018-12-07 2020-06-11 주식회사 크립토랩 다변수 패킹을 이용하는 연산 장치 및 방법
EP3921974A4 (de) * 2019-02-08 2022-04-06 Visa International Service Association Effizientere post-quantum-signaturen
CN110147681B (zh) * 2019-04-02 2022-11-29 西安电子科技大学 一种支持灵活访问控制的隐私保护大数据处理方法及系统
WO2020242614A1 (en) * 2019-05-30 2020-12-03 Kim Bong Mann Quantum safe cryptography and advanced encryption and key exchange (aeke) method for symmetric key encryption/exchange
US11381381B2 (en) * 2019-05-31 2022-07-05 Intuit Inc. Privacy preserving oracle
CN110378708B (zh) * 2019-07-24 2020-10-09 核芯互联科技(青岛)有限公司 一种隐藏式资信证明方法、装置、系统及存储介质
WO2021061833A1 (en) * 2019-09-26 2021-04-01 Visa International Service Association Lattice based signatures with uniform secrets
KR102364047B1 (ko) * 2019-11-19 2022-02-16 기초과학연구원 구조화된 행렬들에 기초한 공개키 암호를 위한 방법과 장치
CN112995106B (zh) * 2019-12-17 2023-05-19 航天信息股份有限公司 一种密钥的生成方法及装置
CN111049650B (zh) * 2019-12-27 2022-10-25 上海市数字证书认证中心有限公司 一种基于sm2算法的协同解密方法及装置、系统、介质
US11483139B2 (en) 2020-08-07 2022-10-25 Bank Of America Corporation System for secure data transmission using fully homomorphic encryption
US11601258B2 (en) 2020-10-08 2023-03-07 Enveil, Inc. Selector derived encryption systems and methods
KR20220048225A (ko) * 2020-10-12 2022-04-19 삼성전자주식회사 동형 연산 가속기 및 이를 포함하는 동형 연산 수행 장치
US11588617B2 (en) * 2020-11-01 2023-02-21 The Toronto-Dominion Bank Validating confidential data using homomorphic computations
CN112583588B (zh) * 2020-12-08 2022-06-21 四川虹微技术有限公司 一种通信方法及装置、可读存储介质
CN113037702B (zh) * 2020-12-16 2021-11-09 重庆扬成大数据科技有限公司 基于大数据分析农业工作人员登录系统安全工作方法
US20220385461A1 (en) * 2021-05-21 2022-12-01 Samsung Electronics Co., Ltd. Encryption key generating method, appratus, ciphertext operation method and apparatus using the generated encryption key
US11818244B2 (en) 2021-12-15 2023-11-14 The Governing Council Of The University Of Toronto Cryptographic processor for fully homomorphic encryption (FHE) applications
CN114301583B (zh) * 2021-12-22 2023-10-24 阿里巴巴(中国)有限公司 密文压缩方法、装置、设备和存储介质
CN114567488B (zh) * 2022-03-02 2024-01-26 东南大学 一种在任意共谋与窃听模式和固定消息长度下的对称性私密信息检索的方法
CN115001741B (zh) * 2022-04-22 2024-02-23 山东云海国创云计算装备产业创新中心有限公司 一种数据加密方法及相关组件

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4405829A (en) 1977-12-14 1983-09-20 Massachusetts Institute Of Technology Cryptographic communications system and method
JPS62132451A (ja) * 1985-12-05 1987-06-15 Toshiba Corp 公開鍵暗号方式
JPH1115373A (ja) 1997-06-20 1999-01-22 Fuji Xerox Co Ltd 公開鍵暗号方式
FR2788650B1 (fr) 1999-01-14 2001-02-16 Gemplus Card Int Procede cryptographique a cles publique et privee
US7360080B2 (en) 2000-11-03 2008-04-15 International Business Machines Corporation Non-transferable anonymous credential system with optional anonymity revocation
US7640432B2 (en) 2000-12-11 2009-12-29 International Business Machines Corporation Electronic cash controlled by non-homomorphic signatures
EP1249964A3 (de) 2001-04-12 2004-01-07 Matsushita Electric Industrial Co., Ltd. Empfangsendgerät, Vorrichtung zum Schlüsselverwaltung und Verfahren zum Anpassen eines Schlüssels für ein Public-key Verschlüsselungssystem
US7693285B2 (en) 2002-03-06 2010-04-06 Entrust, Inc. Secure communication apparatus and method
US7184551B2 (en) * 2002-09-30 2007-02-27 Micron Technology, Inc. Public key cryptography using matrices
US7500111B2 (en) 2003-05-30 2009-03-03 International Business Machines Corporation Querying encrypted data in a relational database system
US7552327B2 (en) 2003-11-13 2009-06-23 International Business Machines Corporation Method and apparatus for conducting a confidential search
US7395437B2 (en) 2004-01-05 2008-07-01 International Business Machines Corporation System and method for fast querying of encrypted databases
WO2005071881A1 (ja) 2004-01-22 2005-08-04 Nec Corporation ミックスネットシステム
US7461261B2 (en) 2004-02-13 2008-12-02 Ecole Polytechnique Federale De Lausanne (Epel) Method to generate, verify and deny an undeniable signature
US7269743B2 (en) 2004-07-16 2007-09-11 Hitachi, Ltd. Method and apparatus for secure data mirroring a storage system
US7472105B2 (en) 2004-10-19 2008-12-30 Palo Alto Research Center Incorporated System and method for providing private inference control
WO2006094017A2 (en) 2005-03-01 2006-09-08 The Regents Of The University Of California Method for private keyword search on streaming data
WO2007046302A1 (ja) 2005-10-17 2007-04-26 Matsushita Electric Industrial Co., Ltd. データ送信装置、データ受信装置、及びデータ通信装置
US7856100B2 (en) 2005-12-19 2010-12-21 Microsoft Corporation Privacy-preserving data aggregation using homomorphic encryption
ATE463898T1 (de) 2006-01-02 2010-04-15 Sap Ag System und verfahren für den vergleich von privatwerten
US7870399B2 (en) 2006-02-10 2011-01-11 Arxan Defense Systems Software trusted platform module and application security wrapper
US7995750B2 (en) 2006-07-06 2011-08-09 Sap Ag Privacy-preserving concatenation of strings
KR101273465B1 (ko) 2007-03-16 2013-06-14 재단법인서울대학교산학협력재단 집합 검증 장치 및 그 방법
US8055662B2 (en) 2007-08-27 2011-11-08 Mitsubishi Electric Research Laboratories, Inc. Method and system for matching audio recording
US20090138459A1 (en) 2007-11-27 2009-05-28 At&T Knowledge Ventures, Lp System and Method of Searching for Video Content
JP5110432B2 (ja) * 2008-02-06 2012-12-26 哲二 小林 準同形一方向性関数演算装置の応用システム
US8903090B2 (en) 2008-04-29 2014-12-02 International Business Machines Corporation Securely classifying data
JP2010039890A (ja) * 2008-08-07 2010-02-18 Hitachi Ltd 認証端末、認証サーバ、認証システム、認証方法および認証プログラム
US8249250B2 (en) * 2009-03-30 2012-08-21 Mitsubishi Electric Research Laboratories, Inc. Secure similarity verification between homomorphically encrypted signals
US20100329448A1 (en) * 2009-06-30 2010-12-30 Rane Shantanu D Method for Secure Evaluation of a Function Applied to Encrypted Signals
US8515058B1 (en) 2009-11-10 2013-08-20 The Board Of Trustees Of The Leland Stanford Junior University Bootstrappable homomorphic encryption method, computer program and apparatus
US8630422B2 (en) * 2009-11-10 2014-01-14 International Business Machines Corporation Fully homomorphic encryption method based on a bootstrappable encryption scheme, computer program and apparatus
US8565435B2 (en) * 2010-08-16 2013-10-22 International Business Machines Corporation Efficient implementation of fully homomorphic encryption
US8681973B2 (en) * 2010-09-15 2014-03-25 At&T Intellectual Property I, L.P. Methods, systems, and computer program products for performing homomorphic encryption and decryption on individual operations

Non-Patent Citations (16)

* Cited by examiner, † Cited by third party
Title
A. C. Yao. Protocols for secure computations (extended abstract). In 23rd Annual Symposium on Foundations of Computer Science - FOCS '82, Seiten 160 bis 164. IEEE, 1982
A. Kawachi, K. Tanaka und K. Xagawa. Multi-bit Cryptosystems Based an Lattice Problems. In Public Key Cryptography (PKC'07), Band 4450 der Lecture Notes in Computer Science, Seiten 315 bis 329. Springer, 2007
C. Aguilar Melchor, G. Castagnos, und P. Gaborit. Lattice-based homomorphic encryption of vector spaces. In IEEE International Symposium an Information Theory, ISIT'2008, Seiten 1858 bis 1862, 2008
C. Aguilar Melchor, P. Gaborit und H. Javier. Additive Homomorphic Encryption with t-Operand Multiplications. Technical Report 2008/378, IACR ePrint-Archiv, 2008. http://eprint.iacr.org/2008/378/
C. Gentry, C. Peikert und V. Vaikuntanathan. Trapdoors for hard lattices and new cryptographic constructions. In STOC, Seiten 197 bis 206, 2008
C. Gentry. A fully homomorphic encryption scheme. Doktorarbeit, Stanford University, 2009. http://crypto.stanford.edu/craig
C. Gentry. Fully homomorphic encryption using ideal lattices. In STOC '09, Seiten 169 bis 178. ACM, 2009
C. Peikert. Public-key cryptosystems from the worst-case shortest vector problem. In STOC'09, Seiten 333 bis 342. ACM, 2009
D. Boneh, E.-J. Goh und K. Nissim. Evaluating 2-DNF formulas an ciphertexts. Seiten 325 bis 341, 2005
J. Alwen und C. Peikert. Generating shorter bases for hard random lattices. In STACS, Seiten 75 bis 86, 2009
M. Ajtai. Generating hard instances of the short basis Problem. In ICALP, Seiten 1{9, 1999
O. Regev. On lattices, learning with errors, random linear codes, and cryptography. J. ACM, 56(6), 2009. Vorabversion in STOC'05
T. Sander, A. Young und M. Yung. Non-interactive CryptoComputing for NC1. In 40th Annual Symposium on Foundations of Computer Science, Seiten 554 bis 567. IEEE, 1999
W. Feller. An Introduction to Probability Theory and Its Applications, Band 1. Wiley, 1968
Y. Dodis, S. Goldwasser, Y. T. Kalai, C. Peikert und V. Vaikuntanathan. Publickey encryption schemes with auxiliary inputs. In TCC, Seiten 361 bis 381, 2010
Y. Lindell und B. Pinkas. A proof of security of yao's protocol for two-party computation. J. Cryptology, 22(2), 2009

Also Published As

Publication number Publication date
JP5812300B2 (ja) 2015-11-11
CN102822816A (zh) 2012-12-12
CN102822816B (zh) 2016-01-20
US8861716B2 (en) 2014-10-14
WO2011123418A1 (en) 2011-10-06
GB2492698B (en) 2017-12-27
US20150033033A1 (en) 2015-01-29
JP2013524277A (ja) 2013-06-17
US20110243320A1 (en) 2011-10-06
US9252954B2 (en) 2016-02-02
GB2492698A (en) 2013-01-09
GB201218721D0 (en) 2012-12-05

Similar Documents

Publication Publication Date Title
DE112011100327T5 (de) Effizientes homomorphes Verschlüsselungsverfahren für Bilinearformen
Gentry et al. A simple BGN-type cryptosystem from LWE
Canetti et al. Obfuscation of probabilistic circuits and applications
DE60113678T2 (de) Generator für pseudo-zufallszahlen
DE60024941T2 (de) Verschlüsselungsverfahren und -Vorrichtung, Entschlüsselungsverfahren und -Vorrichtung
Zhang et al. Ciphertext policy attribute-based encryption from lattices
Wang Lattice Ciphertext Policy Attribute-based Encryption in the Standard Model.
DE60315700T2 (de) Verfahren zum erzeugen einer stromverschlüsselung mit mehreren schlüsseln
Ramaiah et al. Efficient public key homomorphic encryption over integer plaintexts
Brakerski et al. Lattice-inspired broadcast encryption and succinct ciphertext-policy ABE
Kuang et al. Shannon perfect secrecy in a discrete Hilbert space
EP1298834A1 (de) Verfahren und Vorrichtung zum Verschlüsseln und Entschlüsseln von Daten
Lai et al. CCA-secure keyed-fully homomorphic encryption
Naim et al. New chaotic satellite image encryption by using some or all the rounds of the AES algorithm
Boche et al. Semantic security for quantum wiretap channels
Zhao et al. LSSS matrix-based attribute-based encryption on lattices
Wang et al. An efficient fully homomorphic encryption scheme for private information retrieval in the cloud
Zeng et al. Cryptanalyzing an image encryption algorithm based on scrambling and Veginère cipher
Damgård et al. How practical is public-key encryption based on LPN and ring-LPN?
Zhou et al. Efficient fully homomorphic encryption with circularly secure key switching process
Gao et al. STP-LWE: A variant of learning with error for a flexible encryption
Mogos Ciphertext-Policy Attribute-Based Encryption using Quantum Multilevel Secret Sharing Scheme.
Huang et al. Fully dynamic multi-key fhe without gaussian noise
Debbarma et al. 2D Chaos based color image encryption using pseudorandom key generation
Zhang et al. A new public key encryption scheme based on layered cellular automata

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017140000

Ipc: G06F0017160000

Effective date: 20121116

R016 Response to examination communication
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final