DE102016012189B4 - Diffie Hellman key derivation, subscription loading, authentication - Google Patents

Diffie Hellman key derivation, subscription loading, authentication Download PDF

Info

Publication number
DE102016012189B4
DE102016012189B4 DE102016012189.0A DE102016012189A DE102016012189B4 DE 102016012189 B4 DE102016012189 B4 DE 102016012189B4 DE 102016012189 A DE102016012189 A DE 102016012189A DE 102016012189 B4 DE102016012189 B4 DE 102016012189B4
Authority
DE
Germany
Prior art keywords
secure element
key
server
keys
pub
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.)
Expired - Fee Related
Application number
DE102016012189.0A
Other languages
German (de)
Other versions
DE102016012189A1 (en
Inventor
Karl Eglof Hartel
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.)
Giesecke and Devrient Mobile Security GmbH
Original Assignee
Giesecke and Devrient Mobile Security GmbH
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 Giesecke and Devrient Mobile Security GmbH filed Critical Giesecke and Devrient Mobile Security GmbH
Priority to DE102016012189.0A priority Critical patent/DE102016012189B4/en
Publication of DE102016012189A1 publication Critical patent/DE102016012189A1/en
Application granted granted Critical
Publication of DE102016012189B4 publication Critical patent/DE102016012189B4/en
Expired - Fee Related 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/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
    • 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/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
    • 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/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/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • 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/3271Cryptographic 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 using challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Verfahren zur Ableitung von Sitzungsschlüsseln, beruhend auf der Schlüsselableitung nach Diffie Hellman, für eine gesicherte Kommunikation zwischen zwei Kommunikationspartnern, nämlich einem in einem mobilfunkfähigen Endgerät implementierten oder implementierbaren Secure Element (B) und einem Server (A), umfassend die Schritte, jeweils beim Secure Element (B) und beim Server (A):(i) Erzeugen oder Beschaffen einer Zufallszahl (b, a) und Bereitstellen der Zufallszahl (b, a) oder eines mittels einer One-Way-Funktion daraus abgeleiteten Werts als eigener privater Schlüssel (B-Pr, A-Pr);(ii) Ableiten des eigenen öffentlichen Schlüssels (B-Pub, A-Pub) ausgehend vom eigenen privaten Schlüssel (B-Pr, A-Pr);(iii) Übertragen des abgeleiteten eigenen öffentlichen Schlüssels (B-Pub, A-Pub) oder eines mittels einer One-Way-Funktion daraus abgeleiteten Werts an den jeweils anderen Kommunikationspartner (A, B);(iv) Ableiten zumindest eines gemeinsamen Sitzungsschlüssels (K) der Kommunikationspartner ausgehend vom eigenen privaten Schlüssel (B-Pr, A-Pr) und vom übertragenen öffentlichen Schlüssel (A-Pub, B-Pub) des jeweils anderen Kommunikationspartners (A, B),dadurch gekennzeichnet, dassin Schritt (i) im Secure Element (B), durch einen im Secure Element implementierten Pseudo-Zufallszahlengenerator, eine Mehrzahl von mindestens zwei Zufallszahlen (b1, b2, ...) erzeugt wird und eine entsprechende Mehrzahl von mindestens zwei eigenen privaten Schlüsseln (B-Prl, B-Pr2, ...) bereitgestellt wird;in Schritt (ii) im Secure Element (B) eine entsprechende Mehrzahl von mindestens zwei eigenen öffentlichen Schlüsseln (B-Publ, B-Pub2, ...) abgeleitet wird und an den Server (A) übertragen wird;jedem Schlüsselpaar aus privatem Schlüssel (B-Prl, B-Pr2, ...) und öffentlichem Schlüssel (B-Publ, B-Pub2, ...) des Secure Element ein Schlüsselindex (11, 12, ...) zugeordnet wird und in Schritt (iii) die Schlüssel der Mehrzahl von öffentlichen Schlüsseln (B-Publ, B-Pub2, ...) jeweils zusammen mit dem ihm zugeordneten Schlüsselindex (11, 12, ...) an den Server (A) übertragen werden; undin Schritt (iv) eine entsprechende Mehrzahl von mindestens zwei gemeinsamen Sitzungsschlüsseln (K-1, K-2, ...) abgeleitet wird.Method for deriving session keys, based on the key derivation according to Diffie Hellman, for secure communication between two communication partners, namely a Secure Element (B) and a server (A) implemented or implementable in a mobile radio-capable terminal device, comprising the steps, each for Secure Element (B) and at the server (A) :( i) Generate or obtain a random number (b, a) and provide the random number (b, a) or a value derived from it using a one-way function as a private key ( B-Pr, A-Pr); (ii) Deriving your own public key (B-Pub, A-Pub) based on your own private key (B-Pr, A-Pr); (iii) Transferring the derived own public key (B-Pub, A-Pub) or a value derived therefrom by means of a one-way function to the respective other communication partner (A, B); (iv) deriving at least one common session key (K) for the communication ationpartner based on their own private key (B-Pr, A-Pr) and the transmitted public key (A-Pub, B-Pub) of the other communication partner (A, B), characterized in that in step (i) in the secure element (B), a plurality of at least two random numbers (b1, b2, ...) is generated by a pseudo-random number generator implemented in the secure element and a corresponding plurality of at least two own private keys (B-Prl, B-Pr2, ...) is provided; in step (ii) in the secure element (B) a corresponding plurality of at least two own public keys (B-Publ, B-Pub2, ...) is derived and transmitted to the server (A) each key pair of private key (B-Prl, B-Pr2, ...) and public key (B-Publ, B-Pub2, ...) of the Secure Element becomes a key index (11, 12, ...) is assigned and in step (iii) the keys of the plurality of public keys (B-Publ, B-Pub2, .. .) are transmitted to the server (A) together with the key index (11, 12, ...) assigned to them; and in step (iv) a corresponding plurality of at least two common session keys (K-1, K-2, ...) is derived.

Description

Gebiet der ErfindungField of the Invention

Die Erfindung betrifft Verfahren zur Ableitung von Sitzungsschlüsseln, beruhend auf der Schlüsselableitung nach Diffie Hellman, in einem Secure Element. Weiter betrifft die Erfindung ein Verfahren zum Laden eines Subskriptions-Profils in ein Secure Element und ein Verfahren zur Authentisierung, unter Einsatz des Verfahrens zur Ableitung von Sitzungsschlüsseln.The invention relates to methods for deriving session keys, based on the key derivation according to Diffie Hellman, in a secure element. The invention further relates to a method for loading a subscription profile into a secure element and a method for authentication using the method for deriving session keys.

Stand der TechnikState of the art

Bei Verfahren zur Ableitung von Sitzungsschlüsseln, das in 1 gezeigt ist, beruhend auf der Schlüsselableitung nach Diffie Hellman DHE, vereinbaren zwei Kommunikationspartner A, B eine Primzahl p und eine große Zahl g. Beim elliptische Kurven Diffie Hellman ECDHE werden zudem Parameter einer elliptischen Kurve vereinbart. Weiter erzeugen oder beschaffen beide Kommunikationspartner je eine eigene Zufallszahl. Diese Zufallszahl oder ein mittels einer One-Way-Funktion (Einweg-Funktion) abgeleiteter Wert bildet den eigenen privaten Schlüssel eines asymmetrischen Schlüsselpaars. Ausgehend vom eigenen privaten Schlüssel wird unter Verwendung der Primzahl und der großen Zahl der eigene öffentliche Schlüssel abgeleitet. Der abgeleitete eigene öffentliche Schlüssel oder ein mittels einer One-Way-Funktion (Einweg-Funktion) daraus abgeleiteter Wert wird an den jeweils anderen Kommunikationspartner übertragen. Beide Kommunikationspartner leiten ausgehend vom eigenen privaten Schlüssel und vom übertragenen öffentlichen Schlüssel des jeweils anderen Kommunikationspartners einen gemeinsamen Sitzungsschlüssel ab. Beide gelangen hierbei zum gleichen Sitzungsschlüssel.In procedures for deriving session keys, the in 1 is shown, based on the key derivation according to Diffie Hellman DHE , agree on two communication partners A . B a prime number p and a large number G , In the case of the elliptical curve Diffie Hellman ECDHE, parameters of an elliptical curve are also agreed. Both communication partners each generate or procure their own random number. This random number or a value derived by means of a one-way function (one-way function) forms the own private key of an asymmetrical key pair. Starting from your own private key, your own public key is derived using the prime number and the large number. The derived public key or a value derived from it using a one-way function is transferred to the other communication partner. Both communication partners derive a common session key based on their own private key and the transmitted public key of the other communication partner. Both come to the same session key.

Zur Nutzung eines mobilfunkfähigen Endgeräts, wie Smartphones oder Mobiltelefons, in einem Mobilfunknetzwerk eines Netzbetreibers enthält das Endgerät ein Secure Element mit einem Subskriptions Profil oder kurz Profil. To use a mobile radio-compatible device, such as smartphones or cell phones, in a mobile network of a network operator, the device contains a secure element with a subscription profile or profile for short.

Das Profil bewerkstelligt die Konfiguration des Endgeräts und der Verbindung des Endgeräts im Mobilfunknetz. Das Profil ist durch einen Datensatz gebildet, der den Aufbau, Betrieb und Abbau einer Verbindung des Endgeräts im Mobilfunknetzwerk ermöglicht, und umfasst beispielsweise einen kryptographischen Authentisierungs-Schlüssel Ki und eine International Mobile Subscriber Identity IMSI.The profile manages the configuration of the end device and the connection of the end device in the mobile radio network. The profile is formed by a data record that enables the establishment, operation and termination of a connection of the terminal in the mobile radio network and includes, for example, a cryptographic authentication key Ki and an International Mobile Subscriber Identity IMSI.

Das Endgerät selbst hat einen oder mehrere Endgerät-Chips zum Betrieb von Funktionen des Endgeräts. Aktuelle Smartphones haben beispielsweise typischerweise zumindest drei Endgeräte-Chips, nämlich einen Transceiver-IC, der die physische Funkkommunikation durchführt, einen Baseband-Prozessor (oder gleichbedeutend Modem), der Funktionen zur Datenübertragung über Funkkommunikation auf Protokollebene durchführt, und einen Application-Prozessor AP, auf welchem das Betriebssystem und Anwendungssoftware ausgeführt werden. Als weitere Endgeräte-Chips können Transceiver-ICs für andere Funkkanäle vorgesehen sein, insbesondere für kurzreichweitige Funkkanäle wie NFC (NFC: near field communication) oder Bluetooth.The terminal itself has one or more terminal chips for operating functions of the terminal. Current smartphones typically have, for example, at least three terminal chips, namely a transceiver IC, which carries out the physical radio communication, a baseband processor (or synonymous modem), which carries out functions for data transmission via radio communication at the protocol level, and an application processor AP on which the operating system and application software are executed. Transceiver ICs for other radio channels can be provided as further terminal chips, in particular for short-range radio channels such as NFC (NFC: near field communication) or Bluetooth.

Das Secure Element kann in unterschiedlichen Formfaktoren gestaltet sein, insbesondere Plug-In, Embedded, Integrated und Software. Secure Elemente vom Formfaktor Plug-In und Embedded sind auf einem dezidierten, eigenen Chip oder SoC (Silicon-on-Chip) angeordnet. Beispiele für Plug-Ins sind SIM-Karte (SIM = Subscriber Identity Module) oder USIM-Karte (Universal SIM) oder UICC (Universal Integrated Circuit Card) und kontaktieren das Endgerät über einen Kartenleser. Alternativ kann der dezidierte Chip in ein Gehäuse integriert sein, das in das Endgerät festeinlötbar bzw. festeingelötet ist. Ein einlötbares/eingelötetes Secure Element wird mit dem Zusatz „embedded“ versehen und als eUICC oder eSIM oder eUSIM bezeichnet, wobei e für embedded steht und die weitere Bezeichnung vom entsprechend ausgestatteten Plug-In übernommen ist. Weitere mögliche Formfaktoren eines Secure Elements sind integrierte Secure Elemente, die auf einem Endgeräte-Chip oder SoC (System-on-Chip) des Endgeräts mit integriert sind, also keinen eigenen Chip besitzen. Integrierte Secure Elements werden mit dem Zusatz „integrated“ versehen und z.B. als integrated UICC, iUICC, iSIM oder iUSIM bezeichnet. Weitere mögliche Formfaktoren eines Secure Elements sind reine Software-Module mit der Funktionalität eines Secure Elements, die in einen Endgeräte-Chip integriert sind.The secure element can be designed in different form factors, in particular plug-in, embedded, integrated and software. Secure elements of the form factor plug-in and embedded are arranged on a dedicated, dedicated chip or SoC (Silicon-on-Chip). Examples of plug-ins are SIM card (SIM = Subscriber Identity Module) or USIM card (Universal SIM) or UICC (Universal Integrated Circuit Card) and contact the end device via a card reader. Alternatively, the dedicated chip can be integrated in a housing which can be permanently soldered or permanently soldered into the terminal. A solderable / soldered secure element is provided with the addition “embedded” and is referred to as eUICC or eSIM or eUSIM, where e stands for embedded and the further designation is adopted from the correspondingly equipped plug-in. Further possible form factors of a secure element are integrated secure elements which are integrated on a terminal chip or SoC (system-on-chip) of the terminal, ie do not have their own chip. Integrated Secure Elements are provided with the addition "integrated" and e.g. referred to as integrated UICC, iUICC, iSIM or iUSIM. Further possible form factors of a secure element are pure software modules with the functionality of a secure element, which are integrated in a terminal chip.

Subskriptions-Profile werden typischerweise in ein Secure Element geladen, nachdem dieses bereits außerhalb der Kontrolle des Secure Element Herstellers ist und in den Besitz und damit unter die Kontrolle des Endgerät Herstellers oder eines Mobilfunknetzbetreibers übergegangen ist. Mittlerweile werden auch Multi-Subskriptions Secure Elements bereitgestellt, in denen mehrere Subskriptions-Profile enthalten sind.Subscription profiles are typically loaded into a secure element after it is already out of the control of the secure element manufacturer and has passed into the possession and thus under the control of the terminal manufacturer or a mobile network operator. In the meantime, multi-subscription secure elements have also been made available, which contain several subscription profiles.

Soll ein Secure Element später ein Laden eines verschlüsselten Subskriptions-Profils in das Secure Element ermöglichen, ist es empfohlen, dass im Secure Element bereits während der Produktion beim Secure Element Hersteller ein Diffie Hellman Schlüsselpaar abgespeichert wird. Soll es möglich sein mehrere Subskriptions-Profile zu laden, ist es empfehlenswert, mehrere Diffie Hellman Schlüsselpaare im Secure Element zu speichern. Die mehreren Diffie Hellman Schlüsselpaare benötigen vertrauenswürdigen Speicherplatz, der im Secure Element knapp bemessen ist. Sollen mehrere Authentisierungsschlüssel zur Netzwerk-Authentisierung im Secure Element bereitstehen, besteht dasselbe Problem.If a secure element should later enable an encrypted subscription profile to be loaded into the secure element, it is recommended that a Diffie Hellman key pair is saved in the secure element during production at the secure element manufacturer. If it should be possible to load several subscription profiles, it is advisable to save several Diffie Hellman key pairs in the Secure Element. The multiple Diffie Hellman key pairs need Trusted storage space that is scarce in the Secure Element. The same problem exists if several authentication keys are to be available for network authentication in the Secure Element.

Das Dokument US 20160065370 A1 aus dem Stand der Technik offenbart ein Verfahren zur Ableitung von Sitzungsschlüsseln für eine gesicherte Kommunikation zwischen zwei Kommunikationspartnern, nämlich einem in einem Nutzer-Endgerät und einem Server-Computer. Beim dem Verfahren vereinbaren die Kommunikationspartner ein geteiltes Geheimnis, aus dem beide einen Sitzungsschlüssel ableitet. Der Server-Computer verschlüsselt mit dem Sitzungsschlüssel Schlüsselableitungsparameter und überträgt die verschlüsselten Schlüsselableitungsparameter an das Nutzer-Endgerät. Mittels der Schlüsselableitungsparameter und des geteilten Geheimnisses wird ein Kryptogramm-Schlüssel abgeleitet. Diesen brauchen die Kommunikationspartner nicht dauerhaft zu speichern, um ihn nutzen zu können.The document US 20160065370 A1 from the prior art discloses a method for deriving session keys for secure communication between two communication partners, namely one in a user terminal and a server computer. In the process, the communication partners agree on a shared secret, from which both derive a session key. The server computer encrypts key derivation parameters with the session key and transmits the encrypted key derivation parameters to the user terminal. A cryptogram key is derived using the key derivation parameters and the shared secret. The communication partners do not need to save this permanently in order to use it.

Das Dokument US 20160241389 A1 aus dem Stand der Technik offenbart ein Verfahren zur sicheren Kommunikation zwischen einem Server und einem Client. Bei diesem Verfahren sendet der Server mit einer Nachricht an den Client einen Identifier eines privaten Server-Schlüssels, mit dem die Nachricht verschlüsselt wurde. In einer späteren Nachricht des Client zurück an den Server, die ebenfalls den Identifier und die verschlüsselte Nachricht enthält, kann der Server anhand des Identifiers denjenigen privaten Server-Schlüssel ermitteln, mit dem die Nachricht verschlüsselt wurde und die Nachricht entschlüsseln.The document US 20160241389 A1 from the prior art discloses a method for secure communication between a server and a client. In this method, the server sends a message to the client with an identifier of a private server key with which the message was encrypted. In a later message from the client back to the server, which also contains the identifier and the encrypted message, the server can use the identifier to determine the private server key with which the message was encrypted and decrypt the message.

Das Dokument US 20120144193 A1 offenbart ein Protokoll zur Vereinbarung von gemeinsamen Schlüsseln zwischen einem Endgerät mit einem Secure Element und einem Host-Terminal, bei dem das Endgerät durch das Host-Terminal anhand durch das Endgerät verschlüsselter Information und eines anonymen Identifiers des Endgeräts identifiziert wird.The document US 20120144193 A1 discloses a protocol for agreeing common keys between a terminal with a secure element and a host terminal, in which the terminal is identified by the host terminal on the basis of information encrypted by the terminal and an anonymous identifier of the terminal.

Zusammenfassung der ErfindungSummary of the invention

Der Erfindung liegt die Aufgabe zu Grunde, ein Verfahren zur Schlüsselableitung zu schaffen, das mehrere Sitzungsschlüssel erzeugt, und das geeignet ist, mit dem im Secure Element vorhandenen Speicher sparsam umzugehen.The invention is based on the object of providing a method for key derivation which generates a plurality of session keys and which is suitable for using the memory present in the secure element economically.

Die Aufgabe wird gelöst durch ein Verfahren nach Anspruch 1. Vorteilhafte Ausgestaltungen der Erfindung sind in abhängigen Ansprüchen angegeben.The object is achieved by a method according to claim 1. Advantageous refinements of the invention are specified in dependent claims.

Das Verfahren nach Anspruch 1 beruht vom Grundsatz her auf dem eingangs beschriebenen Diffie Hellman Schlüsselaustausch. Im Unterschied zur Basisform von Diffie Hellman wird im Secure Element, durch einen im Secure Element implementierten Pseudo-Zufallszahlengenerator, statt nur einer Zufallszahl, eine Mehrzahl von mindestens zwei Zufallszahlen erzeugt und als eine entsprechende Mehrzahl von mindestens zwei eigenen privaten Schlüsseln bereitgestellt. Weiter wird im Secure Element eine entsprechende Mehrzahl von mindestens zwei eigenen öffentlichen Schlüsseln abgeleitet und an den Server übertragen. Zusätzlich wird jedem Schlüsselpaar aus privatem Schlüssel und öffentlichem Schlüssel des Secure Element ein Schlüsselindex zugeordnet und mit an den Server übertragen.The method according to claim 1 is based in principle on the Diffie Hellman key exchange described above. In contrast to the basic form of Diffie Hellman, a plurality of at least two random numbers is generated in the secure element by means of a pseudo-random number generator implemented in the secure element, instead of just a random number, and is provided as a corresponding plurality of at least two separate private keys. Furthermore, a corresponding plurality of at least two separate public keys are derived in the secure element and transmitted to the server. In addition, a key index is assigned to each key pair consisting of the private key and the public key of the Secure Element and transmitted to the server.

Der Server hat nun in Gestalt der mehreren öffentlichen Schlüssel des Secure Element Information zum Ableiten mehrerer Sitzungsschlüssel zur Verfügung, sowie zu jedem künftigen Sitzungsschlüssel einen Schlüsselindex, der es dem Server ermöglicht, einen gewünschten Sitzungsschlüssel gegenüber dem Secure Element zu referenzieren. Das Secure Element hat weiter einen Pseudo-Zufallszahlengenerator, mit dem es die zu Anfang des Diffie Hellman Verfahrens erzeugte eigene Zufallszahl jederzeit neu erzeugen kann. Hierdurch muss das Secure Element die erzeugten eigenen Schlüsselpaare nicht notwendig speichern. Vielmehr kann das Secure Element, nachdem der Server alle zur Schlüsselableitung erforderliche Information einschließlich des Schlüsselindex bekommen hat, die erzeugten Schlüsselpaare wieder löschen. Es genügt, die Schlüsselindizes im Secure Element zu speichern, da mit ihrer Hilfe der Pseudo-Zufallszahlengenerator des Secure Element die Schlüsselpaare wieder neu erzeugen kann.The server now has information in the form of the multiple public keys of the secure element for deriving several session keys, as well as a key index for each future session key, which enables the server to reference a desired session key with respect to the secure element. The secure element also has a pseudo-random number generator, with which it can generate the own random number generated at the beginning of the Diffie Hellman method at any time. As a result, the secure element does not necessarily have to store the key pairs it has generated. Rather, after the server has received all the information required for key derivation, including the key index, the secure element can delete the generated key pairs again. It is sufficient to store the key indexes in the Secure Element, because with their help the pseudo-random number generator of the Secure Element can generate the key pairs again.

Daher ist gemäß Anspruch 1 ein Verfahren, zur Schlüsselableitung geschaffen, das mehrere Sitzungsschlüssel erzeugt, und das geeignet ist, mit dem im Secure Element vorhandenen Speicher sparsam umzugehen.Therefore, according to claim 1, a method for key derivation is created which generates several session keys and which is suitable for using the memory present in the secure element economically.

Das abschließende Ableiten des Sitzungsschlüssels, wobei entsprechend eine Mehrzahl von mindestens zwei gemeinsamen Sitzungsschlüsseln abgeleitet wird, kann an einem beliebigen Zeitpunkt erfolgen, und muss nicht in engem zeitlichem Zusammenhang zum Ableiten der Schlüsselpaare erfolgen. Wie nachfolgend dargelegt wird, werden in bevorzugten Ausführungsformen in einem ersten Verfahrensabschnitt Public/Private (Öffentlich/Privat) Schlüsselpaare abgeleitet. Die Sitzungsschlüssel werden erst in einem nachgeschalteten, gesonderten zweiten Verfahrensabschnitt abgeleitet, der zeitlich und räumlich vom ersten Verfahrensabschnitt getrennt sein kann, und bei welchem das Secure Element bereits im Besitz einer anderen Instanz sein kann als beim ersten Verfahrensabschnitt.The final derivation of the session key, a plurality of at least two common session keys being derived accordingly, can take place at any point in time and does not have to take place in a close temporal connection to derive the key pairs. As explained below, in preferred embodiments, public / private key pairs are derived in a first method section. The session keys are only derived in a downstream, separate second process section, which can be separated in time and space from the first process section, and in which the secure element may already be in the possession of another entity than in the first stage of the procedure.

Gemäß manchen Ausführungsformen der Erfindung ist das Verfahren also zweigeteilt, indem es zumindest zwei Verfahrensabschnitte umfasst.According to some embodiments of the invention, the method is therefore divided into two, in that it comprises at least two method sections.

Das derart zweigeteilte Verfahren umfasst einen ersten Verfahrensabschnitt umfassend die Schritte (i) bis (iii), und nicht umfassend Schritt (iv). Im ersten Verfahrensabschnitt wird die in Schritt (iii) übertragene Mehrzahl von öffentlichen Schlüsseln zusammen mit den Indizes beim Server gespeichert. Im ersten Verfahrensabschnitt wird der Server mit denjenigen Parametern (öffentlichen Schlüsseln und Indizes) ausgestattet, die er zum Ableiten von Sitzungsschlüsseln für eine sichere Kommunikation mit dem Secure Element benötigt.The method, which is divided in two, comprises a first method section comprising steps (i) to (iii) and not comprising step (iv). In the first step of the method, the plurality of public keys transmitted in step (iii) are stored together with the indices at the server. In the first step of the procedure, the server is equipped with the parameters (public keys and indices) that it needs to derive session keys for secure communication with the Secure Element.

Das zweigeteilte Verfahren umfasst weiter, im zweiten Verfahrensteil, mindestens einen zweiten Verfahrensabschnitt. Genauer umfasst der zweite Verfahrensteil entweder genau einen zweiten Verfahrensabschnitt oder eine der Anzahl von beim Secure Element erzeugten Schlüsselpaaren entsprechende Anzahl von zweiten Verfahrensabschnitten. Der bzw. jeder zweite Verfahrensabschnitt umfasst jeweils mindestens einen Schritt (iv), d.h. ein Ableiten zumindest eines gemeinsamen Sitzungsschlüssels von Server und Secure Element. Der zweite Verfahrensabschnitt wird erst durch eine Aufforderung des Servers an das Secure Element gestartet, bei der bedarfsweise der öffentliche Schlüssel des Servers erneut an das Secure Element übertragen wird.The two-part method further comprises, in the second part of the method, at least one second part of the method. More precisely, the second part of the method comprises either exactly a second part of the method or a number of second parts of the method corresponding to the number of key pairs generated in the secure element. The or each second process section comprises at least one step (iv), i.e. deriving at least one common session key from the server and the secure element. The second step of the method is only started when the server requests the secure element, in which case the public key of the server is retransmitted to the secure element.

Das zweigeteilte Verfahren hat den zusätzlichen Vorteil, dass der Server an einem beliebigen Zeitpunkt vorab, im ersten Verfahrensabschnitt, mit den öffentlichen Schlüsseln zur Ableitung mehrerer Sitzungsschlüssel ausgestattet werden kann. Zum Zeitpunkt, wenn Sitzungsschlüssel abgeleitet werden (d.h. im zweiten Verfahrensabschnitt), entfällt der Übertragungsaufwand für die Übertragung von öffentlichen Schlüsseln und Indizes zum Server, und die Sitzungsschlüsselerzeugung kann beschleunigt durchgeführt werden. Der Server hat große Speicherkapazitäten. Daher ist eine dauerhafte Speicherung von vorab empfangenen öffentlichen Schlüsseln und Indizes von Secure Elements vergleichsweise unkritisch. Das Secure Element hat dagegen geringe Speicherkapazitäten, so dass möglichst wenige Daten, z.B. Schlüssel, dort dauerhaft gespeichert werden sollen.The two-part method has the additional advantage that the server can be equipped with the public keys for deriving several session keys at any time in advance, in the first part of the method. At the time when session keys are derived (i.e. in the second stage of the procedure), the transfer effort for the transfer of public keys and indexes to the server is eliminated and the session key generation can be carried out more quickly. The server has a large storage capacity. Therefore, permanent storage of previously received public keys and indexes from Secure Elements is comparatively uncritical. The secure element, on the other hand, has low storage capacities, so that as little data as possible, e.g. Key to be saved there permanently.

Das zweigeteilte Verfahren umfasst gemäß einer bevorzugten Ausführungsform (Anspruch 3) weiter die folgenden Schritte. Im Verlauf des ersten Verfahrensabschnitts, oder nach Abschluss des ersten Verfahrensabschnitts, werden die Schlüsselindizes im Secure Element gespeichert, und die Mehrzahl von erzeugten Schlüsselpaaren werden aus dem Secure Element gelöscht. Bei der Aufforderung des Servers an das Secure Element, um den zweiten Verfahrensabschnitt zu starten, wird durch den Server mindestens ein oder genau ein Schlüsselindex an das Secure Element übertragen. Auf die Aufforderung bzw. das Übertragen des Schlüsselindex hin wird beim Secure Element, mittels des Pseudo-Zufallszahlengenerators anhand des jeweiligen Schlüsselindex, der private Schlüssel des Secure Element erneut erzeugt, und Schritt (iv), Ableiten mindestens eines oder genau eines gemeinsamen Sitzungsschlüssels wird im Secure Element durchgeführt.According to a preferred embodiment (claim 3), the two-part method further comprises the following steps. In the course of the first section of the method, or after completion of the first section of the method, the key indexes are stored in the secure element and the plurality of key pairs generated are deleted from the secure element. When the server requests the secure element to start the second method section, the server transmits at least one or exactly one key index to the secure element. Upon request or transmission of the key index, the private element of the secure element is generated again in the secure element by means of the pseudo random number generator using the respective key index, and step (iv), deriving at least one or exactly one common session key is carried out in the Secure element performed.

Diese bevorzugte Ausführungsform des zweigeteilten Verfahrens hat den zusätzlichen Vorteil, dass im Secure Element, das verglichen mit dem Server nur vergleichsweise wenig Speicher hat, die Schlüssel des Secure Element nicht dauerhaft gespeichert werden müssen. Zugleich hat der Server einen Vorrat an mehreren öffentlichen Schlüsseln und Indizes des Secure Element, um nach und nach mehrere Sitzungsschlüssel ableiten zu können. Zudem lassen sie die beiden Verfahrensschritte zeitlich und/ oder räumlich getrennt voneinander durchführen. Dies ermöglicht einer Partei (z.B. Secure Element Hersteller) den ersten Verfahrensabschnitt selbst durchzuführen, und den zweiten Verfahrensabschnitt an eine andere Partei (z.B. Partei, die Inhalte, z.B. Subskriptions-Profile in das Secure Element lädt) zu delegieren, wie nachfolgend noch ausgeführt wird.This preferred embodiment of the two-part method has the additional advantage that the keys of the secure element do not have to be stored permanently in the secure element, which has only comparatively little memory compared to the server. At the same time, the server has a pool of several public keys and indexes of the Secure Element in order to be able to gradually derive several session keys. In addition, they have the two process steps carried out separately from one another in terms of time and / or space. This enables one party (e.g. secure element manufacturer) to perform the first stage of the procedure itself and to delegate the second stage of the procedure to another party (e.g. party loading content, e.g. subscription profiles into the secure element), as will be explained below.

Wahlweise werden der erste und der zweite Verfahrensabschnitt während unterschiedlicher Produktionsabschnitte in einem Produktionsprozess zum Produzieren des Secure Element oder des Endgeräts oder/und unter Steuerung unterschiedlicher Besitzer des Secure Element oder des Endgeräts durchgeführt.The first and the second method section are optionally carried out during different production sections in a production process for producing the secure element or the terminal device and / or under the control of different owners of the secure element or the terminal device.

Wahlweise wird der erste Verfahrensabschnitt während der Produktion des Secure Element bei einem Secure Element Hersteller durchgeführt oder/und der zweite Verfahrensabschnitt während der Provisionierung des Secure Element mit ein oder mehreren Subskriptions-Profilen bei einem Hersteller des Endgeräts oder bei eine Mobilfunknetzbetreiber durchgeführt. Der Endgeräthersteller bzw. Mobilfunknetzbetreiber ist dabei Besitzer des Secure Element. Das Eigentum am Secure Element hingegen bleibt beim Hersteller des Secure Element. Indem der Secure Element Hersteller lediglich die für den zweiten Verfahrensschritt erforderlichen Daten an des neuen Besitzer übergibt, überträgt er nur eingeschränkte Nutzungen am Secure Element.Optionally, the first process step is carried out during the production of the Secure Element by a Secure Element manufacturer or / and the second process step is carried out during the provisioning of the Secure Element with one or more subscription profiles by a manufacturer of the terminal device or by a mobile network operator. The device manufacturer or mobile network operator is the owner of the Secure Element. However, ownership of the Secure Element remains with the manufacturer of the Secure Element. By only transferring the data required for the second process step to the new owner, the secure element manufacturer only transfers limited uses of the secure element.

Ein erfindungsgemäßes Verfahren zum Laden eines Subskriptions-Profils von einem Server in ein Secure Element umfasst die folgenden Schritte. Ableiten eines gemeinsamen Sitzungsschlüssels wie obenstehend beschrieben, mit dem zweigeteilten Verfahren in der Ausführungsform, dass die im Secure Element erzeugten privaten Schlüssel wieder aus dem Secure Element gelöscht werden. Beim Server, Verschlüsseln eines zu ladenden Subskriptions-Profils mit dem Sitzungsschlüssel. Laden des verschlüsselten Subskriptions-Profils vom Server in das Secure Element. Im Secure Element, Entschlüsseln des Subskriptions-Profils mit dem Sitzungsschlüssel und Implementieren des entschlüsselten Subskriptions-Profils. Der Server hat hierbei vorab öffentliche Schlüssel und Indizes des Secure Elements bekommen, so dass der Server in der Lage ist, Sitzungsschlüssel für das Secure Element abzuleiten. Das Secure Element hat zunächst seinen privaten Schlüssel nicht mehr. Erst wenn der Server einen Schlüsselindex an das Secure Element sendet, erzeugt das Secure Element mittels des Pseudo-Zufallszahlengenerators seinen eigenen privaten Schlüssel neu, und mittels des neu erzeugten privaten Schlüssels und des öffentlichen Schlüssels des Servers den Sitzungsschlüssel. Der öffentliche Schlüssel des Servers kann wahlweise im ersten Verfahrensabschnitt an das Secure Element übertragen und dort gespeichert werden. Alternativ wird der öffentliche Schlüssel des Servers erst im zweiten Verfahrensabschnitt an das Secure Element übertragen, zusammen mit der Aufforderung des Servers an das Secure Element, so dass er nicht dauerhaft im Secure Element gespeichert werden muss, sondern nur während der Ableitung der Sitzungsschlüssel.A method according to the invention for loading a subscription profile from a server into a secure element comprises the following Steps. Deriving a common session key as described above, using the two-part method in the embodiment that the private keys generated in the secure element are deleted again from the secure element. On the server, encrypting a subscription profile to be loaded with the session key. Load the encrypted subscription profile from the server into the Secure Element. In the secure element, decrypting the subscription profile with the session key and implementing the decrypted subscription profile. The server received public keys and indexes of the secure element in advance, so that the server is able to derive session keys for the secure element. The secure element initially no longer has its private key. Only when the server sends a key index to the Secure Element does the Secure Element generate its own private key again using the pseudo-random number generator, and the session key using the newly generated private key and the public key of the server. The public key of the server can optionally be transmitted to the secure element in the first process section and stored there. Alternatively, the public key of the server is only transferred to the secure element in the second method step, together with the request from the server to the secure element, so that it does not have to be stored permanently in the secure element, but only during the derivation of the session key.

Bei einem Verfahren zum Laden mehrerer Subskriptions-Profile werden mit dem vorstehend beschriebenen Verfahren mehrere Sitzungsschlüssel abgeleitet. Jedes Subskriptions-Profil wird mit einem der mehreren Sitzungsschlüssel verschlüsselt.In a method for loading multiple subscription profiles, several session keys are derived using the method described above. Each subscription profile is encrypted with one of the several session keys.

Ein Verfahren zur Authentisierung zwischen einem Server eines Mobilfunknetzwerks und einem Secure Element umfasst die folgenden Schritte: - Ableiten eines gemeinsamen Sitzungsschlüssels mittels des zweigeteilten Verfahrens mit Löschen der im ersten Verfahrensabschnitt erzeugten Schlüssel aus dem Secure Element; - beim Server, Verschlüsseln einer Authentisierungsnachricht mit dem Sitzungsschlüssel; - Übertragen der verschlüsselten Authentisierungsnachricht vom Server an das Secure Element; - im Secure Element, Entschlüsseln der verschlüsselten Authentisierungsnachricht mit dem Sitzungsschlüssel und im Fall erfolgreichen Entschlüsselns erfolgreiche Authentisierung des Servers.A method for authentication between a server of a mobile radio network and a secure element comprises the following steps: deriving a common session key by means of the two-part method with deleting the keys generated in the first method section from the secure element; - at the server, encrypting an authentication message with the session key; - Transmission of the encrypted authentication message from the server to the Secure Element; - In the secure element, decrypting the encrypted authentication message with the session key and, in the case of successful decryption, successful authentication of the server.

Das Verfahren zur Authentisierung umfasst wahlweise weiter ein Übertragen einer Challenge vom Secure Element an den Server. Die Challenge geht in die verschlüsselte Authentisierungsnachricht ein. Die verschlüsselte Authentisierungsnachricht stellt eine Response auf die Challenge dar.The authentication method optionally also includes transferring a challenge from the secure element to the server. The challenge is included in the encrypted authentication message. The encrypted authentication message represents a response to the challenge.

Zwischen dem Secure Element und dem Server werden gemäß Ausführungsformen der Erfindung weiter Parameter zur Ableitung des Schlüsselpaars vereinbart, insbesondere eine Primzahl p und eine große Zahl g und bedarfsweise elliptische Kurven Parameter, insbesondere die für ein Diffie-Hellman-Verfahren vorgesehenen Parameter.According to embodiments of the invention, further parameters for deriving the key pair are agreed between the secure element and the server, in particular a prime number p and a large number g and, if necessary, elliptic curve parameters, in particular the parameters provided for a Diffie-Hellman method.

Bei einem zweigeteilten Verfahren wird wahlweise der öffentliche Schlüssel des Servers erst im zweiten Verfahrensabschnitt an das Secure Element übertragen, zusammen mit der Aufforderung des Servers, so dass der öffentliche Schlüssel des Servers nur zur Ableitung von Sitzungsschlüsseln im Secure Element gespeichert zu werden braucht, vorzugsweise aber nicht dauerhaft.In the case of a two-part method, the public key of the server is optionally only transferred to the secure element in the second method section, together with the request from the server, so that the public key of the server only needs to be stored in the secure element for deriving session keys, but preferably not permanent.

Figurenlistelist of figures

Im Folgenden wird die Erfindung an Hand von Ausführungsbeispielen und unter Bezugnahme auf die Zeichnungen näher erläutert, in der zeigen:

  • 1 eine vereinfachte schematische Darstellung der Schlüsselableitung nach Diffie Hellman;
  • 2 eine vereinfachte schematische Darstellung einer Schlüsselableitung, nach einer Ausführungsform der Erfindung.
The invention is explained in more detail below on the basis of exemplary embodiments and with reference to the drawings, in which:
  • 1 a simplified schematic representation of the key derivation according to Diffie Hellman;
  • 2 a simplified schematic representation of a key derivation, according to an embodiment of the invention.

Detaillierte Beschreibung von AusführungsbeispielenDetailed description of exemplary embodiments

2 zeigt eine vereinfachte schematische Darstellung einer Schlüsselableitung, nach einer Ausführungsform der Erfindung. Der Grundablauf ist wie beim Diffie Hellman Verfahren aus 1. Das Erzeugen der privaten und öffentlichen Schlüssel A-Pr, A-Pub, B-Pr, B-Pub bildet einen ersten Verfahrensabschnitt. Das Ableiten der Sitzungsschlüssel K bildet einen zweiten Verfahrensabschnitt. Zusätzlich werden durch einen im Secure Element B implementierten Pseudo-Zufallszahlengenerator mehrere Zufallszahlen b1, b2, b3, b4, b5, ... als private Schlüssel des Secure Element B abgeleitet, sowie zu jedem abgeleiteten privaten Schlüssel ein Schlüsselindex 11, 12, 13, 14, 15, .... Das Secure Element leitet weiter eine entsprechende Anzahl 1,2,3,4,5,... öffentlicher Schlüssel B-Pub ab und sendet sie zusammen mit den Indizes 11, 12, 13, 14, 15, ... an den Server A. Im Secure Element B selbst werden nur die Indizes 11, 12, 13, 14, 15, ... gespeichert. Die erzeugten privaten und öffentlichen Schlüssel selbst werden wieder gelöscht. Nimmt später derselbe oder ein anderer Server A (der die Indizes und öffentlichen Schlüssel vom ersten Server bekommen hat) Kontakt mit dem Secure Element auf, erzeugt sich das Secure Element anhand der Indizes die privaten Schlüssel erneut und kann somit mit dem vom Server erhaltenen öffentlichen Schlüssel A-Pub des Servers Sitzungsschlüssel K ableiten. Der öffentliche Schlüssel A-Pub des Servers kann wahlweise im ersten Verfahrensabschnitt an das Secure Element B übertragen und dort gespeichert werden. Alternativ wird der öffentliche Schlüssel A-Pub des Servers A erst im zweiten Verfahrensabschnitt an das Secure Element B übertragen, zusammen mit der Aufforderung des Servers A an das Secure Element B, so dass er nicht dauerhaft im Secure Element B gespeichert werden muss, sondern nur während der Ableitung der Sitzungsschlüssel. 2 shows a simplified schematic representation of a key derivation, according to an embodiment of the invention. The basic process is the same as for the Diffie Hellman process 1 , Generating private and public keys A-Pr . A-Pub . B-Pr . B Pub forms a first stage of the process. Deriving the session key K forms a second stage of the process. In addition, one in the secure element B implemented pseudo-random number generator multiple random numbers b1 . b2 . b3 . b4 . b5 , ... as private key of the Secure Element B derived, as well as a key index for each derived private key 11 . 12 . 13 . 14 . 15 , .... The Secure Element forwards a corresponding number 1 . 2 . 3 . 4 . 5 , ... public key B Pub and sends it along with the indices 11 . 12 . 13 . 14 . 15 , ... to the server A , In the secure element B itself only the indices 11 . 12 . 13 . 14 . 15 , ... saved. The generated private and public keys themselves are deleted. Takes the same or a different server later A (who got the indices and public keys from the first server), the Secure Element generates the private keys again based on the indices and can therefore use the public key received from the server A-Pub the server session key K derived. The public key A-Pub of the server can optionally be connected to the secure element in the first method section B transferred and stored there. Alternatively, the public key A-Pub of the server A only in the second stage of the process to the Secure Element B transmitted, along with the request from the server A to the Secure Element B so that it is not permanently in the secure element B must be saved, but only during the derivation of the session key.

Claims (11)

Verfahren zur Ableitung von Sitzungsschlüsseln, beruhend auf der Schlüsselableitung nach Diffie Hellman, für eine gesicherte Kommunikation zwischen zwei Kommunikationspartnern, nämlich einem in einem mobilfunkfähigen Endgerät implementierten oder implementierbaren Secure Element (B) und einem Server (A), umfassend die Schritte, jeweils beim Secure Element (B) und beim Server (A): (i) Erzeugen oder Beschaffen einer Zufallszahl (b, a) und Bereitstellen der Zufallszahl (b, a) oder eines mittels einer One-Way-Funktion daraus abgeleiteten Werts als eigener privater Schlüssel (B-Pr, A-Pr); (ii) Ableiten des eigenen öffentlichen Schlüssels (B-Pub, A-Pub) ausgehend vom eigenen privaten Schlüssel (B-Pr, A-Pr); (iii) Übertragen des abgeleiteten eigenen öffentlichen Schlüssels (B-Pub, A-Pub) oder eines mittels einer One-Way-Funktion daraus abgeleiteten Werts an den jeweils anderen Kommunikationspartner (A, B); (iv) Ableiten zumindest eines gemeinsamen Sitzungsschlüssels (K) der Kommunikationspartner ausgehend vom eigenen privaten Schlüssel (B-Pr, A-Pr) und vom übertragenen öffentlichen Schlüssel (A-Pub, B-Pub) des jeweils anderen Kommunikationspartners (A, B), dadurch gekennzeichnet, dass in Schritt (i) im Secure Element (B), durch einen im Secure Element implementierten Pseudo-Zufallszahlengenerator, eine Mehrzahl von mindestens zwei Zufallszahlen (b1, b2, ...) erzeugt wird und eine entsprechende Mehrzahl von mindestens zwei eigenen privaten Schlüsseln (B-Prl, B-Pr2, ...) bereitgestellt wird; in Schritt (ii) im Secure Element (B) eine entsprechende Mehrzahl von mindestens zwei eigenen öffentlichen Schlüsseln (B-Publ, B-Pub2, ...) abgeleitet wird und an den Server (A) übertragen wird; jedem Schlüsselpaar aus privatem Schlüssel (B-Prl, B-Pr2, ...) und öffentlichem Schlüssel (B-Publ, B-Pub2, ...) des Secure Element ein Schlüsselindex (11, 12, ...) zugeordnet wird und in Schritt (iii) die Schlüssel der Mehrzahl von öffentlichen Schlüsseln (B-Publ, B-Pub2, ...) jeweils zusammen mit dem ihm zugeordneten Schlüsselindex (11, 12, ...) an den Server (A) übertragen werden; und in Schritt (iv) eine entsprechende Mehrzahl von mindestens zwei gemeinsamen Sitzungsschlüsseln (K-1, K-2, ...) abgeleitet wird.Method for deriving session keys, based on the key derivation according to Diffie Hellman, for secure communication between two communication partners, namely a Secure Element (B) and a server (A) implemented or implementable in a mobile radio-capable terminal device, comprising the steps, each for Secure Element (B) and at the server (A): (i) generating or obtaining a random number (b, a) and providing the random number (b, a) or a value derived from it using a one-way function as a private key ( B-Pr, A-Pr); (ii) deriving one's own public key (B-Pub, A-Pub) starting from one's own private key (B-Pr, A-Pr); (iii) transferring the derived own public key (B-Pub, A-Pub) or a value derived therefrom by means of a one-way function to the respective other communication partner (A, B); (iv) deriving at least one common session key (K) of the communication partners based on their own private key (B-Pr, A-Pr) and on the transmitted public key (A-Pub, B-Pub) of the other communication partner (A, B) , characterized in that in step (i) in the secure element (B), by means of a pseudo-random number generator implemented in the secure element, a plurality of at least two random numbers (b1, b2, ...) and a corresponding plurality of at least two private keys (B-Prl, B-Pr2, ...) are provided; in step (ii) in the secure element (B) a corresponding plurality of at least two own public keys (B-Publ, B-Pub2, ...) is derived and transmitted to the server (A); a key index (11, 12, ...) is assigned to each key pair of private key (B-Prl, B-Pr2, ...) and public key (B-Publ, B-Pub2, ...) of the Secure Element and in step (iii) the keys of the plurality of public keys (B-Publ, B-Pub2, ...) are each transmitted to the server (A) together with the key index (11, 12, ...) assigned to them ; and in step (iv) a corresponding plurality of at least two common session keys (K-1, K-2, ...) is derived. Verfahren nach Anspruch 1, wobei das Verfahren zumindest zwei Verfahrensabschnitte umfasst, nämlich: - einen ersten Verfahrensabschnitt umfassend die Schritte (i) bis (iii), und nicht umfassend Schritt (iv), wobei im ersten Verfahrensabschnitt die in Schritt (iii) übertragene Mehrzahl von öffentlichen Schlüsseln (B-Publ, B-Pub2, ...) beim Server (A) gespeichert wird; und - mindestens einen zweiten Verfahrensabschnitt oder eine der Anzahl von beim Secure Element erzeugten Schlüsselpaaren (B-Pr1, B-Pr2, ...; B-Pub1, B-Pub2, ...) entsprechende Anzahl von zweiten Verfahrensabschnitten, umfassend jeweils mindestens einen Schritt (iv), wobei der zweite Verfahrensabschnitt erst durch eine Aufforderung des Servers (A) an das Secure Element (B) gestartet wird.Procedure according to Claim 1 , the method comprising at least two method sections, namely: a first method section comprising steps (i) to (iii), and not comprising step (iv), the plurality of public keys transmitted in step (iii) in the first method section ( B-Publ, B-Pub2, ...) is saved at the server (A); and at least one second method section or a number of second method sections corresponding to the number of key pairs (B-Pr1, B-Pr2, ...; B-Pub1, B-Pub2, ...) generated in the Secure Element, each comprising at least a step (iv), the second method section only being started when the server (A) requests the secure element (B). Verfahren nach Anspruch 2, weiter umfassend die Schritte: - im Verlauf des ersten Verfahrensabschnitts oder nach Abschluss des ersten Verfahrensabschnitts beim Secure Element (B): --- Speichern der Schlüsselindizes (11, 12, ...) im Secure Element (B); --- Löschen der Mehrzahl von erzeugten Schlüsselpaaren (B-Prl, B-Pr2, ...; B-Publ, B-Pub2, ...) aus dem Secure Element (B); und - bei der Aufforderung des Servers (A) an das Secure Element (B), um den zweiten Verfahrensabschnitt zu starten: --- durch den Server (A), Übertragen mindestens eines oder genau eines Schlüsselindex (11, 12, ...) an das Secure Element (B); --- beim Secure Element (B), mittels des Pseudo-Zufallszahlengenerators anhand des jeweiligen Schlüsselindex (11, 12, ...), erneutes Erzeugen des privaten Schlüssels (B-Prl, B-Pr2, ...) und Durchführen von Schritt (iv) Ableiten mindestens eines oder genau eines gemeinsamen Sitzungsschlüssels (K-1, K-2, ...).Procedure according to Claim 2 , further comprising the steps: - in the course of the first process section or after completion of the first process section in the Secure Element (B): --- storing the key indexes (11, 12, ...) in the Secure Element (B); --- Delete the plurality of generated key pairs (B-Prl, B-Pr2, ...; B-Publ, B-Pub2, ...) from the Secure Element (B); and - when the server (A) is requested to the secure element (B) to start the second process step: --- by the server (A), transferring at least one or exactly one key index (11, 12, ... ) to the Secure Element (B); --- with the Secure Element (B), using the pseudo-random number generator based on the respective key index (11, 12, ...), generating the private key again (B-Prl, B-Pr2, ...) and performing Step (iv) deriving at least one or exactly one common session key (K-1, K-2, ...). Verfahren nach Anspruch 2 oder 3, wobei der erste und der zweite Verfahrensabschnitt während unterschiedlicher Produktionsabschnitte in einem Produktionsprozess zum Produzieren des Secure Element (B) oder des Endgeräts oder/und unter Steuerung unterschiedlicher Besitzer des Secure Element (B) oder des Endgeräts durchgeführt werden.Procedure according to Claim 2 or 3 , wherein the first and the second process section are carried out during different production sections in a production process for producing the Secure Element (B) or the end device and / or under the control of different owners of the Secure Element (B) or the end device. Verfahren nach Anspruch 4, wobei der erste Verfahrensabschnitt während der Produktion des Secure Element (B) bei einem Secure Element Hersteller durchgeführt wird oder/und der zweite Verfahrensabschnitt während der Provisionierung des Secure Element (B) mit ein oder mehreren Subskriptions-Profilen bei einem Hersteller des Endgeräts oder bei eine Mobilfunknetzbetreiber durchgeführt wird, die Besitzer des Secure Element (B) sind, wobei das Eigentum am Secure Element (B) beim Hersteller des Secure Element (B) bleibt.Procedure according to Claim 4 , wherein the first process step is carried out during the production of the Secure Element (B) at a Secure Element manufacturer and / or the second process step during the provisioning of the Secure Element (B) with one or more subscription Profiles with a manufacturer of the end device or with a mobile network operator who owns the Secure Element (B), whereby the ownership of the Secure Element (B) remains with the manufacturer of the Secure Element (B). Verfahren zum Laden eines Subskriptions-Profils von einem Server (A) in ein Secure Element (B), umfassend die Schritte: - Ableiten eines gemeinsamen Sitzungsschlüssels (K-1) mittels des Verfahrens nach einem der Ansprüche 3 bis 5, - beim Server (A), Verschlüsseln des Subskriptions-Profils mit dem Sitzungsschlüssel (K-1), - Laden des verschlüsselten Subskriptions-Profils vom Server (A) in das Secure Element (B), - im Secure Element (B), Entschlüsseln des Subskriptions-Profils mit dem Sitzungsschlüssel (K-1) und Implementieren des entschlüsselten Subskriptions-Profils.Method for loading a subscription profile from a server (A) into a secure element (B), comprising the steps: - Deriving a common session key (K-1) by means of the method according to one of the Claims 3 to 5 , - at the server (A), encrypting the subscription profile with the session key (K-1), - loading the encrypted subscription profile from the server (A) into the secure element (B), - in the secure element (B), Decrypt the subscription profile with the session key (K-1) and implement the decrypted subscription profile. Verfahren zum Laden mehrerer Subskriptions-Profile, wobei mit dem Verfahren nach Anspruch 6 mehrere Sitzungsschlüssel (K-1, K-2, ...) abgeleitet werden und jedes Subskriptions-Profil mit einem der Sitzungsschlüssel (K-1, K-2, ...) verschlüsselt wird.Procedure for loading multiple subscription profiles, using the procedure after Claim 6 multiple session keys (K-1, K-2, ...) are derived and each subscription profile is encrypted with one of the session keys (K-1, K-2, ...). Verfahren zur Authentisierung zwischen einem Server (A) eines Mobilfunknetzwerks und einem Secure Element (B), umfassend die Schritte: - Ableiten eines gemeinsamen Sitzungsschlüssels (K-1) mittels des Verfahrens nach einem der Ansprüche 3 bis 5, - beim Server (A), Verschlüsseln einer Authentisierungsnachricht mit dem Sitzungsschlüssel (K-1), - Übertragen der verschlüsselten Authentisierungsnachricht vom Server (A) an das Secure Element (B), - im Secure Element (B), Entschlüsseln der verschlüsselten Authentisierungsnachricht mit dem Sitzungsschlüssel (K-l) und im Fall erfolgreichen Entschlüsselns erfolgreiche Authentisierung des Servers (A).Method for authentication between a server (A) of a mobile radio network and a secure element (B), comprising the steps: - Deriving a common session key (K-1) by means of the method according to one of the Claims 3 to 5 , - at the server (A), encrypting an authentication message with the session key (K-1), - transmitting the encrypted authentication message from the server (A) to the secure element (B), - in the secure element (B), decrypting the encrypted authentication message with the session key (Kl) and in the case of successful decryption successful authentication of the server (A). Verfahren nach Anspruch 8, weiter umfassend den Schritt: Übertragen einer Challenge vom Secure Element (B) an den Server (A); wobei die Challenge in die verschlüsselte Authentisierungsnachricht eingeht und die verschlüsselte Authentisierungsnachricht einen Response auf den Challenge darstellt.Procedure according to Claim 8 , further comprising the step: transferring a challenge from the Secure Element (B) to the server (A); the challenge being included in the encrypted authentication message and the encrypted authentication message representing a response to the challenge. Verfahren nach einem der Ansprüche 1 bis 9, wobei zwischen dem Secure Element (B) und dem Server (A) weiter Parameter zur Ableitung des Schlüsselpaars vereinbart werden.Procedure according to one of the Claims 1 to 9 , whereby further parameters for deriving the key pair are agreed between the secure element (B) and the server (A). Verfahren nach einem der Ansprüche 1 bis 10 in Verbindung mit Anspruch 2, wobei der öffentliche Schlüssel (A-Pub) des Servers (A) erst im zweiten Verfahrensabschnitt an das Secure Element (B) übertragen wird, zusammen mit der Aufforderung des Servers (A), so dass der öffentliche Schlüssel (A-Pub) des Servers (A) nur zur Ableitung von Sitzungsschlüsseln (K) im Secure Element (B) gespeichert zu werden braucht.Procedure according to one of the Claims 1 to 10 combined with Claim 2 , wherein the public key (A pub) of the server (A) is only transferred to the secure element (B) in the second method section, together with the request from the server (A), so that the public key (A pub) of the Servers (A) need only be stored in the Secure Element (B) to derive session keys (K).
DE102016012189.0A 2016-10-11 2016-10-11 Diffie Hellman key derivation, subscription loading, authentication Expired - Fee Related DE102016012189B4 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102016012189.0A DE102016012189B4 (en) 2016-10-11 2016-10-11 Diffie Hellman key derivation, subscription loading, authentication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102016012189.0A DE102016012189B4 (en) 2016-10-11 2016-10-11 Diffie Hellman key derivation, subscription loading, authentication

Publications (2)

Publication Number Publication Date
DE102016012189A1 DE102016012189A1 (en) 2018-04-12
DE102016012189B4 true DE102016012189B4 (en) 2020-02-06

Family

ID=61695602

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016012189.0A Expired - Fee Related DE102016012189B4 (en) 2016-10-11 2016-10-11 Diffie Hellman key derivation, subscription loading, authentication

Country Status (1)

Country Link
DE (1) DE102016012189B4 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11632243B1 (en) * 2020-03-31 2023-04-18 Juniper Networks, Inc. Multi-key exchange

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120144193A1 (en) * 2009-07-09 2012-06-07 Le Saint Eric F Open protocol for authentication and key establishment with privacy
US20160065370A1 (en) * 2014-08-29 2016-03-03 Eric Le Saint Methods for secure cryptogram generation
US20160241389A1 (en) * 2015-02-13 2016-08-18 Eric Le Saint Confidential communication management

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120144193A1 (en) * 2009-07-09 2012-06-07 Le Saint Eric F Open protocol for authentication and key establishment with privacy
US20160065370A1 (en) * 2014-08-29 2016-03-03 Eric Le Saint Methods for secure cryptogram generation
US20160241389A1 (en) * 2015-02-13 2016-08-18 Eric Le Saint Confidential communication management

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11632243B1 (en) * 2020-03-31 2023-04-18 Juniper Networks, Inc. Multi-key exchange

Also Published As

Publication number Publication date
DE102016012189A1 (en) 2018-04-12

Similar Documents

Publication Publication Date Title
EP3077952B1 (en) Method for accessing a data memory of a cloud computer system
EP3198903B1 (en) Method and devices for providing a subscription profile on a mobile terminal
DE102009037469A1 (en) Update and distribution of encryption keys
EP3078177B1 (en) Method for accessing a data memory of a cloud computer system using a modified domain name system (dns)
DE102020003275B3 (en) Personalization of a secure element
DE112019005795T5 (en) Time stamp-based integration process for wireless devices
EP3178210B1 (en) Communication system with pki key pair for mobile terminal
EP3391612B1 (en) Agreement of exchange keys on the basis of two static asymmetric key pairs
EP2575385B1 (en) Method for initializing and/or activation of at least one user account, for carrying out a transaction, and terminal
DE102016012189B4 (en) Diffie Hellman key derivation, subscription loading, authentication
DE202015102198U1 (en) Device for a profile download of group devices
EP1240794B1 (en) Method for encrypting data and a telecommunications terminal and access authorization card
DE102016118998A1 (en) Method for communicating and communication module for a motor vehicle
EP3050244B1 (en) Provision and use of pseudonymous keys in hybrid encryption
EP2723111B1 (en) Multiple factor authentification for mobile end devices
DE102016000324A1 (en) Method for managing identification data of multiple applications
EP3269167B1 (en) Network access support
DE102018005502A1 (en) Securing a data transfer
EP4099624A1 (en) Transmission method
EP4242890A1 (en) Method for secure identification of a person by a verification instance
DE102014222216A1 (en) Method and device for securing a communication
DE102015102186A1 (en) Method for registering a terminal for communication with a server
DE102011122874A1 (en) Method for initializing and/or activating account of user using mobile terminal such as mobile telephone, involves generating user identifier in side of provider and transferring user identifier from provider to main terminal
WO2014154385A2 (en) Method and apparatus for linking electrical connections having communication connections

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
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee