DE112015002508T5 - Schlüsselaustauschsystem, Schlüsselaustauschverfahren, Schlüsselaustauschvorrichtung, Steuerverfahren dafür und Aufzeichnungsmedium zum Speichern von Steuerprogramm - Google Patents

Schlüsselaustauschsystem, Schlüsselaustauschverfahren, Schlüsselaustauschvorrichtung, Steuerverfahren dafür und Aufzeichnungsmedium zum Speichern von Steuerprogramm Download PDF

Info

Publication number
DE112015002508T5
DE112015002508T5 DE112015002508.1T DE112015002508T DE112015002508T5 DE 112015002508 T5 DE112015002508 T5 DE 112015002508T5 DE 112015002508 T DE112015002508 T DE 112015002508T DE 112015002508 T5 DE112015002508 T5 DE 112015002508T5
Authority
DE
Germany
Prior art keywords
key
signature
random band
key exchange
random
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.)
Granted
Application number
DE112015002508.1T
Other languages
English (en)
Other versions
DE112015002508B4 (de
Inventor
Jun Furukawa
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of DE112015002508T5 publication Critical patent/DE112015002508T5/de
Application granted granted Critical
Publication of DE112015002508B4 publication Critical patent/DE112015002508B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • 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
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Die vorliegende Erfindung ist selbst dann fähig, einen Sitzungsschlüssel zu verbergen, wenn ein Angreifer den anderen Schlüsselaustauschpartner erfolgreich nachahmt. Ein Prüfschlüssel und ein Signaturschlüssel werden aus einem beliebigen Zufallsband erzeugt und ein geheimer Schlüssel wird aus einem zweiten Zufallsband erzeugt. Ein verschlüsseltes zweites Zufallsband wird durch eine Arithmetikoperation an einer Pseudozufallsfunktion erzeugt, in welcher das zweite Zufallsband und der geheime Schlüssel Variablen sind, und ein verschlüsseltes drittes Zufallsband wird durch eine Arithmetikoperation an einer Pseudozufallsfunktion erzeugt, in welcher ein drittes Zufallsband und der geheime Schlüssel Variablen sind. Ein schlüsselverkapselter öffentlicher Schlüssel wird auf der Basis des verschlüsselten zweiten Zufallsbands erzeugt, wobei der erzeugte öffentliche Schlüssel an den anderen Schlüsselaustauschpartner übertragen wird, und ein Sitzungsschlüssel wird aus dem schlüsselverkapselten öffentlichen Schlüssel und einem schlüsselverkapselten Verschlüsselungstext, der von dem anderen Schlüsselaustauschpartner empfangen wird, decodiert. Eine Signatur wird auf der Basis des Signaturschlüssels, einer Nachricht und des verschlüsselten dritten Zufallsbands erzeugt, wobei die erzeugte Signatur an den anderen Schlüsselaustauschpartner übertragen wird, und die von dem anderen Schlüsselaustauschpartner empfangene Signatur wird auf der Basis des Prüfschlüssels des anderen Schlüsselaustauschpartners, einer empfangenen Nachricht und einer empfangenen Signatur bestätigt.

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft eine Technologie einer Schlüsselaustauschvorrichtung.
  • Hintergrundtechnik
  • Eine Technologie für den Schlüsselaustausch ist in NPL 1 offenbart. Insbesondere tauschen zwei Schlüsselaustauschvorrichtungen, von denen jede einen öffentlichen Schlüssel der anderen kennt, verschlüsselte Daten aus, in welche Zufallsbänder, die in die jeweiligen Schlüsselaustauschvorrichtungen eingegeben werden, mit ihrem eigenen langfristigen geheimen Schlüssel verschlüsselt werden. Jede Schlüsselaustauschvorrichtung erzeugt basierend auf den verschlüsselten Daten, die sie von dem anderen Austauschpartner empfängt, dem öffentlichen Schlüssel des anderen Austauschpartners und seinem eigenen langfristigen geheimen Schlüssel einen Sitzungsschlüssel. Als ein Ergebnis werden die Sitzungsschlüssel, die von den zwei Schlüsselaustauschvorrichtungen erzeugt werden, identisch. Wenn nicht die Zufallsbänder, die für die Erzeugung der Sitzungsschlüssel verwendet werden, und die langfristigen geheimen Schlüssel von einem Angreifer gestohlen werden, werden die Sitzungsschlüssel vor dem Angreifer verborgen.
  • Referenzliste
  • Nicht-Patentliteratur
    • [NPL 1] Brian A. LaMacchia, Kristin Lauter, Anton Mityagin, ”Stronger Security of Authenticated Key Exchange” Provable Security, Lecture Notes in Computer Science Band 4784, 2007, S. 1–16
  • Zusammenfassung der Erfindung
  • Technisches Problem
  • Jedoch hat die in der vorstehend beschriebenen Literatur offenbarte Technologie Probleme in der Hinsicht, dass, wenn ein Angreifer eine der Schlüsselaustauschvorrichtungen nachahmt und die verschlüsselten Daten von dem anderen Schlüsselaustauschpartner abfängt, der langfristige geheime Schlüssel der nachgeahmten Schlüsselaustauschvorrichtung gestohlen wird und ferner der Sitzungsschlüssel des anderen Schlüsselaustauschpartners von dem Angreifer gestohlen wird.
  • Eine Aufgabe der vorliegenden Erfindung ist, eine Technologie bereitzustellen, die das vorstehend beschriebene Problem löst.
  • Lösung für das Problem
  • Ein Aspekt einer Schlüsselaustauschvorrichtung gemäß der vorliegenden Erfindung umfasst:
    eine Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    eine Arithmetikeinrichtung zum Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    eine Schlüsselverkapselungsverarbeitungseinrichtung zum Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an einen anderen Schlüsselaustauschpartner zu übertragen, und Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von dem anderen Schlüsselaustauschpartner empfangen wird; und
    eine Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  • Ein anderer Aspekt einer Schlüsselaustauschvorrichtung gemäß der vorliegenden Erfindung umfasst:
    eine Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    eine Arithmetikeinrichtung zum Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    eine Schlüsselverkapselungsverarbeitungseinrichtung zum Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von einem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten zweiten Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an den anderen Schlüsselaustauschpartner; und
    eine Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  • Noch ein anderer Aspekt einer Schlüsselaustauschvorrichtung gemäß der vorliegenden Erfindung umfasst:
    eine Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    eine Arithmetikeinrichtung zum Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    eine Schlüsselverkapselungsverarbeitungseinrichtung zum Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an einen anderen Schlüsselaustauschpartner zu übertragen, Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von dem anderen Schlüsselaustauschpartner empfangen wird, Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von dem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten zweiten Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an den anderen Schlüsselaustauschpartner; und
    eine Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  • Ein Aspekt eines Steuerverfahrens für eine Schlüsselaustauschvorrichtung gemäß der vorliegenden Erfindung umfasst:
    Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an einen anderen Schlüsselaustauschpartner zu übertragen, und Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von dem anderen Schlüsselaustauschpartner empfangen wird; und
    Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen der Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und einer empfangenen Signatur.
  • Ein Aspekt eines Aufzeichnungsmediums zum Speichern eines Steuerprogramms einer Schlüsselaustauschvorrichtung gemäß der vorliegenden Erfindung, wobei das Steuerprogramm einen Computer dazu bringt, auszuführen:
    Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an einen anderen Schlüsselaustauschpartner zu übertragen, und Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von dem anderen Schlüsselaustauschpartner empfangen wird; und
    Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  • Ein anderer Aspekt eines Steuerverfahrens für eine Schlüsselaustauschvorrichtung gemäß der vorliegenden Erfindung, wobei das Verfahren umfasst:
    Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von einem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten zweiten Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an den anderen Schlüsselaustauschpartner; und
    Erzeugen der Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  • Ein anderer Aspekt eines Aufzeichnungsmediums, das ein Steuerprogramm für eine Schlüsselaustauschvorrichtung gemäß der vorliegenden Erfindung speichert, wobei das Steuerprogramm einen Computer dazu bringt, auszuführen:
    Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von einem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten zweiten Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an den anderen Schlüsselaustauschpartner; und
    Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  • Ein Aspekt eines Schlüsselaustauschsystems gemäß der vorliegenden Erfindung, wobei das Schlüsselaustauschsystem umfasst:
    eine erste Schlüsselaustauschvorrichtung, die den Schlüsselaustausch anfordert; und eine zweite Schlüsselaustauschvorrichtung, die auf die Anforderung des Schlüsselaustauschs antwortet,
    wobei die erste Schlüsselaustauschvorrichtung umfasst:
    eine erste Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    eine erste Arithmetikeinrichtung zum Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    eine erste Schlüsselverkapselungsverarbeitungseinrichtung zum Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an die zweite Schlüsselaustauschvorrichtung zu übertragen, und Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von der zweiten Schlüsselaustauschvorrichtung empfangen wird; und
    eine erste Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an die zweite Schlüsselaustauschvorrichtung und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel der zweiten Schlüsselaustauschvorrichtung ist, einer empfangenen Nachricht und der empfangenen Signatur; und
    wobei die zweite Schlüsselaustauschvorrichtung umfasst:
    eine zweite Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem vierten Zufallsband und eines geheimen Schlüssels basierend auf einem fünften Zufallsband;
    eine Arithmetikeinrichtung zum Erzeugen eines verschlüsselten fünften Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem fünften Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten sechsten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem sechsten Zufallsband und dem geheimen Schlüssel als Variablen;
    eine zweite Schlüsselverkapselungsverarbeitungseinrichtung zum Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von einem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten fünften Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an die erste Schlüsselaustauschvorrichtung; und
    eine zweite Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten sechsten Zufallsband, Übertragen der Signatur an die erste Schlüsselaustauschvorrichtung und Prüfen einer Signatur, die von der ersten Schlüsselaustauschvorrichtung empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel der ersten Schlüsselaustauschvorrichtung ist, einer empfangenen Nachricht und der empfangenen Signatur.
  • Ein Aspekt eines Schlüsselaustauschverfahrens gemäß der vorliegenden Erfindung ist das Schlüsselaustauschverfahren eines Schlüsselaustauschsystems, das eine erste Schlüsselaustauschvorrichtung, die den Schlüsselaustausch anfordert, und eine zweite Schlüsselaustauschvorrichtung, die auf die Anforderung des Schlüsselaustauschs antwortet, umfasst, wobei das Verfahren umfasst:
    durch die erste Schlüsselaustauschvorrichtung Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    durch die erste Schlüsselaustauschvorrichtung Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    durch die erste Schlüsselaustauschvorrichtung Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband und Übertragen des schlüsselverkapselten öffentlichen Schlüssels an die zweite Schlüsselaustauschvorrichtung;
    wenn ein schlüsselverkapselter öffentlicher Schlüssel von der zweiten Schlüsselaustauschvorrichtung empfangen wird, durch die zweite Schlüsselaustauschvorrichtung Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem vierten Zufallsband und eines geheimen Schlüssels basierend auf einem fünften Zufallsband;
    durch die zweite Schlüsselaustauschvorrichtung Erzeugen eines verschlüsselten fünften Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem fünften Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten sechsten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem sechsten Zufallsband und dem geheimen Schlüssel als Variablen;
    durch die zweite Schlüsselaustauschvorrichtung Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von der ersten Schlüsselaustauschvorrichtung empfangen wird, und des verschlüsselten fünften Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an die erste Schlüsselaustauschvorrichtung;
    durch die zweite Schlüsselaustauschvorrichtung Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten sechsten Zufallsband, Übertragen der Signatur an die erste Schlüsselaustauschvorrichtung;
    durch die erste Schlüsselaustauschvorrichtung Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von der zweiten Schlüsselaustauschvorrichtung empfangen wird;
    durch die erste Schlüsselaustauschvorrichtung Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an die zweite Schlüsselaustauschvorrichtung und Prüfen einer Signatur, die von der zweiten Schlüsselaustauschvorrichtung empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel der zweiten Schlüsselaustauschvorrichtung ist, einer empfangenen Nachricht und der empfangenen Signatur; und
    durch die zweite Schlüsselaustauschvorrichtung Prüfen einer Signatur, die von der ersten Schlüsselaustauschvorrichtung empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel der ersten Schlüsselaustauschvorrichtung ist, einer empfangen Nachricht und der empfangenen Signatur.
  • Vorteilhafte Ergebnisse der Erfindung
  • Die vorliegende Erfindung ermöglicht, dass ein Sitzungsschlüssel verborgen wird, selbst wenn ein Angreifer den anderen Schlüsselaustauschpartner nachahmt.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Blockdiagramm, das einen Aufbau einer Schlüsselaustauschvorrichtung gemäß einer ersten beispielhaften Ausführungsform darstellt;
  • 2 ist ein Blockdiagramm, das einen Aufbau eines Schlüsselaustauschsystems darstellt, das Schlüsselaustauschvorrichtungen gemäß einer zweiten beispielhaften Ausführungsform umfasst;
  • 3 ist ein Abfolgediagramm, das einen Abriss eines Betriebsverfahrens des Schlüsselaustauschs zwischen Schlüsselaustauschvorrichtungen gemäß der zweiten beispielhaften Ausführungsform darstellt;
  • 4A ist ein Diagramm, das einen Abriss eines Betriebsverfahrens eines Schlüsselaustauschsystems gemäß einer verwandten Technik darstellt;
  • 4B ist ein Diagramm, das einen Abriss eines Betriebsverfahrens des Schlüsseldiebstahls durch Nachahmung in dem Schlüsselaustauschsystem gemäß der verwandten Technik darstellt;
  • 5 ist ein Blockdiagramm, das einen Aufbau der Schlüsselaustauschvorrichtung gemäß der zweiten beispielhaften Ausführungsform darstellt;
  • 6 ist ein Blockdiagramm, das einen Aufbau einer Erstkonfigurationseinheit gemäß der zweiten beispielhaften Ausführungsform darstellt;
  • 7 ist ein Blockdiagramm, das einen Aufbau einer Schlüsselverkapselungsverarbeitungseinheit gemäß der zweiten beispielhaften Ausführungsform darstellt;
  • 8 ist ein Blockdiagramm, das einen Aufbau einer Prüfverarbeitungseinheit gemäß der zweiten beispielhaften Ausführungsform darstellt;
  • 9A ist ein Blockdiagramm, das einen Aufbau einer Schlüsselaustauschvorrichtung als eine Schlüsselaustauschanforderungsvorrichtung gemäß der zweiten beispielhaften Ausführungsform darstellt;
  • 9B ist ein Flussdiagramm, das ein Verarbeitungsverfahren der Schlüsselaustauschvorrichtung als eine Schlüsselaustauschanforderungsvorrichtung gemäß der zweiten beispielhaften Ausführungsform darstellt;
  • 10A ist ein Blockdiagramm, das einen Aufbau einer Schlüsselaustauschvorrichtung als eine Schlüsselaustauschantwortvorrichtung gemäß der zweiten beispielhaften Ausführungsform darstellt; und
  • 10B ist ein Flussdiagramm, das ein Verarbeitungsverfahren der Schlüsselaustauschvorrichtung als eine Schlüsselaustauschantwortvorrichtung gemäß der zweiten beispielhaften Ausführungsform darstellt.
  • Beschreibung von Ausführungsformen
  • Hier nachstehend werden beispielhafte Ausführungsformen der vorliegenden Erfindung in einer beispielhaften Weise unter Bezug auf die beigefügten Zeichnungen im Detail beschrieben. Jedoch sind Komponenten, die in den folgenden beispielhaften Ausführungsformen beschrieben werden, nur erläuternde Beispiele, und es ist nicht beabsichtigt, dass der technische Schutzbereich der vorliegenden Erfindung nur auf derartige Komponenten beschränkt wird.
  • Erste beispielhafte Ausführungsform
  • Eine Schlüsselaustauschvorrichtung 100 als eine erste beispielhafte Ausführungsform der vorliegenden Erfindung wird unter Verwendung von 1 beschrieben.
  • Wie in 1 dargestellt, umfasst die Schlüsselaustauschvorrichtung 100 eine Erstkonfigurationseinheit 101, eine Arithmetikeinheit 102, eine Schlüsselverkapselungsverarbeitungseinheit 103 und eine Prüfverarbeitungseinheit 104.
  • Die Erstkonfigurationseinheit 101 erzeugt einen Prüfschlüssel, der als ein öffentlicher Schlüssel dient, und einen Signaturschlüssel basierend auf einem beliebigen Zufallsband R0, eine Sitzungskennung basierend auf einem ersten Zufallsband R1 und einen geheimen Schlüssel basierend auf einem zweiten Zufallsband R2. Die Zufallsbänder sind Daten, die aus Zufallszahlen bestehen, und können Dateien in einer Sekundärspeichervorrichtung sein.
  • Die Arithmetikeinheit 102 erzeugt ein verschlüsseltes zweites Zufallsband r2 durch eine Arithmetikoperation einer Pseudozufallsfunktion tPRF() mit dem zweiten Zufallsband R2 und dem geheimen Schlüssel als Variablen. Außerdem erzeugt die Arithmetikeinheit 102 ein verschlüsseltes drittes Zufallsband r3 durch eine Arithmetikoperation einer Pseudozufallsfunktion tPRF() mit einem dritten Zufallsband R3 und dem geheimen Schlüssel als Variablen.
  • Die Schlüsselverkapselungsverarbeitungseinheit 103 erzeugt einen öffentlichen Kem-(key encapsulation method)Schlüssel, der ein schlüsselverkapselter öffentlicher Schlüssel ist, und einen geheimen Kem-Schlüssel, der ein schlüsselverkapselter geheimer Schlüssel ist, basierend auf dem verschlüsselten zweiten Zufallsband r2, das in der Arithmetikeinheit 102 verschlüsselt wird, und überträgt den öffentlichen Kem-Schlüssel an den anderen Schlüsselaustauschpartner. Außerdem empfängt die Schlüsselverkapselungsverarbeitungseinheit 103 einen Kem-Verschlüsselungstext, der ein schlüsselverkapselter Verschlüsselungstext ist, von einer Vorrichtung, die der andere Schlüsselaustauschpartner ist. Anschließend entschlüsselt die Schlüsselverkapselungsverarbeitungseinheit 103 einen Sitzungsschlüssel unter Verwendung des öffentlichen Kem-Schlüssels und des empfangenen Kem-Verschlüsselungstexts.
  • Die Prüfverarbeitungseinheit 104 erzeugt basierend auf dem Signaturschlüssel, der von der Erstkonfigurationseinheit 101 erzeugt wird, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband r3 eine Signatur und überträgt sie an den anderen Schlüsselaustauschpartner. Die Prüfverarbeitungseinheit 104 prüft basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und einer empfangenen Signatur die von dem anderen Schlüsselaustauschpartner empfangene Signatur.
  • Die vorliegende beispielhafte Ausführungsform ermöglicht, dass ein Sitzungsschlüssel vor einem Angreifer verborgen wird, selbst wenn der Angreifer eine der Schlüsselaustauschvorrichtungen nachahmt und verschlüsselte Daten, die von dem anderen Austauschpartner übertragen werden, abfängt und ein langfristiger geheimer Schlüssel der nachgeahmten Vorrichtung gestohlen wird.
  • Zweite beispielhafte Ausführungsform
  • Als nächstes wird unter Verwendung von 2, 3, 4, 5 bis 8, 9A, 9B, 10A und 10B ein Schlüsselaustauschsystem, das Schlüsselaustauschvorrichtungen gemäß einer zweiten beispielhaften Ausführungsform der vorliegenden Erfindung umfasst, beschrieben.
  • Das Schlüsselaustauschsystem arbeitet auf die folgende Weise.
  • Die Schlüsselaustauschvorrichtung 210A erzeugt durch eine Arithmetikoperation einer Pseudozufallsfunktion mit einem Zufallsband und einem geheimen Schlüssel als Variablen ein verschlüsseltes Zufallsband. Die Schlüsselaustauschvorrichtung 210A erzeugt basierend auf dem verschlüsselten Zufallsband einen schlüsselverkapselten öffentlichen Schlüssel und einen schlüsselverkapselten geheimen Schlüssel und überträgt den schlüsselverkapselten öffentlichen Schlüssel an eine Schlüsselaustauschvorrichtung B.
  • Wenn der schlüsselverkapselte öffentliche Schlüssel von der Schlüsselaustauschvorrichtung 210A empfangen wird, erzeugt die Schlüsselaustauschvorrichtung 210B durch eine Arithmetikoperation einer Pseudozufallsfunktion mit einem Zufallsband und einem geheimen Schlüssel als Variablen in einer ähnlichen Weise ein verschlüsseltes Zufallsband. Die Schlüsselaustauschvorrichtung 210B verschlüsselt den schlüsselverkapselten öffentlichen Schlüssel, der von der Schlüsselaustauschvorrichtung 210A empfangen wird, und das verschlüsselte Zufallsband, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen.
  • Als nächstes überträgt die Schlüsselaustauschvorrichtung 210B den erzeugten schlüsselverkapselten Verschlüsselungstext an die Schlüsselaustauschvorrichtung 210A, erzeugt basierend auf einem Signaturschlüssel, einer Übertragungsnachricht und einem verschlüsselten Zufallsband eine Signatur und überträgt die erzeugte Signatur an die Schlüsselaustauschvorrichtung 210A.
  • Die Schlüsselaustauschvorrichtung 210A entschlüsselt den Sitzungsschlüssel unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und des schlüsselverkapselten Verschlüsselungstexts, der von der Schlüsselaustauschvorrichtung 210B empfangen wird, erzeugt basierend auf einem Signaturschlüssel, einer Übertragungsnachricht und einem verschlüsselten Zufallsband eine Signatur und überträgt die erzeugte Signatur an die Schlüsselaustauschvorrichtung 210B. Die Schlüsselaustauschvorrichtung 210A prüft basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel der Schlüsselaustauschvorrichtung 210B ist, einer empfangenen Nachricht und einer empfangenen Signatur die Signatur, die von der Schlüsselaustauschvorrichtung 210B empfangen wird.
  • Andererseits prüft die Schlüsselaustauschvorrichtung 210B die Signatur, die von der Schlüsselaustauschvorrichtung 210A empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel der Schlüsselaustauschvorrichtung 210A ist, einer empfangenen Nachricht und einer empfangenen Signatur.
  • Schlüsselaustauschsystem
  • 2 ist ein Blockdiagramm, das einen Aufbau eines Schlüsselaustauschsystems 200, das Schlüsselaustauschvorrichtungen gemäß der vorliegenden beispielhaften Ausführungsform umfasst, darstellt.
  • In dem Schlüsselaustauschsystem 200 in 2 sind die Schlüsselaustauschvorrichtung 210A, die Schlüsselaustauschvorrichtung 210B und eine Schlüsselaustauschvorrichtung 210X mittels eines Netzwerks 220 miteinander verbunden. Wenn jedes Paar von Schlüsselaustauschvorrichtungen von den Schlüsselaustauschvorrichtungen 210A bis 210X versucht, eine Sitzung einzurichten, arbeitet eine als Schlüsselaustauschanforderungsvorrichtung, die den Schlüsselaustausch anfordert, und die andere arbeitet als eine Schlüsselaustauschantwortvorrichtung. Die Rollen als eine Schlüsselaustauschanforderungsvorrichtung und eine Schlüsselaustauschantwortvorrichtung können austauschbar sein.
  • Wenngleich in 2 drei Schlüsselaustauschvorrichtungen dargestellt sind, gibt es keine Grenze für die Anzahl von Schlüsselaustauschvorrichtungen. Die Verbindung untereinander kann anstelle eines einzelnen Netzwerks mittels eines Mehrschichtnetzwerks, das LANs (Lokal Area Network: lokales Netzwerk), ein WAN (Wide Area Network: Weitverkehrsnetz) und ähnliche umfasst, erfolgen. Hier nachstehend wird in der vorliegenden beispielhaften Ausführungsform ein Beispiel beschrieben, in dem die Schlüsselaustauschvorrichtung 210A und die Schlüsselaustauschvorrichtung 210B jeweils als eine Schlüsselaustauschanforderungsvorrichtung, die den Schlüsselaustausch anfordert, und eine Schlüsselaustauschantwortvorrichtung, die auf die Schlüsselaustauschanforderung antwortet, arbeiten.
  • Verwandte Technik
  • Bevor eine Beschreibung eines Schlüsselaustauschverfahrens der vorliegenden beispielhaften Ausführungsform gegeben wird, wird ein Umriss eines in NPL 1 offenbarten Schlüsselaustauschverfahrens als eine verwandte Technik beschrieben.
  • (Betriebsumriss)
  • 4A ist ein Diagramm, das einen Uniriss eines Betriebsverfahrens eines Schlüsselaustauschsystems gemäß der verwandten Technik darstellt.
  • In der verwandten Technik bewirken zwei Schlüsselaustauschvorrichtungen, eine Schlüsselaustauschvorrichtung AA und eine Schlüsselaustauschvorrichtung BB, die miteinander kommunizieren, dass ein geheimer Sitzungsschlüssel zwischen den zwei Schlüsselaustauschvorrichtungen eingerichtet wird. In der folgenden Beschreibung wird angenommen, dass λ, q, G, g, Hash1 und Hash2 jeweils eine Konstante, eine Primzahl, eine zyklische Gruppe der Primzahlordnung q, den Generator von G, eine Hashfunktion, die eine Bitkette beliebiger Länge auf Zq abbildet, und eine Hashfunktion, die eine Bitkette beliebiger Länge auf eine Bitkette einer Länge λ abbildet, bezeichnen. Die Schlüsselaustauschvorrichtungen AA und BB haben langfristige geheime Schlüssel Sk, die Elemente von Zq sind. Es wird angenommen, dass ein langfristiger geheimer Schlüssel der Schlüsselaustauschvorrichtung AA mit SkA bezeichnet wird und ein langfristiger geheimer Schlüssel der Schlüsselaustauschvorrichtung BB mit SkB bezeichnet wird. Es wird angenommen, dass ein öffentlicher Schlüssel, der einem geheimen Schlüssel entspricht, einer Schlüsselaustauschvorrichtung mit einem geheimen Schlüssel Sk als gSk definiert ist. Das heißt, öffentliche Schlüssel Pk der Schlüsselaustauschvorrichtungen AA und BB werden jeweils durch PkA = gSkA und PkB = SkB ausgedrückt.
  • Hier nachstehend wird ein Betrieb beschrieben, in dem die Schlüsselaustauschvorrichtungen AA und BB in dem Schlüsselaustauschsystem einen Sitzungsschlüssel einrichten.
  • Zuerst gewinnt die Schlüsselaustauschvorrichtung AA in dem Schlüsselaustauschsystem einen langfristigen geheimen Schlüssel SkA der eigenen Vorrichtung und einen öffentlichen Schlüssel PkB = gSkB der Schlüsselaustauschvorrichtung BB (S401).
  • Als nächstes wird ein Zufallsband eskA, das eine Bitkette einer Länge λ ist, in die Schlüsselaustauschvorrichtung AA eingegeben (S402).
  • Die Schlüsselaustauschvorrichtung AA erzeugt durch Verschlüsseln des eingegebenen Zufallsbands eskA mit dem langfristigen geheimen Schlüssel SkA verschlüsselte Daten epA = gHash1(eskA, SkA) und überträgt die verschlüsselten Daten epA an die Schlüsselaustauschvorrichtung BB (S403). Außerdem empfängt die Schlüsselaustauschvorrichtung AA verschlüsselte Daten epB, die die Schlüsselaustauschvorrichtung BB übertragen hat (S404).
  • Die Schlüsselaustauschvorrichtung AA erzeugt basierend auf den empfangenen verschlüsselten Daten epB, dem öffentlichen Schlüssel PkB der Schlüsselaustauschvorrichtung BB und dem langfristigen geheimen Schlüssel SkA der eigenen Vorrichtung einen Sitzungsschlüssel KeyA als KeyA = Hash2(epBSkA, PkBHash1(eskA, SkA), epBHash1(eskA, SkA)) (S405).
  • Als nächstes wird unter Verwendung von 4B ein Betrieb der Schlüsselaustauschvorrichtung BB in dem Schlüsselaustauschsystem beschrieben.
  • Die Schlüsselaustauschvorrichtung BB erlangt einen langfristigen geheimen Schlüssel SkB der eigenen Vorrichtung und einen öffentlichen Schlüssel PkA = gSkA der Schlüsselaustauschvorrichtung AA (S411).
  • Die Schlüsselaustauschvorrichtung BB empfängt die verschlüsselten Daten epA, die die Schlüsselaustauschvorrichtung AA übertragen hat (S412). Als nächstes wird ein Zufallsband eskB, das eine Bitkette einer Länge λ ist, in die Schlüsselaustauschvorrichtung BB eingegeben (S413).
  • Die Schlüsselaustauschvorrichtung BB erzeugt durch Verschlüsseln des eingegebenen Zufallsbands eskB mit dem langfristigen geheimen Schlüssel SkB verschlüsselte Daten epB = gHash1(eskB, SkB) und überträgt die verschlüsselten Daten epB an die Schlüsselaustauschvorrichtung AA (S414).
  • Die Schlüsselaustauschvorrichtung BB erzeugt basierend auf den empfangenen verschlüsselten Daten epA, dem öffentlichen Schlüssel PkA der Schlüsselaustauschvorrichtung AA und dem langfristigen geheimen Schlüssel SkB der eigenen Vorrichtung einen Sitzungsschlüssel KeyB als KeyB = Hash2(PkAHash1(eskB, SkB ), epASkB, epAHash1(eskB, SkB)) (S415).
  • Auf diese Weise bedeutet, dass die Schlüsselaustauschvorrichtung AA und die Schlüsselaustauschvorrichtung BB zu Sitzungsschlüsseln kommen, die beide als KeyA = KeyB = Hash2(gHash1(eskB, SkB)SkA, gHash1(eskA, SkA)SkB, gHash1(eskA, SkA)(eskB, SkB)) ausgedrückt werden, die miteinander zusammenfallen, einen Erfolg bei der Erzeugung eines gemeinsamen Sitzungsschlüssels.
  • Wichtige wesentliche Eigenschaften des Schlüsselaustauschs umfassen die zukünftige Sicherheit. Zukünftige Sicherheit bedeutet, dass in Bezug auf einen Schlüssel, den zwei Schlüsselaustauschvorrichtungen zu einem gewissen Zeitpunkt eingerichtet haben, selbst wenn die Schlüsselaustauschvorrichtungen irgendwann in der Zukunft angegriffen werden und langfristige Schlüssel der Schlüsselaustauschvorrichtungen von einem Angreifer gestohlen werden, der Angreifer nicht in der Lage ist, den Schlüssel zu kennen, der zu einem Zeitpunkt in der Vergangenheit eingerichtet wurde.
  • Das Schlüsselaustauschverfahren der vorstehend beschriebenen verwandten Technik stellt nicht nur die zukünftige Sicherheit, sondern auch die Fähigkeit bereit, einen Sitzungsschlüssel innerhalb eines gewissen Bereichs zu verbergen, selbst wenn Zufallsbänder, die in jeweilige Schlüsselaustauschvorrichtungen eingegeben werden, in die Hände Dritter gelangen. Insbesondere wenn eine Schlüsselaustauschvorrichtung AA und eine Schlüsselaustauschvorrichtung BB einen Sitzungsschlüssel eingerichtet haben, wird der Sitzungsschlüssel KeyA = KeyB vor einem Angreifer verborgen, wenn nicht ein Ereignis auftritt, dass von dem Angreifer sowohl ein Zufallsband eskA als auch ein langfristiger Schlüssel SkA von der Schlüsselaustauschvorrichtung AA gestohlen werden. Alternativ wird der Sitzungsschlüssel KeyA = KeyB vor einem Angreifer verborgen, wenn nicht ein Ereignis auftritt, dass von dem Angreifer sowohl ein Zufallsband eskB als auch ein langfristiger Schlüssel SkB von der Schlüsselaustauschvorrichtung BB gestohlen werden.
  • Wenn die Aufmerksamkeit nun auf die Schlüsselaustauschvorrichtung AA gerichtet wird, wird es schwierig, den Sitzungsschlüssel zu verbergen, wenn die Information gestohlen wird, da sowohl das Zufallsband eskA als auch der langfristige Schlüssel SkA die Gesamtinformation für die Schlüsselaustauschvorrichtung AA sind, um einen Sitzungsschlüssel zu erzeugen. Solange jedoch das Zufallsband eskA nicht in die Hände Dritter gelangt, wird der Sitzungsschlüssel selbst dann verborgen, wenn der langfristige Schlüssel SkA in die Hände Dritter gelangt, nachdem eine Sitzung eingerichtet wurde, was zukünftige Sicherheit sicherstellt. Um in dem Verfahren der verwandten Technik eine höhere Sicherheit sicherzustellen, wird der Sitzungsschlüssel selbst dann verborgen, wenn der langfristige Schlüssel SkA in die Hände Dritter gelangt, bevor eine Sitzung eingerichtet wird.
  • (Schlüsseldiebstahl durch Nachahmung)
  • 4B ist ein Diagramm, das einen Umriss eines Betriebsverfahrens eines Schlüsseldiebstahls durch Nachahmung in dem Schlüsselaustauschsystem gemäß der verwandten Technik darstellt. In 4B sind den gleichen Schritten wie denen in 4A die gleichen Schrittnummern zugewiesen.
  • Wenn die Schlüsselaustauschvorrichtung AA zum Beispiel mit einer nachahmenden Vorrichtung C (Angreifer), die die Schlüsselaustauschvorrichtung BB nachahmt und einen Sitzungsschlüssel einrichtet, kommuniziert, ist das Schlüsselaustauschverfahren der vorstehend beschriebenen verwandten Technik nicht fähig, eine ausreichende zukünftige Sicherheit bereitzustellen. In dem Schlüsselaustauschverfahren der verwandten Technik ist eine Bedingung dafür, dass ein Sitzungsschlüssel, den die Schlüsselaustauschvorrichtung AA glaubt, eingerichtet zu haben, vor einem Angreifer verborgen wird, dass der langfristige Schlüssel SkB der Schlüsselaustauschvorrichtung BB ungeachtet der Zeit nicht von dem Angreifer gestohlen wird. In der Tat ist jedoch ein Angreifer, der fähig ist, den langfristigen Schlüssel SkB zu stehlen, in der Zukunft fähig, durch einen Angriff, wie nachstehend beschrieben, einen Sitzungsschlüssel, den die Schlüsselaustauschvorrichtung AA mit der Schlüsselaustauschvorrichtung BB einrichtet, zu kennen.
  • Wenn die Schlüsselaustauschvorrichtung AA versucht, eine Sitzung mit der Schlüsselaustauschvorrichtung BB zu beginnen, ist ein Angreifer fähig, durch Nachahmung einen Sitzungsschlüssel einzurichten, indem er als eine nachahmende Vorrichtung C die Schlüsselaustauschvorrichtung BB, wie nachstehend beschrieben, nachahmt.
  • Hier nachstehend wird unter Verwendung von 4B ein Betrieb des Schlüsseldiebstahls in einem Schlüsselaustauschsystem, das aus der nachahmenden Vorrichtung C und der Schlüsselaustauschvorrichtung AA besteht, beschrieben. Eine detaillierte Beschreibung einer Voraussetzung für den Schlüsselaustausch, die die Gleiche wie in 4A ist, wird weggelassen. Da Betriebe der Schlüsselaustauschvorrichtung AA in den Schritten S401 bis S402 die Gleichen wie in 4A sind, wird ihre detaillierte Beschreibung weggelassen.
  • Die Schlüsselaustauschvorrichtung AA erzeugt durch Verschlüsseln des eingegebenen Zufallsbands eskA mit dem langfristigen geheimen Schlüssel SkA verschlüsselte Daten epA = gHash1(eskA, SkA) und überträgt die verschlüsselten Daten epA an die nachahmende Vorrichtung C (S423). Außerdem empfängt die Schlüsselaustauschvorrichtung AA verschlüsselte Daten epB', die die nachahmende Vorrichtung C übertragen hat (S424).
  • Die Schlüsselaustauschvorrichtung AA erzeugt basierend auf den empfangenen verschlüsselten Daten epB, dem öffentlichen Schlüssel PkB der Schlüsselaustauschvorrichtung BB und dem langfristigen geheimen Schlüssel SkA der eigenen Vorrichtung einen Sitzungsschlüssel KeyA' als KeyA' = Hash2(epB'SkA, PkBHash1(eskA, SkA), epB'Hash1(eskA, SkA)) (S425).
  • Die nachahmende Vorrichtung C empfängt die verschlüsselten Daten epA, die die Schlüsselaustauschvorrichtung AA übertragen hat (S432). Als nächstes wählt die nachahmende Vorrichtung C zufällig ein Element eskC von Zq als ein Zufallsband, das eine Bitkette einer Länge λ ist (S433). Die nachahmende Vorrichtung C erzeugt und überträgt Nachahmungsinformationen epB' = geskC der Schlüsselaustauschvorrichtung BB an die Schlüsselaustauschvorrichtung AA (S434). Die nachahmende Vorrichtung C erzeugt einen Sitzungsschlüssel KeyC als KeyC = Hash2(PkAeskC, epASkB?, epAeskC) (S435).
  • Da der geheime Schlüssel skB (in 4B mit skB? bezeichnet) der Schlüsselaustauschvorrichtung BB nicht bekannt ist, ist ein Angreifer (nachahmende Vorrichtung C) zu diesem Zeitpunkt nicht in der Lage, KeyA' zu kennen. Jedoch ist der Angreifer in der Lage, eine große Menge an Verschlüsselungstext zu empfangen, die die Schlüsselaustauschvorrichtung AA mit dem Schlüssel KeyA' verschlüsselt hat. Ferner ist der Angreifer in der Lage, durch anschließende anhaltende Angriffe die Wahrscheinlichkeit für die Erlangung des geheimen Schlüssels SkB der Schlüsselaustauschvorrichtung BB zu erhöhen. In der Folge ist der Angreifer durch Erlangung des geheimen Schlüssels SkB in der Lage, einen Sitzungsschlüssel als KeyA' = KeyC = Hash2(PkAeskC, epASkB, epAeskC) zu erzeugen.
  • Wenn, wie vorstehend beschrieben, in der verwandten Technik die Schlüsselaustauschvorrichtung AA und die Schlüsselaustauschvorrichtung BB einen Sitzungsschlüssel eingerichtet haben, wird der Sitzungsschlüssel KeyA = KeyB vor einem Angreifer verborgen, es sei denn, sowohl das Zufallsband eskA als auch der langfristige Schlüssel SkA werden von dem Angreifer von der Schlüsselaustauschvorrichtung AA gestohlen. Alternativ wird der Sitzungsschlüssel KeyA = KeyB vor einem Angreifer verborgen, es sei denn, sowohl das Zufallsband eskB als auch der langfristige Schlüssel SkB werden von dem Insassen von der Schlüsselaustauschvorrichtung BB gestohlen.
  • Wenn andererseits die Schlüsselaustauschvorrichtung AA mit einem Angreifer kommuniziert, der die Schlüsselaustauschvorrichtung BB nachahmt, um einen Sitzungsschlüssel einzurichten, muss der Sitzungsschlüssel KeyA von dem Angreifer gestohlen werden, wenn sowohl das Zufallsband eskA als auch der langfristige Schlüssel SkA von dem Angreifer von der Schlüsselaustauschvorrichtung AA gestohlen werden. Alternativ muss der Sitzungsschlüssel KeyA von dem Angreifer gestohlen werden, wenn von dem Angreifer der langfristige Schlüssel SkB noch bevor die Sitzung eingerichtet wird, von der Schlüsselaustauschvorrichtung BB gestohlen wird.
  • Technologie der beispielhaften Ausführungsform
  • Als nächstes wird ein Schlüsselaustauschverfahren, das von der Schlüsselaustauschvorrichtung der vorliegenden beispielhaften Ausführungsform durchgeführt wird, welches das vorstehend beschriebene Problem in der verwandten Technik gelöst hat, im Detail beschrieben.
  • Zuerst werden Funktionen und ähnliches, die in dem Schlüsselaustauschverfahren, das von der Schlüsselaustauschvorrichtung der vorliegenden beispielhaften Ausführungsform durchgeführt wird, definiert.
  • (Blockverschlüsselung)
  • Es wird angenommen, dass eine Blockverschlüsselung unter Verwendung von drei Algorithmen SymGen, SymEnc und SymDec konfiguriert wird. „SymGen” erzeugt einen symmetrischen Schlüssel K. „SymEnc” erzeugt unter Verwendung des symmetrischen Schlüssels K und eines Nachrichtenblocks M einen Verschlüsselungstextblock C als C = SmyEnc(K, M). „SymDec” entschlüsselt unter Verwendung des symmetrischen Schlüssels K und des Verschlüsselungstextblocks C den Nachrichtenblock M als M = SymDec(K, C).
  • (Pseudozufallsfunktion)
  • Eine modifizierte Pseudozufallsfunktion tPRF ist wie folgt definiert. Eine „Funktion tPRF” ist eine Pseudozufallsfunktion, in die eine Bitkette einer Länge λ und eine Bitkette einer Länge λ eingegeben werden und die eine Bitkette einer Länge λ ausgibt.
  • Es wird angenommen, dass die modifizierte Pseudozufallsfunktion eine derartige Funktion ist, dass sowohl eine Funktion, die tPRF(S, A) ausgibt, als auch eine Funktion, die tPRF(A, S) basierend auf einem geheimen Schlüssel S und einem beliebigen Wert A ausgibt, Pseudozufallsfunktionen werden.
  • Die folgende Funktion ist als ein Beispiel für eine modifizierte Pseudozufallsfunktion denkbar. tPRF(X, Y) = SymEnc(X, Y) + SynEnc(Y, X) wobei eine Schlüssellänge, eine Nachrichtenblocklänge und eine Verschlüsselungstextblocklänge von SymEnc alle als λ angenommen werden. Es wird angenommen, dass ein Vorzeichen „+” eine bitweise exklusive Disjunktion bezeichnet.
  • (Schlüsselverkapselung)
  • Es wird angenommen, dass die Schlüsselverkapselung unter Verwendung von drei Algorithmen KemGen, KemEnc und KemDec durchgeführt wird. In „KemGen” wird ein λ-Bit-Zufallsband R1 eingegeben und „KemGen” gibt ein Paar (KemPk, KemSk) aus einem öffentlichen Kem-Schlüssel und einem geheimen Kem-Schlüssel aus. Das heißt, (KemPk, KemSk) = KemGen(R1). In „KemEnc” werden ein öffentlicher Kem-Schlüssel und ein λ-Bit-Zufallsband R2 eingegeben und „KemEnc” gibt ein Paar (c, K) aus einem Kem-Verschlüsselungstext und einem Schlüssel aus. Das heißt, (KemC, K) = KemEnc(KemPk, R2). In „KemDec” wird ein Paar (KemSk, KemC) aus einem geheimen Kem-Schlüssel und einem Kem-Verschlüsselungstext eingegeben und „KemDec” gibt einen Schlüssel K aus. Das heißt, K = KemDec(KemSk, KemC).
  • Das folgende Beispiel ist als Schlüsselverkapselung denkbar. Es wird angenommen, dass G eine zyklische Gruppe der Primzahlordnung q ist und g ihr Generator ist. Es wird angenommen, dass KemGen zufällig ein Element x von Zq erzeugt und ein Paar (KemPk, KemSk) als (KemPk, KemSk) = (gx, x) ausgibt. Es wird angenommen, dass KemEnc zufällig ein Element y von Zq erzeugt und ein Paar (KemC, K) als (KemC, K) = (gy, pky) ausgibt. Es wird angenommen, dass KemDec einen Schlüssel K als K = KemCKemSk ausgibt.
  • (Signatur)
  • Es wird angenommen, dass die Signatur unter Verwendung von drei Algorithmen SigGen, Sign und Verify durchgeführt wird. In „SigGen” wird ein λ-Bit-Zufallsband R3 eingegeben und „SigGen” gibt ein Paar (SVk, SSk) aus einem Prüfschlüssel und einem Signaturschlüssel aus. Das heißt, (SVk, SSk) = SigGen(R3). In „Sign” werden ein Signaturschlüssel SSk, eine Nachricht M und ein λ-Bit-Zufallsband R4 eingegeben und „Sign” gibt eine Signatur sig aus. Das heißt, sig = Sign(SSk, M, R4). In „Verify” werden ein Prüfschlüssel SW, eine Nachricht M und eine Signatur sig eingegeben und „Verify” gibt ein Signaturprüfergebnis res aus. Das heißt, res = Verify(SVk, M, sig).
  • Betriebsverfahren des Schlüsselaustauschsystems
  • 3 ist ein Abfolgediagramm, das einen Umriss eines Betriebsverfahrens des Schlüsselaustauschs zwischen der Schlüsselaustauschvorrichtung 210A und der Schlüsselaustauschvorrichtung 210B gemäß der vorliegenden beispielhaften Ausführungsform darstellt.
  • Die Schlüsselaustauschvorrichtung 210A führt durch die Initialisierung in Schritt S311 die Erstkonfiguration durch. Zum Beispiel erzeugt und speichert die Schlüsselaustauschvorrichtung 210A einen langfristigen geheimen Schlüssel SkA und einen öffentlichen Schlüssel PkA. Andererseits erzeugt und speichert die Schlüsselaustauschvorrichtung 210B in ähnlicher Weise durch die Initialisierung in Schritt S313 einen langfristigen geheimen Schlüssel SkB und einen öffentlichen Schlüssel PkB.
  • Die Schlüsselaustauschvorrichtung 210A erzeugt in Schritt S315 unter Verwendung einer Pseudozufallsfunktion basierend auf einem Zufallsband R2 ein verschlüsseltes sekundäres Zufallsband r2. Als nächstes erzeugt die Schlüsselaustauschvorrichtung 210A durch KemGen(r2) unter Verwendung des sekundären Zufallsbands r2 in Schritt S317 einen öffentlichen Kem-Schlüssel KemPk und einen geheimen Kem-Schlüssel KemSk. Die Schlüsselaustauschvorrichtung 210A überträgt in Schritt S319 als einen öffentlichen Kem-Schlüssel eine Nachricht mit einer Vorrichtungs-ID, einer Sitzungs-ID und dem KemPk an die Schlüsselaustauschvorrichtung 210B, die der andere Schlüsselaustauschpartner ist.
  • Wenn sie die Nachricht von der Schlüsselaustauschvorrichtung 210A empfängt, erzeugt die Schlüsselaustauschvorrichtung 210B in Schritt S321 unter Verwendung einer Pseudozufallsfunktion basierend auf Zufallsbändern R5 und R6 verschlüsselte sekundäre Zufallsbänder r5 und r6. Die Schlüsselaustauschvorrichtung 210B erzeugt in Schritt S323 durch KemEnc(KemPk, r5) unter Verwendung des sekundären Zufallsbands r5 einen Kem-Verschlüsselungstext KemC und einen Sitzungsschlüssel K. Als nächstes führt die Schlüsselaustauschvorrichtung 210B die Schritte S325 und S327 als Signaturerzeugungs-/Übertragungsverarbeitung durch. Die Schlüsselaustauschvorrichtung 210B erzeugt in Schritt S325 zuerst basierend auf einem Signaturschlüssel SSkB, einer Übertragungsnachricht und dem sekundären Zufallsband r6 unter Verwendung von Sign() eine Signatur SigB. In der Übertragungsnachricht können zum Beispiel eine Vorrichtungs-ID, eine Sitzungs-ID, der öffentliche Kem-Schlüssel KemPk und der Kem-Verschlüsselungstext KemC enthalten sein. Die Schlüsselaustauschvorrichtung 210B antwortet der Schlüsselaustauschvorrichtung 210A, indem sie in Schritt S327 eine Nachricht mit der Vorrichtungs-ID, der Sitzungs-ID, dem Kem-Verschlüsselungstext KemC und der Signatur sigB überträgt.
  • Wenn sie die Antwort von der Schlüsselaustauschvorrichtung 210B empfängt, erzeugt die Schlüsselaustauschvorrichtung 210A erneut das sekundäre Zufallsband r2, um erneut den öffentlichen Kem-Schlüssel KemPk und den geheimen Kem-Schlüssel KemSk zu erzeugen, und erzeugt in Schritt S331 unter Verwendung einer Pseudozufallsfunktion basierend auf einem Zufallsband R3 ein verschlüsseltes sekundäres Zufallsband r3. In diesem Verfahren werden das sekundäre Zufallsband r2, der öffentliche Kem-Schlüssel KemPk und der geheime Kem-Schlüssel KemSk neu erzeugt, um zu verhindern, dass er in die Hände Dritter gelangt. Als nächstes prüft die Schlüsselaustauschvorrichtung 210A in Schritt S333 die Signatur sigB, die von der Schlüsselaustauschvorrichtung 210B übertragen wird, unter Verwendung von Verify(Prüfschlüssel SVkB, empfangene Nachricht, sigB). Die Schlüsselaustauschvorrichtung 210A entschlüsselt in Schritt S335 den Sitzungsschlüssel K als K = KemDec(KemSk, KemC). Als nächstes erzeugt die Schlüsselaustauschvorrichtung 210A in Schritt S337 unter Verwendung von Sign() basierend auf einem Signaturschlüssel SSkA, einer Übertragungsnachricht und dem sekundären Zufallsband r3 eine Signatur sigA. In der Übertragungsnachricht können zum Beispiel die Vorrichtungs-ID, die Sitzungs-ID und der öffentliche Kem-Schlüssel KemPk enthalten sein. Die Schlüsselaustauschvorrichtung 210A überträgt in Schritt S339 eine Nachricht mit der Vorrichtungs-ID, der Sitzungs-ID und der Signatur SigA an die Schlüsselaustauschvorrichtung 210B. Die Schlüsselaustauschvorrichtung 210A gibt in Schritt S341 den Sitzungsschlüssel und Sitzungsinformationen mit den Vorrichtungs-IDs beider Schlüsselaustauschvorrichtungen und beider Sitzungs-IDs aus.
  • Wenn sie die Nachricht von der Schlüsselaustauschvorrichtung 210A empfängt, prüft die Schlüsselaustauschvorrichtung 210B in Schritt S343 unter Verwendung von Verify(Prüfschlüssel SVkA, empfangener Nachricht, sigA) als Signaturprüfverarbeitung die Signatur sigA, die von der Schlüsselaustauschvorrichtung 210A übertragen wird. Als nächstes erzeugt die Schlüsselaustauschvorrichtung 210B in Schritt S345 erneut das sekundäre Zufallsband r5, um den Kem-Verschlüsselungstext KemC und den Sitzungsschlüssel K zu erzeugen. In diesem Verfahren werden das sekundäre Zufallsband r5, der Kem-Verschlüsselungstext KemC und der Sitzungsschlüssel K neu erzeugt, um zu verhindern, dass sie in die Hände Dritter gelangen. Die Schlüsselaustauschvorrichtung 210B gibt in Schritt S347 den Sitzungsschlüssel und Sitzungsinformationen mit den Vorrichtungs-IDs beider Schlüsselaustauschvorrichtungen und beiden Sitzungs-IDs aus.
  • Detailliertes Betriebsverfahren
  • Als nächstes wird ein detaillierter Betrieb des Schlüsselaustauschs zwischen der Schlüsselaustauschvorrichtung 210A und der Schlüsselaustauschvorrichtung 210B gemäß der vorliegenden beispielhaften Ausführungsform beschrieben.
  • Erstkonfiguration der Schlüsselaustauschvorrichtungen
  • Jede Schlüsselaustauschvorrichtung erzeugt unter Verwendung eines Zufallsbands r0 und des Algorithmus SigGen ein Paar (SVk, SSk) aus einem Prüfschlüssel und einem Signaturschlüssel als (SVk, SSk) = sigGen(R0). Ein Prüfschlüssel und ein Signaturschlüssel einer Schlüsselaustauschvorrichtung X werden jeweils mit SVkX und SSkX bezeichnet. Jede Schlüsselaustauschvorrichtung erzeugt unter Verwendung eines Zufallsbands R2 und des Algorithmus SymGen einen geheimen Schlüssel BSk einer Blockverschlüsselung als BSk = SymGen(R2). Ein geheimer Schlüssel einer Schlüsselaustauschvorrichtung X wird mit BSkX bezeichnet.
  • Es wird angenommen, dass ein langfristiger Schlüssel und ein öffentlicher Schlüssel jeder Schlüsselaustauschvorrichtung jeweils als SkX = (SSkX, BSkX) und PkX = SVkX definiert sind. Insbesondere wird angenommen, dass ein langfristiger Schlüssel und ein öffentlicher Schlüssel der Schlüsselaustauschvorrichtung 210A jeweils als SkA = (SSkA, BSkA) und PkA = SVkA definiert sind. Es wird auch angenommen, dass ein langfristiger Schlüssel (305) und ein öffentlicher Schlüssel (306) der Schlüsselaustauschvorrichtung 210B jeweils als SkB = (SSkB, BSkB) und PkB = SVkB definiert sind. Es wird angenommen, dass jede Schlüsselaustauschvorrichtung einen öffentlichen Schlüssel der anderen (durch Erlangen der Kennung einer Vorrichtung an dem anderen Ende des Schlüsselaustauschs ist es möglich, einen öffentlichen Schlüssel der Vorrichtung zu lesen) kennt.
  • Sitzungsschlüsseleinrichtungsverfahren beim Schlüsselaustausch zwischen zwei Schlüsselaustauschvorrichtungen 210A und 210B
  • Zuallererst werden die Erzeugung und Übertragung eines öffentlichen Kem-Schlüssels durch die Schlüsselaustauschvorrichtung 210A an die Schlüsselaustauschvorrichtung 210B beschrieben.
  • Zuerst wird in die Schlüsselaustauschvorrichtung 210A (mit einer Kennung IDA) die Kennung (Kennung IDB) der Schlüsselaustauschvorrichtung 210B, die der andere Schlüsselaustauschpartner ist, eingegeben. Als nächstes werden in die Schlüsselaustauschvorrichtung 210A drei Zufallsbänder, die Bitketten einer Länge λ sind, eingegeben. Die eingegebenen Zufallsbänder werden der Reihe nach mit R1, R2 und R3 bezeichnet. Die Zufallsbänder, die in die Schlüsselaustauschvorrichtung 210A eingegeben werden, werden gemeinsam mit eskA = (R1, R2, R3) bezeichnet. In diesem Fall können R1, R2 und R3 unabhängige Zufallsbänder sein, die keine Beziehung zueinander haben. Alternativ können R1, R2 und R3 als Zufallsbänder erzeugt werden, die keine Beziehung zueinander haben, in die ein langes Band geteilt wird.
  • Als nächstes erzeugt die Schlüsselaustauschvorrichtung 210A eine Sitzungsnummer sidA = R1 und ein Zufallsband r2 als r2 = tPRF(BSkA, R2).
  • Als nächstes erzeugt die Schlüsselaustauschvorrichtung 210A ein Paar aus einem öffentlichen Kem-Schlüssel (310) und einem geheimen Kem-Schlüssel als (KemPk, KemSk) = KemGen(r2).
  • Als nächstes überträgt die Schlüsselaustauschvorrichtung 210A (IDA, IDB, sidA, KemPk) an die Schlüsselaustauschvorrichtung 210B.
  • Die Schlüsselaustauschvorrichtung 210A speichert (sidA, IDA, IDB, R2, R3) als Informationen über einen Sitzungszustand.
  • Anschließend werden die Erzeugung und Übertragung eines Sitzungsschlüssels und einer signierten Nachricht von der Schlüsselaustauschvorrichtung 210B an die Schlüsselaustauschvorrichtung 210A beschrieben.
  • Zuerst empfängt die Schlüsselaustauschvorrichtung 210B (IDA, IDB, sidA, KemPk) von der Schlüsselaustauschvorrichtung 210A.
  • Als nächstes werdend drei Zufallsbänder, die Bitketten einer Länge λ sind, in die Schlüsselaustauschvorrichtung 210B eingegeben. Die eingegebenen Zufallsbänder werden der Reihe nach mit R4, R5 und R6 bezeichnet. Die Zufallsbänder werden gemeinsam mit eskB = (R4, R5, R6) bezeichnet. In diesem Fall können R4, R5 und R6 unabhängige Zufallsbänder sein, die keine Beziehung zueinander haben. Alternativ können R4, R5 und R6 als Zufallsbänder, die keine Beziehung zueinander haben, in die ein langes Band geteilt wird, erzeugt werden.
  • Die Schlüsselaustauschvorrichtung 210B erzeugt eine Sitzungsnummer sidB als sidB = R4, ein Zufallsband r5 als r5 = tPRF(BSkB, R5) und ein Zufallsband r6 = tPRF(BSkB, R6).
  • Die Schlüsselaustauschvorrichtung 210B erzeugt ein Paar aus einem Kem-Verschlüsselungstext und einem Schlüssel als (KemC, K) = KemPk, r5) und eine Signatur als sigB = Sign(SSkB, (A, B, sidA, sidB, KemPk, KemC), r6).
  • Die Schlüsselaustauschvorrichtung 210B überträgt (IDA, IDB, sidA, sidB, KemC, sigB) an die Schlüsselaustauschvorrichtung 210A.
  • Die Schlüsselaustauschvorrichtung 210B speichert (IDA, IDB, sidA, sidB, KemPk, R5) als Informationen über einen Sitzungszustand.
  • Anschließend werden die Signaturprüfung, die Erzeugung eines Sitzungsschlüssels und einer signierten Nachricht und die Übertragung des Sitzungsschlüssels und der signierten Nachricht von der Schlüsselaustauschvorrichtung 210A an die Schlüsselaustauschvorrichtung 210B beschrieben.
  • Die Schlüsselaustauschvorrichtung 210A empfängt (IDA, IDB, sidA, sidB, KemC, sigB) von der Schlüsselaustauschvorrichtung 210B.
  • Die Schlüsselaustauschvorrichtung 210A liest (sidA, IDA, IDB, R2, R3), die gespeichert wurden, und den öffentlichen Schlüssel PkB der Schlüsselaustauschvorrichtung 210B. Die Schlüsselaustauschvorrichtung 210A erzeugt auch erneut das Zufallsband r2 als r2 = tPRF(BSkA, R2) und erzeugt ein Zufallsband r3 als r3 = tPRF(BSkA, R3). Die Schlüsselaustauschvorrichtung 210A erzeugt erneut das Paar aus dem öffentlichen Kem-Schlüssel und dem geheimen Kem-Schlüssel als (KemPk, KemSk) = KemGen(r2) und berechnet Verify(SVkB, (IDA, IDB, sidA, sidB, KemPk, KemC, sigB). Unter Verwendung eines Ergebnisses der Berechnung prüft die Schlüsselaustauschvorrichtung 210A, dass die Signatur sigB eine korrekte Signatur für (IDA, IDB, sidA, sidB, KemPk, KemC), die von der Schlüsselaustauschvorrichtung 210B signiert wurde, ist. Die Schlüsselaustauschvorrichtung 210A erzeugt einen Schlüssel als K = KemDec(KemSk, KemC). Die Schlüsselaustauschvorrichtung 210A erzeugt eine Signatur für (IDA, IDB, sidA, sidB, KemPk), die eine Nachricht ist, basierend auf der die Signaturübereinstimmung geprüft wird, als sigA = Sign(SSkA, (IDA, IDB, sidA, sidB, KemPk), r3).
  • Die Schlüsselaustauschvorrichtung 210A überträgt (IDA, IDB, sidA, sidB, sigA) an die Schlüsselaustauschvorrichtung 210B.
  • Die Schlüsselaustauschvorrichtung 210A gibt den Sitzungsschlüssel K und Informationen über die Sitzung als (IDA, IDB, sidA, sidB, K) aus.
  • Anschließend werden die Signaturprüfung und die Ausgabe eines Sitzungsschlüssels und von Sitzungsinformationen durch die Schlüsselaustauschvorrichtung 210B beschrieben.
  • Die Schlüsselaustauschvorrichtung 210B empfängt (A, B, sidA, sidB, sigA) von der Schlüsselaustauschvorrichtung 210A.
  • Die Schlüsselaustauschvorrichtung 210B liest (sidA, IDA, IDB, KemPk, R5), die gespeichert wurden, und den öffentlichen Schlüssel PkA = SVkA der Schlüsselaustauschvorrichtung 210A. Die Schlüsselaustauschvorrichtung 210B prüft, dass die Signatur sigA eine korrekte Signatur für (IDA, IDB, sidA, sidB, KemPk), die von der Schlüsselaustauschvorrichtung 210A signiert wurde, ist. Anschließend erzeugt die Schlüsselaustauschvorrichtung 210B erneut das Zufallsband r5 als r5 = tPRF(BSkA, R5) und das Paar aus dem KEM-Verschlüsselungstext und dem Schlüssel als (KemC, K) = KemEnc(KemPk, r5). Die Schlüsselaustauschvorrichtung 210B gibt den Sitzungsschlüssel K und Informationen über die Sitzung als (IDA, IDB, sidA, sidB, K) aus.
  • Aufbau der Schlüsselaustauschvorrichtung
  • 5 ist ein Blockdiagramm, das einen Aufbau der Schlüsselaustauschvorrichtungen 210A und 210B gemäß der vorliegenden beispielhaften Ausführungsform darstellt. Die jeweiligen Komponenten in 5 werden durch CPUs (zentrale Verarbeitungseinheiten) in den Schlüsselaustauschvorrichtungen 210A und 210B erreicht, welche Programme, die in Speichern gespeichert sind, unter Nutzung von RAMs (Direktzugriffsspeichern) ausführen.
  • Jede der Schlüsselaustauschvorrichtungen 210A und 210B umfasst eine Kommunikationssteuereinheit 501, eine Erstkonfigurationseinheit 502, eine Eingabeeinheit 503, eine Arithmetikeinheit 505 und eine Speichereinheit 504. Jede der Schlüsselaustauschvorrichtungen 210A und 210B umfasst ferner eine Schlüsselverkapselungsverarbeitungseinheit 506, eine Prüfverarbeitungseinheit 507 und eine Ausgabeeinheit 508.
  • Jede Kommunikationssteuereinheit 501 steuert die Kommunikation mit einer Schlüsselaustauschvorrichtung, die der andere Schlüsselaustauschpartner ist, mittels des Netzwerks 220. Es gibt keine spezifische Beschränkung für ein Kommunikationsprotokoll und ähnliches. Jede Erstkonfigurationseinheit 502 erzeugt und hält verschiedene Arten von Schlüsseln, zum Beispiel einen geheimen Schlüssel, einen Signaturschlüssel und einen Prüfschlüssel (öffentlicher Schlüssel). Jede Erstkonfigurationseinheit 502 kann eine Vorrichtungs-ID und einen öffentlichen Schlüssel des anderen Schlüsselaustauschpartners erlangen. Die Eingabeeinheiten 503 geben Zufallsbänder ein, die von den Schlüsselaustauschvorrichtungen 210A und 210B verwendet werden. Zum Beispiel werden in der vorliegenden beispielhaften Ausführungsform in die Schlüsselaustauschvorrichtung 210A Zufallsbänder R1, R2 und R3 eingegeben und in die Schlüsselaustauschvorrichtungen 210A und 210B werden Zufallsbänder R4, R5 und R6 eingegeben. Jede Arithmetikeinheit 505 erzeugt unter Verwendung einer Pseudozufallsfunktion basierend auf primären Zufallsbändern Rx mit einem geheimen Schlüssel, der von der Erstkonfigurationseinheit 502 erlangt wird, verschlüsselte sekundäre Zufallsbänder rx. In der folgenden Verarbeitung, die von jeder Schlüsselverkapselungsverarbeitungseinheit 506 und Prüfverarbeitungseinheit 507 durchgeführt wird, werden nur verschlüsselte sekundäre Zufallsbänder rx verwendet. Jede Speichereinheit 504 speichert Informationen zur Identifizierung einer Sitzung, die eingerichtet wurde. In den Speichereinheiten 504 werden zum Beispiel Vorrichtungs-IDs beider Schlüsselaustauschvorrichtungen, die eine Sitzung eingerichtet haben, beide Sitzungs-IDs, primäre Zufallsbänder und ähnliche gespeichert. In einer Schlüsselaustauschvorrichtung, die auf eine Schlüsselaustauschanforderung antwortet, wird auch ein öffentlicher Kem-Schlüssel KemPk, den eine Schlüsselaustauschvorrichtung, welche die Anforderung ausgegeben hat, erzeugt und übertragen hat, gespeichert.
  • Jede Schlüsselverkapselungsverarbeitungseinheit 506 erzeugt schlüsselverkapselte oder verschlüsselte Informationen und entschlüsselt Informationen durch Entkapselung. Die Schlüsselverkapselungsverarbeitungseinheiten 506 tauschen schlüsselverkapselte Informationen zwischen den Vorrichtungen aus, die Schlüssel miteinander austauschen, um einen Sitzungsschlüssel gemeinsam zu nutzen, um eine hohe zukünftige Sicherheit dagegen zu haben, dass Schlüssel in die Hände Dritter gelangen. Die Prüfverarbeitungseinheiten 507 erzeugen und übertragen Signaturen für schlüsselverkapselte Nachrichten, die zwischen den Vorrichtungen, die Schlüssel miteinander austauschen, ausgetauscht werden, und prüfen Signaturen, die in den empfangenen Nachrichten enthalten sind, um die Geheimhaltung eines Sitzungsschlüssels weiter zu verstärken. Jede Ausgabeeinheit 508 gibt einen Sitzungsschlüssel, der von den Vorrichtungen, die Schlüssel miteinander austauschen, gemeinsam genutzt wird, und einen Sitzungszustand, der die Sitzung identifiziert, aus.
  • (Erstkonfigurationseinheit)
  • 6 ist ein Blockdiagramm, das einen Aufbau der Erstkonfigurationseinheit 502 gemäß der vorliegenden beispielhaften Ausführungsform darstellt.
  • Die Erstkonfigurationseinheit 502 umfasst eine erste Schlüsselerzeugungseinheit 601, eine zweite Schlüsselerzeugungseinheit 602 und eine dritte Schlüsselerzeugungseinheit 603. Die Erstkonfigurationseinheit 502 umfasst auch eine Gewinnungseinheit 604 als eine Option.
  • Die erste Schlüsselerzeugungseinheit 601 erzeugt basierend auf einem Zufallsband R0 einen Prüfschlüssel SVk und einen Sigaturschlüssel SSk als (SVk, SSk) = SigGen(R0). Die zweite Schlüsselerzeugungseinheit 602 erzeugt basierend auf einem Zufallsband R2 einen geheimen Schlüssel BSk als BSk = SymGen(R2). Die dritte Schlüsselerzeugungseinheit 603 legt (SSk, BSk) als einen langfristigen Schlüssel Sk und SVk als einen öffentlichen Schlüssel Pk fest. Die Gewinnungseinheit 604 erlangt einen öffentlichen Schlüssel des anderen Schlüsselaustauschpartners mittels dessen Vorrichtungs-ID mit Hilfe der Kommunikationssteuereinheit 501.
  • Schlüsselverkapselungsverarbeitungseinheit
  • 7 ist ein Blockdiagramm, das einen Aufbau der Schlüsselverkapselungsverarbeitungseinheit 506 gemäß der vorliegenden beispielhaften Ausführungsform darstellt.
  • Die Schlüsselverkapselungsverarbeitungseinheit 506 umfasst eine erste Kem-Erzeugungseinheit 701, eine zweite Kem-Erzeugungseinheit 702 und eine Schlüsselentschlüsselungseinheit 703. Eine Schlüsselaustauschvorrichtung, die den Schlüsselaustausch anfordert, verwendet die erste Kem-Erzeugungseinheit 701 und die Schlüsselentschlüsselungseinheit 703. Eine Schlüsselaustauschvorrichtung, die auf die Schlüsselaustauschanforderung antwortet, verwendet die zweite Kem-Erzeugungseinheit 702.
  • Die erste Kem-Erzeugungseinheit 701 erzeugt basierend auf einem verschlüsselten sekundären Zufallsband rx einen öffentlichen Kem-Schlüssel KemPk und einen geheimen Kem-Schlüssel KemSk als (KemPk, KemSk) = KemGen(rx).
  • Die zweite Kem-Erzeugungseinheit 702 erzeugt basierend auf einem öffentlichen Kem-Schlüssel KemPk und einem sekundären Zufallsband rx einen Kem-Verschlüsselungstext KemC und einen Schlüssel K als (KemC, K) = KemEnc(KemPk, rx). Die Schlüsselentschlüsselungseinheit 703 entschlüsselt basierend auf einem geheimen Kem-Schlüssel KemSk und einem Kem-Verschlüsselungstext KemC den Schlüssel k als K = KemDec(KemSk, KemC).
  • Prüfverarbeitungseinheit
  • 8 ist ein Blockdiagramm, das einen Aufbau der Prüfverarbeitungseinheit 507 gemäß der vorliegenden beispielhaften Ausführungsform darstellt.
  • Die Prüfverarbeitungseinheit 507 umfasst eine Signaturerzeugungseinheit 801 und eine Signaturprüfeinheit 802.
  • Die Signaturerzeugungseinheit 801 erzeugt basierend auf einem Signaturschlüssel SSk, einer Übertragungsnachricht M und einem sekundären Zufallsband rx eine Signatur sig als sig = Sign(SSk, M, rx). Die Signaturprüfungseinheit 802 prüft und bestätigt basierend auf einem Prüfschlüssel SVk, der auch ein öffentlicher Schlüssel ist, einer Übertragungsnachricht M und einer Signatur sig die Signatur sig als res = Verify(SVk, M, sig).
  • Aufbau der Schlüsselaustauschvorrichtung 210A
  • 9A ist ein Blockdiagramm, das einen Aufbau der Schlüsselaustauschvorrichtung 210A als eine Schlüsselanforderungsvorrichtung gemäß der vorliegenden beispielhaften Ausführungsform darstellt. Die Schlüsselaustauschvorrichtung 210A ist eine Schlüsselaustauschvorrichtung auf der Seite, welche den Schlüsselaustausch anfordert. Der Aufbau in 9A entspricht dem Aufbau in 5 und die Bezugszahlen jeder Komponente in beiden Zeichnungen werden in einer derartigen Weise zugewiesen, dass ihre letzten Stellen miteinander übereinstimmen.
  • Die Schlüsselaustauschvorrichtung 210A umfasst eine Kommunikationssteuereinheit 901, eine Erstkonfigurationseinheit 902, eine Eingabeeinheit 903, eine Arithmetikeinheit 905 und eine Speichereinheit 904. Die Schlüsselaustauschvorrichtung 210A umfasst ferner eine Schlüsselverkapselungsverarbeitungseinheit 906, eine Prüfverarbeitungseinheit 907 und eine Ausgabeeinheit 908. Da die Umrisse der jeweiligen Komponenten bereits unter Bezug auf 5 beschrieben wurden, wird in 9A ein Fall einer Schlüsselaustauschvorrichtung auf der Seite, die den Schlüsselaustausch anfordert, beschrieben.
  • In der Erstkonfigurationseinheit 902 werden unter Verwendung von SigGen(R0A) ein Prüfschlüssel SVkA und ein Signaturschlüssel SSkA erzeugt und unter Verwendung von SymGen(R2) wird ein geheimer Schlüssel BSkA erzeugt. In der Erstkonfigurationseinheit 902 wird ein Paar (SSkA, BSkA) des Signaturschlüssels und des geheimen Schlüssels als ein langfristiger geheimer Schlüssel SkA festgelegt, und der Prüfschlüssel SVkA wird als ein öffentlicher Schlüssel PkA festgelegt. Außerdem können Vorrichtungskennungen IDA und IDB und ein öffentlicher Schlüssel PkB des anderen Schlüsselaustauschpartners erlangt werden. Die Eingangseinheit 903 gibt primäre Zufallsbänder R1, R2 und R3 ein.
  • Die Arithmetikeinheit 905 berechnet unter Verwendung einer modifizierten Pseudozufallsfunktion tPRF() jeweils verschlüsselte sekundäre Zufallsbänder r2 und r3 als r2 = tPRF(BSkA, R2) und r3 = tPRF(BSkA, R3). Die Speichereinheit 904 speichert nicht nur das primäre Zufallsband R1 als eine Sitzungsnummer sidA, sondern auch die Vorrichtungskennungen IDA und IDB beider Schlüsselaustauschvorrichtungen, die eine Sitzung einrichten, und die primären Zufallsbänder R2 und R3.
  • Die Schlüsselverkapselungsverarbeitungseinheit 906 erzeugt basierend auf dem sekundären Zufallsband r2 einen öffentlichen Kem-Schlüssel KemPk und einen geheimen Kem-Schlüssel KemSk als (KemPk, KemSk) = KemGen(r2) und überträgt eine Nachricht mit dem öffentlichen Kem-Schlüssel Kern Pk an die Schlüsselaustauschvorrichtung 210B, die der andere Schlüsselaustauschpartner ist. Andererseits erzeugt die Schlüsselverkapselungsverarbeitungseinheit 906 basierend auf einer Nachricht mit einem Kem-Verschlüsselungstext KemC, der von der Schlüsselaustauschvorrichtung 210B empfangen wird, die der andere Schlüsselaustauschpartner ist, einen Sitzungsschlüssel K als K = KemDec(KemSk, KemC).
  • Die Prüfverarbeitungseinheit 907 prüft die Nachricht, die eine Signatur sigB enthält und von der Schlüsselaustauschvorrichtung 210B, die der andere Schlüsselaustauschpartner ist, übertragen wird, durch Verify(SVkB, (IDA, IDB, sidB, KemPk, Kemc), sigB) unter Verwendung eines Prüfschlüssels SVkB, der ein öffentlicher Schlüssel der Schlüsselaustauschvorrichtung 210B ist, um die Signatur sigB zu prüfen. Andererseits erzeugt die Prüfverarbeitungseinheit 907 eine Signatur sigA durch Sign(SSkA, (IDA, IDB, sidA, sidB, KemPk, r3) unter Verwendung des Signaturschlüssels SSkA und des sekundären Zufallsbands r3 und überträgt eine Übertragungsnachricht mit der Signatur sigA an die Schlüsselaustauschvorrichtung 210B, die der andere Schlüsselaustauschpartner ist.
  • Die Ausgabeeinheit 908 gibt den verschlüsselten Sitzungsschlüssel K und Sitzungsinformationen IDA, IDB, sidA und sidB für den Beginn einer Sitzung aus.
  • Verarbeitungsverfahren der Schlüsselaustauschvorrichtung 210A
  • 9B ist ein Flussdiagramm, das ein Verarbeitungsverfahren der Schlüsselaustauschvorrichtung 210A als eine Schlüsselaustauschanforderungsvorrichtung gemäß der vorliegenden beispielhaften Ausführungsform darstellt. Das Flussdiagramm ist im Speicher in der Schlüsselaustauschvorrichtung 210A gespeichert. Eine CPU in der Schlüsselaustauschvorrichtung 210A, die das Flussdiagramm unter Verwendung eines RAM ausführt, erreicht die Komponenten in 9A.
  • Die Schlüsselaustauschvorrichtung 210A führt in Schritt S901 die Erstkonfiguration durch. Zum Beispiel erzeugt die Schlüsselaustauschvorrichtung 210A einen langfristigen geheimen Schlüssel SkA, einen öffentlichen Schlüssel PkA und ähnliche. In die Schlüsselaustauschvorrichtung 210A werden in Schritt S903 primäre Zufallsbänder R1, R2 und R3 eingegeben. Die Schlüsselaustauschvorrichtung 210A legt das Zufallsband R1 in Schritt S905 als eine Sitzungsnummer sidA fest. Die Schlüsselaustauschvorrichtung 210A erzeugt basierend auf dem Zufallsband R2 als r2 = tPRF(BSkA, R2) ein sekundäres Zufallsband r2. Die Schlüsselaustauschvorrichtung 210A erzeugt in Schritt S907 unter Verwendung von KemGem(r2) einen öffentlichen Kem-Schlüssel KemPk und einen geheimen Kem-Schlüssel KemSk. Die Schlüsselaustauschvorrichtung 210A überträgt in Schritt 5909 eine Nachricht (IDA, IDB, sidA, KemPk) an die Schlüsselaustauschvorrichtung 210B, die der andere Schlüsselaustauschpartner ist. Die Schlüsselaustauschvorrichtung 210A speichert in Schritt S911 (sidA, IDA, IDB, R2, R3) als einen Sitzungszustand.
  • Die Schlüsselaustauschvorrichtung 210A hält sich in Schritt S913 für eine Antwortnachricht von der Schlüsselaustauschvorrichtung 210B auf die in Schritt S909 übertragene Nachricht bereit. Wenn eine Antwortnachricht von der Schlüsselaustauschvorrichtung 210B ankommt, erlangt die Schlüsselaustauschvorrichtung 210A in Schritt S915 die Antwortnachricht (IDA, IDB, sidA, sidB, KemC, sigB). Als nächstes erzeugt die Schlüsselaustauschvorrichtung 210A in Schritt S917 unter Verwendung der Pseudozufallsfunktion tPRF() erneut die verschlüsselten Zufallsbänder r2 und r3 und erzeugt in Schritt S919 unter Verwendung von KemGem(r2) erneut den öffentlichen Kem-Schlüssel KemPk und den geheimen Kem-Schlüssel KemSk.
  • Die Schlüsselaustauschvorrichtung 210A liest in Schritt S921 einen öffentlichen Schlüssel PkB (SVkB) des anderen Schlüsselaustauschpartners mittels IDB, die dessen Vorrichtung-ID ist. Die Schlüsselaustauschvorrichtung 210A prüft in Schritt S923 eine Signatur sigB in der Nachricht, die von der Schlüsselaustauschvorrichtung 210B empfangen wird, unter Verwendung von Verify(SVkB, (IDA, IDB, sidA, sidB, KemPk, KemC), sigB). Wenn die Signatur geprüft wurde, entschlüsselt die Schlüsselaustauschvorrichtung 210A in Schritt S925 die Nachricht, die von der Schlüsselaustauschvorrichtung 210B empfangen wird, als K = KemDec(KemSk, KemC), um einen Sitzungsschlüssel K zu erlangen.
  • Als nächstes erzeugt die Schlüsselaustauschvorrichtung 210A in Schritt S927 eine Signatur sigA für eine passende Nachricht als sigA = (SSkA, (IDA, IDB, sidA, sidB, KemPk), r3). Die Schlüsselaustauschvorrichtung 210A überträgt in Schritt S929 eine Nachricht (IDA, IDB, sidA, sidB, sigA) an die Schlüsselaustauschvorrichtung 210B, die der andere Schlüsselaustauschpartner ist. Die Schlüsselaustauschvorrichtung 210A gibt in Schritt S931 (IDA, IDB, sidA, sidB, K), die der Sitzungsschlüssel und Sitzungsinformationen sind, aus.
  • Aufbau der Schlüsselaustauschvorrichtung 210B
  • 10A ist ein Blockdiagramm, das einen Aufbau der Schlüsselaustauschvorrichtung 210B als eine Schlüsselaustauschantwortvorrichtung gemäß der vorliegenden beispielhaften Ausführungsform darstellt. Die Schlüsselaustauschvorrichtung 210B ist eine Vorrichtung auf der Seite, die den Schlüsselaustausch anfordert. Der Aufbau in 10A entspricht dem Aufbau in 5 und die Bezugszahlen jeder Komponente sind in beiden Zeichnungen in einer derartigen Weise zugewiesen, dass ihre letzten Stellen miteinander zusammenfallen.
  • Die Schlüsselaustauschvorrichtung 210B umfasst eine Kommunikationsprotokolleinheit 1001, eine Erstkonfigurationseinheit 1002, eine Eingabeeinheit 1003, eine Arithmetikeinheit 1005 und eine Speichereinheit 1004. Die Schlüsselaustauschvorrichtung 210B umfasst ferner eine Schlüsselverkapselungsverarbeitungseinheit 1006, eine Prüfverarbeitungseinheit 1007 und eine Ausgabeeinheit 1008. Da die Umrisse der jeweiligen Komponenten bereits unter Bezug auf 5 beschrieben wurden, wird in 9A ein Fall einer Schlüsselaustauschvorrichtung auf der Seite, die den Schlüsselaustausch anfordert, beschrieben.
  • In der Erstkonfigurationseinheit 1002 werden unter Verwendung von SigGem(ROB) ein Prüfschlüssel SVkB und ein Signaturschlüssel SSkB erzeugt und unter Verwendung von SymGen(R5) wird ein geheimer Schlüssel BSkB erzeugt. In der Erstkonfigurationseinheit 1002 wird ein Paar (SSkB, BSkB) aus dem Signaturschlüssel und dem geheimen Schlüssel und dem Prüfschlüssel SVkB als ein langfristiger geheimer Schlüssel SkB festgelegt und der Prüfschlüssel SVkB wird als ein öffentlicher Schlüssel PkB festgelegt.
  • Ferner können Vorrichtungskennungen IDA und IDB und ein öffentlicher Schlüssel PkA des anderen Schlüsselaustauschpartners können erlangt werden. In die Eingabeeinheit 1003 werden primäre Zufallsbänder R4, R5 und R6 eingegeben.
  • Die Arithmetikeinheit 1005 berechnet unter Verwendung einer modifizierten Pseudozufallsfunktion tPRF() verschlüsselte sekundäre Zufallsbänder r5 und r6 jeweils als r5 = tPRF(BSkB, R5) und r6 = tPRF(BSkB, R6). Die Speichereinheit 1004 speichert nicht nur das primäre Zufallsband R4 als eine Sitzungsnummer sidB, sondern auch die Vorrichtungskennungen IDA und IDB beider Schlüsselaustauschvorrichtungen, die eine Sitzung einrichten, das primäre Zufallsband R5 und einen öffentlichen Kem-Schlüssel KemPk, der durch die Schlüsselaustauschvorrichtung 210A erzeugt und übertragen wird.
  • Die Schlüsselverkapselungsverarbeitungseinheit 1006 erzeugt basierend auf dem sekundären Zufallsband r5 einen Kem-Verschlüsselungstext KemC und einen Schlüssel K als (KemC, K) = KemEnc(KemPk, r5) und überträgt eine Nachricht mit KemC an die Schlüsselaustauschvorrichtung 210A, die der andere Schlüsselaustauschpartner ist.
  • Die Prüfverarbeitungseinheit 1007 erzeugt unter Verwendung des Signaturschlüssels SSkB und des sekundären Zufallsbands r6 eine Signatur sigB durch Sign(SSkB, (IDA, IDB, sidA, sidB, KemPk, KemC), r6) und überträgt eine Übertragungsnachricht mit der Signatur SigB an die Schlüsselaustauschvorrichtung 210A, die der andere Schlüsselaustauschpartner ist. Andererseits prüft die Prüfverarbeitungseinheit 1007 durch Verify(SVkA, (IDA, IDB, sidB, KemPk), sigA) unter Verwendung eines Prüfschlüssels SVkA, der ein öffentlicher Schlüssel der Schlüsselaustauschvorrichtung 210A ist, eine Nachricht, die die Signatur sigA umfasst, und von der Schlüsselaustauschvorrichtung 210A, die der andere Schlüsselaustauschpartner ist, übertragen wird, um die Signatur sigA zu prüfen.
  • Die Ausgabeeinheit 1008 gibt den erzeugten Sitzungsschlüssel K und die Sitzungsinformationen IDA, IDB, sidA und sidB für den Beginn einer Sitzung aus.
  • Verarbeitungsverfahren der Schlüsselaustauschvorrichtung B
  • 10B ist ein Flussdiagramm, das ein Verarbeitungsverfahren der Schlüsselaustauschvorrichtung 210B als eine Schlüsselaustauschantwortvorrichtung gemäß der vorliegenden beispielhaften Ausführungsform darstellt. Das Flussdiagramm ist in dem Speicher in der Schlüsselaustauschvorrichtung 210B gespeichert. Eine CPU in der Schlüsselaustauschvorrichtung 210B, die das Flussdiagramm unter Verwendung eines RAM ausführt, erreicht die Komponenten in 10A.
  • Die Schlüsselaustauschvorrichtung 210B führt in Schritt S1001 die Erstkonfiguration durch. Zum Beispiel erzeugt die Schlüsselaustauschvorrichtung 210B einen langfristigen geheimen Schlüssel SkB, einen öffentlichen Schlüssel PkB und ähnliches. Die Schlüsselaustauschvorrichtung 210A hält sich in Schritt S1003 für eine Nachricht von einer Schlüsselaustauschvorrichtung bereit, die den Schlüsselaustausch mit der Schlüsselaustauschvorrichtung 210B anfordert. Wenn zum Beispiel eine Nachricht von der Schlüsselaustauschvorrichtung 210A empfangen wird, erlangt die Schlüsselaustauschvorrichtung 210B in Schritt S1005 die empfangene Nachricht (IDA, IDB, sidA, KemPk).
  • In die Schlüsselaustauschvorrichtung 210A werden in Schritt S1007 primäre Zufallsbänder R4, R5 und R6 eingegeben. Die Schlüsselaustauschvorrichtung 210B legt in Schritt S1009 das Zufallsband R4 als eine Sitzungsnummer sidB fest. Die Schlüsselaustauschvorrichtung 210B erzeugt basierend auf den Zufallsbändern R5 und R6 jeweils sekundäre Zufallsbänder r5 und r6 als r5 = tPRF(BSkB, R5) und r6 = tPRF(BSkB, R6). Die Schlüsselaustauschvorrichtung 210B erzeugt in Schritt S1011 basierend auf dem öffentlichen Kem-Schlüssel KemPk, der in der empfangenen Nachricht (IDA, IDB, sidA, KemPk) enthalten ist, und dem sekundären Zufallsband r5 einen Kem-Verschlüsselungstext KemC und einen Schlüssel K als (KemC, K) = KemEnc(KemPk, r5).
  • Als nächstes erzeugt die Schlüsselaustauschvorrichtung 210B in Schritt S1013 eine Signatur sigB einer Nachricht als sigB = (SSkB, (IDA, IDB, sidA, sidB, KemPk, KemC), r6). Die Schlüsselaustauschvorrichtung 210B überträgt in Schritt S1015 eine Nachricht (IDA, IDB, sidA, sidB, KemC, sigB) an die Schlüsselaustauschvorrichtung 210A, die den Schlüsselaustausch angefordert hat. Die Schlüsselaustauschvorrichtung 210B speichert in Schritt S1017 (IDA, IDB, sidA, sidB, KemPk, R5) als einen Sitzungszustand.
  • Die Schlüsselaustauschvorrichtung 210B hält sich in Schritt S1019 für eine Antwort von der Schlüsselaustauschvorrichtung 210B auf die in Schritt S1015 übertragene Nachricht bereit. Wenn eine Antwort von der Schlüsselaustauschvorrichtung 210B ankommt, erlangt die Schlüsselaustauschvorrichtung 210B in Schritt S1021 die empfangene Nachricht (IDA, IDB, sidA, sigA). Die Schlüsselaustauschvorrichtung 210B liest in Schritt S1023 mittels IDA, die seine Vorrichtungs-ID ist, einen öffentlichen Schlüssel PkA (SVkA) des anderen Schlüsselaustauschpartners. Die Schlüsselaustauschvorrichtung 210B prüft in Schritt S1025 die Signatur sigA in der Nachricht, die von der Schlüsselaustauschvorrichtung 210A empfangen wird, unter Verwendung von Verify(SVka, (IDA, IDB, sidA, sidB, KemPk), sigA).
  • Wenn die Signatur geprüft ist, erzeugt die Schlüsselaustauschvorrichtung 210B in Schritt S1027 unter Verwendung der Pseudozufallsfunktion tPRF() erneut das verschlüsselte sekundäre Zufallsband r5 und erzeugt auch erneut einen Kem-Verschlüsselungstext KemC und einen Schlüssel K als (KemC, K) = KemEnc(KemPk, r5). Die Schlüsselaustauschvorrichtung 210B gibt in Schritt S1029 (IDA, IDB, sidA, sidB, K) aus, die der Sitzungsschlüssel und Sitzungsinformationen sind.
  • Die vorliegende beispielhafte Ausführungsform ermöglicht, dass ein Sitzungsschlüssel vor einem Angreifer verborgen wird, es sei denn, ein Zufallsband und ein langfristiger geheimer Schlüssel einer identischen Schlüsselaustauschvorrichtung werden von dem Angreifer gestohlen. Außerdem ist es möglich, den Sitzungsschlüssel vor dem Angreifer zu verbergen, selbst wenn ein Angreifer eine der Schlüsselaustauschvorrichtungen nachgeahmt hat, um verschlüsselte Daten von der anderen der Schlüsselaustauschvorrichtungen abzufangen, und einen langfristigen geheimen Schlüssel der nachgeahmten Vorrichtung gestohlen hat.
  • Das heißt, wenn die Schlüsselaustauschvorrichtungen 210A und 210B in dem Schlüsselaustausch der vorliegenden beispielhaften Ausführungsform einen Sitzungsschlüssel eingerichtet haben, wird der Sitzungsschlüssel KeyA = KeyB vor einem Angreifer verborgen, es sei denn, es tritt ein Ereignis auf, dass von dem Angreifer sowohl ein Zufallsband eskA als auch ein langfristiger Schlüssel SkA von der Schlüsselaustauschvorrichtung 210A gestohlen werden. Alternativ wird der Sitzungsschlüssel KeyA = KeyB vor einem Angreifer verborgen, es sei denn, es tritt ein Ereignis auf, dass von dem Angreifer sowohl ein Zufallsband eskB als auch ein langfristiger Schlüssel SkB von der Schlüsselaustauschvorrichtung 210B gestohlen werden.
  • Der vorstehende Vorteil wird wie folgt näher ausgeführt. Erstens wird aufgrund eines Merkmals, dass die Schlüsselaustauschvorrichtung 210A r2 als r2 = tPRF(BSkA, R2) erzeugt, aus Charakteristiken einer modifizierten Pseudozufallsfunktion tPRF abgeleitet, dass r2 nicht erhalten werden kann, wenn nicht sowohl das Zufallsband eskA, das R2 enthält, als auch der langfristige Schlüssel SkA, der BSkA enthält, gestohlen werden. Wenn r2 verborgen wird, wird KemSk aufgrund der Sicherheit der Schlüsselverkapselungsfunktion ebenfalls verborgen.
  • Als nächstes wird aufgrund eines Merkmals, dass die Schlüsselaustauschvorrichtung 210B r5 als r5 = tPRF(BSkB, R5) erzeugt, aus Charakteristiken einer modifizierten Pseudozufallsfunktion tPRF abgeleitet, dass r5 nicht erhalten werden kann, wenn nicht sowohl das Zufallsband eskB, das R5 enthält, als auch der langfristige Schlüssel SkB, der BSkB enthält, gestohlen werden. Wenn r5 verborgen wird, wird K in (KemC, K) = KemEnc(KemPk, r5) aufgrund der Sicherheit der Schlüsselverkapselungsfunktion vor jedem, abgesehen von einer Person, die KemSk kennt, verborgen.
  • Aufgrund der vorstehend beschriebenen beiden Merkmale wird K vor einem Angreifer verborgen, es sein denn, es tritt ein Ereignis auf, dass von dem Angreifer sowohl das Zufallsband eskA als auch der langfristige Schlüssel SkA von der Schlüsselaustauschvorrichtung 210A gestohlen werden oder vor dem Angreifer sowohl das Zufallsband eskB als auch der langfristige Schlüssel SkB von der Schlüsselaustauschvorrichtung 210B gestohlen werden.
  • In dem Schlüsselaustauschverfahren der vorliegenden beispielhaften Ausführungsform wird ein Fall angenommen, in dem die Schlüsselaustauschvorrichtung 210A mit einem Angreifer kommuniziert, der die Schlüsselaustauschvorrichtung 210B nachahmt und einen Sitzungsschlüssel eingerichtet hat. Selbst in diesem Fall wird der Sitzungsschlüssel KeyA vor dem Angreifer verborgen, es sei denn, es tritt ein Ereignis auf, dass von dem Angreifer sowohl ein Zufallsband eskA als auch ein langfristiger Schlüssel SkA von der Schlüsselaustauschvorrichtung 210A gestohlen werden oder von dem Angreifer ein langfristiger Schlüssel der Schlüsselaustauschvorrichtung 210B gestohlen wird, bevor die Sitzung überhaupt eingerichtet ist.
  • Der vorstehende Vorteil wird wie folgt ausgeführt. Zuerst wird aufgrund eines Merkmals, dass die Schlüsselaustauschvorrichtung 210A r2 als r2 = tPRF(BSkA, R2) erzeugt, aus Charakteristiken einer modifizierten Pseudozufallsfunktion tPRF abgeleitet, dass r2 nicht erhalten werden kann, es sei denn, sowohl das Zufallsband eskA, das R2 enthält, als auch der langfristige Schlüssel SkA, der BSkA enthält, werden gestohlen. Wenn r2 verborgen wird, wird KemSk aufgrund der Sicherheit der Schlüsselverkapselungsfunktion ebenfalls verborgen.
  • Als nächstes prüft die Schlüsselaustauschvorrichtung 210A, dass sigB eine passende Signatur für (A, B, sidA, sidB, KemSk, KemC) ist, die von der Schlüsselaustauschvorrichtung 210B signiert wird. Daher wird aufgrund der Sicherheit der Signatur sichergestellt, dass der langfristige Schlüssel der Schlüsselaustauschvorrichtung 210B nicht von einem Angreifer gestohlen wurde, bevor die Sitzung eingerichtet wird. Da r5 als r5 = tPRF(BSkB, R5) erhalten wird, wird r5 verborgen, und aufgrund der Sicherheit der Schlüsselverkapselungsfunktion wird K in (KemC, K) = KemEnc(KemPk, r5) vor jedem, abgesehen von einer Person, die KemSk kennt, verborgen.
  • Aufgrund der vorstehend beschriebenen zwei Merkmale wird ein Sitzungsschlüssel vor einem Angreifer selbst dann verborgen, wenn die Schlüsselaustauschvorrichtung 210A mit dem Angreifer kommuniziert, der die Schlüsselaustauschvorrichtung 210B nachahmt und den Sitzungsschlüssel eingerichtet hat. Das heißt, es wird bestätigt, dass der Sitzungsschlüssel KeyA vor einem Angreifer verborgen wird, wenn nicht ein Ereignis auftritt, dass von dem Angreifer sowohl das Zufallsband eskA als auch der langfristige Schlüssel SkA von der Schlüsselaustauschvorrichtung 210A gestohlen werden, oder von dem Angreifer der langfristige Schlüssel der Schlüsselaustauschvorrichtung 210B gestohlen wird, bevor die Sitzung auch nur eingerichtet ist.
  • Andererseits wird in dem Schlüsselaustauschverfahren der vorliegenden beispielhaften Ausführungsform auch ein Fall angenommen, in dem die Schlüsselaustauschvorrichtung 210B mit einem Angreifer kommuniziert, der die Schlüsselaustauschvorrichtung 210A nachahmt und einen Sitzungsschlüssel eingerichtet hat. Selbst in diesem Fall wird der Sitzungsschlüssel KeyB vor dem Angreifer verborgen, wenn nicht ein Ereignis auftritt, dass von dem Angreifer sowohl ein Zufallsband eskB als auch ein langfristiger Schlüssel SkB von der Schlüsselaustauschvorrichtung 210B gestohlen werden oder von dem Angreifer ein langfristiger Schlüssel der Schlüsselaustauschvorrichtung 210A gestohlen wird, bevor die Sitzung auch nur eingerichtet ist.
  • Der vorstehende Vorteil wird wie folgt ausgeführt. Zuerst wird aufgrund eines Merkmals, dass die Schlüsselaustauschvorrichtung 210B r5 als r5 = tPRF(BSkB, R5) erzeugt, und Charakteristiken einer modifizierten Pseudozufallsfunktion tPRF abgeleitet, dass r5 nicht erhalten werden kann, es sei denn, sowohl das Zufallsband eskB, das R5 enthält, als auch der langfristige Schlüssel SkB, der BSkB enthält, werden gestohlen. Aufgrund der Sicherheit der Schlüsselverkapselungsfunktion wird K in (KemC, K) = KemEnc(KemPk, r5) vor jedem, abgesehen von einer Person, die r5 oder KemSk kennt, verborgen.
  • Als nächstes prüft die Schlüsselaustauschvorrichtung 210B, dass sigA eine passende Signatur für (A, B, sidA, sidB, KemPk) ist, die von der Schlüsselaustauschvorrichtung 210A signiert wird. Daher wird aufgrund der Sicherheit der Signatur sichergestellt, dass der langfristige Schlüssel der Schlüsselaustauschvorrichtung 210A nicht von einem Angreifer gestohlen wurde, bevor die Sitzung eingerichtet wird. Da r2 als r2 = tPRF(BSkA, R2) erhalten wird, wird r2 verborgen, und aufgrund der Sicherheit der Schlüsselverkapselungsfunktion wird KemSk verborgen.
  • Aufgrund der vorstehend beschriebenen zwei Merkmale wird ein Sitzungsschlüssel vor einem Angreifer selbst dann verborgen, wenn die Schlüsselaustauschvorrichtung 210B mit dem Angreifer kommuniziert, der die Schlüsselaustauschvorrichtung 210A nachahmt und den Sitzungsschlüssel eingerichtet hat. Das heißt, es wird bestätigt, dass ein Sitzungsschlüssel KeyB vor einem Angreifer verborgen wird, wenn nicht ein Ereignis auftritt, dass von dem Angreifer sowohl das Zufallsband eskB als auch der langfristige Schlüssel SkB von der Schlüsselaustauschvorrichtung 210B gestohlen werden. Alternativ wird bestätigt, dass ein Sitzungsschlüssel KeyB vor einem Angreifer verborgen wird, es sei denn, es tritt ein Ereignis ein, dass der langfristige Schlüssel der Schlüsselaustauschvorrichtung 210A von dem Angreifer gestohlen wird, bevor die Sitzung auch nur eingerichtet ist.
  • Wie bisher beschrieben, ermöglicht die Verwendung der zweiten beispielhaften Ausführungsform der vorliegenden Erfindung, dass ein Sitzungsschlüssel vor einem Angreifer verborgen wird, wenn für jede Sitzung zwischen zwei Schlüsselaustauschvorrichtungen, die Einrichtungen für die gegenseitige Authentifizierung umfassen, ein geheimer Sitzungsschlüssel eingerichtet wird. Insbesondere stellt die zweite beispielhafte Ausführungsform ein vorteilhaftes Ergebnis bereit, dass die Anzahl von Sitzungsschlüsseln, die in die Hand Dritter gelangen, verringert wird, wenn es eine Möglichkeit gibt, dass ein langfristiger Schlüssel, den jede Schlüsselaustauschvorrichtung für das Durchführen der Authentifizierung hält, und ein Zufallsband, das verwendet wird, wenn jede Schlüsselaustauschvorrichtung in Zusammenwirkung mit einer Schlüsselaustauschvorrichtung, die der andere Schlüsselaustauschpartner ist, einen Sitzungsschlüssel erzeugt, in die Hände Dritter gelangen. Insbesondere wird die Anzahl von Fällen, in denen jeweils ein Angreifer den Sitzungsschlüssel erhält, wenn zwei Schlüsselaustauschvorrichtungen zu einem gewissen Zeitpunkt einen Sitzungsschlüssel eingerichtet haben oder eine Schlüsselaustauschvorrichtung einen Sitzungsschlüssel für eine Sitzung mit einer anderen Schlüsselaustauschvorrichtung erzeugt hat, verringert. Das heißt, wenn eine gewisse Zeit nach dem Zeitpunkt Daten über die Erzeugung des Sitzungsschlüssels von der Schlüsselaustauschvorrichtung oder einer anderen Schlüsselaustauschvorrichtung, mit der ein Sitzungsschlüssel eingerichtet wurde, in die Hände eines Angreifers gelangen, werden die Möglichkeiten, dass der Angreifer den Sitzungsschlüssel erhält, verringert. Der Vorteil gilt auch für einen Fall, in dem Daten über die Erzeugung eines Sitzungsschlüssels von einer Schlüsselaustauschvorrichtung, mit der die Schlüsselaustauschvorrichtung den Sitzungsschlüssel eingerichtet hat, in die Hände eines Angreifers gelangen.
  • Eine Schlüsselaustauschvorrichtung, die wie vorstehend beschrieben fähig ist, einen Sitzungsschlüssel vor einem Angreifer zu verbergen, trägt dazu bei, die Sicherheit in der Kommunikation zu verbessern.
  • Andere beispielhafte Ausführungsform
  • Wenngleich in den vorstehend beschriebenen beispielhaften Ausführungsformen ein Fall beschrieben wurde, in dem eine modifizierte Pseudozufallsfunktion tPRF() als eine in der Arithmetikeinheit verwendete Pseudozufallsfunktion verwendet wird, stellt die Verwendung einer Hashfunktion oder einer allgemeinen Pseudozufallsfunktion ebenfalls die gleichen vorteilhaften Ergebnisse bereit. Wenngleich ein Fall, der Sign() als eine Signaturfunktion verwendet, beschrieben wurde, kann MAC (Message Authentication Code), der ein Nachrichtenauthentifizierungscode ist, verwendet werden, wenn die Schlüsselaustauschvorrichtung 210A und die Schlüsselaustauschvorrichtung 210B den gleichen Schlüssel gemeinsam nutzen. Wenngleich Verify(), das Sign() entspricht, als eine Prüffunktion verwendet wurde, können verschiedene Arten von Signaturfunktionen, die einander entsprechen, verwendet werden.
  • Die vorliegende Erfindung wurde vorstehend durch ihre beispielhaften Ausführungsformen beschrieben, aber die vorliegende Erfindung ist nicht auf die vorstehenden beispielhaften Ausführungsformen beschränkt. Verschiedene Modifikationen, die von Fachleuten der Technik verstanden werden könnten, können auf die Aufbauten und Details der vorliegenden Erfindung innerhalb des Schutzbereichs der vorliegenden Erfindung angewendet werden. Ein System oder eine Vorrichtung, die durch Kombinieren getrennter Merkmale, die in den jeweiligen beispielhaften Ausführungsformen in jeder Form enthalten sind, ausgebildet werden, sind ebenfalls in dem Schutzbereich der vorliegenden Ausführungsform enthalten.
  • Die vorliegende Erfindung kann auf ein System angewendet werden, das mehrere Vorrichtungen oder eine einzelne Vorrichtung umfasst. Die vorliegende Erfindung ist auch auf einen Fall anwendbar, in dem ein Steuerprogramm zur Implementierung der Funktionen der beispielhaften Ausführungsformen an das System oder die Vorrichtung direkt oder von einem entfernten Ort geliefert wird. Folglich sind ein Programm, das auf einem Computer installiert ist, um den Computer dazu zu bringen, die Funktionen der vorliegenden Erfindung zu erreichen, ein Medium, das das Programm speichert, und ein WWW-(World Wide Web-)Server zum Herunterladen des Programms ebenfalls in dem Schutzbereich der vorliegenden Erfindung enthalten. Insbesondere ist wenigstens ein nichtflüchtiges computerlesbares Medium, das ein Programm speichert, das einen Computer Verarbeitungsschritte ausführen lässt, die in den vorstehend beschriebenen beispielhaften Ausführungsformen enthalten sind, in dem Schutzbereich der vorliegenden Erfindung enthalten.
  • In den Zeichnungen für Beschreibungen von Aufbauten von Schlüsselaustauschvorrichtungen in den vorstehend beschriebenen beispielhaften Ausführungsformen zeigen Pfeile zwischen jeweiligen Komponenten von Verbindungen zwischen jeweiligen Komponenten die Übertragung und den Empfang von in den Zeichnungen dargestellten Informationen an. Es wird angenommen, dass andere Informationen, wie etwa ein Steuersignal, eine Benachrichtigung und ähnliches, die in den Zeichnungen nicht dargestellt sind, zwischen Komponenten ungeachtet dessen, ob sie in den Zeichnungen durch Pfeile dargestellt sind, übertragen und empfangen werden.
  • Sonstige Beschreibungen beispielhafter Ausführungsformen
  • Alle oder ein Teil der vorstehend beschriebenen beispielhaften Ausführungsformen können in den folgenden ergänzenden Anmerkungen beschrieben werden, aber die vorliegende Erfindung ist nicht darauf beschränkt.
  • (Zusätzliche Anmerkung 1)
  • Eine Schlüsselaustauschvorrichtung, die umfasst:
    eine Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    eine Arithmetikeinrichtung zum Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    eine Schlüsselverkapselungsverarbeitungseinrichtung zum Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an einen anderen Schlüsselaustauschpartner zu übertragen, und Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von dem anderen Schlüsselaustauschpartner empfangen wird; und
    eine Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  • (Zusätzliche Anmerkung 2)
  • Die Schlüsselaustauschvorrichtung gemäß der zusätzlichen Anmerkung 1 wobei die Prüfverarbeitungseinrichtung in der Übertragungsnachricht Vorrichtungskennungen beider Schlüsselaustauschvorrichtungen, Sitzungskennungen der beiden Schlüsselaustauschvorrichtungen und den schlüsselverkapselten öffentlichen Schlüssel, und in der empfangenen Nachricht die Vorrichtungskennungen der beiden Schlüsselaustauschvorrichtungen, die Sitzungskennungen der beiden Schlüsselaustauschvorrichtungen, den schlüsselverkapselten öffentlichen Schlüssel und den schlüsselverkapselten Verschlüsselungstext umfasst.
  • (Zusätzliche Anmerkung 3)
  • Die Schlüsselaustauschvorrichtung gemäß der zusätzlichen Anmerkung 1 oder 2, die ferner umfasst:
    eine Sitzungszustandsspeichereinrichtung zum Speichern eines Sitzungszustands zur Identifizierung einer Sitzung; und
    eine Sitzungsinformationsausgabeeinrichtung zum Ausgeben eines erzeugten Sitzungsschlüssels und von Sitzungsinformationen, die den Sitzungszustand umfassen.
  • (Zusätzliche Anmerkung 4)
  • Eine Schlüsselaustauschvorrichtung, die umfasst:
    eine Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    eine Arithmetikeinrichtung zum Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    eine Schlüsselverkapselungsverarbeitungseinrichtung zum Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von einem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten zweiten Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an den anderen Schlüsselaustauschpartner; und
    eine Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  • (Zusätzliche Anmerkung 5)
  • Die Schlüsselaustauschvorrichtung gemäß der zusätzlichen Anmerkung 4 wobei die Prüfverarbeitungseinrichtung in der Übertragungsnachricht Vorrichtungskennungen beider Schlüsselaustauschvorrichtungen, Sitzungskennungen der beiden Schlüsselaustauschvorrichtungen, den schlüsselverkapselten öffentlichen Schlüssel und den schlüsselverkapselten Verschlüsselungstext in der empfangenen Nachricht, die Vorrichtungskennungen der beiden Schlüsselaustauschvorrichtungen, die Sitzungskennungen der beiden Schlüsselaustauschvorrichtungen und den schlüsselverkapselten öffentlichen Schlüssel umfasst.
  • (Zusätzliche Anmerkung 6)
  • Die Schlüsselaustauschvorrichtung gemäß der zusätzlichen Anmerkung 4 oder 5, die ferner umfasst:
    eine Sitzungszustandsspeichereinrichtung zum Speichern eines Sitzungszustands zur Identifizierung einer Sitzung; und
    eine Sitzungsinformationsausgabeeinrichtung zum Ausgeben eines erzeugten Sitzungsschlüssels und von Sitzungsinformationen, die den Sitzungszustand umfassen.
  • (Zusätzliche Anmerkung 7)
  • Eine Schlüsselaustauschvorrichtung, die umfasst:
    eine Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband; einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    eine Arithmetikeinrichtung zum Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    eine Schlüsselverkapselungsverarbeitungseinrichtung zum Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an einen anderen Schlüsselaustauschpartner zu übertragen, Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von dem anderen Schlüsselaustauschpartner empfangen wird, Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von dem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten zweiten Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an den anderen Schlüsselaustauschpartner; und
    eine Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  • (Zusätzliche Anmerkung 8)
  • Die Schlüsselaustauschvorrichtung gemäß der zusätzlichen Anmerkung 7, die ferner umfasst:
    eine Sitzungszustandsspeichereinrichtung zum Speichern eines Sitzungszustands zur Identifizierung einer Sitzung; und
    eine Sitzungsinformationsausgabeeinrichtung zum Ausgeben eines erzeugten Sitzungsschlüssels und von Sitzungsinformationen, die den Sitzungszustand umfassen.
  • (Zusätzliche Anmerkung 9)
  • Ein Steuerverfahren für eine Schlüsselaustauschvorrichtung, das umfasst:
    Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an einen anderen Schlüsselaustauschpartner zu übertragen, und Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von dem anderen Schlüsselaustauschpartner empfangen wird; und
    Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen der Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und einer empfangenen Signatur.
  • (Zusätzliche Anmerkung 10)
  • Ein Aufzeichnungsmedium zum Speichern eines Steuerprogramms einer Schlüsselaustauschvorrichtung, wobei das Steuerprogramm einen Computer dazu bringt, auszuführen:
    Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an einen anderen Schlüsselaustauschpartner zu übertragen, und Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von dem anderen Schlüsselaustauschpartner empfangen wird; und
    Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  • (Zusätzliche Anmerkung 11)
  • Ein Steuerverfahren für eine Schlüsselaustauschvorrichtung, wobei das Verfahren umfasst:
    Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von einem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten zweiten Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an den anderen Schlüsselaustauschpartner; und
    Erzeugen der Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  • (Zusätzliche Anmerkung 12)
  • Ein Aufzeichnungsmedium, das ein Steuerprogramm für eine Schlüsselaustauschvorrichtung speichert, wobei das Steuerprogramm einen Computer dazu bringt, auszuführen:
    Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von einem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten zweiten Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an den anderen Schlüsselaustauschpartner; und
    Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  • (Zusätzliche Anmerkung 13)
  • Ein Schlüsselaustauschsystem, das umfasst:
    eine erste Schlüsselaustauschvorrichtung, die den Schlüsselaustausch anfordert; und eine zweite Schlüsselaustauschvorrichtung, die auf die Anforderung des Schlüsselaustauschs antwortet,
    wobei die erste Schlüsselaustauschvorrichtung umfasst:
    eine erste Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    eine erste Arithmetikeinrichtung zum Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    eine erste Schlüsselverkapselungsverarbeitungseinrichtung zum Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an die zweite Schlüsselaustauschvorrichtung zu übertragen, und Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von der zweiten Schlüsselaustauschvorrichtung empfangen wird; und
    eine erste Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an die zweite Schlüsselaustauschvorrichtung und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel der zweiten Schlüsselaustauschvorrichtung ist, einer empfangenen Nachricht und der empfangenen Signatur; und
    wobei die zweite Schlüsselaustauschvorrichtung umfasst:
    eine zweite Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem vierten Zufallsband und eines geheimen Schlüssels basierend auf einem fünften Zufallsband;
    eine Arithmetikeinrichtung zum Erzeugen eines verschlüsselten fünften Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem fünften Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten sechsten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem sechsten Zufallsband und dem geheimen Schlüssel als Variablen;
    eine zweite Schlüsselverkapselungsverarbeitungseinrichtung zum Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von einem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten fünften Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an die erste Schlüsselaustauschvorrichtung; und
    eine zweite Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten sechsten Zufallsband, Übertragen der Signatur an die erste Schlüsselaustauschvorrichtung und Prüfen einer Signatur, die von der ersten Schlüsselaustauschvorrichtung empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel der ersten Schlüsselaustauschvorrichtung ist, einer empfangenen Nachricht und der empfangenen Signatur.
  • (Zusätzliche Anmerkung 14)
  • Ein Schlüsselaustauschverfahren eines Schlüsselaustauschsystems, das eine erste Schlüsselaustauschvorrichtung, die den Schlüsselaustausch anfordert, und eine zweite Schlüsselaustauschvorrichtung, die auf die Anforderung des Schlüsselaustauschs antwortet, umfasst, wobei das Verfahren umfasst:
    durch die erste Schlüsselaustauschvorrichtung Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband;
    durch die erste Schlüsselaustauschvorrichtung Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen;
    durch die erste Schlüsselaustauschvorrichtung Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband und Übertragen des schlüsselverkapselten öffentlichen Schlüssels an die zweite Schlüsselaustauschvorrichtung;
    wenn ein schlüsselverkapselter öffentlicher Schlüssel von der zweiten Schlüsselaustauschvorrichtung empfangen wird, durch die zweite Schlüsselaustauschvorrichtung Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem vierten Zufallsband und eines geheimen Schlüssels basierend auf einem fünften Zufallsband;
    durch die zweite Schlüsselaustauschvorrichtung Erzeugen eines verschlüsselten fünften Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem fünften Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten sechsten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem sechsten Zufallsband und dem geheimen Schlüssel als Variablen;
    durch die zweite Schlüsselaustauschvorrichtung Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von der ersten Schlüsselaustauschvorrichtung empfangen wird, und des verschlüsselten fünften Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an die erste Schlüsselaustauschvorrichtung;
    durch die zweite Schlüsselaustauschvorrichtung Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten sechsten Zufallsband, Übertragen der Signatur an die erste Schlüsselaustauschvorrichtung;
    durch die erste Schlüsselaustauschvorrichtung Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von der zweiten Schlüsselaustauschvorrichtung empfangen wird;
    durch die erste Schlüsselaustauschvorrichtung Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an die zweite Schlüsselaustauschvorrichtung und Prüfen einer Signatur, die von der zweiten Schlüsselaustauschvorrichtung empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel der zweiten Schlüsselaustauschvorrichtung ist, einer empfangenen Nachricht und der empfangenen Signatur; und
    durch die zweite Schlüsselaustauschvorrichtung Prüfen einer Signatur, die von der ersten Schlüsselaustauschvorrichtung empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel der ersten Schlüsselaustauschvorrichtung ist, einer empfangen Nachricht und der empfangenen Signatur.
  • Diese Anmeldung beansprucht Priorität basierend auf der japanischen Patentanmeldung Nr. 2014-108626 , eingereicht am 26. Mai 2014, deren gesamte Offenbarung hier per Referenz eingebunden ist.

Claims (10)

  1. Schlüsselaustauschvorrichtung, die aufweist: eine Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband; eine Arithmetikeinrichtung zum Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen; eine Schlüsselverkapselungsverarbeitungseinrichtung zum Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an einen anderen Schlüsselaustauschpartner zu übertragen, und Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von dem anderen Schlüsselaustauschpartner empfangen wird; und eine Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  2. Schlüsselaustauschvorrichtung, die aufweist: eine Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband; eine Arithmetikeinrichtung zum Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen; eine Schlüsselverkapselungsverarbeitungseinrichtung zum Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von einem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten zweiten Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an den anderen Schlüsselaustauschpartner; und eine Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  3. Schlüsselaustauschvorrichtung, die aufweist: eine Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband; eine Arithmetikeinrichtung zum Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen; eine Schlüsselverkapselungsverarbeitungseinrichtung zum Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an einen anderen Schlüsselaustauschpartner zu übertragen, Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von dem anderen Schlüsselaustauschpartner empfangen wird, Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von dem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten zweiten Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an den anderen Schlüsselaustauschpartner; und eine Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  4. Schlüsselaustauschvorrichtung nach einem der Ansprüche 1 bis 3, die ferner aufweist: eine Sitzungszustandsspeichereinrichtung zum Speichern eines Sitzungszustands zur Identifizierung einer Sitzung; und eine Sitzungsinformationsausgabeeinrichtung zum Ausgeben eines erzeugten Sitzungsschlüssels und von Sitzungsinformationen, die den Sitzungszustand umfassen.
  5. Steuerverfahren für eine Schlüsselaustauschvorrichtung, das aufweist: Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband; Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen; Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an einen anderen Schlüsselaustauschpartner zu übertragen, und Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von dem anderen Schlüsselaustauschpartner empfangen wird; und Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen der Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und einer empfangenen Signatur.
  6. Aufzeichnungsmedium zum Speichern eines Steuerprogramms einer Schlüsselaustauschvorrichtung, wobei das Steuerprogramm einen Computer dazu bringt, auszuführen: Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband; Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen; Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an einen anderen Schlüsselaustauschpartner zu übertragen, und Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von dem anderen Schlüsselaustauschpartner empfangen wird; und Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  7. Steuerverfahren für eine Schlüsselaustauschvorrichtung, wobei das Verfahren aufweist: Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband; Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen; Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von einem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten zweiten Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an den anderen Schlüsselaustauschpartner; und Erzeugen der Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  8. Aufzeichnungsmedium, das ein Steuerprogramm für eine Schlüsselaustauschvorrichtung speichert, wobei das Steuerprogramm einen Computer dazu bringt, auszuführen: Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband; Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen; Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von einem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten zweiten Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an den anderen Schlüsselaustauschpartner; und Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an den anderen Schlüsselaustauschpartner und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel des anderen Schlüsselaustauschpartners ist, einer empfangenen Nachricht und der empfangenen Signatur.
  9. Schlüsselaustauschsystem, das aufweist: eine erste Schlüsselaustauschvorrichtung, die den Schlüsselaustausch anfordert; und eine zweite Schlüsselaustauschvorrichtung, die auf die Anforderung des Schlüsselaustauschs antwortet, wobei die erste Schlüsselaustauschvorrichtung umfasst: eine erste Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband; eine erste Arithmetikeinrichtung zum Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen; eine erste Schlüsselverkapselungsverarbeitungseinrichtung zum Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband, um den schlüsselverkapselten öffentlichen Schlüssel an die zweite Schlüsselaustauschvorrichtung zu übertragen, und Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von der zweiten Schlüsselaustauschvorrichtung empfangen wird; und eine erste Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an die zweite Schlüsselaustauschvorrichtung und Prüfen einer Signatur, die von dem anderen Schlüsselaustauschpartner empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel der zweiten Schlüsselaustauschvorrichtung ist, einer empfangenen Nachricht und der empfangenen Signatur; und wobei die zweite Schlüsselaustauschvorrichtung umfasst: eine zweite Erstkonfigurationseinrichtung zum Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem vierten Zufallsband und eines geheimen Schlüssels basierend auf einem fünften Zufallsband; eine Arithmetikeinrichtung zum Erzeugen eines verschlüsselten fünften Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem fünften Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten sechsten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem sechsten Zufallsband und dem geheimen Schlüssel als Variablen; eine zweite Schlüsselverkapselungsverarbeitungseinrichtung zum Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von einem anderen Schlüsselaustauschpartner empfangen wird, und des verschlüsselten fünften Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an die erste Schlüsselaustauschvorrichtung; und eine zweite Prüfverarbeitungseinrichtung zum Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten sechsten Zufallsband, Übertragen der Signatur an die erste Schlüsselaustauschvorrichtung und Prüfen einer Signatur, die von der ersten Schlüsselaustauschvorrichtung empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel der ersten Schlüsselaustauschvorrichtung ist, einer empfangenen Nachricht und der empfangenen Signatur.
  10. Schlüsselaustauschverfahren eines Schlüsselaustauschsystems, das eine erste Schlüsselaustauschvorrichtung, die den Schlüsselaustausch anfordert, und eine zweite Schlüsselaustauschvorrichtung, die auf die Anforderung des Schlüsselaustauschs antwortet, umfasst, wobei das Verfahren aufweist: durch die erste Schlüsselaustauschvorrichtung Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem ersten Zufallsband und eines geheimen Schlüssels basierend auf einem zweiten Zufallsband; durch die erste Schlüsselaustauschvorrichtung Erzeugen eines verschlüsselten zweiten Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem zweiten Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten dritten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem dritten Zufallsband und dem geheimen Schlüssel als Variablen; durch die erste Schlüsselaustauschvorrichtung Erzeugen eines schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten geheimen Schlüssels basierend auf dem verschlüsselten zweiten Zufallsband und Übertragen des schlüsselverkapselten öffentlichen Schlüssels an die zweite Schlüsselaustauschvorrichtung; wenn ein schlüsselverkapselter öffentlicher Schlüssel von der zweiten Schlüsselaustauschvorrichtung empfangen wird, durch die zweite Schlüsselaustauschvorrichtung Erzeugen eines Prüfschlüssels, der als ein öffentlicher Schlüssel dient, und eines Signaturschlüssels basierend auf einem beliebigen Zufallsband, einer Sitzungskennung basierend auf einem vierten Zufallsband und eines geheimen Schlüssels basierend auf einem fünften Zufallsband; durch die zweite Schlüsselaustauschvorrichtung Erzeugen eines verschlüsselten fünften Zufallsbands durch eine Arithmetikoperation einer Pseudozufallsfunktion mit dem fünften Zufallsband und dem geheimen Schlüssel als Variablen und eines verschlüsselten sechsten Zufallsbands durch eine Arithmetikoperation der Pseudozufallsfunktion mit einem sechsten Zufallsband und dem geheimen Schlüssel als Variablen; durch die zweite Schlüsselaustauschvorrichtung Verschlüsseln eines schlüsselverkapselten öffentlichen Schlüssels, der von der ersten Schlüsselaustauschvorrichtung empfangen wird, und des verschlüsselten fünften Zufallsbands, um einen schlüsselverkapselten Verschlüsselungstext und einen Sitzungsschlüssel zu erzeugen, und Übertragen des erzeugten schlüsselverkapselten Verschlüsselungstexts an die erste Schlüsselaustauschvorrichtung; durch die zweite Schlüsselaustauschvorrichtung Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten sechsten Zufallsband, Übertragen der Signatur an die erste Schlüsselaustauschvorrichtung; durch die erste Schlüsselaustauschvorrichtung Entschlüsseln eines Sitzungsschlüssels unter Verwendung des schlüsselverkapselten öffentlichen Schlüssels und eines schlüsselverkapselten Verschlüsselungstexts, der von der zweiten Schlüsselaustauschvorrichtung empfangen wird; durch die erste Schlüsselaustauschvorrichtung Erzeugen einer Signatur basierend auf dem Signaturschlüssel, einer Übertragungsnachricht und dem verschlüsselten dritten Zufallsband, Übertragen der Signatur an die zweite Schlüsselaustauschvorrichtung und Prüfen einer Signatur, die von der zweiten Schlüsselaustauschvorrichtung empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel der zweiten Schlüsselaustauschvorrichtung ist, einer empfangenen Nachricht und der empfangenen Signatur; und durch die zweite Schlüsselaustauschvorrichtung Prüfen einer Signatur, die von der ersten Schlüsselaustauschvorrichtung empfangen wird, basierend auf einem Prüfschlüssel, der ein öffentlicher Schlüssel der ersten Schlüsselaustauschvorrichtung ist, einer empfangen Nachricht und der empfangenen Signatur.
DE112015002508.1T 2014-05-26 2015-05-20 Schlüsselaustauschsystem, Schlüsselaustauschverfahren, Schlüsselaustauschvorrichtung, Steuerverfahren dafür und Aufzeichnungsmedium zum Speichern von Steuerprogramm Active DE112015002508B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2014-108626 2014-05-26
JP2014108626 2014-05-26
PCT/JP2015/002540 WO2015182076A1 (ja) 2014-05-26 2015-05-20 鍵交換システム、鍵交換方法、鍵交換装置およびその制御方法と制御プログラムを格納する記録媒体

Publications (2)

Publication Number Publication Date
DE112015002508T5 true DE112015002508T5 (de) 2017-04-27
DE112015002508B4 DE112015002508B4 (de) 2022-12-01

Family

ID=54698431

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112015002508.1T Active DE112015002508B4 (de) 2014-05-26 2015-05-20 Schlüsselaustauschsystem, Schlüsselaustauschverfahren, Schlüsselaustauschvorrichtung, Steuerverfahren dafür und Aufzeichnungsmedium zum Speichern von Steuerprogramm

Country Status (4)

Country Link
US (1) US9917692B2 (de)
JP (1) JP6477695B2 (de)
DE (1) DE112015002508B4 (de)
WO (1) WO2015182076A1 (de)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10205710B2 (en) * 2015-01-08 2019-02-12 Intertrust Technologies Corporation Cryptographic systems and methods
JP6368047B2 (ja) * 2015-06-09 2018-08-01 日本電信電話株式会社 鍵交換方法、鍵交換システム、鍵配送装置、代表通信装置、一般通信装置、およびプログラム
WO2017005961A1 (en) * 2015-07-09 2017-01-12 Nokia Technologies Oy Token based authentication
JP6497747B2 (ja) * 2016-04-19 2019-04-10 日本電信電話株式会社 鍵交換方法、鍵交換システム
EP3490189B1 (de) * 2016-07-19 2022-04-06 Nippon Telegraph and Telephone Corporation Kommunikationsendgeräte, servervorrichtungen und programme
CN107872319A (zh) * 2016-09-22 2018-04-03 国民技术股份有限公司 信息传输方法、装置及信息接收方法、装置
CN107204846B (zh) * 2017-05-31 2020-11-27 北京中金国信科技有限公司 数字签名生成方法、系统及节点模块
CN108282330A (zh) * 2017-12-29 2018-07-13 平安科技(深圳)有限公司 密钥保存和获取装置、方法及计算机可读存储介质
JP2019195116A (ja) * 2018-05-01 2019-11-07 ルネサスエレクトロニクス株式会社 データ転送システム及び転送方法
US11153080B1 (en) * 2020-07-29 2021-10-19 John A. Nix Network securing device data using two post-quantum cryptography key encapsulation mechanisms
CN112422275A (zh) * 2020-10-26 2021-02-26 深圳Tcl新技术有限公司 Uart通信中的秘钥协商方法、系统、设备及计算机存储介质
CN113037484B (zh) * 2021-05-19 2021-08-24 银联商务股份有限公司 数据传输方法、装置、终端、服务器及存储介质
US11438315B1 (en) * 2021-06-15 2022-09-06 Lawrence Liu Methods, systems, apparatuses, and devices for providing durable forward confidentiality during communications between devices

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11308213A (ja) 1998-04-20 1999-11-05 Hitachi Ltd 暗号データ回復方法および装置
US6898288B2 (en) * 2001-10-22 2005-05-24 Telesecura Corporation Method and system for secure key exchange
US7590236B1 (en) 2004-06-04 2009-09-15 Voltage Security, Inc. Identity-based-encryption system
US9002018B2 (en) * 2006-05-09 2015-04-07 Sync Up Technologies Corporation Encryption key exchange system and method
JP5241818B2 (ja) * 2008-02-29 2013-07-17 三菱電機株式会社 端末
JP2014108626A (ja) 2012-12-03 2014-06-12 Akiji Chigira 消しクズ回収用粘着シートつき消しゴム

Also Published As

Publication number Publication date
JP6477695B2 (ja) 2019-03-06
DE112015002508B4 (de) 2022-12-01
WO2015182076A1 (ja) 2015-12-03
JPWO2015182076A1 (ja) 2017-04-20
US20170187524A1 (en) 2017-06-29
US9917692B2 (en) 2018-03-13

Similar Documents

Publication Publication Date Title
DE112015002508B4 (de) Schlüsselaustauschsystem, Schlüsselaustauschverfahren, Schlüsselaustauschvorrichtung, Steuerverfahren dafür und Aufzeichnungsmedium zum Speichern von Steuerprogramm
DE102011120968B4 (de) Erzeugen von sicheren Schlüsseln auf Anforderung
DE102018216915A1 (de) System und Verfahren für sichere Kommunikationen zwischen Steuereinrichtungen in einem Fahrzeugnetzwerk
DE102011004978B4 (de) Verfahren, Steuerungseinrichtung und System zum Nachweis von Verletzungen der Authentzität von Anlagenkomponenten
DE102013109513B4 (de) Verfahren und Vorrichtung zur Zertifikatverifizierung mit Privatsphärenschutz
CH713421A2 (de) Vorrichtung und Verfahren zum Generieren, Widerrufen und Verifizieren eines Zertifikats unter Verwendung einer Blockchain als Zertifizierungsstelle.
DE102015117688A1 (de) System und Verfahren für den Nachrichtenaustausch zwischen Fahrzeugen über eine Public Key Infrastructure
DE112005001654T5 (de) Verfahren zum Übermitteln von Direct-Proof-Privatschlüsseln an Geräte mittels einer Verteilungs-CD
DE112013002752T5 (de) System und Verfahren zur Verifikation von Nachrichten bei Broadcast und Multicast Netzwerken
DE112011100182T5 (de) Transaktionsprüfung für Datensicherheitsvorrichtungen
DE102019113026A1 (de) Automobile nonce-missbrauchs-widerstandsfähige authentifizierte verschlüsselung
DE102012206341A1 (de) Gemeinsame Verschlüsselung von Daten
DE102017208503A1 (de) Verfahren, Computerlesbares Medium, System und Fahrzeug umfassend das System zum Bereitstellen eines Datensatzes eines Fahrzeugs an einen Dritten
DE102013203257A1 (de) Lesen eines Attributs aus einem ID-Token
EP3157192B1 (de) Verfahren und system für eine asymmetrische schlüsselherleitung
DE112013007610T5 (de) Kommunikationssystem und Master-Vorrichtung
WO2019063256A1 (de) System, insbesondere authentizitätssystem
DE112018003506T5 (de) Verfahren und Systeme zur linearen Schlüsselvereinbarung mit Forward Secrecy unter Verwendung eines unsicheren gemeinsam genutzten Kommunikationsmediums
EP2446390A1 (de) System und verfahren zur zuverlässigen authentisierung eines gerätes
DE102018202176A1 (de) Master-Slave-System zur Kommunikation über eine Bluetooth-Low-Energy-Verbindung
DE102020205993B3 (de) Konzept zum Austausch von kryptographischen Schlüsselinformationen
WO2015180867A1 (de) Erzeugen eines kryptographischen schlüssels
DE102017006200A1 (de) Verfahren, Hardware und System zur dynamischen Datenübertragung an ein Blockchain Rechner Netzwerk zur Abspeicherung Persönlicher Daten um diese Teils wieder Blockweise als Grundlage zur End zu Endverschlüsselung verwendet werden um den Prozess der Datensammlung über das Datenübertragungsmodul weitere Daten in Echtzeit von Sensoreinheiten dynamisch aktualisiert werden. Die Blockmodule auf dem Blockchaindatenbanksystem sind unbegrenzt erweiterbar.
DE102020118716A1 (de) Verfahren zur sicheren Durchführung einer Fernsignatur sowie Sicherheitssystem
DE102015208899A1 (de) Vorrichtung und Verfahren zur flexiblen Erzeugung von kryptographischen privaten Schlüsseln und Gerät mit flexibel erzeugten kryptographischen privaten Schlüsseln

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final