DE112021005887T5 - Durchsuchbares Verschlüsselungssystem und durchsuchbares Verschlüsselungsverfahren - Google Patents

Durchsuchbares Verschlüsselungssystem und durchsuchbares Verschlüsselungsverfahren Download PDF

Info

Publication number
DE112021005887T5
DE112021005887T5 DE112021005887.8T DE112021005887T DE112021005887T5 DE 112021005887 T5 DE112021005887 T5 DE 112021005887T5 DE 112021005887 T DE112021005887 T DE 112021005887T DE 112021005887 T5 DE112021005887 T5 DE 112021005887T5
Authority
DE
Germany
Prior art keywords
data
encrypted
keyword
key
unit
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.)
Pending
Application number
DE112021005887.8T
Other languages
English (en)
Inventor
Takato Hirano
Yutaka Kawai
Yoshihiro Koseki
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE112021005887T5 publication Critical patent/DE112021005887T5/de
Pending 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24547Optimisations to support specific applications; Extensibility of optimisers
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Eine Registrierungseinrichtung (400) verschlüsselt einen Klartext, um Chiffretextdaten zu erzeugen, wobei ein neuer Datenschlüssel verwendet wird, verschlüsselt ein Registrierungsschlüsselwort, um ein verschlüsseltes Schlüsselwort zu erzeugen, wobei ein neuer Schlüsselwortschlüssel verwendet wird, und registriert einen Satz der Chiffretextdaten und des verschlüsselten Schlüsselwortes in einer Registrierungsdatenbank. Eine Suchoperationseinrichtung (500) stellt einen alten Datenschlüssel aus dem neuen Datenschlüssel wieder her, stellt einen alten Schlüsselwortschlüssel aus dem neuen Schlüsselwortschlüssel wieder her und verschlüsselt ein Suchschlüsselwort, um jeweils eine neue Suchanfrage und eine alte Suchanfrage unter Verwendung des neuen Schlüsselwortschlüssels und des alten Schlüsselwortschlüssels zu erzeugen. Eine Datenverwaltungseinrichtung (600) findet ein verschlüsseltes Schlüsselwort, das mit einer der neuen Suchanfrage und der alten Suchanfrage übereinstimmt, aus der Registrierungsdatenbank und gibt ein verschlüsseltes Suchergebnis aus, das Chiffretextdaten entsprechend dem gefundenen verschlüsselten Schlüsselwort enthält. Die Suchoperationseinrichtung entschlüsselt einen Klartext aus den im verschlüsselten Suchergebnis enthaltenen Chiffretextdaten, wobei einer des neuen Datenschlüssels und des alten Datenschlüssels verwendet wird.

Description

  • Technisches Gebiet
  • Die vorliegende Offenbarung betrifft eine durchsuchbare Verschlüsselung.
  • Hintergrund zum Stand der Technik
  • Durchsuchbare Verschlüsselung ist eine Technologie zum Suchen nach verschlüsselten Daten, während die verschlüsselten Daten verschlüsselt bleiben. Das heißt, dass durchsuchbare Verschlüsselung eine Technologie zum Suchen nach verschlüsselten Daten ohne Entschlüsselung ist.
  • In jüngster Zeit gewinnt die durchsuchbare Verschlüsselung als Sicherheitstechnologie zum Schutz vertraulicher Informationen vor dem Abhören durch einen Serveradministrator und vor dem Abhören durch eine Schadsoftware in einem Cloud-Dienst an Bedeutung. Das heißt, dass die durchsuchbare Verschlüsselung als eine Sicherheitstechnologie für die Verwaltung von Daten im Internet Aufmerksamkeit erregt.
  • Es gibt zwei Arten von durchsuchbaren Verschlüsselungsschemata: ein Gemeinsamer-Schlüssel-Schema und ein Öffentlicher-Schlüssel-Schema.
  • Im Gemeinsamer-Schlüssel-Schema wird Gemeinsamer-Schlüssel-Kryptografie verwendet und Registrierer und Sucher sind beschränkt.
  • Im Öffentlicher-Schlüssel-Schema wird Öffentlicher-Schlüssel-Kryptografie verwendet und Sucher sind beschränkt, doch Registrierer sind nicht beschränkt.
  • Als Operationen des durchsuchbaren Verschlüsselungsschemas verschlüsselt ein Registrierer in einem Registrierungsprozess Daten und speichert die Daten dann in einem Server. Bei einem Suchprozess verschlüsselt ein Sucher ein Suchschlüsselwort und übermittelt das Suchschlüsselwort dann an den Server. Anschließend prüft der Server das Suchschlüsselwort mit den Daten, um zu prüfen, ob das Suchschlüsselwort mit den Daten übereinstimmt, ohne das verschlüsselte Suchschlüsselwort und die verschlüsselten und gespeicherten Daten zu entschlüsseln.
  • Referenzliste
  • Nicht-Patentliteratur
  • Nicht-Patentliteratur 1: A Method for Key-Updatable Symmetric Searchable Encryption. IEICE Technical Report ISEC2019-54.
  • Kurzfassung der Erfindung
  • Technische Aufgabe
  • In einer kryptografischen Technologie kann ein Schlüssel unter dem Gesichtspunkt des Schlüsselweitergaberisikos regelmäßig aktualisiert werden. Daher ist es denkbar, dass ein Schlüssel auch bei der durchsuchbaren Verschlüsselung aktualisiert wird.
  • Wird bei der durchsuchbaren Verschlüsselung ein Schlüssel einfach durch einen neuen Schlüssel ersetzt, können die mit dem alten Schlüssel verschlüsselten Daten nicht mit dem neuen Schlüssel durchsucht werden. Aus diesem Grund kann der alte Schlüssel nicht einfach verworfen werden und muss ständig aufbewahrt werden. Darüber hinaus muss ein Suchschlüsselwort mit allen aufbewahrten Schlüsseln verschlüsselt werden. Alternativ müssen Daten, die mit dem alten Schlüssel verschlüsselt wurden, mit dem neuen Schlüssel erneut verschlüsselt werden, damit der neue Schlüssel alle Daten verarbeiten kann.
  • Nicht-Patentliteratur 1 offenbart ein Verfahren zur Aktualisierung eines Schlüssels unter Verwendung eines gemeinsamen Schlüsselschemas, das für jedes Element verschlüsselter Daten einen Benutzer spezifizieren kann, der diese verschlüsselten Daten abrufen darf.
  • Zum Beispiel wird ein Schema wie unten beschrieben offenbart. Indem verschlüsselte Daten mit einem Attribut wie „kann abgerufen werden, wenn die Anzahl der Schlüsselaktualisierungen i Mal oder mehr beträgt“ als Attribut eines Benutzers, der die verschlüsselten Daten abrufen kann, vorgesehen sind, können die verschlüsselten Daten mit einem Schlüssel abgerufen werden, der i Mal oder mehr aktualisiert wurde. Das heißt, wenn ein Schlüssel, der i Mal aktualisiert wurde, als SK(i) bezeichnet wird, kann ein Benutzer, der SK(i+1), SK(i+2) oder einen neueren Schlüssel hat, diese verschlüsselten Daten abrufen. Selbst wenn ein Benutzer, der SK(i-1), SK(i-2) oder einen älteren Schlüssel besitzt, nach diesen verschlüsselten Daten mit einem übereinstimmenden Suchschlüsselwort sucht, wird jedoch nicht bestimmt, dass diese verschlüsselten Daten mit dem Suchschlüsselwort übereinstimmen.
  • Daher nimmt bei dem Verfahren aus Nicht-Patentliteratur 1 die Schlüsselgröße und die Größe des verschlüsselten Suchschlüsselworts nicht zu, selbst wenn eine Schlüsselaktualisierung durchgeführt wird.
  • Bei dem Verfahren aus Nicht-Patentliteratur 1 werden jedoch die Schlüsselgröße, die Größe des verschlüsselten Suchschlüsselwortes und die Größe der verschlüsselten Daten in Abhängigkeit von der maximalen Anzahl der Schlüsselaktualisierungen bestimmt. Das heißt, wenn die maximale Anzahl der Schlüsselaktualisierungen auf eine große Zahl gesetzt wird, nimmt auch die Schlüsselgröße, die Größe des verschlüsselten Suchschlüsselwortes und die Größe der verschlüsselten Daten zu.
  • Ein Ziel der vorliegenden Offenbarung ist es, die Schlüsselgröße, die Größe des verschlüsselten Suchschlüsselwortes und die Größe der verschlüsselten Daten nicht von der maximalen Anzahl der Schlüsselaktualisierungen abhängig zu machen.
  • Lösung der Aufgabe
  • Ein durchsuchbares Verschlüsselungssystem der vorliegenden Offenbarung umfasst
    eine Durchsuchbare-Verschlüsselungsdaten-Erzeugungseinheit zum Verschlüsseln eines Klartexts, um Chiffretextdaten zu erzeugen, wobei ein neuer Datenschlüssel verwendet wird, der durch Mehrfachverschlüsselung erzeugt wird, und zum Verschlüsseln eines Registrierungsschlüsselworts, um ein verschlüsseltes Schlüsselwort zu erzeugen, wobei ein neuer Schlüsselwortschlüssel verwendet wird, der durch die Mehrfachverschlüsselung erzeugt wird;
    eine Registrierungseinheit zum Registrieren eines Satzes der Chiffretextdaten und des verschlüsselten Schlüsselworts in einer Registrierungsdatenbank;
    eine Wiederherstellungseinheit zum Wiederherstellen eines alten Datenschlüssels aus dem neuen Datenschlüssel und zum Wiederherstellen eines alten Schlüsselwortschlüssels aus dem neuen Schlüsselwortschlüssel, auf Grundlage der Mehrfachverschlüsselung;
    eine Suchanfrage-Erzeugungseinheit zum Verschlüsseln eines Suchschlüsselwortes, um eine neue Suchanfrage und eine alte Suchanfrage zu erzeugen, wobei jeweils der neue Schlüsselwortschlüssel und der alte Schlüsselwortschlüssel verwendet wird;
    eine Sucheinheit zum Finden eines verschlüsselten Schlüsselwortes, das mit einer der neuen Suchanfrage und der alten Suchanfrage übereinstimmt, aus der Registrierungsdatenbank;
    eine Suchergebnis-Ausgabeeinheit zum Ausgeben eines verschlüsselten Suchergebnisses, das Chiffretextdaten enthält, die dem gefundenen verschlüsselten Schlüsselwort entsprechen; und
    eine Entschlüsselungseinheit zum Entschlüsseln eines Klartextes aus den im verschlüsselten Suchergebnis enthaltenen Chiffretextdaten, wobei einer des neuen Datenschlüssels und des alten Datenschlüssels verwendet wird.
  • Vorteilhafte Wirkungen der Erfindung
  • Gemäß der vorliegenden Offenbarung kann die Schlüsselgröße, die Größe des verschlüsselten Suchschlüsselwortes und die Größe der verschlüsselten Daten nicht von der maximalen Anzahl der Schlüsselaktualisierungen abhängig gemacht werden.
  • Figurenliste
    • 1 ist ein Konfigurationsdiagramm eines durchsuchbaren Verschlüsselungssystems 100 in Ausführungsform 1;
    • 2 ist ein Konfigurationsdiagramm einer Hauptschlüsseleinrichtung 200 in Ausführungsform 1;
    • 3 ist ein Konfigurationsdiagramm einer Geheimschlüsseleinrichtung 300 in Ausführungsform 1;
    • 4 ist ein Konfigurationsdiagramm einer Registrierungseinrichtung 400 in Ausführungsform 1;
    • 5 ist ein Konfigurationsdiagramm einer Suchoperationseinrichtung 500 in Ausführungsform 1;
    • 6 ist ein Konfigurationsdiagramm einer Datenverwaltungseinrichtung 600 in Ausführungsform 1;
    • 7 ist ein Flussdiagramm eines durchsuchbaren Verschlüsselungsverfahrens in Ausführungsform 1;
    • 8 ist ein Flussdiagramm einer Hauptschlüsselerzeugung (S110) in Ausführungsform 1;
    • 9 ist ein Flussdiagramm einer Geheimschlüsselerzeugung (S120) in Ausführungsform 1;
    • 10 ist ein Flussdiagramm einer Datenregistrierung (S140) in Ausführungsform 1;
    • 11 ist eine Darstellung, die ein Beispiel einer Registrierungsdatenbank 691 in Ausführungsform 1 veranschaulicht;
    • 12 ist ein Flussdiagramm einer Suchanforderung (S150) in Ausführungsform 1;
    • 13 ist ein Flussdiagramm einer Datensuche (S160) in Ausführungsform 1;
    • 14 ist ein Flussdiagramm einer Ergebnisentschlüsselung (S170) in Ausführungsform 1;
    • 15 ist ein Flussdiagramm einer Datenlöschung (S180) in Ausführungsform 1;
    • 16 ist ein Flussdiagramm einer Datenlöschung (S190) in Ausführungsform 1;
    • 17 ist ein Konfigurationsdiagramm der Registrierungseinrichtung 400 in Ausführungsform 2;
    • 18 ist ein Flussdiagramm des durchsuchbaren Verschlüsselungsverfahrens in Ausführungsform 2;
    • 19 ist ein Flussdiagramm einer Datenregistrierung (S240) in Ausführungsform 2;
    • 20 ist eine Darstellung, die ein Beispiel eines Suchergebnisses RES in Ausführungsform 2 veranschaulicht;
    • 21 ist eine Darstellung, die ein Beispiel der Registrierungsdatenbank 691 in Ausführungsform 2 veranschaulicht;
    • 22 ist ein Flussdiagramm einer Suchanforderung (S250) in Ausführungsform 2;
    • 23 ist ein Flussdiagramm einer Datensuche (S260) in Ausführungsform 2;
    • 24 ist ein Konfigurationsdiagramm der Datenverwaltungseinrichtung 600 in Ausführungsform 3;
    • 25 ist ein Flussdiagramm des durchsuchbaren Verschlüsselungsverfahrens in Ausführungsform 3;
    • 26 ist ein Flussdiagramm einer Hauptschlüsselerzeugung (S310) in Ausführungsform 3;
    • 27 ist ein Flussdiagramm einer Geheimschlüsselerzeugung (S320) in Ausführungsform 3;
    • 28 ist ein Flussdiagramm einer Datenregistrierung (S340) in Ausführungsform 3;
    • 29 ist ein Flussdiagramm einer Suchanforderung (S350) in Ausführungsform 3;
    • 30 ist ein Flussdiagramm einer Datensuche (S360) in Ausführungsform 3;
    • 31 ist ein Konfigurationsdiagramm der Registrierungseinrichtung 400 in Ausführungsform 4;
    • 32 ist ein Konfigurationsdiagramm der Datenverwaltungseinrichtung 600 in Ausführungsform 4;
    • 33 ist ein Flussdiagramm des durchsuchbaren Verschlüsselungsverfahrens in Ausführungsform 4;
    • 34 ist ein Flussdiagramm einer Datenregistrierung (S440) in Ausführungsform 4;
    • 35 ist ein Flussdiagramm einer Datensuche (S460) in Ausführungsform 4;
    • 36 ist ein Hardware-Konfigurationsdiagramm der Hauptschlüsseleinrichtung 200 in den Ausführungsformen;
    • 37 ist ein Hardware-Konfigurationsdiagramm der Geheimschlüsseleinrichtung 300 in den Ausführungsformen;
    • 38 ist ein Hardware-Konfigurationsdiagramm der Registrierungseinrichtung 400 in den Ausführungsformen;
    • 39 ist ein Hardware-Konfigurationsdiagramm der Suchoperationseinrichtung 500 in den Ausführungsformen; und
    • 40 ist ein Hardware-Konfigurationsdiagramm der Datenverwaltungseinrichtung 600 in den Ausführungsformen;
  • Beschreibung von Ausführungsformen
  • In den Ausführungsformen und Zeichnungen sind gleiche oder einander entsprechende Elemente mit dem gleichen Bezugszeichen bezeichnet. Die Beschreibung eines Elements, das mit demselben Bezugszeichen bezeichnet ist wie ein bereits beschriebenes Element, wird in geeigneter Weise weggelassen oder vereinfacht. Pfeile in Darstellungen zeigen hauptsächlich Daten- oder Verarbeitungsflüsse an.
  • Ausführungsform 1
  • Ein durchsuchbares Verschlüsselungssystem 100 wird basierend auf 1 bis 16 erläutert.
  • *** Beschreibung von Konfigurationen ***
  • Auf Basis von 1 wird eine Konfiguration des durchsuchbaren Verschlüsselungssystems 100 beschrieben.
  • Das durchsuchbare Verschlüsselungssystem 100 umfasst eine Hauptschlüsseleinrichtung 200, eine Geheimschlüsseleinrichtung 300, eine Registrierungsschlüsseleinrichtung 400, eine Suchoperationseinrichtung 500 und eine Datenverwaltungseinrichtung 600.
  • Die Einrichtungen des durchsuchbaren Verschlüsselungssystems 100 kommunizieren miteinander über ein Netzwerk 101.
  • Auf Basis von 2 wird eine Konfiguration der Hauptschlüsseleinrichtung 200 beschrieben.
  • Die Hauptschlüsseleinrichtung 200 ist ein Computer, der Hardware, wie einen Prozessor 201, einen Arbeitsspeicher 202, eine Hilfsspeichereinrichtung 203 und eine Eingabe/Ausgabe-Schnittstelle 204 aufweist. Diese Hardwarekomponenten sind durch Signalleitungen miteinander verbunden.
  • Der Prozessor 201 ist ein IC, der eine operative Verarbeitung durchführt und andere Hardwarekomponenten steuert. Zum Beispiel ist der Prozessor 201 eine CPU, ein DSP oder eine GPU.
  • IC ist eine Abkürzung für Integrated Circuit (dt. integrierte Schaltung).
  • CPU ist eine Abkürzung für Central Processing Unit (dt. zentrale Verarbeitungseinheit).
  • DSP ist die Abkürzung für Digital Signal Processor (dt. digitaler Signalprozessor).
  • GPU ist eine Abkürzung für Graphics Processing Unit (dt. Grafikverarbeitungseinheit).
  • Der Arbeitsspeicher 202 ist eine flüchtige oder nicht flüchtige Speichereinrichtung. Der Arbeitsspeicher 202 wird auch als eine Hauptspeichereinrichtung oder als ein Hauptarbeitsspeicher bezeichnet. Zum Beispiel ist der Arbeitsspeicher 202 ein RAM. Daten, die in dem Arbeitsspeicher 202 gespeichert sind, werden nach Bedarf in der Hilfsspeichereinrichtung 203 gesichert.
  • RAM ist eine Abkürzung für Random Access Memory (dt. Speicher mit wahlfreiem Zugriff).
  • Die Hilfsspeichereinrichtung 203 ist eine nicht flüchtige Speichereinrichtung. Zum Beispiel ist die Hilfsspeichereinrichtung 203 ein ROM, ein HDD oder ein Flash-Speicher. Daten, die in der Hilfsspeichereinrichtung 203 gespeichert sind, werden nach Bedarf in den Arbeitsspeicher 202 geladen.
  • ROM ist eine Abkürzung für Read Only Memory (dt. Nur-Lese-Speicher).
  • HDD ist eine Abkürzung für Hard Disk Drive (Festplattenlaufwerk).
  • Die Eingabe/Ausgabe-Schnittstelle 204 ist ein Anschluss, mit dem eine Eingabeeinrichtung und eine Ausgabeeinrichtung verbunden sind. Beispielsweise ist die Eingabe/Ausgabe-Schnittstelle 204 ein USB-Anschluss, die Eingabeeinrichtung ist eine Tastatur und eine Maus, und die Ausgabeeinrichtung ist eine Anzeige. Die Eingabe in die und die Ausgabe aus der Hauptschlüsseleinrichtung 200 erfolgt über die Eingabe/Ausgabe-Schnittstelle 204.
  • USB ist eine Abkürzung für Universal Serial Bus (dt. universeller serieller Bus).
  • Eine Kommunikationseinrichtung 205 ist ein Empfänger und ein Übertrager. Zum Beispiel ist die Kommunikationseinrichtung 205 ein Kommunikations-Chip oder eine NIC. Die Kommunikation der Hauptschlüsseleinrichtung 200 erfolgt über die Kommunikationseinrichtung 205.
  • NIC ist eine Abkürzung für Network Interface Card (dt. Netzwerkschnittstellenkarte).
  • Die Hauptschlüsseleinrichtung 200 umfasst Elemente wie eine Annahmeeinheit 210, eine Erzeugungseinheit 220 und eine Ausgabeeinheit 230. Diese Elemente sind durch Software realisiert.
  • Die Hilfsspeichereinrichtung 203 speichert ein Hauptschlüsselprogramm, um einen Computer zu veranlassen, als die Annahmeeinheit 210, die Erzeugungseinheit 220 (Hauptschlüsselerzeugungseinheit) und die Ausgabeeinheit (Hauptschlüsselausgabeeinheit) 230 zu arbeiten. Das Hauptschlüsselprogramm wird in den Arbeitsspeicher 202 geladen und durch den Prozessor 201 ausgeführt.
  • Ferner speichert die Hilfsspeichereinrichtung 203 ein OS. Zumindest ein Teil des OS wird in den Arbeitsspeicher 202 geladen und durch den Prozessor 201 ausgeführt.
  • Der Prozessor 201 führt das Hauptschlüsselprogramm aus, während das OS ausgeführt wird.
  • OS ist eine Abkürzung für Operating System (dt. Betriebssystem).
  • Eingabedaten und Ausgabedaten des Hauptschlüsselprogramms werden in einer Speichereinheit 290 gespeichert.
  • Die Hilfsspeichereinrichtung 203 funktioniert als die Speichereinheit 290. Jedoch kann eine Speichereinrichtung wie etwa der Arbeitsspeicher 202, ein Register in dem Prozessor 201 oder ein Cache-Speicher in dem Prozessor 201, anstelle der Hilfsspeichereinrichtung 203 oder zusammen mit der Hilfsspeichereinrichtung 203 als die Speichereinheit 290 funktionieren.
  • Die Hauptschlüsseleinrichtung 200 kann als Alternative zu dem Prozessor 201 eine Mehrzahl von Prozessoren einschließen. Die Vielzahl von Prozessoren teilen sich die Funktionen des Prozessors 201.
  • Das Hauptschlüsselprogramm kann in einem computerlesbaren Format in einem nicht flüchtigen Aufzeichnungsmedium, wie etwa einer optischen Scheibe oder einem Flash-Speicher, aufgezeichnet (gespeichert) sein.
  • Auf Basis von 3 wird eine Konfiguration der Geheimschlüsseleinrichtung 300 beschrieben.
  • Die Geheimschlüsseleinrichtung 300 ist ein Computer, der Hardware, wie einen Prozessor 301, einen Arbeitsspeicher 302, eine Hilfsspeichereinrichtung 303, eine Eingabe/Ausgabe-Schnittstelle 304 und eine Kommunikationseinrichtung 305 aufweist. Diese Hardwarekomponenten sind durch Signalleitungen miteinander verbunden.
  • Der Prozessor 301 ist ein IC, der eine operative Verarbeitung durchführt und andere Hardwarekomponenten steuert. Zum Beispiel ist der Prozessor 301 eine CPU, ein DSP oder eine GPU.
  • Der Arbeitsspeicher 302 ist eine flüchtige oder nicht flüchtige Speichereinrichtung. Der Arbeitsspeicher 302 wird auch als eine Hauptspeichereinrichtung oder als ein Hauptspeicher bezeichnet. Zum Beispiel ist der Arbeitsspeicher 302 ein RAM. Daten, die in dem Arbeitsspeicher 302 gespeichert sind, werden nach Bedarf in der Hilfsspeichereinrichtung 303 gesichert.
  • Die Hilfsspeichereinrichtung 303 ist eine nicht-flüchtige Speichereinrichtung. Zum Beispiel ist die Hilfsspeichereinrichtung 303 ein ROM, ein HDD oder ein Flash-Speicher. Daten, die in der Hilfsspeichereinrichtung 303 gespeichert sind, werden nach Bedarf in den Arbeitsspeicher 302 geladen.
  • Die Eingabe/Ausgabe-Schnittstelle 304 ist ein Anschluss, mit dem eine Eingabeeinrichtung und eine Ausgabeeinrichtung verbunden werden. Beispielsweise ist die Eingabe/Ausgabe-Schnittstelle 304 ein USB-Anschluss, die Eingabeeinrichtung ist eine Tastatur und eine Maus, und die Ausgabeeinrichtung ist eine Anzeige. Die Eingabe in die und die Ausgabe aus der Geheimschlüsseleinrichtung 300 werden durch die Eingabe/Ausgabe-Schnittstelle 304 durchgeführt.
  • Die Kommunikationseinrichtung 305 ist ein Empfänger und ein Übertrager. Zum Beispiel ist die Kommunikationseinrichtung 305 ein Kommunikations-Chip oder eine NIC. Die Kommunikation der Geheimschlüsseleinrichtung 300 wird durch die Kommunikationseinrichtung 305 durchgeführt.
  • Die Geheimschlüsseleinrichtung 300 umfasst Elemente wie eine Annahmeeinheit 310, eine Erzeugungseinheit 320 und eine Ausgabeeinheit 330. Diese Elemente sind durch Software realisiert.
  • Die Hilfsspeichereinrichtung 303 speichert ein Geheimschlüsselprogramm, um einen Computer zu veranlassen, als die Annahmeeinheit 310, die Erzeugungseinheit 320 (Geheimschlüsselerzeugungseinheit) und die Ausgabeeinheit (Geheimschlüsselausgabeeinheit) 330 zu arbeiten. Das Geheimschlüsselprogramm wird in den Arbeitsspeicher 302 geladen und durch den Prozessor 301 ausgeführt.
  • Ferner speichert die Hilfsspeichereinrichtung 303 ein OS. Zumindest ein Teil des OS wird in den Arbeitsspeicher 302 geladen und durch den Prozessor 301 ausgeführt.
  • Der Prozessor 301 führt das Geheimschlüsselprogramm aus, während er das Betriebssystem ausführt.
  • Eingabedaten und Ausgabedaten des Geheimschlüsselprogramms werden in einer Speichereinheit 390 gespeichert.
  • Die Hilfsspeichereinrichtung 303 funktioniert als die Speichereinheit 390. Jedoch kann eine Speichereinrichtung wie etwa der Arbeitsspeicher 302, ein Register in dem Prozessor 301 oder ein Cache-Speicher in dem Prozessor 301, anstelle der Hilfsspeichereinrichtung 303 oder zusammen mit der Hilfsspeichereinrichtung 303 als die Speichereinheit 390 funktionieren.
  • Die Geheimschlüsseleinrichtung 300 kann als Alternative zu dem Prozessor 301 eine Vielzahl von Prozessoren einschließen. Die Vielzahl von Prozessoren teilen sich die Funktionen des Prozessors 301.
  • Das Geheimschlüsselprogramm kann in einem computerlesbaren Format in einem nicht flüchtigen Aufzeichnungsmedium, wie etwa einer optischen Scheibe oder einem Flash-Speicher, aufgezeichnet (gespeichert) sein.
  • Anhand von 4 wird eine Konfiguration der Registrierungseinrichtung 400 beschrieben.
  • Die Registrierungseinrichtung 400 ist ein Computer mit Hardware wie einem Prozessor 401, einem Arbeitsspeicher 402, einer Hilfsspeichereinrichtung 403, einer Eingabe/Ausgabe-Schnittstelle 404 und einer Kommunikationseinrichtung 405. Diese Hardwarekomponenten sind durch Signalleitungen miteinander verbunden.
  • Der Prozessor 401 ist ein IC, der eine operative Verarbeitung durchführt und andere Hardwarekomponenten steuert. Zum Beispiel ist der Prozessor 401 eine CPU, ein DSP oder eine GPU.
  • Der Arbeitsspeicher 402 ist eine flüchtige oder nicht flüchtige Speichereinrichtung. Der Arbeitsspeicher 402 wird auch als eine Hauptspeichereinrichtung oder als ein Hauptspeicher bezeichnet. Der Arbeitsspeicher 402 ist zum Beispiel ein RAM. Daten, die in dem Arbeitsspeicher 402 gespeichert sind, werden nach Bedarf in der Hilfsspeichereinrichtung 403 gesichert.
  • Die Hilfsspeichereinrichtung 403 ist eine nicht-flüchtige Speichereinrichtung. Beispielsweise ist die Hilfsspeichereinrichtung 403 ein ROM, ein HDD oder ein Flash-Speicher. Daten, die in der Hilfsspeichereinrichtung 403 gespeichert sind, werden nach Bedarf in den Arbeitsspeicher 402 geladen.
  • Die Eingabe/Ausgabe-Schnittstelle 404 ist ein Anschluss, mit dem eine Eingabeeinrichtung und eine Ausgabeeinrichtung verbunden werden. Beispielsweise ist die Eingabe/Ausgabe-Schnittstelle 404 ein USB-Anschluss, die Eingabeeinrichtung ist eine Tastatur und eine Maus, und die Ausgabeeinrichtung ist eine Anzeige. Die Eingabe in die und die Ausgabe aus der Registrierungseinrichtung 400 werden durch die Eingabe/Ausgabe-Schnittstelle 404 durchgeführt.
  • Die Kommunikationseinrichtung 405 ist ein Empfänger und ein Übertrager. Zum Beispiel ist die Kommunikationseinrichtung 405 ein Kommunikations-Chip oder eine NIC. Die Kommunikation der Registrierungseinrichtung 400 wird durch die Kommunikationseinrichtung 405 durchgeführt.
  • Die Registrierungseinrichtung 400 umfasst Elemente wie eine Annahmeeinheit 410, eine Erzeugungseinheit 420 (Durchsuchbare-Verschlüsselungsdaten-Erzeugungseinheit) und eine Registrierungseinheit 430. Diese Elemente sind durch Software realisiert.
  • Die Erzeugungseinheit 420 umfasst Elemente wie eine Zufallszahl-Erzeugungseinheit 421, eine Chiffretextdaten-Erzeugungseinheit 422, eine Schlüsselwort-Erzeugungseinheit 423 und eine Verschlüsseltes-Tag-Erzeugungseinheit 424.
  • Die Hilfsspeichereinrichtung 403 speichert ein Registrierungsprogramm, um einen Computer zu veranlassen, als die Annahmeeinheit 410, die Erzeugungseinheit 420 und die Registrierungseinheit 430 zu arbeiten. Das Registrierungsprogramm wird in den Arbeitsspeicher 402 geladen und durch den Prozessor 401 ausgeführt.
  • In der Hilfsspeichereinrichtung 403 ist darüber hinaus ein OS gespeichert. Zumindest ein Teil des OS wird in den Arbeitsspeicher 402 geladen und durch den Prozessor 401 ausgeführt.
  • Der Prozessor 401 führt das Registrierungsprogramm aus, während er das OS ausführt.
  • Eingabedaten und Ausgabedaten des Registrierungsprogramms werden in einer Speichereinheit 490 gespeichert.
  • Die Hilfsspeichereinrichtung 403 funktioniert als die Speichereinheit 490. Jedoch kann eine Speichereinrichtung wie etwa der Arbeitsspeicher 402, ein Register in dem Prozessor 401 oder ein Cache-Speicher in dem Prozessor 401, anstelle der Hilfsspeichereinrichtung 403 oder zusammen mit der Hilfsspeichereinrichtung 403 als die Speichereinheit 490 funktionieren.
  • Die Registrierungseinrichtung 400 kann als Alternative zu dem Prozessor 401 eine Vielzahl von Prozessoren einschließen. Die Vielzahl von Prozessoren teilen sich die Funktionen des Prozessors 401.
  • Die Registrierungseinrichtung 400 kann in einem computerlesbaren Format in einem nicht-flüchtigen Aufzeichnungsmedium, wie etwa einer optischen Scheibe oder einem Flash-Speicher, aufgezeichnet (gespeichert) sein.
  • Anhand von 5 wird eine Konfiguration der Suchoperationseinrichtung 500 beschrieben.
  • Die Suchoperationseinrichtung 500 ist ein Computer mit Hardware wie einem Prozessor 501, einem Arbeitsspeicher 502, einer Hilfsspeichereinrichtung 503, einer Eingabe-/Ausgabeschnittstelle 504 und einer Kommunikationseinrichtung 505. Diese Hardwarekomponenten sind durch Signalleitungen miteinander verbunden.
  • Der Prozessor 501 ist ein IC, der eine operative Verarbeitung durchführt und andere Hardwarekomponenten steuert. Zum Beispiel ist der Prozessor 501 eine CPU, ein DSP oder eine GPU.
  • Der Arbeitsspeicher 502 ist eine flüchtige oder nicht flüchtige Speichereinrichtung. Der Arbeitsspeicher 502 wird auch als eine Hauptspeichereinrichtung oder als ein Hauptarbeitsspeicher bezeichnet. Zum Beispiel ist der Arbeitsspeicher 502 ein RAM. Daten, die in dem Arbeitsspeicher 502 gespeichert sind, werden nach Bedarf in der Hilfsspeichereinrichtung 503 gesichert.
  • Die Hilfsspeichereinrichtung 503 ist eine nicht flüchtige Speichereinrichtung. Zum Beispiel ist die Hilfsspeichereinrichtung 503 ein ROM, ein HDD oder ein Flash-Speicher. Daten, die in der Hilfsspeichereinrichtung 503 gespeichert sind, werden nach Bedarf in den Arbeitsspeicher 502 geladen.
  • Die Eingabe/Ausgabe-Schnittstelle 504 ist ein Anschluss, mit dem eine Eingabeeinrichtung und eine Ausgabeeinrichtung verbunden werden. Beispielsweise ist die Eingabe/Ausgabe-Schnittstelle 504 ein USB-Anschluss, die Eingabeeinrichtung ist eine Tastatur und eine Maus, und die Ausgabeeinrichtung ist eine Anzeige. Die Eingabe in die und die Ausgabe aus der Suchoperationseinrichtung 500 werden durch die Eingabe/Ausgabe-Schnittstelle 504 durchgeführt.
  • Die Kommunikationseinrichtung 505 ist ein Empfänger und ein Übertrager. Zum Beispiel ist die Kommunikationseinrichtung 505 ein Kommunikations-Chip oder eine NIC. Die Kommunikation der Suchoperationseinrichtung 500 wird durch die Kommunikationseinrichtung 505 durchgeführt.
  • Die Suchoperationseinrichtung 500 umfasst Elemente wie eine Annahmeeinheit 510, eine Wiederherstellungseinheit 520, eine Erzeugungseinheit 530 (Suchanfrage-Erzeugungseinheit), eine Anforderungseinheit 540, eine Verschlüsselungseinheit 550 und eine Ausgabeeinheit 560 (Suchergebnis-Ausgabeeinheit). Diese Elemente sind durch Software realisiert.
  • Die Hilfsspeichereinrichtung 503 speichert ein Suchoperationsprogramm, um einen Computer zu veranlassen, als die Annahmeeinheit 510, die Wiederherstellungseinheit 520, die Erzeugungseinheit 530, die Anforderungseinheit 540, die Verschlüsselungseinheit 550 und die Ausgabeeinheit 560 zu arbeiten. Das Suchoperationsprogramm wird in den Arbeitsspeicher 502 geladen und durch den Prozessor 501 ausgeführt.
  • Ferner speichert die Hilfsspeichereinrichtung 503 ein OS. Zumindest ein Teil des OS wird in den Arbeitsspeicher 502 geladen und durch den Prozessor 501 ausgeführt.
  • Der Prozessor 501 führt das Suchoperationsprogramm aus, während er das OS ausführt.
  • Eingabedaten und Ausgabedaten des Suchoperationsprogramms werden in einer Speichereinheit 590 gespeichert.
  • Die Hilfsspeichereinrichtung 503 funktioniert als die Speichereinheit 590. Jedoch kann eine Speichereinrichtung wie etwa der Arbeitsspeicher 502, ein Register in dem Prozessor 501 oder ein Cache-Speicher in dem Prozessor 501, anstelle der Hilfsspeichereinrichtung 503 oder zusammen mit der Hilfsspeichereinrichtung 503 als die Speichereinheit 590 funktionieren.
  • Die Suchoperationseinrichtung 500 kann als Alternative zu dem Prozessor 501 eine Vielzahl von Prozessoren einschließen. Die Vielzahl von Prozessoren teilen sich die Funktionen des Prozessors 501.
  • Die Suchoperationseinrichtung 500 kann in einem computerlesbaren Format in einem nicht flüchtigen Aufzeichnungsmedium, wie etwa einer optischen Scheibe oder einem Flash-Speicher, aufgezeichnet (gespeichert) sein.
  • Anhand von 6 wird eine Konfiguration der Datenverwaltungseinrichtung 600 beschrieben.
  • Die Datenverwaltungseinrichtung 600 ist ein Computer mit Hardware wie einem Prozessor 601, einem Arbeitsspeicher 602, einer Hilfsspeichereinrichtung 603, einer Eingabe-/Ausgabeschnittstelle 604 und einer Kommunikationseinrichtung 605. Diese Hardwarekomponenten sind durch Signalleitungen miteinander verbunden.
  • Der Prozessor 601 ist ein IC, der eine operative Verarbeitung durchführt und andere Hardwarekomponenten steuert. Zum Beispiel ist der Prozessor 601 eine CPU, ein DSP oder eine GPU.
  • Der Arbeitsspeicher 602 ist eine flüchtige oder nicht flüchtige Speichereinrichtung. Der Arbeitsspeicher 602 wird auch als eine Hauptspeichereinrichtung oder als ein Hauptarbeitsspeicher bezeichnet. Zum Beispiel ist der Arbeitsspeicher 602 ein RAM. Daten, die in dem Arbeitsspeicher 602 gespeichert sind, werden nach Bedarf in der Hilfsspeichereinrichtung 603 gesichert.
  • Die Hilfsspeichereinrichtung 603 ist eine nicht flüchtige Speichereinrichtung. Zum Beispiel ist die Hilfsspeichereinrichtung 603 ein ROM, ein HDD oder ein Flash-Speicher. Daten, die in der Hilfsspeichereinrichtung 603 gespeichert sind, werden nach Bedarf in den Arbeitsspeicher 602 geladen.
  • Die Eingabe/Ausgabe-Schnittstelle 604 ist ein Anschluss, mit dem eine Eingabeeinrichtung und eine Ausgabeeinrichtung verbunden werden. Beispielsweise ist die Eingabe/Ausgabe-Schnittstelle 604 ein USB-Anschluss, die Eingabeeinrichtung ist eine Tastatur und eine Maus, und die Ausgabeeinrichtung ist eine Anzeige. Die Eingabe in die und die Ausgabe aus der Datenverwaltungseinrichtung 600 werden durch die Eingabe/Ausgabe-Schnittstelle 604 durchgeführt.
  • Die Kommunikationseinrichtung 605 ist ein Empfänger und ein Übertrager. Zum Beispiel ist die Kommunikationseinrichtung 605 ein Kommunikations-Chip oder eine NIC. Die Kommunikation der Datenverwaltungseinrichtung 600 wird durch die Kommunikationseinrichtung 605 durchgeführt.
  • Die Datenverwaltungseinrichtung 600 umfasst Elemente wie eine Annahmeeinheit 610, eine Sucheinheit 620, eine Ausgabeeinheit 630 (Verschlüsseltes-Suchergebnis-Ausgabeeinheit) und eine Verwaltungseinheit 640. Diese Elemente sind durch Software realisiert.
  • Die Sucheinheit 620 umfasst Elemente wie eine Prüfeinheit 621 und eine Extrahierungseinheit 622.
  • Die Hilfsspeichereinrichtung 603 speichert ein Datenverwaltungsprogramm, um einen Computer zu veranlassen, als die Annahmeeinheit 610, die Sucheinheit 620, die Ausgabeeinheit 630 und die Verwaltungseinheit 640 zu arbeiten. Das Datenverwaltungsprogramm wird in den Arbeitsspeicher 602 geladen und durch den Prozessor 601 ausgeführt.
  • Ferner speichert die Hilfsspeichereinrichtung 603 ein OS. Zumindest ein Teil des OS wird in den Arbeitsspeicher 602 geladen und durch den Prozessor 601 ausgeführt.
  • Der Prozessor 601 führt das Datenverwaltungsprogramm aus, während er das OS ausgeführt.
  • Eingabedaten und Ausgabedaten des Datenverwaltungsprogramms werden in einer Speichereinheit 690 gespeichert.
  • Die Hilfsspeichereinrichtung 603 funktioniert als die Speichereinheit 690. Jedoch kann eine Speichereinrichtung wie etwa der Arbeitsspeicher 602, ein Register in dem Prozessor 601 oder ein Cache-Speicher in dem Prozessor 601, anstelle der Hilfsspeichereinrichtung 603 oder zusammen mit der Hilfsspeichereinrichtung 603 als die Speichereinheit 690 funktionieren.
  • Die Datenverwaltungseinrichtung 600 kann alternativ zum Prozessor 601 eine Vielzahl von Prozessoren umfassen. Die Vielzahl von Prozessoren teilen sich die Funktionen des Prozessors 601.
  • Die Datenverwaltungseinrichtung 600 kann in einem computerlesbaren Format in einem nicht flüchtigen Aufzeichnungsmedium, wie etwa einer optischen Scheibe oder einem Flash-Speicher, aufgezeichnet (gespeichert) sein.
  • *** Beschreibung der Operation ***
  • Ein Operationsablauf des durchsuchbaren Verschlüsselungssystems 100 entspricht einem durchsuchbaren Verschlüsselungsverfahren. Der Operationsablauf des durchsuchbaren Verschlüsselungssystems 100 entspricht auch einem Ablauf zur Verarbeitung durch ein durchsuchbares Verschlüsselungsprogramm.
  • Anhand von 7 wird das durchsuchbare Verschlüsselungsverfahren beschrieben.
  • In Schritt S110 erzeugt die Hauptschlüsseleinrichtung 200 einen Hauptschlüssel MK und einen öffentlichen Parameter PP.
  • Anhand von 8 wird ein Ablauf für die Hauptschlüsselerzeugung (S110) beschrieben.
  • Die Hauptschlüsselerzeugung (S110) ist ein Prozess, der durch die Hauptschlüsseleinrichtung 200 durchgeführt wird.
  • In Schritt S111 nimmt die Annahmeeinheit 210 eine Schlüssellänge BIT und eine maximale Anzahl von Malen MAX an.
  • Die Schlüssellänge BIT ist die Länge des Hauptschlüssels MK und wird durch eine positive ganze Zahl (natürliche Zahl) repräsentiert.
  • Die maximale Anzahl von Malen MAX ist der Maximalwert für die Anzahl von Malen, die ein Geheimschlüssel SK aktualisiert wird und wird durch eine positive ganze Zahl dargestellt.
  • In Schritt S112 erzeugt die Erzeugungseinheit 220 den Hauptschlüssel MK auf Grundlage der Schlüssellänge BIT.
  • Insbesondere erzeugt die Erzeugungseinheit 220 eine zufällige Zahl R mit der gleichen Bit-Länge wie die Schlüssellänge BIT. Die erzeugte Zufallszahl R ist der Hauptschlüssel MK. Der Hauptschlüssel MK wird wie unten angegeben ausgedrückt. MK = R
    Figure DE112021005887T5_0001
  • Außerdem erzeugt die Erzeugungseinheit 220 den öffentlichen Parameter PP unter Verwendung der maximalen Anzahl von Malen MAX. Der öffentliche Parameter PP wird wie unten beschrieben erzeugt.
  • Zunächst wählt die Erzeugungseinheit 220 ein Gemeinsamer-Schlüssel-Verschlüsselungsschema E aus. Spezifische Beispiele für das Gemeinsamer-Schlüssel-Verschlüsselungsschema E sind AES-CTR und AES-CBC.
  • Die Erzeugungseinheit 220 wählt auch eine kryptografische Funktion F aus.
  • Die kryptografische Funktion F ist eine kryptografische Hash-Funktion. Konkrete Beispiele für die kryptografische Funktion F sind SHA-256 und SHA-512.
  • Dann erzeugt die Erzeugungseinheit 220 einen Parameter, der einen Identifikator des Gemeinsamer-Schlüssel-Verschlüsselungsschemas E, einen Identifikator der kryptografischen Funktion F und die maximale Anzahl von Malen MAX enthält. Der erzeugte Parameter ist der öffentliche Parameter PP.
  • Der öffentliche Parameter PP wird wie unten angegeben ausgedrückt. PP = ( E ,  F ,  MAX )
    Figure DE112021005887T5_0002
  • AES ist eine Abkürzung für Advanced Encryption Standard (dt. Erweiterter Verschlüsselungsstandard).
  • CTR ist eine Abkürzung für Zähler.
  • CBC ist eine Abkürzung für Cipher Block Chaining.
  • SHA ist eine Abkürzung für Secure Hash Algorithm (sicherer Hash-Algorithmus).
  • In Schritt S113 speichert und bewahrt die Erzeugungseinheit 220 den Hauptschlüssel MK und den öffentlichen Parameter PP in der Speichereinheit 290.
  • In Schritt S114 gibt die Ausgabeeinheit 230 den Hauptschlüssel MK aus.
  • Zum Beispiel überträgt die Ausgabeeinheit 230 den Hauptschlüssel MK unter Verwendung der Kommunikationseinrichtung 205 an die Geheimschlüsseleinrichtung 300.
  • Der Hauptschlüssel MK wird zur Erzeugung des geheimen Schlüssels SK verwendet.
  • Die Ausgabeeinheit 230 gibt außerdem den öffentlichen Parameter PP aus.
  • Beispielsweise überträgt die Ausgabeeinheit 230 den öffentlichen Parameter PP an jede von der Geheimschlüsseleinrichtung 300, der Registrierungseinrichtung 400, der Suchoperationseinrichtung 500 und der Datenverwaltungseinrichtung 600 unter Verwendung der Kommunikationseinrichtung 205.
  • Der öffentliche Parameter PP wird verwendet, um den Geheimschlüssel SK zu erzeugen, den Geheimschlüssel SK zu aktualisieren, verschlüsselte Daten C zu registrieren, nach den verschlüsselten Daten C zu suchen, die verschlüsselten Daten C zu entschlüsseln und eine Suchanfrage SQ zu erzeugen.
  • Erneut bezugnehmend auf 7, wird die Beschreibung ab Schritt S120 fortgesetzt.
  • In Schritt S120 erzeugt die Geheimschlüsseleinrichtung 300 den Geheimschlüssel SK.
  • Der Geheimschlüssel SK ist ein Schlüssel (Gemeinsamer Schlüssel) des Gemeinsamer-Schlüssel-Schemas.
  • Anhand von 9 wird ein Ablauf für eine Geheimschlüsselerzeugung (S120) beschrieben.
  • Die Geheimschlüsselerzeugung (S120) ist ein Prozess, der durch die Geheimschlüsseleinrichtung 300 ausgeführt wird.
  • In Schritt S121 nimmt die Annahmeeinheit 310 den Hauptschlüssel MK und den öffentlichen Parameter PP an und speichert und bewahrt den Hauptschlüssel MK und den öffentlichen Parameter PP in der Speichereinheit 390.
  • Falls der Hauptschlüssel MK und der öffentliche Parameter PP jedoch bereits gespeichert wurden, ist Schritt S121 unnötig.
  • In Schritt S122 nimmt die Annahmeeinheit 310 eine Schlüsselerzeugungszahl i an und speichert und bewahrt die Schlüsselerzeugungszahl i in der Speichereinheit 390.
  • Falls jedoch ein Geheimschlüssel SK(i-1) gespeichert ist, kann die Schlüsselerzeugungszahl i durch Addition von 1 zur Schlüsselerzeugungszahl (i-1) des Geheimschlüssels SK(i-1) erhalten werden, so dass Schritt S122 unnötig ist.
  • Die Schlüsselerzeugungszahl i ist die Zahl, die die Erzeugung des Geheimschlüssels SK identifiziert, und wird durch eine positive ganze Zahl dargestellt.
  • Ein Geheimschlüssel SK(i) ist ein Geheimschlüssel SK der durch die Schlüsselerzeugungszahl i identifizierten Erzeugung. Wenn die Schlüsselerzeugungszahl i nicht spezifiziert ist, wird der geheime Schlüssel einfach als „SK“ bezeichnet.
  • In Schritt S123 erzeugt die Erzeugungseinheit 320 den Geheimschlüssel SK(i) unter Verwendung des Hauptschlüssels MK, des öffentlichen Parameters PP und der Schlüsselerzeugungszahl i.
  • Der Geheimschlüssel SK(i) umfasst einen Datenschlüssel DK(i), einen Schlüsselwortschlüssel KK(i) und die Schlüsselerzeugungszahl i. Wenn die Schlüsselerzeugungszahl i nicht spezifiziert ist, wird der Datenschlüssel einfach als „DK“ bezeichnet und der Schlüsselwortschlüssel wird einfach als „KK“ bezeichnet.
  • Der Datenschlüssel DK ist ein geheimer Schlüssel für Daten.
  • Der Schlüsselwortschlüssel KK ist ein geheimer Schlüssel für ein Schlüsselwort.
  • Der Geheimschlüssel SK(i) wird wie unten angegeben ausgedrückt. SK ( i ) = ( DK ( i ) ,  KK ( i ) ,  i )
    Figure DE112021005887T5_0003
  • Der Datenschlüssel DK(i) und der Schlüsselwortschlüssel KK(i) werden wie nachstehend angegeben ausgedrückt. DK ( i ) = F ( MAX i + 1 ) ( R 0 )
    Figure DE112021005887T5_0004
    KK ( i ) = F ( MAX i + 1 ) ( R 1 )
    Figure DE112021005887T5_0005
  • Der Identifikator der kryptografische Funktion F ist in dem öffentlichen Parameter enthalten.
  • Fn(X) bedeutet, dass die kryptografische Funktion F für einen Eingabewert X n-mal wiederholt wird, d. h. eine Mehrfachverschlüsselung. Der Eingabewert X ist der Eingabewert der kryptografischen Funktion F des ersten Mals, und der Ausgabewert der kryptografischen Funktion F eines vorangegangenen Zeitpunkts ist der Eingabewert der kryptografischen Funktion F eines nächsten Mals. Fn(X) wird wie folgt ausgedrückt: Fn(X) = F(F (... (F(X))...)).
  • Die maximale Zahl von Malen MAX ist in dem öffentlichen Parameter PP enthalten.
  • „R“ ist gleich dem Hauptschlüssel MK.
  • „||“ bedeutet Verkettung von Daten.
  • Der Datenschlüssel DK(i) und der Schlüsselwortschlüssel KK(i) können jedoch derselbe Wert sein. Der Datenschlüssel DK(i) und der Schlüsselwortschlüssel KK(i) können zum Beispiel wie nachstehend angegeben ausgedrückt werden. DK ( i ) = KK ( i ) = F ( MAX i + 1 ) ( R )
    Figure DE112021005887T5_0006
  • Die Erzeugungseinheit 320 kann den Hauptschlüssel MK, den öffentlichen Parameter PP und die Schlüsselerzeugungszahl i aus der Speichereinheit 390 löschen.
  • In Schritt S124 speichert und bewahrt die Erzeugungseinheit 320 den Geheimschlüssel SK(i) in der Speichereinheit 390.
  • Falls ein Geheimschlüssel SK(j) in der Speichereinheit 390 bewahrt wird, kann die Erzeugungseinheit 320 den Geheimschlüssel SK(j) aus der Speichereinheit 390 löschen. Der Geheimschlüssel SK(j) ist der geheime Schlüssel einer Erzeugung, die älter ist als die i-te Erzeugung. „j“ ist eine ganze Zahl kleiner als oder gleich wie (i-1).
  • In Schritt S125 gibt die Ausgabeeinheit 330 den Geheimschlüssel SK(i) aus.
  • Beispielsweise überträgt die Ausgabeeinheit 330 den Geheimschlüssel SK(i) an jede von der Registrierungseinrichtung 400 und der Suchoperationseinrichtung 500 unter Verwendung der Kommunikationseinrichtung 305.
  • Der Geheimschlüssel SK wird verwendet, um verschlüsselte Daten C zu erzeugen, eine Suchanfrage SQ zu erzeugen und die verschlüsselten Daten C zu entschlüsseln.
  • Erneut bezugnehmend auf 7, wird die Beschreibung ab Schritt S130 fortgesetzt.
  • Schritt S130, Schritt S140, die Schritte S150 bis S170, Schritt S180 oder Schritt S190 werden wiederholt ausgeführt.
  • Falls der Geheimschlüssel SK aktualisiert werden soll, fährt der Prozess mit Schritt S130 fort.
  • Zum Beispiel vergleicht die Geheimschlüsseleinrichtung 300 regelmäßig die Verwendungsdauer des Geheimschlüssels SK mit einer Referenzdauer. Falls die Verwendungsdauer des Geheimschlüssels SK die Referenzdauer übersteigt, fährt der Prozess mit Schritt S130 fort.
  • Falls ein Administrator beispielsweise bestimmt, dass der Geheimschlüssel SK weitergegeben wurde und eine Aktualisierungsanweisung für den Geheimschlüssel SK an die Geheimschlüsseleinrichtung 300 eingibt, fährt der Prozess mit Schritt S130 fort.
  • Falls verschlüsselte Daten C registriert werden sollen, fährt der Prozess mit Schritt S140 fort.
  • Wenn beispielsweise ein Benutzer eine Registrierungsanweisung für die verschlüsselten Daten C in die Registrierungseinrichtung 400 eingibt, wird der Prozess mit Schritt S140 fortgesetzt.
  • Falls eine Suche nach verschlüsselten Daten C durchgeführt werden soll, fährt der Prozess mit Schritt S150 fort.
  • Wenn beispielsweise ein Benutzer eine Suchanweisung für die verschlüsselten Daten C in die Suchoperationseinrichtung 500 eingibt, wird der Prozess mit Schritt S150 fortgesetzt.
  • Falls verschlüsselte Daten C auf Grundlage des Dateinamens gelöscht werden sollen, fährt der Prozess mit Schritt S180 fort.
  • Falls verschlüsselte Daten C auf Grundlage der Schlüsselerzeugungszahl i gelöscht werden sollen, fährt der Prozess mit Schritt S190 fort.
  • In Schritt S130 aktualisiert die Geheimschlüsseleinrichtung 300 den Geheimschlüssel SK. Mit anderen Worten erzeugt die Geheimschlüsseleinrichtung 300 einen Geheimschlüssel SK einer neuen Erzeugung. Wenn der aktuelle Geheimschlüssel SK der Geheimschlüssel SK(i) ist, erzeugt die Geheimschlüsseleinrichtung 300 einen geheimen Schlüssel SK(i+1).
  • Das Verfahren zur Erzeugung des Geheimschlüssels SK ist wie bei der Geheimschlüsselerzeugung (S120) beschrieben.
  • In Schritt S140 erzeugt die Registrierungseinrichtung 400 verschlüsselte Daten C und registriert die verschlüsselten Daten C in der Verwaltungseinrichtung 600.
  • Anhand von 10 wird ein Ablauf zur Datenregistrierung (S140) beschrieben.
  • Die Datenregistrierung (S140) ist ein Prozess, der durch die Registrierungseinrichtung 400 ausgeführt wird.
  • In Schritt S141 nimmt die Annahmeeinheit 410 den Geheimschlüssel SK(i) und den öffentlichen Parameter PP an und speichert und bewahrt den Geheimschlüssel SK(i) und den öffentlichen Parameter PP in der Speichereinheit 490.
  • Falls der Geheimschlüssel SK(i) und der öffentliche Parameter PP bereits bewahrt sind, ist Schritt S141 unnötig.
  • Falls ein Geheimschlüssel SK(j) in der Speichereinheit 490 bewahrt wird, kann die Annahmeeinheit 410 den Geheimschlüssel SK(j) aus der Speichereinheit 490 löschen. Der Geheimschlüssel SK(j) ist der geheime Schlüssel einer Erzeugung, die älter ist als die i-te Erzeugung. „j“ ist eine ganze Zahl kleiner als oder gleich wie (i-1).
  • In Schritt S142 nimmt die Annahmeeinheit 410 einen Klartext M an.
  • Der Klartext M sind Daten, die nicht verschlüsselt wurden.
  • Der Klartext M umfasst einen Dateinamen File(M) als Metadaten.
  • Es kann eine Vielzahl von Klartexten M angenommen werden. In diesem Fall werden die Schritte S143 bis S146 für jeden Klartext M ausgeführt.
  • In einem Schritt S143 erzeugt die Zufallszahl-Erzeugungseinheit 421 eine Datenzufallszahl CR und eine Schlüsselwortzufallszahl KR.
  • Die Datenzufallszahl CR ist eine Zufallszahl zur Verschlüsselung des Klartextes M.
  • Die Schlüsselwortzufallszahl KR ist eine Zufallszahl zur Verschlüsselung eines später zu beschreibenden Registrierungsschlüssels W.
  • Insbesondere erzeugt die Zufallszahl-Erzeugungseinheit 421 eine Zufallszahl, die im Gemeinsamer-Schlüssel-Verschlüsselungsschema E oder im durchsuchbaren Verschlüsselungsschema verwendet wird. Die erzeugte Zufallszahl ist die Datenzufallszahl CR. Der Identifikator des Gemeinsamer-Schlüssel-Verschlüsselungsschemas E ist in dem öffentlichen Parameter PP enthalten. Wenn das Gemeinsamer-Schlüssel-Verschlüsselungsschema E zum Beispiel AES-CTR ist, ist IV die Datenzufallszahl CR.
  • Die Zufallszahl-Erzeugungseinheit 421 erzeugt auch zumindest eine Zufallszahl, die im durchsuchbaren Verschlüsselungsschema zu verwenden ist. Die erzeugte Zufallszahl ist die Schlüsselwortzufallszahl KR.
  • In Schritt S144 verschlüsselt die Chiffretext-Erzeugungseinheit 422 den Klartext M unter Verwendung des Geheimschlüssels SK(i), des öffentlichen Parameters PP und der Datenzufallszahl CR. Als Ergebnis werden Chiffretextdaten CT(i) erzeugt.
  • Die Chiffretextdaten CT(i) enthalten einen Chiffretext C und die Schlüsselerzeugungszahl i.
  • Der Chiffretext C ist der verschlüsselte Klartext M.
  • Die Chiffretextdaten C werden wie unten angegeben ausgedrückt. CT ( i ) = ( C ,  i )
    Figure DE112021005887T5_0007
  • Die Chiffretextdaten C werden zum Beispiel wie unten angegeben ausgedrückt. C = ( E ( DK ( i ) ,  M ,  CR ) )
    Figure DE112021005887T5_0008
  • E(X) bezeichnet den Ausgabewert einer Verschlüsselungsfunktion für den Eingabewert X.
  • Der Datenschlüssel DK(i) ist in dem Geheimschlüssel SK(i) enthalten.
  • In Schritt S145 erzeugt die Schlüsselwort-Erzeugungseinheit 423 das Registrierungsschlüsselwort W.
  • Das Registrierungsschlüsselwort W ist ein Schlüsselwort, das sich auf den Klartext M bezieht.
  • Konkret extrahiert die Schlüsselwort-Erzeugungseinheit 423 ein Schlüsselwort aus dem Klartext M, indem eine morphologische Analyse, eine Verarbeitung natürlicher Sprache oder dergleichen auf den Klartext M durchgeführt wird. Das extrahierte Schlüsselwort ist das Registrierungsschlüsselwort W.
  • Es können eine Vielzahl von Registrierungsschlüsselwörtern W erzeugt werden. In diesem Fall wird ein später zu beschreibendes verschlüsseltes Tag für jedes Registrierungsschlüsselwort W erzeugt.
  • Anstelle der Erzeugung des Registrierungsschlüsselwortes W durch die Schlüsselwort-Erzeugungseinheit 423 kann die Annahmeeinheit 410 über die Eingabe/Ausgabe-Schnittstelle 404 das Registrierungsschlüsselwort W annehmen, das in die Registrierungseinrichtung 400 eingegeben wird.
  • In Schritt S146 verschlüsselt die Verschlüsseltes-Tag-Erzeugungseinheit 424 das Registrierungsschlüsselwort W, um verschlüsselte Tag-Daten ET(i) zu erzeugen, wobei der Geheimschlüssel SK(i), der öffentliche Parameter PP und die Schlüsselwortzufallszahl KR verwendet werden.
  • Die verschlüsselten Tag-Daten ET(i) umfassen ein verschlüsseltes Tag ET und die Schlüsselerzeugungszahl i.
  • Das verschlüsselte Tag ET enthält ein verschlüsseltes Schlüsselwort EW und die Schlüsselwortzufallszahl KR.
  • Das verschlüsselte Schlüsselwort EW ist das Registrierungsschlüsselwort W, das verschlüsselt wurde.
  • Die Schlüsselerzeugungszahl i ist in dem Geheimschlüssel SK(i) enthalten.
  • Die Verschlüsseltes-Tag-Daten ET(i) werden wie unten angegeben ausgedrückt. ET ( i ) = ( ET ,  i )
    Figure DE112021005887T5_0009
    ET = ( EW ,  KR )
    Figure DE112021005887T5_0010
  • Das verschlüsselte Schlüsselwort EW wird zum Beispiel wie unten angegeben ausgedrückt. In diesem Fall verschlüsselt die Verschlüsseltes-Tag-Erzeugungseinheit 424 das Registrierungsschlüsselwort W unter Verwendung des Schlüsselwortschlüssels KK(i) und verschlüsselt das verschlüsselte Registrierungsschlüsselwort W unter Verwendung der Schlüsselwortzufallszahl KR. Als Ergebnis wird das verschlüsselte Schlüsselwort EW erzeugt. EW = F ( F ( KK ( i ) W ) KR )
    Figure DE112021005887T5_0011
  • Der Identifikator einer Verschlüsselungsfunktion F ist in dem öffentlichen Parameter PP enthalten.
  • Der Schlüsselwortschlüssel KK(i) ist in dem Geheimschlüssel SK(i) enthalten.
  • Wenn es eine Vielzahl von Registrierungsschlüsselwörtern W gibt, umfasst das verschlüsselte Tag ET die verschlüsselten Tags, die individuell den Registrierungsschlüsselwörtern W entsprechen.
  • Wenn es zum Beispiel ein Registrierungsschlüsselwort W1 und ein Registrierungsschlüsselwort W2 gibt, wird das verschlüsselte Tag ET wie unten angegeben ausgedrückt. ET = ( F ( F ( KK ( i ) W1 ) KR ) ,  F ( F ( KK ( i ) W 2 ) KR ) , KR )
    Figure DE112021005887T5_0012
  • In Schritt S147 erzeugt die Registrierungseinheit 430 durchsuchbare Verschlüsselungsdaten SE(i).
  • Die durchsuchbaren Verschlüsselungsdaten SE(i) umfassen den Dateinamen File(M), die Chiffretextdaten CT(i), die verschlüsselten Tag-Daten ET(i) und die Schlüsselerzeugungszahl i.
  • Das heißt, dass die durchsuchbaren Verschlüsselungsdaten SE(i) ein Satz aus dem Dateinamen File(M), den Chiffretextdaten CT(i), den verschlüsselten Tag-Daten ET(i) und der Schlüsselerzeugungszahl i sind.
  • Die durchsuchbaren Verschlüsselungsdaten SE(i) werden wie unten angegeben ausgedrückt. SE ( i ) = ( File ( M ) ,  CT ( i ) ,  ET ( i ) ,  i )
    Figure DE112021005887T5_0013
  • In Schritt S148 registriert die Registrierungseinheit 430 die durchsuchbaren Verschlüsselungsdaten SE(i) in einer Registrierungsdatenbank 691.
  • Die Registrierungsdatenbank 691 wird in der Speichereinheit 690 der Datenverwaltungseinrichtung 600 gespeichert und bewahrt.
  • Konkret überträgt die Registrierungseinheit 430 die durchsuchbaren Verschlüsselungsdaten SE(i) mit Hilfe der Kommunikationseinrichtung 405 an die Datenverwaltungseinrichtung 600. In der Datenverwaltungseinrichtung 600 empfängt die Annahmeeinheit 610 die durchsuchbaren Verschlüsselungsdaten SE(i) mit Hilfe der Kommunikationseinrichtung 605. Dann registriert die Verwaltungseinheit 640 die durchsuchbaren Verschlüsselungsdaten SE(i) in einer Registrierungsdatenbank 691.
  • 11 zeigt ein Beispiel für die Registrierungsdatenbank 691.
  • In 11 entsprechen die Daten in einer Zeile einem Teil der durchsuchbaren Verschlüsselungsdaten SE(i).
  • In den Daten einer Reihe sind der Dateiname File(M), die Chiffretextdaten CT(i), die verschlüsselten Tag-Daten ET(i) und die Schlüsselerzeugungszahl i miteinander verknüpft.
  • Wieder Bezug nehmend auf 7, wird Schritt S150 beschrieben.
  • In Schritt S150 erzeugt die Suchoperationseinrichtung 500 eine Suchanfrage SQ und überträgt die Suchanfrage SQ an die Datenverwaltungseinrichtung 600.
  • Anhand von 12 wird ein Ablauf zur Suchanforderung (S150) beschrieben.
  • Die Suchanforderung (S150) ist ein Prozess, der von der Suchoperationseinrichtung 500 ausgeführt wird.
  • In Schritt S151 nimmt die Annahmeeinheit 510 den Geheimschlüssel SK(i) und den öffentlichen Parameter PP an und speichert und bewahrt den Geheimschlüssel SK(i) und den öffentlichen Parameter PP in der Speichereinheit 290.
  • Falls der Geheimschlüssel SK(i) und der öffentliche Parameter PP bereits bewahrt sind, ist Schritt S151 unnötig.
  • Falls der Geheimschlüssel SK(j) bereits in der Speichereinheit 590 bewahrt wird, kann die Annahmeeinheit 510 den Geheimschlüssel SK(j) aus der Speichereinheit 590 löschen. Der Geheimschlüssel SK(j) ist der geheime Schlüssel einer Erzeugung, die älter ist als die i-te Erzeugung. „j“ ist eine ganze Zahl kleiner als oder gleich wie (i-1).
  • In Schritt S152 nimmt die Annahmeeinheit 510 eine Suchschlüsselwort w an.
  • In Schritt S153 stellt die Wiederherstellungseinheit 520 einen Geheimschlüssel SK(1_j) unter Verwendung des Geheimschlüssels SK(i) und des öffentlichen Parameters PP wieder her.
  • „1_j“ steht für ganze Zahlen gleich wie oder größer als 1 und nicht größer als (i-1).
  • Der Geheimschlüssel SK(1_j) wird wie unten angegeben ausgedrückt. SK ( 1 _ j ) = ( SK ( 1 ) ,   ,  SK ( i 2 ) ,  SK ( i 1 ) )
    Figure DE112021005887T5_0014
  • Der Geheimschlüssel SK(1J) wird wie unten beschrieben wiederhergestellt.
  • Zunächst stellt die Wiederherstellungseinheit 520 einen Datenschlüssel DK(1J) wieder her.
  • Der Datenschlüssel DK(1_j) wird wie unten angegeben ausgedrückt. DK ( 1 _ j ) = ( DK ( 1 ) ,   ,  DK ( i 2 ) ,  DK ( i 1 ) )
    Figure DE112021005887T5_0015
    DK ( i 1 ) = F ( DK ( i ) ) = F ( F ( MAX i + 1 ) ( R 0 ) )
    Figure DE112021005887T5_0016
    DK ( i 2 ) = F 2 ( DK ( i ) ) = F 2 ( F ( MAX i + 1 ) ( R 0 ) )
    Figure DE112021005887T5_0017
    DK ( 1 ) = F ( i 1 ) ( DK ( i ) ) = F ( i 1 ) ( F ( MAX i + 1 ) ( R 0 ) )
    Figure DE112021005887T5_0018
  • DK(i-3) bis DK(2) werden ähnlich wie DK(i-2) berechnet.
  • Der Datenschlüssel DK(i) ist in dem Geheimschlüssel SK(i) enthalten.
  • Die kryptografische Funktion F ist in dem öffentlichen Parameter PP enthalten.
  • Die maximale Zahl von Malen MAX ist in dem öffentlichen Parameter PP enthalten.
  • Die Wiederherstellungseinheit 520 stellt auch einen Schlüsselwortschlüssel KK(1J) wieder her.
  • Der Schlüsselwortschlüssel KK(1_j) wird wie unten angegeben ausgedrückt. KK ( 1 _ j ) = ( KK ( 1 ) ,   ,  KK ( i 2 ) ,  KK ( i 1 ) )
    Figure DE112021005887T5_0019
    KK ( i 1 ) = F ( KK ( i ) ) = F ( F ( MAX i + 1 ) ( R 1 ) )
    Figure DE112021005887T5_0020
    KK ( i 2 ) = F 2 ( KK ( i ) ) = F 2 ( F ( MAX i + 1 ) ( R 1 ) )
    Figure DE112021005887T5_0021
    KK ( 1 ) = F ( i 1 ) ( KK ( i ) ) = F ( i 1 ) ( F ( MAX i + 1 ) ( R 1 ) )
    Figure DE112021005887T5_0022
  • KK(i-3) bis KK(2) werden ähnlich wie KK(i-2) berechnet.
  • Der Schlüsselwortschlüssel KK(i) ist in dem Geheimschlüssel SK(i) enthalten.
  • Dann erzeugt die Wiederherstellungseinheit 520 den Geheimschlüssel SK jeder Erzeugung von der ersten bis zur (i-1)-ten Erzeugung.
  • Ein Geheimschlüssel SK(n) wird wie unten angegeben ausgedrückt. Der Geheimschlüssel SK(n) ist der Geheimschlüssel SK der n-ten Erzeugung. SK ( n ) = ( DK ( n ) ,  KK ( n ) ,  n )
    Figure DE112021005887T5_0023
  • In Schritt S154 erzeugt die Erzeugungseinheit 530 eine Suchanfrage SQ(1_i) unter Verwendung des Geheimschlüssels SK(1_i), des öffentlichen Parameters PP und des Suchschlüsselworts w.
  • „1_i“ steht für eine ganze Zahl gleich wie oder größer als 1 und nicht größer als i.
  • Der Geheimschlüssel SK(1_i) wird wie unten angegeben ausgedrückt. SK ( 1 _ i ) = ( SK ( 1 ) ,   ,  SK ( i ) )
    Figure DE112021005887T5_0024
  • Die Suchanfrage SQ(1_i) umfasst die Suchanfrage SQjeder Erzeugung von der ersten Erzeugung bis zur i-ten Erzeugung.
  • Die Suchanfrage SQ(1_i) wird wie unten angegeben ausgedrückt. SQ ( 1 _ i ) = ( SQ ( 1 ) ,   ,  SQ ( i ) )
    Figure DE112021005887T5_0025
  • Die Suchanfrage SQ der n-ten Erzeugung ist das Suchschlüsselwort w, das unter Verwendung des Geheimschlüssels SK der n-ten Erzeugung verschlüsselt wurde.
  • Eine Suchanfrage SQ(n) wird zum Beispiel wie unten angegeben ausgedrückt. Die Suchanfrage SQ(n) ist die Suchanfrage SQ der n-ten Erzeugung. SQ ( n ) = F ( KK ( n ) w )
    Figure DE112021005887T5_0026
  • Die kryptografische Funktion F ist in dem öffentlichen Parameter PP enthalten.
  • In Schritt S155 überträgt die Anforderungseinheit 540 die Suchanfrage SQ(1_i) über die Kommunikationseinrichtung 505 an die Datenverwaltungseinrichtung 600.
  • Wieder Bezug nehmend auf 7, wird Schritt S160 beschrieben.
  • In Schritt S160 sucht die Datenverwaltungseinrichtung 600 nach verschlüsselten Daten C, die der Suchanfrage SQ entsprechen.
  • Anhand von 13 wird ein Ablauf zur Datensuche (S160) beschrieben.
  • Die Datensuche (S160) ist ein Prozess, der durch die Datenverwaltungseinrichtung 600 ausgeführt wird.
  • In Schritt S161 nimmt die Annahmeeinheit 610 den öffentlichen Parameter PP an und speichert und bewahrt den öffentlichen Parameter PP in der Speichereinheit 690.
  • Falls der öffentliche Parameter PP bereits bewahrt ist, ist Schritt S161 unnötig.
  • In Schritt S162 empfängt die Annahmeeinheit 610 die Suchanfrage SQ(1_i).
  • In Schritt S163 gleicht die Prüfeinheit 621 die Suchanfrage SQ(1_i) mit allen durchsuchbaren Verschlüsselungsdaten SE(n) in der Registrierungsdatenbank 691 ab, um durchsuchbare Verschlüsselungsdaten SE(n) zu finden, die der Suchanfrage SQ(1_i) entsprechen.
  • Die durchsuchbaren Verschlüsselungsdaten SE(n) sind durchsuchbare Verschlüsselungsdaten SE, die eine Schlüsselerzeugungszahl n enthalten.
  • Die Prüfeinheit 621 gleicht die Suchanfrage SQ(1_i) mit den durchsuchbaren Verschlüsselungsdaten SE(n) wie im Folgenden beschrieben ab.
  • Zunächst bestimmt die Prüfeinheit 621, ob die in den durchsuchbaren Verschlüsselungsdaten SE(n) enthaltene Schlüsselerzeugungszahl n gleich wie oder kleiner als i ist.
  • Falls die Schlüsselerzeugungszahl n gleich wie oder kleiner als i ist, extrahiert die Prüfeinheit 621 das verschlüsselte Tag ET aus den verschlüsselten Tag-Daten ET(n) in den durchsuchbaren Verschlüsselungsdaten SE(n) und extrahiert das verschlüsselte Schlüsselwort EW und die Schlüsselwortzufallszahl KR aus dem extrahierten verschlüsselten Tag ET.
  • Als nächstes erzeugt die Prüfeinheit 621 ein Prüf-Tag Tg(k) für jede Suchanfrage SQ(k), die in der Suchanfrage SQ(1_i) enthalten ist, unter Verwendung der Suchanfrage SQ(k) und der extrahierten Schlüsselwortzufallszahl KR. „k“ steht für eine ganze Zahl gleich wie oder größer als 1 und nicht größer als i.
  • Das Prüf-Tag Tg wird wie unten angegeben ausgedrückt. Tg ( k ) = F ( SQ ( k ) KR )
    Figure DE112021005887T5_0027
  • Dann vergleicht die Prüfeinheit 621 das Prüf-Tag Tg(k) für jede Suchanfrage SQ(k), die in der Suchanfrage SQ(1_i) enthalten ist, mit dem extrahierten verschlüsselten Schlüsselwort EW.
  • Falls eines der Prüf-Tags Tg(k) mit dem extrahierten verschlüsselten Schlüsselwort EW übereinstimmt, entsprechen die durchsuchbaren Verschlüsselungsdaten SE(n) der Suchanfrage SQ(1_i).
  • In einem Fall, in dem es eine Vielzahl von verschlüsselten Schlüsselwörtern EW gibt, falls eines der Prüf-Tags Tg(k) mit einem der verschlüsselten Schlüsselwörter EW übereinstimmt, entsprechen die durchsuchbaren Verschlüsselungsdaten SE(n) der Suchanfrage SQ(1_i).
  • Die durchsuchbaren Verschlüsselungsdaten SE(n), die der Suchanfrage SQ(1_i) entsprechen, werden als „anwendbare durchsuchbare Verschlüsselungsdaten SE(n)“ bezeichnet. Die anwendbaren durchsuchbaren Verschlüsselungsdaten SE(n) umfassen die verschlüsselten Tag-Daten ET(n), die der Suchanfrage SQ(1_i) entsprechen.
  • In Schritt S164 extrahiert die Extraktionseinheit 622 Chiffretextdaten CT(n) und die Schlüsselerzeugungszahl n aus jedem Teil der anwendbaren durchsuchbaren Verschlüsselungsdaten SE(n).
  • In Schritt S165 erzeugt die Ausgabeeinheit 630 Daten, die einen Satz aufweisen, der jeden Satz aus den Chiffretextdaten CT(n) und der Schlüsselerzeugungszahl n aufweist. Die erzeugten Daten sind ein verschlüsseltes Suchergebnis {(CT(n), n)}. {X} bezeichnet eine Menge von Daten X.
  • In Schritt S166 überträgt die Ausgabeeinheit 630 das verschlüsselte Suchergebnis {(CT(n), n)} unter Verwendung der Kommunikationseinrichtung 605 an die Suchoperationseinrichtung 500.
  • Wieder Bezug nehmend auf 7, wird Schritt S170 beschrieben.
  • In Schritt S170 entschlüsselt die Suchoperationseinrichtung 500 den Klartext M aus den verschlüsselten Daten C, die bei der Suche als Treffer gefunden wurden.
  • Anhand von 14 wird ein Ablauf zur Ergebnisentschlüsselung (S170) beschrieben.
  • Die Ergebnisentschlüsselung (S170) ist ein Prozess, der von der Suchoperationseinrichtung 500 ausgeführt wird.
  • In Schritt S171 empfängt die Anforderungseinheit 540 das verschlüsselte Suchergebnis {(CT(n), n)} unter Verwendung der Kommunikationseinrichtung 505.
  • In Schritt S172 entschlüsselt die Entschlüsselungseinheit 550 ein Suchergebnis {M} aus dem verschlüsselten Suchergebnis {(CT(n), n)} unter Verwendung des Geheimschlüssels SK(n) und des öffentlichen Parameters PP.
  • Das Suchergebnis {M} ist ein Satz aus dem Klartext M.
  • Der Klartext M, der im Suchergebnis {M} enthalten ist, wird zum Beispiel wie unten angegeben ausgedrückt. M = D ( DK ( n ) ,  CT ( n ) )
    Figure DE112021005887T5_0028
  • „D“ ist eine Entschlüsselungsfunktion, die im Gemeinsamer-Schlüssel-Verschlüsselungsschema E verwendet wird.
  • Der Identifikator des Gemeinsamer-Schlüssel-Verschlüsselungsschemas Eist in dem öffentlichen Parameter PP enthalten.
  • Der Datenschlüssel DK(n) ist in dem Geheimschlüssel SK(n) enthalten.
  • Wenn das verschlüsselte Suchergebnis {(CT(n), n)} jedoch ein leerer Satz ist, d. h. wenn bei der Suche mit der Suchanfrage SQ kein (CT(n), n) als Treffer gefunden wurde, ist Schritt S172 unnötig.
  • In Schritt S173 gibt die Ausgabeeinheit 560 das Suchergebnis {M} aus.
  • Beispielsweise zeigt die Ausgabeeinheit 560 das Suchergebnis {M} über die Eingabe/Ausgabe-Schnittstelle 504 auf einer Anzeige an.
  • Wenn das verschlüsselte Suchergebnis {(CT(n), n)} jedoch ein leerer Satz ist, gibt die Ausgabeeinheit 560 eine Suchfehlermeldung aus.
  • Die Suchfehlermeldung zeigt an, dass es bei einer Suche unter Verwendung der durchsuchbaren Verschlüsselung keinen Klartext M als Treffer gibt.
  • Wieder Bezug nehmend auf 7, wird Schritt S180 beschrieben.
  • In Schritt S180 löscht die Datenverwaltungseinrichtung 600 verschlüsselte Daten C entsprechend einem Löschdateinamen.
  • Anhand von 15 wird ein Ablauf zur Datenlöschung (S180) beschrieben.
  • Die Datenlöschung (S180) ist ein Prozess, der durch die Registrierungseinrichtung 400 und die Datenverwaltungseinrichtung 600 ausgeführt wird. Die Suchoperationseinrichtung 500 oder eine andere Einrichtung können jedoch anstelle der Registrierungseinrichtung 400 verwendet werden.
  • In Schritt S181 nimmt die Annahmeeinheit 410 der Registrierungseinrichtung 400 den Löschdateinamen an.
  • Zum Beispiel empfängt die Annahmeeinheit 410 über die Eingabe/Ausgabe-Schnittstelle 404 den Löschdateinamen, der über die Registrierungseinrichtung 400 eingegeben wurde. Alternativ kann die Annahmeeinheit 410 den Löschdateinamen von einem Anwendungsprogramm annehmen, das in der Registrierungseinrichtung 400 ausgeführt wird.
  • In Schritt S182 überträgt die Registrierungseinheit 430 der Registrierungseinrichtung 400 den Löschdateinamen unter Verwendung der Kommunikationseinrichtung 405 an die Datenverwaltungseinrichtung 600.
  • In Schritt S183 empfängt die Annahmeeinheit 610 der Datenverwaltungseinrichtung 600 den Löschdateinamen über die Kommunikationseinrichtung 605.
  • In Schritt S184 löscht die Verwaltungseinheit 640 der Datenverwaltungseinrichtung 600 durchsuchbare Verschlüsselungsdaten SE, die dem Löschdateinamen entsprechen, aus der Registrierungsdatenbank 691.
  • Konkret löscht die Verwaltungseinheit 640 die durchsuchbaren Verschlüsselungsdaten SE, die denselben Dateinamen File(M) wie der Löschdateiname enthalten.
  • Wieder Bezug nehmend auf 7, wird Schritt S190 beschrieben.
  • In Schritt S190 löscht die Datenverwaltungseinrichtung 600 verschlüsselte Daten C entsprechend einer Löschschlüsselerzeugungszahl.
  • Anhand von 16 wird ein Ablauf zur Datenlöschung (S190) beschrieben.
  • Die Datenlöschung (S190) ist ein Prozess, der durch die Registrierungseinrichtung 400 und die Datenverwaltungseinrichtung 600 ausgeführt wird. Die Suchoperationseinrichtung 500 oder eine andere Einrichtung können jedoch anstelle der Registrierungseinrichtung 400 verwendet werden.
  • In Schritt S191 nimmt die Annahmeeinheit 410 der Registrierungseinrichtung 400 die Löschschlüsselerzeugungszahl an.
  • Zum Beispiel nimmt die Annahmeeinheit 410 über die Eingabe/Ausgabe-Schnittstelle 404 die Löschschlüsselerzeugungszahl an, die über die Registrierungseinrichtung 400 eingegeben wurde. Alternativ kann die Annahmeeinheit 410 die Löschschlüsselerzeugungszahl von einem Anwendungsprogramm annehmen, das in der Registrierungseinrichtung 400 ausgeführt wird.
  • In Schritt S192 überträgt die Registrierungseinheit 430 der Registrierungseinrichtung 400 die Löschschlüsselerzeugungszahl unter Verwendung der Kommunikationseinrichtung 405 an die Datenverwaltungseinrichtung 600.
  • In Schritt S193 empfängt die Annahmeeinheit 610 der Datenverwaltungseinrichtung 600 die Löschschlüsselerzeugungszahl über die Kommunikationseinrichtung 605.
  • In Schritt S194 löscht die Verwaltungseinheit 640 der Datenverwaltungseinrichtung 600 durchsuchbare Verschlüsselungsdaten SE, die der Löschschlüsselerzeugungszahl entsprechen, aus der Registrierungsdatenbank 691.
  • Konkret löscht die Verwaltungseinheit 640 die durchsuchbaren Verschlüsselungsdaten SE, die dieselbe Schlüsselerzeugungszahl wie die Löschschlüsselerzeugungszahl enthalten.
  • *** Wirkungen der Ausführungsform 1***
  • In Ausführungsform 1 und den folgenden Ausführungsformen liegt das Hauptaugenmerk auf dem Gemeinsamer-Schlüssel-Schema.
  • Ausführungsform 1 ermöglicht eine Schlüsselaktualisierung, die unter Verwendung des verschlüsselten Tags ET in der durchsuchbaren Verschlüsselung des Gemeinsamer-Schlüssel-Schemas durchgeführt werden soll. Außerdem kann der alte Geheimschlüssel SK(1_j) aus dem neuen Geheimschlüssel SK(i) wiederhergestellt werden, und die Suchanfrage SQ(1_i) kann unter Verwendung des gesamten Geheimschlüssels SK(1_i) erzeugt werden.
  • Ausführungsform 1 ermöglicht es der Schlüsselgröße, der verschlüsselten Suchschlüsselwortgröße und der verschlüsselten Datengröße so eingerichtet zu sein, dass sie nicht von der maximalen Zahl der Schlüsselaktualisierungen abhängen.
  • In Ausführungsform 1 wird ein alter Geheimschlüssel anhand eines neuen Geheimschlüssels wiederhergestellt, der auf einer Mehrfachverschlüsselung mit einer kryptografischen Funktion wie einer Hash-Funktion basiert. Dadurch ist es möglich, einen Schlüssel und verschlüsselte Daten zu erzeugen, deren Größen nicht von der maximalen Zahl der Schlüsselaktualisierungen abhängig sind.
  • Ausführungsform 1 hat die folgenden Auswirkungen.
  • Eine Schlüsselwortsuche kann ohne Entschlüsseln des Chiffretextes durchgeführt werden.
  • Für jede Schlüsselaktualisierung kann ein anderer Schlüssel erzeugt werden.
  • Ein alter Schlüssel kann mit einem neuen Schlüssel wiederhergestellt werden. Daher kann der alte Schlüssel nach einer Schlüsselaktualisierung verworfen werden.
  • Verschlüsselte Daten können erzeugt werden, ohne dass dies von der aktuellen Zahl der Schlüsselaktualisierungen und der maximalen Zahl der Schlüsselaktualisierungen abhängt. Das heißt, es können verschlüsselte Daten erzeugt werden, deren Größe nicht von der Anzahl der Male abhängt.
  • Indem die Schlüsselerzeugungszahl des Geheimschlüssels, der zur Erzeugung der verschlüsselten Daten verwendet wurde, mit den verschlüsselten Daten verknüpft wird, können die zu durchsuchenden verschlüsselten Daten eingegrenzt werden. Eine Schlüsselwortsuche kann somit effizient durchgeführt werden.
  • Ausführungsform 2
  • In Bezug auf eine Ausführungsform, bei der ein verschlüsselter Index El anstelle des verschlüsselten Tags ET verwendet wird, werden die Unterschiede zu Ausführungsform 1 hauptsächlich anhand der 17 bis 23 beschrieben.
  • *** Beschreibung von Konfigurationen ***
  • Die Konfiguration des durchsuchbaren Verschlüsselungssystems 100 ist die gleiche wie die Konfiguration in Ausführungsform 1 (siehe 1).
  • Ein Teil der Konfiguration der Registrierungseinrichtung 400 unterscheidet sich jedoch von der Konfiguration in Ausführungsform 1.
  • Auf Basis von 17 wird die Konfiguration der Registrierungseinrichtung 400 beschrieben.
  • Die Registrierungseinrichtung 400 umfasst Elemente wie eine Suchergebnis-Erzeugungseinheit 425 und eine Verschlüsselter-Index-Erzeugungseinheit 426 anstelle der Verschlüsseltes-Tag-Erzeugungseinheit 424 von Ausführungsform 1.
  • *** Beschreibung der Operation ***
  • Anhand von 18 wird das durchsuchbare Verschlüsselungsverfahren beschrieben.
  • Schritte S110, S120, S130, S170, S180, und S190 sind wie in Ausführungsform 1 beschrieben.
  • Schritte S240, S250 und S260 werden nachfolgend beschrieben.
  • Anhand von 19 wird ein Ablauf zur Datenregistrierung (S240) beschrieben.
  • Die Datenregistrierung (S240) entspricht der Datenregistrierung (S140) in Ausführungsform 1.
  • In Schritt S241 nimmt die Annahmeeinheit 410 den Geheimschlüssel SK(i) und den öffentlichen Parameter PP an.
  • Schritt S241 ist Schritt S141 in Ausführungsform 1 gleich.
  • In Schritt S242 nimmt die Annahmeeinheit 410 einen Klartext M an.
  • Schritt S242 ist Schritt S142 in Ausführungsform 1 gleich.
  • In einem Schritt S243 erzeugt die Zufallszahl-Erzeugungseinheit 421 eine Datenzufallszahl CR und eine Schlüsselwortzufallszahl KR.
  • Schritt S243 ist Schritt S143 in Ausführungsform 1 gleich.
  • In Schritt S244 verschlüsselt die Chiffretext-Erzeugungseinheit 422 den Klartext M unter Verwendung des Geheimschlüssels SK(i), des öffentlichen Parameters PP und der Datenzufallszahl CR. Als Ergebnis werden Chiffretextdaten CT(i) erzeugt.
  • Schritt S244 ist Schritt S144 in Ausführungsform 1 gleich.
  • In Schritt S245 erzeugt die Schlüsselwort-Erzeugungseinheit 423 ein Registrierungsschlüsselwort W.
  • Schritt S245 ist Schritt S145 in Ausführungsform 1 gleich.
  • Es wird davon ausgegangen, dass in Schritt S242 mindestens ein Klartext M angenommen wird, in Schritt S244 mindestens ein Stück Chiffretextdaten CT(i) erzeugt wird und in Schritt S245 mindestens ein Registrierungsschlüsselwort W erzeugt wird.
  • In Schritt S246 erzeugt die Suchergebnis-Erzeugungseinheit 425 ein Suchergebnis RES auf der Grundlage von mindestens einem Registrierungsschlüsselwort W.
  • Insbesondere erzeugt die Suchergebnis-Erzeugungseinheit 425 für jedes Registrierungsschlüsselwort W Daten, die mindestens einen Dateinamen File(M) enthalten, der dem Registrierungsschlüsselwort W entspricht. Die erzeugten Daten sind das Suchergebnis RES.
  • Das Suchergebnis RES wird wie unten angegeben ausgedrückt. RES = { ( kw ,  res ) }
    Figure DE112021005887T5_0029
    • „kw“ ist ein Schlüsselwort und entspricht dem Registrierungsschlüsselwort W.
    • „res“ ist ein Identifikator und entspricht dem Dateinamen File(M).
  • Wie in 20 dargestellt, hat das Suchergebnis RES eine invertierte Indexstruktur. Das heißt, es hat eine Struktur, die es ermöglicht, in umgekehrter Richtung nach einem übereinstimmenden Identifikator aus einem Schlüsselwort zu suchen.
  • 20 zeigt ein Beispiel für das Suchergebnis RES.
  • In 20 assoziiert das Suchergebnis RES ein Schlüsselwort mit mindestens einem Dateinamen auf der Basis des jeweiligen Schlüsselworts.
  • Erneut bezugnehmend auf 19, wird die Beschreibung ab Schritt S247 fortgesetzt.
  • In Schritt S247 verschlüsselt die Verschlüsselter-Index-Erzeugungseinheit 426 das Suchergebnis RES unter Verwendung des Geheimschlüssels SK(i), des öffentlichen Parameters PP und der Schlüsselwortzufallszahl KR. Als Ergebnis werden die verschlüsselten Indexdaten El(i) erzeugt.
  • Die verschlüsselten Indexdaten El(i) umfassen einen verschlüsselten Index El und die Schlüsselerzeugungszahl i.
  • Der verschlüsselte Index EI ist das Suchergebnis RES, das verschlüsselt wurde und einen verschlüsselten Schlüsselwortschlüssel und einen verschlüsselten Identifikator val enthält.
  • Der verschlüsselte Schlüsselwortschlüssel ist das Schlüsselwort kw, das verschlüsselt wurde. Das Schlüsselwort kw wird mit dem Schlüsselwortschlüssel KK(i) verschlüsselt.
  • Der verschlüsselte Identifikator val ist der Identifikator res, der verschlüsselt wurde. Der Identifikator res wird mit dem verschlüsselten Schlüsselwort kw und der Schlüsselwortzufallszahl KR verschlüsselt.
  • Die verschlüsselten Indexdaten El(i) werden zum Beispiel wie unten angegeben ausgedrückt. El = { ( key ,  val ) }
    Figure DE112021005887T5_0030
    key = F ( KK ( i ) 0 kw )
    Figure DE112021005887T5_0031
    val = E ( F ( KK ( i ) 1 kw ) ,  res ,  KR )
    Figure DE112021005887T5_0032
  • In Schritt S248 erzeugt die Registrierungseinheit 430 durchsuchbare Verschlüsselungsdaten SE(i).
  • Die durchsuchbaren Verschlüsselungsdaten SE(i) umfassen den Dateinamen File(M), die Chiffretextdaten CT, die verschlüsselten Indexdaten El(i) und die Schlüsselerzeugungszahl i.
  • Das heißt, dass die durchsuchbaren Verschlüsselungsdaten SE(i) ein Satz aus dem Dateinamen File(M), den Chiffretextdaten CT, den verschlüsselten Indexdaten EI(i) und der Schlüsselerzeugungszahl i sind.
  • Die durchsuchbaren Verschlüsselungsdaten SE(i) werden wie unten angegeben ausgedrückt. SE ( i ) = ( File ( M ) ,  CT ( i ) ,  El ( i ) ,  i )
    Figure DE112021005887T5_0033
  • Wie oben beschrieben, enthalten die durchsuchbaren Verschlüsselungsdaten El(i) die verschlüsselten Indexdaten El(i) anstelle der verschlüsselten Tag-Daten ET(i) von Ausführungsform 1.
  • In Schritt S249 registriert die Registrierungseinheit 430 die durchsuchbaren Verschlüsselungsdaten SE(i) in der Registrierungsdatenbank 691.
  • Schritt S249 ist Schritt S148 in Ausführungsform 1 gleich.
  • 21 zeigt ein Beispiel für die Registrierungsdatenbank 691.
  • In 21 entsprechen die Daten in einer Zeile einem Teil der durchsuchbaren Verschlüsselungsdaten SE(i).
  • In den Daten einer Reihe sind der Dateiname File(M), die Chiffretextdaten CT(i), die verschlüsselten Indexdaten ET(i) und die Schlüsselerzeugungszahl i miteinander verknüpft.
  • Anhand von 22 wird ein Ablauf zur Suchanforderung (S250) beschrieben.
  • Die Suchanforderung (S250) ist äquivalent mit der Suchanforderung (S150) in Ausführungsform 1.
  • In Schritt S251 nimmt die Annahmeeinheit 510 den Geheimschlüssel SK(i) und den öffentlichen Parameter PP an.
  • Schritt S251 ist Schritt S151 in Ausführungsform 1 gleich.
  • In Schritt S252 nimmt die Annahmeeinheit 510 ein Suchschlüsselwort w an.
  • Schritt S252 ist Schritt S252 in Ausführungsform 1 gleich.
  • In Schritt S253 stellt die Wiederherstellungseinheit 520 den Geheimschlüssel SK(1_j) unter Verwendung des Geheimschlüssels SK(i) und des öffentlichen Parameters PP wieder her.
  • Schritt S253 ist Schritt S153 in Ausführungsform 1 gleich.
  • In Schritt S254 erzeugt die Erzeugungseinheit 530 eine Suchanfrage SQ(1_i) unter Verwendung des Geheimschlüssels SK(1_i), des öffentlichen Parameters PP und des Suchschlüsselworts w.
  • Die Suchanfrage SQ(1_i) umfasst die Suchanfrage SQjeder Erzeugung von der ersten Erzeugung bis zur i-ten Erzeugung.
  • Die Suchanfrage SQ(n) umfasst eine erste Anfrage SQ(n)1 und eine zweite Anfrage SQ(n)2.
  • Jede der ersten Suchanfrage SQ(n)1 und der zweiten Suchanfrage SQ(n)2 ist das Suchschlüsselwort w, das unter Verwendung des Geheimschlüssels SK der n-ten Erzeugung verschlüsselt wurde.
  • Die Suchanfrage SQ(n) wird zum Beispiel wie unten angegeben ausgedrückt. SQ ( n ) = ( SQ ( n ) 1,  SQ ( n ) 2 )
    Figure DE112021005887T5_0034
    SQ ( n ) 1 = F ( KK ( n ) w 0 )
    Figure DE112021005887T5_0035
    SQ ( n ) 2 = F ( KK ( n ) w 1 )
    Figure DE112021005887T5_0036
  • In Schritt S255 überträgt die Anforderungseinheit 540 die Suchanfrage SQ(1_i) über die Kommunikationseinrichtung 505 an die Datenverwaltungseinrichtung 600.
  • Anhand von 23 wird ein Ablauf zur Datensuche (S260) beschrieben.
  • Die Datensuche (S260) ist der Datensuche (S160) in Ausführungsform 1 gleich.
  • In Schritt S261 nimmt die Annahmeeinheit 610 den öffentlichen Parameter PP an.
  • Schritt S261 ist Schritt S161 in Ausführungsform 1 gleich.
  • In Schritt S262 empfängt die Annahmeeinheit 610 die Suchanfrage SQ(1_i).
  • Schritt S262 ist Schritt S162 in Ausführungsform 1 gleich.
  • In Schritt S263 gleicht die Prüfeinheit 621 die Suchanfrage SQ(1_i) mit jedem Stück durchsuchbarer Verschlüsselungsdaten SE(n) in der Registrierungsdatenbank 691 ab, um durchsuchbare Verschlüsselungsdaten SE(n) zu finden, die der Suchanfrage SQ(1_i) entsprechen.
  • Die Prüfeinheit 621 gleicht die Suchanfrage SQ(1_i) mit den durchsuchbaren Verschlüsselungsdaten SE(n) wie im Folgenden beschrieben ab.
  • Zunächst bestimmt die Prüfeinheit 621, ob die in den durchsuchbaren Verschlüsselungsdaten SE(n) enthaltene Schlüsselerzeugungszahl n gleich wie oder kleiner als i ist.
  • Wenn die Schlüsselerzeugungszahl n gleich wie oder kleiner als i ist, extrahiert die Prüfeinheit 621 den verschlüsselten Index El aus den verschlüsselten Indexdaten El(n) in den durchsuchbaren Verschlüsselungsdaten SE(n).
  • Dann vergleicht die Prüfeinheit 621 die erste Anfrage SQ(k)1 mit jedem verschlüsselten Schlüsselwortschlüssel im verschlüsselten Index El für jede Suchanfrage SQ(k), die in der Suchanfrage SQ(1_i) enthalten ist.
  • Falls der verschlüsselte Schlüsselwortschlüssel gefunden wird, der mit der ersten Suchanfrage SQ(k) übereinstimmt, stimmen die durchsuchbaren Verschlüsselungsdaten SE(n) mit der Suchanfrage SQ(1_i) überein.
  • Die durchsuchbaren Verschlüsselungsdaten SE(n), die der Suchanfrage (1_i) entsprechen, werden als „anwendbare durchsuchbare Verschlüsselungsdaten SE(n)“ bezeichnet. Die anwendbaren durchsuchbaren Verschlüsselungsdaten SE(n) umfassen die verschlüsselten Indexdaten El(n), die der Suchanfrage SQ(1_i) entsprechen.
  • Der verschlüsselte Schlüsselwortschlüssel, der mit der ersten Anfrage SQ(k)1 übereinstimmt, wird als „anwendbarer verschlüsselter Schlüsselwortschlüssel“ bezeichnet. Die verschlüsselten Indexdaten El(n) einschließlich des anwendbaren verschlüsselten Schlüsselwortschlüssels werden als „anwendbare verschlüsselte Indexdaten EI(n)“ bezeichnet.
  • Die zweite Anfrage SQ(k)2, die der ersten Anfrage SQ(k)1 entspricht, wird als „anwendbare zweite Anfrage SQ(k)2“ bezeichnet.
  • In Schritt S264 extrahiert die Extraktionseinheit 622 mindestens einen verschlüsselten Identifikator val, der dem anwendbaren verschlüsselten Schlüsselwortschlüssel entspricht, aus jedem Stück der anwendbaren verschlüsselten Indexdaten El(n).
  • Dann entschlüsselt die Extraktionseinheit 622 den Identifikator res aus dem verschlüsselten Identifikator val unter Verwendung der anwendbaren zweiten Anfrage SQ(k) für jeden extrahierten verschlüsselten Identifikator val. Der Identifikator res wird wie unten angegeben entschlüsselt. res = D ( SQ ( k ) 2,  val )
    Figure DE112021005887T5_0037
  • In Schritt S265 extrahiert die Extraktionseinheit 622 für jeden entschlüsselten Identifikator res einen Satz der Chiffretextdaten CT und die Schlüsselerzeugungszahl n, die mit demselben Füllnamen (M) wie der Identifikator res aus der Registrierungsdatenbank 691 verbunden sind.
  • In Schritt S266 erzeugt die Ausgabeeinheit 630 Daten, die einen Satz aufweisen, der jeden Satz der Chiffretextdaten CT(n) und die Schlüsselerzeugungszahl n aufweist. Die erzeugten Daten sind das verschlüsselte Suchergebnis {(CT(n), n)}.
  • Schritt S266 ist Schritt S165 in Ausführungsform 1 gleich.
  • In Schritt S267 überträgt die Ausgabeeinheit 630 das verschlüsselte Suchergebnis {(CT(n), n)} unter Verwendung der Kommunikationseinrichtung 605 an die Suchoperationseinrichtung 500.
  • Schritt S267 ist Schritt S166 in Ausführungsform 1 gleich.
  • *** Wirkungen von Ausführungsform 2 ***
  • Ausführungsform 2 ermöglicht eine Schlüsselaktualisierung, die auch in dem Schema unter Verwendung des verschlüsselten Index ET in der durchsuchbaren Verschlüsselung des Gemeinsamer-Schlüssel-Schemas durchgeführt werden soll. Außerdem kann der alte Geheimschlüssel SK(1J) aus dem neuen Geheimschlüssel SK(i) wiederhergestellt werden, und die Suchanfrage SQ(1_i) kann unter Verwendung des gesamten Geheimschlüssels SK(1_i) erzeugt werden.
  • Ausführungsform 2 hat zusätzlich zu den im Wesentlichen gleichen Wirkungen wie die von Ausführungsform 1 die folgende Wirkung. Identifikatoren, die als Treffer für ein Suchwort gefunden werden, können gemeinsam extrahiert werden, ohne dass die Chiffretexte entschlüsselt werden.
  • Ausführungsform 3
  • Im Hinblick auf eine Ausführungsform, in der eine Suchanfrage SQ(1_j) aus der Suchanfrage SQ(i) wiederhergestellt wird, werden Unterschiede zu Ausführungsform 1 hauptsächlich anhand von 24 bis 30 beschrieben. „j“ ist eine ganze Zahl kleiner als oder gleich wie (i-1).
  • Die Suchanfrage SQ(1_j) wird wie unten angegeben ausgedrückt. SQ ( 1 _ j ) = ( SK ( 1 ) ,   ,  SK ( i 1 ) )
    Figure DE112021005887T5_0038
  • *** Beschreibung von Konfigurationen ***
  • Die Konfiguration des durchsuchbaren Verschlüsselungssystems 100 ist die gleiche wie die Konfiguration in Ausführungsform 1 (siehe 1).
  • Ein Teil der Konfiguration der Datenverwaltungseinrichtung 600 unterscheidet sich jedoch von der Konfiguration in Ausführungsform 1.
  • Auf Basis von 24 wird die Konfiguration der Datenverwaltungseinrichtung 600 beschrieben.
  • Die Datenverwaltungseinrichtung 600 weist ein Element auf, das als Umwandlungseinheit 623 bezeichnet wird.
  • *** Beschreibung der Operation ***
  • Anhand von 25 wird das durchsuchbare Verschlüsselungsverfahren beschrieben.
  • Schritte S130, S170, S180 und S190 sind wie in Ausführungsform 1 beschrieben.
  • Schritte S310, S320, S340, S350 und S360 werden nachfolgend beschrieben.
  • Anhand von 26 wird ein Ablauf für die Hauptschlüsselerzeugung (S310) beschrieben.
  • Die Hauptschlüsselerzeugung (S310) entspricht der Hauptschlüsselerzeugung (S110) in Ausführungsform 1.
  • In Schritt S311 nimmt die Annahmeeinheit 210 die Schlüssellänge BIT und die maximale Anzahl von Malen MAX an.
  • In Schritt S312 erzeugt die Erzeugungseinheit 220 einen Hauptschlüssel MK und einen öffentlichen Parameter PP auf Grundlage der Schlüssellänge BIT.
  • Der Hauptschlüssel MK und der öffentliche Parameter PP werden wie unten beschrieben erzeugt.
  • Zunächst wählt die Erzeugungseinheit 220 zufällig zwei Primzahlen (P, Q) mit der gleichen Bitlänge wie BIT/2 aus.
  • Anschließend berechnet die Erzeugungseinheit 220 ein Produkt N (= P*Q) aus der Primzahl P und der Primzahl Q.
  • Als nächstes wählt die Erzeugungseinheit 220 zufällig eine ganze Zahl x aus einem Satz {1, 2, ..., N-1} von ganzen Zahlen zwischen 1 und (N-1) aus.
  • Anschließend dividiert die Erzeugungseinheit 220 die Quadratwurzel der ganzen Zahl x durch das Produkt N, um einen Rest g (= x*x modN) zu berechnen. „X modY“ bedeutet einen Rest, wenn X durch Y geteilt wird.
  • Ein Produkt, das durch Berechnung von (P-1)*(Q-1) erhalten wird, wird als „Z“ bezeichnet.
  • Als Nächstes wählt die Erzeugungseinheit 220 zufällig eine ganze Zahl y die im Verhältnis zu Z dünnbesetzt ist, aus einem Satz {1, 2, ..., Z } ganzer Zahlen von 1 bis Z aus.
  • Anschließend dividiert die Erzeugungseinheit 220 die Quadratwurzel der ganzen Zahl y durch das Produkt Z, um einen Rest e (= y*y modZ) zu berechnen.
  • Als nächstes wählt die Erzeugungseinheit 220 eine ganze Zahl d, die d*e modZ = 1 erfüllt, aus dem Satz der ganzen Zahlen von 1 bis Z aus.
  • Dann erzeugt die Erzeugungseinheit 220 den Hauptschlüssel MK und den öffentlichen Parameter PP.
  • Der Hauptschlüssel MK enthält die Primzahl P, die Primzahl Q, den Rest g und die ganze Zahl d.
  • Der öffentliche Parameter PP umfasst das Produkt N, den Rest e, den Identifikator der kryptografischen Funktion F und die maximale Anzahl von Malen MAX.
  • Der Hauptschlüssel MK wird wie unten angegeben ausgedrückt. MK = ( P ,  Q ,  g ,  d )
    Figure DE112021005887T5_0039
  • Der öffentliche Parameter PP wird wie unten angegeben ausgedrückt. PP = ( N ,  e ,  E ,  F ,  MAX )
    Figure DE112021005887T5_0040
  • In Schritt S313 speichert und bewahrt die Erzeugungseinheit 220 den Hauptschlüssel MK und den öffentlichen Parameter PP in der Speichereinheit 290.
  • Schritt S313 ist Schritt S113 in Ausführungsform 1 gleich.
  • In Schritt S314 gibt die Ausgabeeinheit 230 den Hauptschlüssel MK und den öffentlichen Parameter PP aus.
  • Schritt S314 ist Schritt S114 in Ausführungsform 1 gleich.
  • Anhand von 27 wird ein Ablauf für eine Geheimschlüsselerzeugung (S320) beschrieben.
  • Die Geheimschlüsselerzeugung (S320) entspricht der Geheimschlüsselerzeugung (S120) in Ausführungsform 1.
  • In Schritt S321 nimmt die Annahmeeinheit 310 den Hauptschlüssel MK und den öffentlichen Parameter PP an.
  • Schritt S321 ist Schritt S121 in Ausführungsform 1 gleich.
  • In Schritt S322 nimmt die Annahmeeinheit 310 die Schlüsselerzeugungszahl i an.
  • Schritt S322 ist Schritt S122 in Ausführungsform 1 gleich.
  • In Schritt S323 erzeugt die Erzeugungseinheit 320 einen Geheimschlüssel SK(i) unter Verwendung des Hauptschlüssels MK, des öffentlichen Parameters PP und der Schlüsselerzeugungszahl i.
  • Der Geheimschlüssel SK(i) umfasst den Datenschlüssel DK(i), den Schlüsselwortschlüssel KK(i) und die Schlüsselerzeugungszahl i.
  • Der Geheimschlüssel SK(i) wird wie unten angegeben ausgedrückt. SK ( i ) = ( DK ( i ) ,  KK ( i ) ,  i )
    Figure DE112021005887T5_0041
  • Der Datenschlüssel DK(i) und der Schlüsselwortschlüssel KK(i) werden wie nachstehend angegeben ausgedrückt. Das heißt, der Datenschlüssel DK(i) und der Schlüsselwortschlüssel KK(i) werden durch Mehrfachverschlüsselung erzeugt. DK ( i ) = F ( g ei  modN )
    Figure DE112021005887T5_0042
    KK ( i ) = g ei  modN
    Figure DE112021005887T5_0043
    ei = e ( MAX i + 1 )
    Figure DE112021005887T5_0044
  • Da jedoch F(KK(i)) = DK(i) gilt, kann der Geheimschlüssel SK(i) ohne den Datenschlüssel DK(i) sein.
  • Das Schlüsselwort KK steht in folgender Beziehung. KK ( i 1 ) = KK ( i ) e  modN
    Figure DE112021005887T5_0045
  • Falls der Schlüsselwortschlüssel KK(i) und der Rest e bekannt sind, kann aufgrund der obigen Beziehung der Schlüsselwortschlüssel KK(i-1) wiederhergestellt werden. Außerdem kann durch wiederholte Wiederherstellung nicht nur der Schlüsselwortschlüssel KK(i-1), sondern auch KK(i-2), ..., KK(1) aus dem Schlüsselwortschlüssel KK(i) und dem Rest e wiederhergestellt werden.
  • In ähnlicher Weise können auch DK(i-1), ..., DK(1) aus dem Datenschlüssel DK(i) und dem Rest e wiederhergestellt werden.
  • Falls der Geheimschlüssel SK(i-1) beibehalten wird, kann die Erzeugungseinheit 320 den Geheimschlüssel SK(i) unter Verwendung des Geheimschlüssels SK(i-1) erzeugen.
  • In diesem Fall werden der Datenschlüssel DK(i) und der Schlüsselwortschlüssel KK(i) wie nachstehend angegeben ausgedrückt. DK ( i ) = F ( KK ( i 1 ) d  modN )
    Figure DE112021005887T5_0046
    KK ( i ) = KK ( i 1 ) d  modN
    Figure DE112021005887T5_0047
  • In Schritt S324 speichert und bewahrt die Erzeugungseinheit 320 den Geheimschlüssel SK(i) in der Speichereinheit 390.
  • Schritt S324 ist Schritt S124 in Ausführungsform 1 gleich.
  • In Schritt S325 gibt die Ausgabeeinheit 330 den Geheimschlüssel SK(i) aus.
  • Schritt S325 ist Schritt S125 in Ausführungsform 1 gleich.
  • Anhand von 28 wird ein Ablauf zur Datenregistrierung (S340) beschrieben.
  • Die Datenregistrierung (S340) ist äquivalent mit Schritt S140 in Ausführungsform 1.
  • In Schritt S341 nimmt die Annahmeeinheit 410 den Geheimschlüssel SK(i) und den öffentlichen Parameter PP an.
  • Schritt S341 ist derselbe wie Schritt S141 in Ausführungsform 1.
  • In Schritt S342 nimmt die Annahmeeinheit 410 einen Klartext M an.
  • Schritt S342 ist Schritt S142 in Ausführungsform 1 gleich.
  • In einem Schritt S343 erzeugt die Zufallszahl-Erzeugungseinheit 421 eine Datenzufallszahl CR und eine Schlüsselwortzufallszahl KR.
  • Schritt S343 ist Schritt S143 in Ausführungsform 1 gleich.
  • In Schritt S344 verschlüsselt die Chiffretext-Erzeugungseinheit 422 den Klartext M unter Verwendung des Geheimschlüssels SK(i), des öffentlichen Parameters PP und der Datenzufallszahl CR. Als Ergebnis werden Chiffretextdaten CT(i) erzeugt.
  • Schritt S344 ist Schritt S144 in Ausführungsform 1 gleich.
  • In Schritt S345 erzeugt die Schlüsselwort-Erzeugungseinheit 423 ein Registrierungsschlüsselwort W.
  • Schritt S345 ist Schritt S145 in Ausführungsform 1 gleich.
  • In Schritt S346 verschlüsselt die Verschlüsseltes-Tag-Erzeugungseinheit 424 das Registrierungsschlüsselwort W, wobei der Geheimschlüssel SK(i), der öffentliche Parameter PP und die Schlüsselwortzufallszahl KR verwendet werden, um verschlüsselte Tag-Daten ET(i) zu erzeugen.
  • Die verschlüsselten Tag-Daten ET(i) umfassen das verschlüsselte Tag ET und die Schlüsselerzeugungszahl i.
  • Das verschlüsselte Tag ET enthält das verschlüsselte Schlüsselwort EW und die Schlüsselwortzufallszahl KR.
  • Die Verschlüsseltes-Tag-Daten ET(i) werden wie unten angegeben ausgedrückt. ET ( i ) = ( ET ,  i )
    Figure DE112021005887T5_0048
    ET = ( EW ,  KR )
    Figure DE112021005887T5_0049
  • Das verschlüsselte Schlüsselwort EW wird zum Beispiel wie unten angegeben ausgedrückt. In diesem Fall verschlüsselt die Verschlüsseltes-Tag-Erzeugungseinheit 424 das Registrierungsschlüsselwort W unter Verwendung des Schlüsselwortschlüssels KK(i) und der Schlüsselwortzufallszahl KR. Als Ergebnis wird das verschlüsselte Schlüsselwort EW erzeugt. EW = F ( KR KK ( i ) F ( W )  modN )
    Figure DE112021005887T5_0050
  • Falls es eine Vielzahl von Registrierungsschlüsselwörtern W gibt, umfasst das verschlüsselte Tag ET das verschlüsselte Tag jedes Registrierungsschlüsselwortes W.
  • Wenn es zum Beispiel ein Registrierungsschlüsselwort W1 und ein Registrierungsschlüsselwort W2 gibt, wird das verschlüsselte Tag ET wie unten angegeben ausgedrückt. ET = ( F ( KR KK ( i ) F ( W 1 )  modN ) ,  F ( KR KK ( i ) F ( W 2 )  modN ) ,  KR )
    Figure DE112021005887T5_0051
  • In Schritt S347 erzeugt die Registrierungseinheit 430 durchsuchbare Verschlüsselungsdaten SE(i).
  • Die durchsuchbaren Verschlüsselungsdaten SE(i) umfassen den Dateinamen File(M), die Chiffretextdaten CT(i), die verschlüsselten Tag-Daten ET(i) und die Schlüsselerzeugungszahl i.
  • Schritt S347 ist Schritt S147 in Ausführungsform 1 gleich.
  • In Schritt S348 registriert die Registrierungseinheit 430 die durchsuchbaren Verschlüsselungsdaten SE(i) in der Registrierungsdatenbank 691.
  • Schritt S348 ist Schritt S148 in Ausführungsform 1 gleich.
  • Anhand von 29 wird ein Ablauf zur Suchanforderung (S350) beschrieben.
  • Die Suchanforderung (S350) ist äquivalent mit der Suchanforderung (S150) in Ausführungsform 1.
  • In Schritt S351 nimmt die Annahmeeinheit 510 den Geheimschlüssel SK(i) und den öffentlichen Parameter PP an.
  • Schritt S351 ist Schritt S151 in Ausführungsform 1 gleich.
  • In Schritt S352 nimmt die Annahmeeinheit 510 das Suchschlüsselwort w an.
  • Schritt S352 ist Schritt S152 in Ausführungsform 1 gleich.
  • In Schritt S353 stellt die Wiederherstellungseinheit 520 den Geheimschlüssel SK(1_j) unter Verwendung des Geheimschlüssels SK(i) und des öffentlichen Parameters PP wieder her.
  • Der Geheimschlüssel SK(1_j) wird wie unten angegeben ausgedrückt. SK ( 1 _ j ) = ( SK ( 1 ) ,   , SK ( i 2 ) ,  SK ( i 1 ) )
    Figure DE112021005887T5_0052
  • Der Geheimschlüssel SK(1_j) wird wie unten beschrieben wiederhergestellt.
  • Zunächst stellt die Wiederherstellungseinheit 520 den Datenschlüssel DK(1J) wieder her.
  • Der Datenschlüssel DK(1_j) wird wie unten angegeben ausgedrückt. Es wird angenommen, dass KK(i) = gei modN gilt. DK ( 1 _ j ) = ( DK ( 1 ) ,   , DK ( i 2 ) ,  DK ( i 1 ) )
    Figure DE112021005887T5_0053
    DK ( i 1 ) = F ( KK ( i ) e  modN )
    Figure DE112021005887T5_0054
    DK ( i 2 ) = F ( KK ( i ) e  modN )
    Figure DE112021005887T5_0055
    DK ( 1 ) = F ( KK ( i ) e * * modN )
    Figure DE112021005887T5_0056
  • DK(i-3) bis DK(2) werden ähnlich wie DK(i-2) berechnet.
  • Die Wiederherstellungseinheit 520 stellt auch den Schlüsselwortschlüssel KK(1_j) wieder her.
  • Der Schlüsselwortschlüssel KK(1_j) wird in ähnlicher Weise wiederhergestellt wie der Datenschlüssel DK(1_j).
  • Dann erzeugt die Wiederherstellungseinheit 520 den Geheimschlüssel SK jeder Erzeugung von der ersten bis zur (i-1)-ten Erzeugung.
  • Der Geheimschlüssel SK(n) wird wie unten angegeben ausgedrückt. Der Geheimschlüssel SK(n) ist der Geheimschlüssel SK der n-ten Erzeugung. SK ( n ) = ( DK ( n ) ,  KK ( n ) ,  n )
    Figure DE112021005887T5_0057
  • In Schritt S354 erzeugt die Erzeugungseinheit 530 eine Suchanfrage SQ(i) unter Verwendung des Geheimschlüssels SK(i), des öffentlichen Parameters PP und des Suchschlüsselworts w.
  • Die Suchanfrage SQ(i) wird zum Beispiel wie unten angegeben ausgedrückt. SQ ( i ) = KK ( i ) F ( w )  modN
    Figure DE112021005887T5_0058
  • In Schritt S355 überträgt die Anforderungseinheit 540 die Suchanfrage SQ(i) über die Kommunikationseinrichtung 505 an die Datenverwaltungseinrichtung 600.
  • Anhand von 30 wird ein Ablauf zur Datensuche (S360) beschrieben.
  • Die Datensuche (S360) ist der Datensuche (S160) in Ausführungsform 1 gleich.
  • In Schritt S361 nimmt die Annahmeeinheit 610 den öffentlichen Parameter PP an.
  • Schritt S361 ist Schritt S161 in Ausführungsform 1 gleich.
  • In Schritt S362 empfängt die Annahmeeinheit 610 die Suchanfrage SQ(1_i).
  • Schritt S362 ist Schritt S162 in Ausführungsform 1 gleich.
  • In Schritt S363 wandelt die Umwandlungseinheit 623 die Suchanfrage SQ(i) in eine Suchanfrage (1_j) um.
  • Die Suchanfrage SQ(1_j) wird wie unten angegeben ausgedrückt. Es wird angenommen, dass SQ(i) = KK(i)F(w) modN gilt. SQ ( 1 _ j ) = ( SQ ( 1 ) ,   ,  SQ ( i 2 ) , SQ ( i 1 ) )
    Figure DE112021005887T5_0059
    SQ ( i 1 ) = SQ ( i ) e  modN
    Figure DE112021005887T5_0060
    SQ ( i 2 ) = SQ ( i 1 ) e  modN
    Figure DE112021005887T5_0061
    SQ ( 1 ) = SQ ( 2 ) e  modN
    Figure DE112021005887T5_0062
  • SQ(i-3) bis SQ(2) werden ähnlich wie SQ(i-2) berechnet.
  • In Schritt S364 gleicht die Prüfeinheit 621 die Suchanfrage SQ(1_i) mit jedem Stück durchsuchbarer Verschlüsselungsdaten SE(n) in der Registrierungsdatenbank 691 ab, um durchsuchbare Verschlüsselungsdaten SE(n) zu finden, die der Suchanfrage SQ(1_i) entsprechen.
  • Die Prüfeinheit 621 gleicht die Suchanfrage SQ(1_i) mit den durchsuchbaren Verschlüsselungsdaten SE(n) wie im Folgenden beschrieben ab.
  • Zunächst bestimmt die Prüfeinheit 621, ob die in den durchsuchbaren Verschlüsselungsdaten SE(n) enthaltene Schlüsselerzeugungszahl n gleich wie oder kleiner als i ist.
  • Falls die Schlüsselerzeugungszahl n gleich wie oder kleiner als i ist, extrahiert die Prüfeinheit 621 das verschlüsselte Tag ET aus den verschlüsselten Tag-Daten ET(n) in den durchsuchbaren Verschlüsselungsdaten SE(n) und extrahiert das verschlüsselte Schlüsselwort EW und die Schlüsselwortzufallszahl KR aus dem extrahierten verschlüsselten Tag ET.
  • Als nächstes erzeugt die Prüfeinheit 621 ein Prüf-Tag Tg(k) für jede Suchanfrage SQ(k), die in der Suchanfrage SQ(1_i) enthalten ist, unter Verwendung der Suchanfrage SQ(k) und der extrahierten Schlüsselwortzufallszahl KR.
  • Das Prüf-Tag Tg wird wie unten angegeben ausgedrückt. Tg ( k ) = F ( KR SQ ( k ) )
    Figure DE112021005887T5_0063
  • Dann vergleicht die Prüfeinheit 621 das Prüf-Tag Tg(k) für jede Suchanfrage SQ(k), die in der Suchanfrage SQ(1_i) enthalten ist, mit dem extrahierten verschlüsselten Schlüsselwort EW.
  • Falls eines der Prüf-Tags Tg(k) mit dem extrahierten verschlüsselten Schlüsselwort EW übereinstimmt, entsprechen die durchsuchbaren Verschlüsselungsdaten SE(n) der Suchanfrage SQ(1_i).
  • In einem Fall, in dem es eine Vielzahl von verschlüsselten Schlüsselwörtern EW gibt, falls eines der Prüf-Tags Tg(k) mit einem der verschlüsselten Schlüsselwörter EW übereinstimmt, entsprechen die durchsuchbaren Verschlüsselungsdaten SE(n) der Suchanfrage SQ(1_i).
  • Die durchsuchbaren Verschlüsselungsdaten SE(n), die der Suchanfrage (1_i) entsprechen, werden als „anwendbare durchsuchbare Verschlüsselungsdaten SE(n)“ bezeichnet. Die anwendbaren durchsuchbaren Verschlüsselungsdaten SE(n) umfassen die verschlüsselten Tag-Daten ET(n), die der Suchanfrage SQ(1_i) entsprechen.
  • In Schritt S365 extrahiert die Extraktionseinheit 622 die Chiffretextdaten CT(n) und die Schlüsselerzeugungszahl n aus jedem Teil der anwendbaren durchsuchbaren Verschlüsselungsdaten SE(n).
  • Schritt S365 ist Schritt S164 in Ausführungsform 1 gleich.
  • In Schritt S366 erzeugt die Ausgabeeinheit 630 Daten, die einen Satz aufweisen, der jeden Satz aus den Chiffretextdaten CT(n) und der Schlüsselerzeugungszahl n aufweist. Die erzeugten Daten sind das verschlüsselte Suchergebnis {(CT(n), n)}.
  • S366 ist Schritt S165 in Ausführungsform 1 gleich.
  • In Schritt S367 überträgt die Ausgabeeinheit 630 das verschlüsselte Suchergebnis {(CT(n), n)} unter Verwendung der Kommunikationseinrichtung 605 an die Suchoperationseinrichtung 500.
  • Schritt S367 ist Schritt S166 in Ausführungsform 1 gleich.
  • *** Wirkungen von Ausführungsform 3 ***
  • Ausführungsform 3 ermöglicht eine Schlüsselaktualisierung, die unter Verwendung eines verschlüsselten Tags in der durchsuchbaren Verschlüsselung des Gemeinsamer-Schlüssel-Schemas durchgeführt werden soll. Darüber hinaus kann die alte Suchanfrage (1_j) aus der neuen Suchanfrage SK(i) wiederhergestellt werden.
  • Ausführungsform 3 hat zusätzlich zu den im Wesentlichen gleichen Wirkungen wie die von Ausführungsform 1 die folgende Wirkung.
  • Unter Verwendung des öffentlichen Parameters PP kann die auf der Grundlage des neuen Geheimschlüssels SK(i) erzeugte Suchanfrage SQ(i) in die auf der Grundlage des alten Geheimschlüssels SK(1_j) erzeugte Suchanfrage(1_j) umgewandelt werden. Somit kann die Größe der Suchanfrage reduziert werden.
  • Ausführungsform 4
  • Im Hinblick auf eine Ausführungsform, bei der der verschlüsselte Index El anstelle des verschlüsselten Tags ET verwendet wird und die Suchanfrage SQ(1_j) aus der Suchanfrage SQ(i) wiederhergestellt wird, werden die Unterschiede zu den Ausführungsformen 1 bis 3 hauptsächlich anhand der 31 bis 35 beschrieben.
  • *** Beschreibung von Konfigurationen ***
  • Die Konfiguration des durchsuchbaren Verschlüsselungssystems 100 ist die gleiche wie die Konfiguration in Ausführungsform 1 (siehe 1).
  • Ein Teil der Konfiguration jeder der Registrierungseinrichtung 400 und der Datenverwaltungseinrichtung 600 unterscheidet sich jedoch von der Konfiguration in Ausführungsform 1.
  • Auf Basis von 31 wird die Konfiguration der Registrierungseinrichtung 400 beschrieben.
  • Die Registrierungseinrichtung 400 umfasst Elemente wie die Suchergebnis-Erzeugungseinheit 425 und die Verschlüsselter-Index-Erzeugungseinheit 426 anstelle der Verschlüsseltes-Tag-Erzeugungseinheit 424 in Ausführungsform 1.
  • Auf Basis von 32 wird die Konfiguration der Datenverwaltungseinrichtung 600 beschrieben.
  • Die Datenverwaltungseinrichtung 600 weist ein Element auf, das als die Umwandlungseinheit 623 bezeichnet wird.
  • *** Beschreibung der Operation ***
  • Anhand von 33 wird das durchsuchbare Verschlüsselungsverfahren beschrieben.
  • Schritte S310 und S320 sind wie in Ausführungsform 3 beschrieben.
  • Schritte S130, S170, S180 und S190 sind wie in Ausführungsform 1 beschrieben.
  • Schritte S440 und S460 werden nachfolgend beschrieben.
  • Anhand von 34 wird ein Ablauf zur Datenregistrierung (S440) beschrieben.
  • Die Datenregistrierung (S440) ist äquivalent mit Schritt S240 in Ausführungsform 2.
  • In Schritt S441 nimmt die Annahmeeinheit 410 den Geheimschlüssel SK(i) und den öffentlichen Parameter PP an.
  • Schritt S441 ist Schritt S241 in Ausführungsform 2 gleich.
  • In Schritt S442 nimmt die Annahmeeinheit 410 einen Klartext M an.
  • Schritt S442 ist Schritt S242 in Ausführungsform 2 gleich.
  • In einem Schritt S443 erzeugt die Zufallszahl-Erzeugungseinheit 421 eine Datenzufallszahl CR und eine Schlüsselwortzufallszahl KR.
  • Schritt S443 ist Schritt S243 in Ausführungsform 2 gleich.
  • In Schritt S444 verschlüsselt die Chiffretext-Erzeugungseinheit 422 den Klartext M unter Verwendung des Geheimschlüssels SK(i), des öffentlichen Parameters PP und der Datenzufallszahl CR. Als Ergebnis werden Chiffretextdaten CT(i) erzeugt.
  • Schritt S444 ist Schritt S244 in Ausführungsform 2 gleich.
  • In Schritt S445 erzeugt die Schlüsselwort-Erzeugungseinheit 423 ein Registrierungsschlüsselwort W.
  • Schritt S445 ist Schritt S245 in Ausführungsform 2 gleich.
  • Es wird davon ausgegangen, dass in Schritt S442 mindestens ein Klartext M angenommen wird, in Schritt S444 mindestens ein Stück Chiffretextdaten CT(i) erzeugt wird und in Schritt S445 mindestens ein Registrierungsschlüsselwort W erzeugt wird.
  • In Schritt S446 erzeugt die Suchergebnis-Erzeugungseinheit 425 ein Suchergebnis RES auf der Grundlage von mindestens einem Registrierungsschlüsselwort W.
  • Schritt S446 ist Schritt S246 in Ausführungsform 2 gleich.
  • In Schritt S447 verschlüsselt die Verschlüsselter-Index-Erzeugungseinheit 426 das Suchergebnis RES unter Verwendung des Geheimschlüssels SK(i), des öffentlichen Parameters PP und der Schlüsselwortzufallszahl KR. Als Ergebnis werden die verschlüsselten Indexdaten El(i) erzeugt.
  • Die verschlüsselten Index-Daten El(i) umfassen den verschlüsselten Index El und die Schlüsselerzeugungszahl i.
  • Der verschlüsselte Index El ist das verschlüsselte Suchergebnis RES, das den verschlüsselten Schlüsselwortschlüssel und den verschlüsselten Identifikator val enthält.
  • Der verschlüsselte Schlüsselwortschlüssel ist ein Registrierungsschlüsselwort kw, das verschlüsselt wurde. Das Registrierungsschlüsselwort kw wird mit dem Schlüsselwortschlüssel KK(i) verschlüsselt.
  • Der verschlüsselte Identifikator val ist der Identifikator res, der verschlüsselt wurde. Der Identifikator res wird mit dem verschlüsselten Registrierungsschlüsselwort kw und der Schlüsselwortzufallszahl KR verschlüsselt.
  • Die verschlüsselten Indexdaten El(i) werden zum Beispiel wie unten angegeben ausgedrückt. El ( i ) = { ( key ,  val ) }
    Figure DE112021005887T5_0064
    key = F ( 0 KK ( i ) F ( kw )  modN )
    Figure DE112021005887T5_0065
    val = E ( F ( 1 KK ( i ) F ( kw )  modN ) ,  res , KR )
    Figure DE112021005887T5_0066
  • Das heißt, der verschlüsselte Schlüsselwortschlüssel wird durch Verschlüsselung eines Potenzierungsrests mit dem Schlüsselwortschlüssel KK(i) als Basis, dem Registrierungsschlüsselwort kw als Exponent und Modulo des Produkts N erhalten, unter Verwendung der kryptografischen Funktion F.
  • Der verschlüsselte Identifikator val wird erhalten, indem ein Wert berechnet wird, der ein Schlüssel sein soll, indem ein Potenzierungsrest mit dem Schlüsselwortschlüssel KK(i) als Basis, dem Registrierungsschlüsselwort kw als Exponent und Modulo des Produkts N unter Verwendung der kryptografischen Funktion F verschlüsselt wird und der Identifikator res mit dem berechneten Schlüssel und der Schlüsselwortzufallszahl KR verschlüsselt wird.
  • Das Produkt N ist das Produkt aus der Primzahl P und der Primzahl Q (siehe Schritt S312 in Ausführungsform 3).
  • In Schritt S448 erzeugt die Registrierungseinheit 430 durchsuchbare Verschlüsselungsdaten SE(i).
  • Die durchsuchbaren Verschlüsselungsdaten SE(i) umfassen den Dateinamen File(M), die Chiffretextdaten CT, die verschlüsselten Indexdaten El(i) und die Schlüsselerzeugungszahl i.
  • Schritt S448 ist Schritt S248 in Ausführungsform 2 gleich.
  • In Schritt S449 registriert die Registrierungseinheit 430 die durchsuchbaren Verschlüsselungsdaten SE(i) in der Registrierungsdatenbank 691.
  • Schritt S449 ist Schritt S249 in Ausführungsform 2 gleich.
  • Anhand von 35 wird ein Ablauf zur Datensuche (S460) beschrieben.
  • Die Datensuche (S460) entspricht Schritt S160 in Ausführungsform 1, Schritt S260 in Ausführungsform 2 und Schritt S360 in Ausführungsform 3.
  • In Schritt S461 nimmt die Annahmeeinheit 610 den öffentlichen Parameter PP an.
  • Schritt S461 ist Schritt S161 in Ausführungsform 1 gleich.
  • In Schritt S462 empfängt die Annahmeeinheit 610 die Suchanfrage SQ(1_i).
  • Schritt S462 ist Schritt S162 in Ausführungsform 1 gleich.
  • In Schritt S463 wandelt die Umwandlungseinheit 623 die Suchanfrage SQ(i) in die Suchanfrage (1_j) um.
  • Schritt S463 ist Schritt S363 in Ausführungsform 3 gleich.
  • In Schritt S464 gleicht die Prüfeinheit 621 die Suchanfrage SQ(1_i) mit jedem Stück durchsuchbarer Verschlüsselungsdaten SE(n) in der Registrierungsdatenbank 691 ab, um durchsuchbare Verschlüsselungsdaten SE(n) zu finden, die der Suchanfrage SQ(1_i) entsprechen.
  • Die Prüfeinheit 621 gleicht die Suchanfrage SQ(1_i) mit den durchsuchbaren Verschlüsselungsdaten SE(n) wie im Folgenden beschrieben ab.
  • Zunächst berechnet die Prüfeinheit 621 die erste Suchanfrage SQ(k)1 und die zweite Suchanfrage SQ(k)2 für jede in der Suchanfrage SQ(1_i) enthaltene Suchanfrage SQ(k).
  • Die erste Anfrage SQ(k)1 und die zweite Anfrage SQ(k)2 werden wie unten angegeben ausgedrückt. SQ ( k ) 1 = F ( 0 SQ ( k ) modN )
    Figure DE112021005887T5_0067
    SQ ( k ) 2 = F ( 1 SQ ( k ) modN )
    Figure DE112021005887T5_0068
  • Als nächstes bestimmt die Prüfeinheit 621, ob die in den durchsuchbaren Verschlüsselungsdaten SE(n) enthaltene Schlüsselerzeugungszahl n gleich wie oder kleiner als i ist.
  • Wenn die Schlüsselerzeugungszahl n gleich wie oder kleiner als i ist, extrahiert die Prüfeinheit 621 den verschlüsselten Index El aus den verschlüsselten Indexdaten El(n) in den durchsuchbaren Verschlüsselungsdaten SE(n).
  • Dann vergleicht die Prüfeinheit 621 die erste Anfrage SQ(k)1 mit jedem verschlüsselten Schlüsselwortschlüssel im verschlüsselten Index El für jede Suchanfrage SQ(k), die in der Suchanfrage SQ(1_j) enthalten ist.
  • Falls der verschlüsselte Schlüsselwortschlüssel gefunden wird, der mit der ersten Suchanfrage SQ(k) übereinstimmt, stimmen die durchsuchbaren Verschlüsselungsdaten SE(n) mit der Suchanfrage SQ(1_i) überein.
  • Die durchsuchbaren Verschlüsselungsdaten SE(n), die der Suchanfrage (1_i) entsprechen, werden als „anwendbare durchsuchbare Verschlüsselungsdaten SE(n)“ bezeichnet. Die anwendbaren durchsuchbaren Verschlüsselungsdaten SE(n) umfassen die verschlüsselten Indexdaten El(n), die der Suchanfrage SQ(1_i) entsprechen.
  • Der verschlüsselte Schlüsselwortschlüssel, der mit der ersten Anfrage SQ(k)1 übereinstimmt, wird als der „anwendbare verschlüsselte Schlüsselwortschlüssel“ bezeichnet. Die verschlüsselten Indexdaten El(n) einschließlich des anwendbaren verschlüsselten Schlüsselwortschlüssels werden als die „anwendbaren verschlüsselten Indexdaten EI(n)“ bezeichnet.
  • Die zweite Anfrage SQ(k)2, die der ersten Anfrage SQ(k)1 entspricht, wird als die „anwendbare zweite Anfrage SQ(k)2“ bezeichnet.
  • In Schritt S465 extrahiert die Extraktionseinheit 622 mindestens einen verschlüsselten Identifikator val, der dem anwendbaren verschlüsselten Schlüsselwortschlüssel entspricht, aus jedem Stück der anwendbaren verschlüsselten Indexdaten El(n).
  • Dann entschlüsselt die Extraktionseinheit 622 den Identifikator res aus dem verschlüsselten Identifikator val unter Verwendung der anwendbaren zweiten Anfrage SQ(k) für jeden extrahierten verschlüsselten Identifikator val. Der Identifikator res wird wie unten angegeben entschlüsselt. res = D ( SQ ( k ) 2,  val )
    Figure DE112021005887T5_0069
  • In Schritt S466 extrahiert die Extraktionseinheit 622 für jeden entschlüsselten Identifikator res einen Satz der Chiffretextdaten CT und die Schlüsselerzeugungszahl n, die mit demselben Füllnamen (M) wie der Identifikator res aus der Registrierungsdatenbank 691 verknüpft sind.
  • In Schritt S467 erzeugt die Ausgabeeinheit 630 Daten, die einen Satz aufweisen, der jeden Satz aus den Chiffretextdaten CT(n) und der Schlüsselerzeugungszahl n aufweist. Die erzeugten Daten sind das verschlüsselte Suchergebnis {(CT(n), n)}.
  • Schritt S467 ist Schritt S165 in Ausführungsform 1 gleich.
  • In Schritt S468 überträgt die Ausgabeeinheit 630 das verschlüsselte Suchergebnis {(CT(n), n)} unter Verwendung der Kommunikationseinrichtung 605 an die Suchoperationseinrichtung 500.
  • Schritt S468 ist Schritt S166 in Ausführungsform 1 gleich.
  • *** Wirkungen von Ausführungsform 4 ***
  • Ausführungsform 2 ermöglicht eine Schlüsselaktualisierung, die auch in dem Schema unter Verwendung des verschlüsselten Index ET in der durchsuchbaren Verschlüsselung des Gemeinsamer-Schlüssel-Schemas durchgeführt werden soll. Darüber hinaus kann die alte Suchanfrage (1_j) aus der neuen Suchanfrage SK(i) wiederhergestellt werden.
  • Ausführungsform 4 hat zusätzlich zu den im Wesentlichen gleichen Wirkungen wie die von Ausführungsform 3 die folgende Wirkung.
  • Identifikatoren, die als Treffer für ein Suchwort gefunden werden, können gemeinsam extrahiert werden, ohne dass die Chiffretexte entschlüsselt werden.
  • *** Ergänzung zu Ausführungsformen ***
  • Auf Basis von 36 wird eine Hardware-Konfiguration der Hauptschlüsseleinrichtung 200 beschrieben.
  • Die Hauptschlüsseleinrichtung 200 enthält einen Verarbeitungsschaltkreis 209.
  • Der Verarbeitungsschaltkreis 209 ist Hardware, welche die Annahmeeinheit 210, die Erzeugungseinheit 220 und die Ausgabeeinheit 230 verwirklicht.
  • Der Verarbeitungsschaltkreis 209 kann eine zweckgebundene Hardware sein oder kann der Prozessor 201 sein, der im Arbeitsspeicher 202 gespeicherte Programme ausführt.
  • Wenn der Verarbeitungsschaltkreis 209 zweckgebundene Hardware ist, ist der Verarbeitungsschaltkreis 209 beispielsweise eine Einzelschaltung, eine Verbundschaltung, ein programmierter Prozessor, ein parallel programmierter Prozessor, ein ASIC, ein FPGA, oder eine Kombination daraus.
  • ASIC ist die Abkürzung für Application Specific Integrated Circuit (anwendungsspezifische integrierte Schaltung).
  • FPGA ist eine Abkürzung für Field Programmable Gate Array (dt. Feldprogrammierbare Gatteranordnung).
  • Die Hauptschlüsseleinrichtung 200 kann als Alternative zu dem Verarbeitungsschaltkreis 209 eine Vielzahl von Verarbeitungsschaltungen einschließen.
  • In dem Verarbeitungsschaltkreis 209 können einige Funktionen durch spezielle Hardware und die übrigen Funktionen durch Software oder Firmware realisiert werden.
  • Wie oben beschrieben, können die Funktionen der Hauptschlüsseleinrichtung 200 durch Hardware, Software, Firmware oder eine Kombination davon realisiert werden.
  • Auf Basis von 37 wird eine Hardware-Konfiguration der Geheimschlüsseleinrichtung 300 beschrieben.
  • Die Geheimschlüsseleinrichtung 300 enthält einen Verarbeitungsschaltkreis 309.
  • Der Verarbeitungsschaltkreis 309 ist Hardware, welche die Annahmeeinheit 310, die Erzeugungseinheit 320 und die Ausgabeeinheit 330 verwirklicht.
  • Der Verarbeitungsschaltkreis 309 kann eine zweckgebundene Hardware sein oder kann der Prozessor 301 sein, der im Arbeitsspeicher 302 gespeicherte Programme ausführt.
  • Wenn der Verarbeitungsschaltkreis 309 zweckgebundene Hardware ist, ist der Verarbeitungsschaltkreis 309 beispielsweise eine Einzelschaltung, eine Verbundschaltung, ein programmierter Prozessor, ein parallel programmierter Prozessor, ein ASIC, ein FPGA, oder eine Kombination daraus.
  • Die Geheimschlüsseleinrichtung 300 kann als Alternative zu dem Verarbeitungsschaltkreis 309 eine Vielzahl von Verarbeitungsschaltungen einschließen.
  • In dem Verarbeitungsschaltkreis 309 können einige Funktionen durch spezielle Hardware und die übrigen Funktionen durch Software oder Firmware realisiert werden.
  • Wie oben beschrieben, können die Funktionen der Geheimschlüsseleinrichtung 300 durch Hardware, Software, Firmware oder eine Kombination davon realisiert werden.
  • Auf Basis von 38 wird eine Hardware-Konfiguration der Registrierungseinrichtung 400 beschrieben.
  • Die Registrierungseinrichtung 400 umfasst einen Verarbeitungsschaltkreis 409.
  • Der Verarbeitungsschaltkreis 409 ist Hardware, welche die Annahmeeinheit 410, die Erzeugungseinheit 420 und die Registrierungseinheit 430 verwirklicht.
  • Der Verarbeitungsschaltkreis 409 kann eine zweckgebundene Hardware sein oder kann der Prozessor 401 sein, der im Arbeitsspeicher 402 gespeicherte Programme ausführt.
  • Wenn der Verarbeitungsschaltkreis 409 zweckgebundene Hardware ist, ist der Verarbeitungsschaltkreis 409 beispielsweise eine Einzelschaltung, eine Verbundschaltung, ein programmierter Prozessor, ein parallel programmierter Prozessor, ein ASIC, ein FPGA, oder eine Kombination daraus.
  • Die Registrierungseinrichtung 400 kann als Alternative zu dem Verarbeitungsschaltkreis 409 eine Vielzahl von Verarbeitungsschaltungen einschließen.
  • In dem Verarbeitungsschaltkreis 409 können einige Funktionen durch spezielle Hardware und die übrigen Funktionen durch Software oder Firmware realisiert werden.
  • Wie oben beschrieben, können die Funktionen der Registrierungseinrichtung 400 durch Hardware, Software, Firmware oder eine Kombination davon realisiert werden.
  • Auf Basis von 39 wird eine Hardware-Konfiguration der Suchoperationseinrichtung 500 beschrieben.
  • Die Suchoperationseinrichtung 500 enthält einen Verarbeitungsschaltkreis 509.
  • Der Verarbeitungsschaltkreis 509 ist Hardware, welche die Annahmeeinheit 510, die Wiederherstellungseinheit 520, die Erzeugungseinheit 530, die Anforderungseinheit 540, die Entschlüsselungseinheit 550 und die Ausgabeeinheit 560 verwirklicht.
  • Der Verarbeitungsschaltkreis 509 kann eine zweckgebundene Hardware sein oder kann der Prozessor 501 sein, der im Arbeitsspeicher 502 gespeicherte Programme ausführt.
  • Wenn der Verarbeitungsschaltkreis 509 zweckgebundene Hardware ist, ist der Verarbeitungsschaltkreis 509 beispielsweise eine Einzelschaltung, eine Verbundschaltung, ein programmierter Prozessor, ein parallel programmierter Prozessor, ein ASIC, ein FPGA, oder eine Kombination daraus.
  • Die Suchoperationseinrichtung 500 kann als Alternative zu dem Verarbeitungsschaltkreis 509 eine Vielzahl von Verarbeitungsschaltungen einschließen.
  • In dem Verarbeitungsschaltkreis 509 können einige Funktionen durch spezielle Hardware und die übrigen Funktionen durch Software oder Firmware realisiert werden.
  • Wie oben beschrieben, können die Funktionen der Suchoperationseinrichtung 500 durch Hardware, Software, Firmware oder eine Kombination davon realisiert werden.
  • Auf Basis von 40 wird eine Hardware-Konfiguration der Datenverwaltungseinrichtung 600 beschrieben.
  • Die Datenverwaltungseinrichtung 600 weist einen Verarbeitungsschaltkreis 609 auf.
  • Der Verarbeitungsschaltkreis 609 ist Hardware, welche die Annahmeeinheit 610, die Sucheinheit 620, die Ausgabeeinheit 630 und die Verwaltungseinheit 640 verwirklicht.
  • Die Verarbeitungsschaltung 609 kann eine zweckgebundene Hardware sein oder kann der Prozessor 601 sein, der im Arbeitsspeicher 602 gespeicherte Programme ausführt.
  • Wenn die Verarbeitungsschaltung 609 zweckgebundene Hardware ist, ist der Verarbeitungsschaltkreis 609 beispielsweise eine Einzelschaltung, eine Verbundschaltung, ein programmierter Prozessor, ein parallel programmierter Prozessor, ein ASIC, ein FPGA, oder eine Kombination daraus.
  • Die Datenverwaltungseinrichtung 600 kann als Alternative zu dem Verarbeitungsschaltkreis 609 eine Vielzahl von Verarbeitungsschaltungen einschließen.
  • In dem Verarbeitungsschaltkreis 609 können einige Funktionen durch spezielle Hardware und die übrigen Funktionen durch Software oder Firmware realisiert werden.
  • Wie oben beschrieben, können die Funktionen der Datenverwaltungseinrichtung 600 durch Hardware, Software, Firmware oder eine Kombination davon realisiert werden.
  • Jede der Ausführungsformen ist ein Beispiel für eine bevorzugte Ausführungsform und soll den technischen Umfang der vorliegenden Offenbarung nicht einschränken. Jede der Ausführungsformen kann auch nur teilweise implementiert werden oder kann in Kombination mit einer anderen Ausführungsform implementiert werden. Die in den Flussdiagrammen oder ähnlichem beschriebenen Abläufe können in geeigneter Weise modifiziert werden.
  • Jede in den Ausführungsformen beschriebene Einrichtung kann durch eine Vielzahl von Einrichtungen realisiert sein. Alternativ können auch zwei oder mehr der in den Ausführungsformen beschriebenen Einrichtungen durch eine Einrichtung realisiert werden.
  • Jede „Einheit“, die ein Element jeder in den Ausführungsformen beschriebenen Einrichtung ist, kann als „Prozess“, „Schritt“, „Schaltung“ oder „Schaltkreis“ interpretiert werden.
  • Bezugszeichenliste
  • 100
    durchsuchbares Verschlüsselungssystem,
    101
    Netzwerk,
    200
    Hauptschlüsseleinrichtung,
    201
    Prozessor,
    202
    Arbeitsspeicher,
    203
    Hilfsspeichereinrichtung,
    204
    Eingabe/Ausgabe-Schnittstelle,
    205
    Kommunikationseinrichtung,
    209
    Verarbeitungsschaltkreis,
    210
    Annahmeeinheit,
    220
    Erzeugungseinheit,
    230
    Ausgabeeinheit,
    290
    Speichereinheit,
    300
    Geheimschlüsseleinrichtung,
    301
    Prozessor,
    302
    Arbeitsspeicher,
    303
    Hilfsspeichereinrichtung,
    304
    Eingabe/Ausgabe-Schnittstelle,
    305
    Kommunikationseinrichtung,
    309
    Verarbeitungsschaltkreis,
    310
    Annahmeeinheit,
    320
    Erzeugungseinheit,
    330
    Ausgabeeinheit,
    390
    Speichereinheit,
    400
    Registrierungseinrichtung,
    401
    Prozessor,
    402
    Arbeitsspeicher,
    403
    Hilfsspeichereinrichtung,
    404
    Eingabe/Ausgabe-Schnittstelle,
    405
    Kommunikationseinrichtung,
    409
    Verarbeitungsschaltkreis,
    410
    Annahmeeinheit,
    420
    Erzeugungseinheit,
    421
    Zufallszahl-Erzeugungseinheit,
    422
    Chiffretextdaten-Erzeugungseinheit,
    423
    Schlüsselwort-Erzeugungseinheit,
    424
    Verschlüsseltes-Tag-Erzeugungseinheit,
    425
    Suchergebnis-Erzeugungseinheit,
    426
    Verschlüsselter-Index-Erzeugungseinheit,
    430
    Registrierungseinheit,
    490
    Speichereinheit,
    500
    Suchoperationseinheit,
    501
    Prozessor,
    502
    Arbeitsspeicher,
    503
    Hilfsspeichereinrichtung,
    504
    Eingabe/Ausgabe-Schnittstelle,
    505
    Kommunikationseinrichtung,
    509
    Verarbeitungsschaltung,
    510
    Annahmeeinheit,
    520
    Wiederherstellungseinheit,
    530
    Erzeugungseinheit,
    540
    Anforderungseinheit,
    550
    Entschlüsselungseinheit,
    560
    Ausgabeeinheit,
    590
    Speichereinheit,
    600
    Datenverwaltungseinrichtung,
    601
    Prozessor,
    602
    Arbeitsspeicher,
    603
    Hilfsspeichereinrichtung,
    604
    Eingabe/Ausgabe-Schnittstelle,
    605
    Kommunikationseinrichtung,
    609
    Verarbeitungsschaltkreis,
    610
    Annahmeeinheit,
    620
    Sucheinheit,
    621
    Prüfeinheit,
    622
    Extraktionseinheit,
    623
    Umwandlungseinheit,
    630
    Ausgabeeinheit,
    640
    Verwaltungseinheit,
    690
    Speichereinheit,
    691
    Registrierungsdatenbank.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Nicht-Patentliteratur
    • A Method for Key-Updatable Symmetric Searchable Encryption. IEICE Technical Report ISEC2019-54 [0008]

Claims (10)

  1. Durchsuchbares Verschlüsselungssystem, umfassend: eine Durchsuchbare-Verschlüsselungsdaten-Erzeugungseinheit zum Verschlüsseln eines Klartexts, um Chiffretextdaten zu erzeugen, wobei ein neuer Datenschlüssel verwendet wird, der durch Mehrfachverschlüsselung erzeugt wird, und zum Verschlüsseln eines Registrierungsschlüsselworts, um ein verschlüsseltes Schlüsselwort zu erzeugen, wobei ein neuer Schlüsselwortschlüssel verwendet wird, der durch die Mehrfachverschlüsselung erzeugt wird; eine Registrierungseinheit zum Registrieren eines Satzes der Chiffretextdaten und des verschlüsselten Schlüsselworts in einer Registrierungsdatenbank; eine Wiederherstellungseinheit zum Wiederherstellen eines alten Datenschlüssels aus dem neuen Datenschlüssel und zum Wiederherstellen eines alten Schlüsselwortschlüssels aus dem neuen Schlüsselwortschlüssel, auf Grundlage der Mehrfachverschlüsselung; eine Suchanfrage-Erzeugungseinheit zum Verschlüsseln eines Suchschlüsselwortes, um eine neue Suchanfrage und eine alte Suchanfrage zu erzeugen, wobei jeweils der neue Schlüsselwortschlüssel und der alte Schlüsselwortschlüssel verwendet wird; eine Sucheinheit zum Finden eines verschlüsselten Schlüsselwortes, das mit einer der neuen Suchanfrage und der alten Suchanfrage übereinstimmt, aus der Registrierungsdatenbank; eine Suchergebnis-Ausgabeeinheit zum Ausgeben eines verschlüsselten Suchergebnisses, das Chiffretextdaten enthält, die dem gefundenen verschlüsselten Schlüsselwort entsprechen; und eine Entschlüsselungseinheit zum Entschlüsseln eines Klartextes aus den im verschlüsselten Suchergebnis enthaltenen Chiffretextdaten, wobei einer des neuen Datenschlüssels und des alten Datenschlüssels verwendet wird.
  2. Durchsuchbares Verschlüsselungssystem nach Anspruch 1, wobei die Durchsuchbare-Verschlüsselungsdaten-Erzeugungseinheit verschlüsselte Tag-Daten erzeugt, die das verschlüsselte Schlüsselwort enthalten, und durchsuchbare Verschlüsselungsdaten erzeugt, die die Chiffretext-Daten und die verschlüsselten Tag-Daten enthalten, wobei die Registrierungseinheit die durchsuchbaren Verschlüsselungsdaten in der Registrierungsdatenbank registriert, wobei die Sucheinheit als anwendbare durchsuchbare Verschlüsselungsdaten durchsuchbare Verschlüsselungsdaten findet, die verschlüsselte Tag-Daten enthalten, die mit einer der neuen Suchanfrage und der alten Suchanfrage aus der Registrierungsdatenbank übereinstimmen, und wobei die Suchergebnis-Ausgabeeinheit als verschlüsseltes Suchergebnis Daten ausgibt, die Chiffretextdaten enthalten, die in den anwendbaren durchsuchbaren Verschlüsselungsdaten enthalten sind.
  3. Durchsuchbares Verschlüsselungssystem nach Anspruch 2, wobei die Durchsuchbare-Verschlüsselungsdaten-Erzeugungseinheit als die verschlüsselten Tag-Daten, Daten erzeugt, die das verschlüsselte Schlüsselwort und eine Schlüsselwortzufallszahl enthalten, und wobei die Sucheinheit für jede Suchanfrage der neuen Suchanfrage und der alten Suchanfrage ein Prüf-Tag unter Verwendung der Suchanfrage und der Schlüsselwortzufallszahl in den verschlüsselten Tag-Daten erzeugt und, wenn eines der Prüf-Tags mit dem verschlüsselten Schlüsselwort in den verschlüsselten Tag-Daten übereinstimmt, die durchsuchbaren Verschlüsselungsdaten einschließlich der verschlüsselten Tag-Daten als die anwendbaren durchsuchbaren Verschlüsselungsdaten findet.
  4. Durchsuchbares Verschlüsselungssystem nach Anspruch 1, ferner umfassend eine Extraktionseinheit, wobei die Durchsuchbare-Verschlüsselungsdaten-Erzeugungseinheit als Suchergebnis mindestens einen Satz eines Registrierungsschlüsselworts und eines Identifikators erzeugt, das Suchergebnis unter Verwendung des neuen Schlüsselwortschlüssels verschlüsselt, um verschlüsselte Indexdaten zu erzeugen, die mindestens einen Satz des verschlüsselten Schlüsselworts und einen verschlüsselten Identifikator enthalten, und durchsuchbare Verschlüsselungsdaten erzeugt, die die Chiffretextdaten, die verschlüsselten Indexdaten und einen Dateinamen enthalten, wobei die Registrierungseinheit die durchsuchbaren Verschlüsselungsdaten in der Registrierungsdatenbank registriert, wobei die Sucheinheit als anwendbare verschlüsselte Indexdaten verschlüsselte Indexdaten findet, die ein verschlüsseltes Schlüsselwort enthalten, das mit einer der neuen Suchanfrage und der alten Suchanfrage aus der Registrierungsdatenbank übereinstimmt, wobei die Extraktionseinheit jeden Identifikator aus jedem verschlüsselten Identifikator in den anwendbaren verschlüsselten Indexdaten unter Verwendung einer anwendbaren Suchanfrage entschlüsselt, die eine Suchanfrage der neuen Suchanfrage und der alten Suchanfrage ist, die mit den anwendbaren verschlüsselten Indexdaten übereinstimmt, und Chiffretextdaten extrahiert, die demselben Dateinamen wie jeder Identifikator aus der Registrierungsdatenbank entsprechen, und wobei die Suchergebnis-Ausgabeeinheit als verschlüsseltes Suchergebnis Daten ausgibt, die Chiffretextdaten enthalten, die jedes Element von extrahierten Chiffretextdaten enthalten.
  5. Durchsuchbares Verschlüsselungsverfahren, umfassend: Verschlüsseln eines Klartexts, um Chiffretextdaten zu erzeugen, wobei ein neuer Datenschlüssel verwendet wird, der durch Mehrfachverschlüsselung erzeugt wird, und Verschlüsseln eines Registrierungsschlüsselworts, um ein verschlüsseltes Schlüsselwort zu erzeugen, wobei ein neuer Schlüsselwortschlüssel verwendet wird, der durch die Mehrfachverschlüsselung erzeugt wird, durch eine Durchsuchbare-Verschlüsselungsdaten-Erzeugungseinheit; Registrieren eines Satzes der Chiffretextdaten und des verschlüsselten Schlüsselworts in einer Registrierungsdatenbank durch eine Registrierungseinheit; Wiederherstellen eines alten Datenschlüssels aus dem neuen Datenschlüssel und Wiederherstellen eines alten Schlüsselwortschlüssels aus dem neuen Schlüsselwortschlüssel, auf Grundlage der Mehrfachverschlüsselung, durch eine Wiederherstellungseinheit; Verschlüsseln eines Suchschlüsselwortes, um eine neue Suchanfrage und eine alte Suchanfrage zu erzeugen, wobei jeweils der neue Schlüsselwortschlüssel und der alte Schlüsselwortschlüssel verwendet wird, durch eine Suchanfrage-Erzeugungseinheit; Finden eines verschlüsselten Schlüsselwortes, das mit einer der neuen Suchanfrage und der alten Suchanfrage übereinstimmt, aus der Registrierungsdatenbank durch eine Sucheinheit; Ausgeben eines verschlüsselten Suchergebnisses, das Chiffretextdaten enthält, die dem gefundenen verschlüsselten Schlüsselwort entsprechen, durch eine Suchergebnis-Ausgabeeinheit; und Entschlüsseln eines Klartextes aus den im verschlüsselten Suchergebnis enthaltenen Chiffretextdaten, wobei einer des neuen Datenschlüssels und des alten Datenschlüssels verwendet wird, durch eine Entschlüsselungseinheit.
  6. Durchsuchbares Verschlüsselungssystem, umfassend: eine Durchsuchbare-Verschlüsselungsdaten-Erzeugungseinheit zum Verschlüsseln eines Klartexts, um Chiffretextdaten zu erzeugen, wobei ein neuer Datenschlüssel verwendet wird, der durch Mehrfachverschlüsselung erzeugt wird, und zum Verschlüsseln eines Registrierungsschlüsselworts, um ein verschlüsseltes Schlüsselwort zu erzeugen, wobei ein neuer Schlüsselwortschlüssel verwendet wird, der durch die Mehrfachverschlüsselung erzeugt wird; eine Registrierungseinheit zum Registrieren eines Satzes der Chiffretextdaten und des verschlüsselten Schlüsselworts in einer Registrierungsdatenbank; eine Suchanfrage-Erzeugungseinheit zum Verschlüsseln eines Suchschlüsselwortes, um eine neue Suchanfrage zu erzeugen, wobei der neue Schlüsselwortschlüssel verwendet wird; eine Umwandlungseinheit zum Umwandeln der neuen Suchanfrage in eine alte Suchanfrage, die unter Verwendung eines alten Schlüsselwortschlüssels, der dem neuen Schlüsselwortschlüssel entspricht, erzeugt wird, auf der Grundlage der Mehrfachverschlüsselung; eine Sucheinheit zum Finden eines verschlüsselten Schlüsselwortes, das mit einer der neuen Suchanfrage und der alten Suchanfrage übereinstimmt, aus der Registrierungsdatenbank; eine Suchergebnis-Ausgabeeinheit zum Ausgeben eines verschlüsselten Suchergebnisses, das Chiffretextdaten enthält, die dem gefundenen verschlüsselten Schlüsselwort entsprechen; eine Wiederherstellungseinheit zum Wiederherstellen eines alten Datenschlüssels aus dem neuen Datenschlüssel, auf Grundlage der Mehrfachverschlüsselung; und eine Entschlüsselungseinheit zum Entschlüsseln eines Klartextes aus den im verschlüsselten Suchergebnis enthaltenen Chiffretextdaten, wobei einer des neuen Datenschlüssels und des alten Datenschlüssels verwendet wird.
  7. Durchsuchbares Verschlüsselungssystem nach Anspruch 6, wobei die Durchsuchbare-Verschlüsselungsdaten-Erzeugungseinheit verschlüsselte Tag-Daten erzeugt, die das verschlüsselte Schlüsselwort enthalten, und durchsuchbare Verschlüsselungsdaten erzeugt, die die Chiffretext-Daten und die verschlüsselten Tag-Daten enthalten, wobei die Registrierungseinheit die durchsuchbaren Verschlüsselungsdaten in der Registrierungsdatenbank registriert, wobei die Sucheinheit als anwendbare durchsuchbare Verschlüsselungsdaten durchsuchbare Verschlüsselungsdaten findet, die verschlüsselte Tag-Daten enthalten, die mit einer der neuen Suchanfrage und der alten Suchanfrage aus der Registrierungsdatenbank übereinstimmen, und wobei die Suchergebnis-Ausgabeeinheit als verschlüsseltes Suchergebnis Daten ausgibt, die Chiffretextdaten enthalten, die in den anwendbaren durchsuchbaren Verschlüsselungsdaten enthalten sind.
  8. Durchsuchbares Verschlüsselungssystem nach Anspruch 7, wobei die Durchsuchbare-Verschlüsselungsdaten-Erzeugungseinheit als die verschlüsselten Tag-Daten, Daten erzeugt, die das verschlüsselte Schlüsselwort und eine Schlüsselwortzufallszahl enthalten, und wobei die Sucheinheit für jede Suchanfrage der neuen Suchanfrage und der alten Suchanfrage ein Prüf-Tag unter Verwendung der Suchanfrage und der Schlüsselwortzufallszahl in den verschlüsselten Tag-Daten erzeugt und, wenn eines der Prüf-Tags mit dem verschlüsselten Schlüsselwort in den verschlüsselten Tag-Daten übereinstimmt, die durchsuchbaren Verschlüsselungsdaten einschließlich der verschlüsselten Tag-Daten als die anwendbaren durchsuchbaren Verschlüsselungsdaten findet.
  9. Durchsuchbares Verschlüsselungssystem nach Anspruch 6, ferner umfassend eine Extraktionseinheit, wobei die Durchsuchbare-Verschlüsselungsdaten-Erzeugungseinheit als Suchergebnis mindestens einen Satz eines Registrierungsschlüsselworts und eines Identifikators erzeugt, das Suchergebnis unter Verwendung des neuen Schlüsselwortschlüssels verschlüsselt, um verschlüsselte Indexdaten zu erzeugen, die mindestens einen Satz des verschlüsselten Schlüsselworts und einen verschlüsselten Identifikator enthalten, und durchsuchbare Verschlüsselungsdaten erzeugt, die die Chiffretextdaten, die verschlüsselten Indexdaten und einen Dateinamen enthalten, wobei die Registrierungseinheit die durchsuchbaren Verschlüsselungsdaten in der Registrierungsdatenbank registriert, wobei die Sucheinheit als anwendbare verschlüsselte Indexdaten verschlüsselte Indexdaten findet, die ein verschlüsseltes Schlüsselwort enthalten, das mit einer der neuen Suchanfrage und der alten Suchanfrage aus der Registrierungsdatenbank übereinstimmt, wobei die Extraktionseinheit jeden Identifikator aus jedem verschlüsselten Identifikator in den anwendbaren verschlüsselten Indexdaten unter Verwendung einer anwendbaren Suchanfrage entschlüsselt, die eine Suchanfrage der neuen Suchanfrage und der alten Suchanfrage ist, die mit den anwendbaren verschlüsselten Indexdaten übereinstimmt, und Chiffretextdaten extrahiert, die demselben Dateinamen wie jeder Identifikator aus der Registrierungsdatenbank entsprechen, und wobei die Suchergebnis-Ausgabeeinheit als verschlüsseltes Suchergebnis Daten ausgibt, die Chiffretextdaten enthalten, die jedes Element von extrahierten Chiffretextdaten enthalten.
  10. Durchsuchbares Verschlüsselungsverfahren, umfassend: Verschlüsseln eines Klartexts, um Chiffretextdaten zu erzeugen, wobei ein neuer Datenschlüssel verwendet wird, der durch Mehrfachverschlüsselung erzeugt wird, und Verschlüsseln eines Registrierungsschlüsselworts, um ein verschlüsseltes Schlüsselwort zu erzeugen, wobei ein neuer Schlüsselwortschlüssel verwendet wird, der durch die Mehrfachverschlüsselung erzeugt wird, durch eine Durchsuchbare-Verschlüsselungsdaten-Erzeugungseinheit; Registrieren eines Satzes der Chiffretextdaten und des verschlüsselten Schlüsselworts in einer Registrierungsdatenbank durch eine Registrierungseinheit; Verschlüsseln eines Suchschlüsselwortes, um eine neue Suchanfrage zu erzeugen, wobei der neue Schlüsselwortschlüssel verwendet wird, durch eine Suchanfrage-Erzeugungseinheit; Umwandeln der neuen Suchanfrage in eine alte Suchanfrage, die unter Verwendung eines alten Schlüsselwortschlüssels, der dem neuen Schlüsselwortschlüssel entspricht, auf der Grundlage der Mehrfachverschlüsselung erzeugt wird, durch eine Umwandlungseinheit; Finden eines verschlüsselten Schlüsselwortes, das mit einer der neuen Suchanfrage und der alten Suchanfrage übereinstimmt, aus der Registrierungsdatenbank durch eine Sucheinheit; Ausgeben eines verschlüsselten Suchergebnisses, das Chiffretextdaten enthält, die dem gefundenen verschlüsselten Schlüsselwort entsprechen, durch eine Suchergebnis-Ausgabeeinheit; Wiederherstellen eines alten Datenschlüssels aus dem neuen Datenschlüssel, auf Grundlage der Mehrfachverschlüsselung, durch eine Wiederherstellungseinheit; und Entschlüsseln eines Klartextes aus den im verschlüsselten Suchergebnis enthaltenen Chiffretextdaten, wobei einer des neuen Datenschlüssels und des alten Datenschlüssels verwendet wird, durch eine Entschlüsselungseinheit.
DE112021005887.8T 2021-01-13 2021-01-13 Durchsuchbares Verschlüsselungssystem und durchsuchbares Verschlüsselungsverfahren Pending DE112021005887T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/000825 WO2022153394A1 (ja) 2021-01-13 2021-01-13 秘匿検索システムおよび秘匿検索方法

Publications (1)

Publication Number Publication Date
DE112021005887T5 true DE112021005887T5 (de) 2023-08-31

Family

ID=82447008

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021005887.8T Pending DE112021005887T5 (de) 2021-01-13 2021-01-13 Durchsuchbares Verschlüsselungssystem und durchsuchbares Verschlüsselungsverfahren

Country Status (5)

Country Link
US (1) US20230289345A1 (de)
JP (1) JP7217844B1 (de)
CN (1) CN116670741A (de)
DE (1) DE112021005887T5 (de)
WO (1) WO2022153394A1 (de)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007005878A (ja) * 2005-06-21 2007-01-11 Kddi Corp 共有鍵生成方法、共有鍵生成方式、暗号化データコピー方法、共有鍵生成プログラム、暗号化データ送信プログラムおよび暗号化データ受信プログラム
JP6961324B2 (ja) * 2015-08-25 2021-11-05 株式会社日立製作所 検索可能暗号処理システム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A Method for Key-Updatable Symmetric Searchable Encryption. IEICE Technical Report ISEC2019-54

Also Published As

Publication number Publication date
JPWO2022153394A1 (de) 2022-07-21
JP7217844B1 (ja) 2023-02-03
WO2022153394A1 (ja) 2022-07-21
CN116670741A (zh) 2023-08-29
US20230289345A1 (en) 2023-09-14

Similar Documents

Publication Publication Date Title
Hacigümüş et al. Executing SQL over encrypted data in the database-service-provider model
DE112017006021T5 (de) Verfahren und System zur unscharfen Schlagwortsuche in verschlüsselten Daten
US7685437B2 (en) Query optimization in encrypted database systems
US11341128B2 (en) Poly-logarithmic range queries on encrypted data
US10503730B1 (en) Systems and methods for cryptographically-secure queries using filters generated by multiple parties
DE202015009874U1 (de) Implementierung semistrukturierter Daten als ein Datenbankelement erster Klasse
CN108628867A (zh) 面向云存储的多关键词密文检索方法和系统
DE112014000584T5 (de) Erreichen von Speichereffizienz bei durchgängiger Verschlüsselung unter Verwendung von nachgelagerten (Downstream-)Decryptern
DE102010043265A1 (de) Systeme und Verfahren zum Verarbeiten und Verwalten von objektbezogenen Daten zur Verwendung durch mehrere Anwendungen
DE112012004544T5 (de) Schützen vertraulicher Daten in einer Übertragung
DE112018007433T5 (de) Registrierungsvorrichtung, servervorrichtung, durchsuchbares verschlüsselungssystem, durchsuchbares verschlüsselungs-verfahren, registrierungsprogramm und serverprogramm
DE112014007083T5 (de) Servervorrichtung, Suchsystem, Endgerätevorrichtung, Suchverfahren, Serverprogramm und Endgeräteprogramm
DE102013203126A1 (de) Transparentes Zugreifen auf verschlüsselte nicht-relationale Daten in Echtzeit
DE102012218576B4 (de) Verschlüsseln von Daten und Charakterisierungsdaten, die den gültigen Inhalt einer Spalte beschreiben
DE102019113249A1 (de) Wertevergleichsserver, wertevergleichsverschlüsselungssystem und wertevergleichsverfahren
EP3552141B1 (de) Server-computersystem zur bereitstellung von datensätzen
EP3563261B1 (de) Bitsequenzbasiertes datenklassifikationssystem
DE102019205130A1 (de) Datenanalyse-Server, Datenanalysesystem und Datenanalyseverfahren
CN115438230A (zh) 安全高效的动态加密云数据多维范围查询方法
DE112020002859T5 (de) Verschlüsselter wissens-graph
DE112018007468T5 (de) Geheime-Suche-Einrichtung und Geheime-Suche-Verfahren
EP3552140B1 (de) Datenbankindex aus mehreren feldern
DE112020005557B4 (de) Registrierungseinrichtung, suchoperationseinrichtung, datenverwaltungseinrichtung, registrierungsprogramm, suchoperationsprogramm und datenverwaltungsprogramm
DE112021005887T5 (de) Durchsuchbares Verschlüsselungssystem und durchsuchbares Verschlüsselungsverfahren
CN102855292A (zh) 密文全文检索系统的安全覆盖网构建方法及对应的全文检索方法

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R084 Declaration of willingness to licence