EP4101118A1 - Schlüsselgenerierung und pace mit sicherung gegen seitenkanalangriffe - Google Patents
Schlüsselgenerierung und pace mit sicherung gegen seitenkanalangriffeInfo
- Publication number
- EP4101118A1 EP4101118A1 EP21703830.6A EP21703830A EP4101118A1 EP 4101118 A1 EP4101118 A1 EP 4101118A1 EP 21703830 A EP21703830 A EP 21703830A EP 4101118 A1 EP4101118 A1 EP 4101118A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- key
- client
- terminal
- public
- private
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/003—Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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/0825—Key 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 asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key 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/0841—Key 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic 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 a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/04—Masking or blinding
- H04L2209/046—Masking or blinding of operations, operands or results of the operations
Definitions
- the invention relates to a key generation method which is part of an authentication method and key agreement method between a client and a terminal.
- the authentication process and key agreement process can be used in particular in the PACE protocol for authentication and for establishing encrypted communication between a machine-readable travel document with a chip and a terminal, with the machine-readable travel document as the client.
- BSI-TR-03111 describes an implementation of the PACE protocol in elliptic curve cryptography.
- This conversion into elliptic curve cryptography is formed by a series of calculations.
- Each calculation is formed as a combination of one or more operations.
- the operations provided are, for example, point additions + on an elliptical curve, point multiplications ⁇ on the elliptical curve, modular multiplications ⁇ , modular divisions /, modular additions + and / and modular subtractions -.
- each calculation calculates a result.
- every operation within a calculation calculates a result.
- the PACE method comprises the following steps, which are illustrated in FIG. 1 using an example of an elliptical curve-based PACE method.
- 1 and 2 contain partially linguistic text and partially pseudo program code parts such as "if ⁇ condition> then ⁇ sequence>" for a corresponding action, for example checking whether a condition is met and determining or initiating a sequence to indicate a processor device.
- Step 1.1 The chip in the client (travel document) generates a random number (nonce) s, which is kept secret, and encrypts it with the password PIN stored internally in the client as a key to an encrypted random number (nonce) s'.
- Step 1.4: the terminal decrypts the received encrypted random number s' with the password PIN_user entered by the user and receives a number s t that matches s if the user has entered the correct password (PIN PIN_user).
- Step 2.1 The chip and the terminal each generate an asymmetrical key pair [k c , P c ] or [k t , P t ] comprising a private key k c or k t and a public key P c or P t ;
- Second ECDH key generation The chip and the terminal carry out an ECDH - elliptic curve Diffie-Hellman - key generation. Steps 3.1-3.2: In the ECDH key generation, the chip and the terminal each generate a second asymmetrical key pair [k c ', P c '] or [k t ', P t '] comprising a private key k c 'or k t 'and a public key P c ' or P t 'based on the generators G c ' and G t 'calculated in FIG.
- a key pair [k c , P c ] is derived at the client with the following keys.
- Private key k c of the client this is a random number generated by means of a chip-internal function Generate_secret_key ().
- G chip-public_key
- Terminal private key k t this is one by means of an internal terminal Function Generate_secret_key () generated random number.
- Public parameters are understood to be parameters that are known to both the client and the terminal at the beginning of the protocol. Parameters are, for example, curve parameters of the elliptical curve.
- the public values also include, for example, the auxiliary point H t and the private terminal key k t .
- non-public values which are understood to mean values that are not known to the terminal, and which include, in particular, the first private client key k c and the second private client key k c '.
- side-channel information from a processor device executing a calculation is evaluated in order to find characteristics therein which reflect the data used in the calculation.
- Side channel information can be, for example, the power consumption of the processor device or the electromagnetic radiation emitted by it while the calculation is being carried out.
- the calculation can be, for example, a cryptographic calculation.
- Data can be, for example, input data, secret keys, intermediate values and output data from the calculation.
- a point multiplication is carried out in each case on the elliptical curve used in computing steps 2.4 and 3.2, in which the nonce s or the point G c 'is processed in unprotected form.
- side channel information such as current profile or electromagnetic radiation from the processor device in which the calculation is carried out can have characteristics which are characteristic of the value of the nonce s or of the point G c '.
- the invention is based on the object of creating a method for key generation which has improved protection against side-channel attacks.
- the object is achieved by a method for key generation according to claim 1 or 2.
- the method for key generation can advantageously be used in a method for key agreement and authentication.
- Advantageous refinements of the invention are given in the dependent claims.
- the method according to the invention for key generation according to claims 1 and 2 is set up in a client processor device.
- the method is set up to generate a second public client key P c 'of the client.
- the method for key generation comprises the steps carried out in the client processor device: (1.1) generating a nonce s;
- the method according to a first alternative of the invention is characterized in that the public key P c 'by a calculation, or Sequence of calculations, which does not contain an operation, the result of which depends exclusively on the nonce s and at least one public value.
- the method according to a second alternative of the invention is characterized in that the public key P c 'is formed by a calculation, or a sequence of calculations, in which at least one is not in each operation in which the nonce s is included -public value is received, in particular the first private client key k c or the second private client key k c '.
- Steps (1.1), (2.1), (2.2) and (3.1) are carried out essentially as in the conventional method for key generation shown in FIG. 1.
- the conventional steps (2.3), (2.4) do not apply to the client.
- a point multiplication s ⁇ G of the generator point G is carried out with the nonce s in plain text, so that only two input values generator point G and nonce s are included in the calculation.
- the generator point G and the public keys are public parameters that are known to an attacker. Therefore only the nonce s is unknown in the operation s ⁇ G. Both the operation s ⁇ G and the result of the operation s ⁇ G can provide an attacker with side channel information that can make it possible to infer the secret nonce s. Therefore, in particular calculations in which in addition to a secret value, only public parameters are received, susceptible to side-channel attacks.
- the point multiplication s ⁇ G in the conventional step (2.4) is therefore susceptible to side-channel attacks.
- the second public client key P c ' can be formed as the result of a calculation in which the generator point G, the nonce s and the second private client key k c ' are processed in a common operation become.
- the second private client key k c ' is then additionally contained in the operation, so that side-channel emissions from the operation are blurred.
- the method for key generation in step (1.1) further comprises: (E1.1 *) Generating and providing, or only providing (without internal calculation in the client, ie, for example, external calculation and secure transmission to the client) , a masked nonce s m and a masking value m associated with the masked nonce s m (or several associated masking values).
- n the group order of the elliptical curve
- the masked nonce s m is used together with the mask (masks).
- the second public client key P c ' is formed as the result of a combination of operations, as indicated in the corresponding subclaims.
- a method for key agreement and authentication between a client and a terminal comprises, in addition to the steps of the above-mentioned method for key generation in the client, further steps in the client, steps of a method for key generation in the terminal, and steps in which the terminal sends data the client sends or receives from the client. Steps that are carried out in or by the client are preceded by a (C), and steps that are carried out in or by the terminal are preceded by a (T), subsequent steps that follow after the key has been generated preceded by an (AUTH).
- the key agreement and authentication process includes the following steps:
- the The encryption function Enc 'and the mask m are matched to one another, so that the result s' is generated as without masking); the password is preferably stored with secure access, so that it can call up the processor device of the client and use it in calculations, but that it is not possible to read out the password from the client;
- FIG. 1 shows excerpts from an exemplary conventional PACE protocol comprising an elliptic curve Diffie-Hellman method for key generation, which has already been described at the beginning.
- FIG. 2 shows excerpts from an exemplary PACE protocol modified according to the invention, comprising a method for key generation, according to an embodiment of the invention, which is based on elements of the method from FIG.
- the PACE protocol was implemented in accordance with the steps described in Table 1 and a mult-add function, as described in 2.4, was provided. All other required functions correspond to those which are also required for other ECC implementations.
- the group on which it is based is an elliptical curve with generator point G, which has a prime number order.
- integer variables are denoted by small letters and points on the elliptic curve are denoted by capital letters.
- the key agreement and authentication method between the client and the terminal is carried out as follows.
- the sequence of the steps is carried out in the specified sequence, as far as required by the course of the procedure. If a sequence is not determined by the method, the sequence in which the steps are carried out can also differ from the sequence in which the steps are listed.
- a masked nonce s m can be used as the nonce, as shown in FIG. 2 as step E1.1 *.
- an unmasked nonce s can be used as the nonce, according to step 1.1 of FIG. 1, as indicated in FIG. 2 by the reference to step 1.1 of FIG.
- Step 1.1 in the client takes place either without masking the nonce (1.1 as in Fig. 1) or with masking of the nonce (E1.1 * according to Fig. 2):
- two results of two point multiplications (k c ' ⁇ s) ⁇ G and (k c ' ⁇ k c ) ⁇ P t are generated, once by point multiplication of the product of the second private client key k c 'and the client nonce s (which can optionally be present in masked form) with the generator point G, and once by point multiplication of the product of the second private client key k c 'and the first private client key k c with the first public terminal key P t ; the two results are combined by a point addition, so that finally the second public key P c 'of the client is derived;
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Algebra (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102020000814.3A DE102020000814A1 (de) | 2020-02-07 | 2020-02-07 | Schlüsselgenerierung und PACE mit Sicherung gegen Seitenkanalangriffe |
| PCT/EP2021/025040 WO2021156005A1 (de) | 2020-02-07 | 2021-02-03 | Schlüsselgenerierung und pace mit sicherung gegen seitenkanalangriffe |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP4101118A1 true EP4101118A1 (de) | 2022-12-14 |
Family
ID=74561843
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP21703830.6A Pending EP4101118A1 (de) | 2020-02-07 | 2021-02-03 | Schlüsselgenerierung und pace mit sicherung gegen seitenkanalangriffe |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US12316734B2 (de) |
| EP (1) | EP4101118A1 (de) |
| DE (1) | DE102020000814A1 (de) |
| WO (1) | WO2021156005A1 (de) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102021003275B3 (de) | 2021-06-24 | 2022-07-14 | Giesecke+Devrient Mobile Security Gmbh | Verfahren zur Berechnung eines Übergangs von einer booleschen zu einer arithmetischen Maskierung |
| DE102022002399A1 (de) | 2022-07-01 | 2023-07-20 | Giesecke+Devrient Mobile Security Gmbh | Schlüsselgenerierung und PACE mit Sicherung gegen Seitenkanalangriffe |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP2639997B1 (de) * | 2012-03-15 | 2014-09-03 | ATS Group (IP Holdings) Limited | Verfahren und System für sicheren Zugriff eines ersten Computers auf einen zweiten Computer |
| DE102013203257A1 (de) | 2013-02-27 | 2014-08-28 | Bundesdruckerei Gmbh | Lesen eines Attributs aus einem ID-Token |
| US9584320B1 (en) | 2014-12-23 | 2017-02-28 | EMC IP Holding Company LLC | Blinding function in elliptic curve cryptography |
| US10547613B1 (en) * | 2017-05-17 | 2020-01-28 | Amazon Technologies, Inc. | Simplified association of devices with a network using unique codes on the devices and side channel communication |
| US10855440B1 (en) * | 2017-11-08 | 2020-12-01 | Wickr Inc. | Generating new encryption keys during a secure communication session |
-
2020
- 2020-02-07 DE DE102020000814.3A patent/DE102020000814A1/de not_active Withdrawn
-
2021
- 2021-02-03 US US17/760,016 patent/US12316734B2/en active Active
- 2021-02-03 EP EP21703830.6A patent/EP4101118A1/de active Pending
- 2021-02-03 WO PCT/EP2021/025040 patent/WO2021156005A1/de not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| WO2021156005A1 (de) | 2021-08-12 |
| US20230041237A1 (en) | 2023-02-09 |
| DE102020000814A1 (de) | 2021-08-12 |
| US12316734B2 (en) | 2025-05-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE60001630T2 (de) | Sichere gegenseitige Netzwerkauthenifizierung und Schlüselaustauschprotokoll | |
| DE2843583C2 (de) | Verfahren für den zugriffsicheren Nachrichtenverkehr über einen ungesicherten Nachrichtenübertragungskanal | |
| EP0472714B1 (de) | Verfahren zur authentifizierung eines eine datenstation benutzenden anwenders | |
| DE60313704T2 (de) | Verfahren und Vorrichtung zur Erzeugung eines Geheimschlüssels | |
| DE69834431T3 (de) | Leckresistentes kryptographisches verfahren und vorrichtung | |
| DE60302276T2 (de) | Verfahren zur ferngesteuerten Änderung eines Kommunikationspasswortes | |
| EP0903026B1 (de) | Verfahren zur Aushandlung einer Sicherheitspolitik zwischen einer ersten Computereinheit und einer zweiten Computereinheit | |
| DE69633590T2 (de) | Verfahren zur Unterschrift und zur Sitzungsschlüsselerzeugung | |
| DE60036112T2 (de) | Serverunterstützte wiedergewinnung eines starken geheimnisses aus einem schwachen geheimnis | |
| DE69311581T2 (de) | Verfahren und system zur authentifizierten sicheren schlüsselverteilung in einem kommunikationssystem | |
| DE69921039T2 (de) | Verfahren zur Erstellung eines Schlüssels unter Verwendung einer Funkkommunikation und eines Kennwortprotokolls | |
| DE102012206341B4 (de) | Gemeinsame Verschlüsselung von Daten | |
| EP1125395B1 (de) | Verfahren und anordnung zur authentifikation von einer ersten instanz und einer zweiten instanz | |
| DE69932740T2 (de) | Verfahren und vorrichtung zur kryptographischen datenverarbeitung | |
| EP2656535B1 (de) | Kryptographisches verfahren | |
| EP3218893A1 (de) | Gehärtete white box implementierung | |
| DE102012201164A1 (de) | Vorrichtung und verfahren zur erzeugung eines nachrichtenauthentifizierungscodes | |
| DE10143728B4 (de) | Vorrichtung und Verfahren zum Berechnen eines Ergebnisses einer modularen Exponentiation | |
| EP1368929A2 (de) | Verfahren zur authentikation | |
| DE112012000971B4 (de) | Datenverschlüsselung | |
| EP2684312B1 (de) | Verfahren zur authentisierung, rf-chip-dokument, rf-chip-lesegerät und computerprogrammprodukte | |
| WO2021156005A1 (de) | Schlüsselgenerierung und pace mit sicherung gegen seitenkanalangriffe | |
| EP4360247B1 (de) | Verfahren zur berechnung eines übergangs von einer booleschen zu einer arithmetischen maskierung | |
| EP2730050B1 (de) | Verfahren zur erstellung und überprüfung einer elektronischen pseudonymen signatur | |
| DE602004010494T2 (de) | Kryptographische Authentifizierung einer Vorrichtung |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: UNKNOWN |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
| 17P | Request for examination filed |
Effective date: 20220907 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| DAV | Request for validation of the european patent (deleted) | ||
| DAX | Request for extension of the european patent (deleted) | ||
| RAP3 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: GIESECKE+DEVRIENT MOBILE SECURITY GMBH |
|
| P01 | Opt-out of the competence of the unified patent court (upc) registered |
Effective date: 20230519 |
|
| RAP3 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: GIESECKE+DEVRIENT EPAYMENTS GMBH |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
| 17Q | First examination report despatched |
Effective date: 20250530 |