FR3052279B1 - Authentification d'une carte par lecture sans contact - Google Patents

Authentification d'une carte par lecture sans contact Download PDF

Info

Publication number
FR3052279B1
FR3052279B1 FR1655074A FR1655074A FR3052279B1 FR 3052279 B1 FR3052279 B1 FR 3052279B1 FR 1655074 A FR1655074 A FR 1655074A FR 1655074 A FR1655074 A FR 1655074A FR 3052279 B1 FR3052279 B1 FR 3052279B1
Authority
FR
France
Prior art keywords
key
phase
contactless communication
pcd
communication circuit
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
FR1655074A
Other languages
English (en)
Other versions
FR3052279A1 (fr
Inventor
Frank Cuypers
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.)
Proton World International NV
Original Assignee
Proton World International NV
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 Proton World International NV filed Critical Proton World International NV
Priority to FR1655074A priority Critical patent/FR3052279B1/fr
Priority to US15/332,758 priority patent/US10237071B2/en
Priority to EP16199687.1A priority patent/EP3252993B1/fr
Priority to CN201611083056.3A priority patent/CN107465655B/zh
Publication of FR3052279A1 publication Critical patent/FR3052279A1/fr
Application granted granted Critical
Publication of FR3052279B1 publication Critical patent/FR3052279B1/fr
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10009Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
    • G06K7/10297Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves arrangements for handling protocols designed for non-contact record carriers such as RFIDs NFCs, e.g. ISO/IEC 14443 and 18092
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • G06Q20/108Remote banking, e.g. home banking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/409Device specific authentication in transaction processing
    • H04B5/77
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0625Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • H04L9/16Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • 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/04Masking or blinding
    • H04L2209/046Masking or blinding of operations, operands or results of the operations

Abstract

L'invention concerne un procédé d'authentification d'un circuit de communication sans contact, PICC, par un terminal de communication sans contact, PCD, comprenant : la détermination par le PICC d'un premier nombre (A1) et la transmission du premier nombre au PCD ; la détermination par le PCD d'un deuxième nombre (Rb_pcd), par décryptage du premier nombre en utilisant une première clé (k), la détermination d'un troisième nombre (Ra_pcd| | R'b_pcd) à partir du deuxième nombre et la détermination d'un quatrième nombre (B1) par cryptage du troisième nombre (Ra_pcd| | R'b_pcd) en utilisant la première clé (k) ; et le décryptage par le PICC du quatrième nombre en utilisant la première clé (k) pour obtenir le troisième nombre et l'interruption de l'authentification si un sixième nombre (R'b_pcd) obtenu à partir du troisième nombre est différent d'un septième nombre (R'b), dans lequel la première phase ne comprend pas d'opération de cryptage utilisant la première clé.

Description

AUTHENTIFICATION D'UNE CARTE PAR LECTURE SANS CONTACT
Domaine
La présente description concerne de façon générale les circuits électroniques et, plus particulièrement, les circuits de communication sans contact. La présente description vise plus particulièrement l'authentification d'un circuit de communication sans contact par un terminal de communication sans contact.
Exposé de 1'art antérieur
La communication par une liaison sans contact entre un dispositif de couplage en champ proche (Proximity Coupling Device - PCD), par exemple un terminal sans contact (Contactless Reader), et un dispositif sans contact (Proximity Device - PD), notamment un circuit intégré sans contact (Proximity Integrated Circuit -PIC) ou une carte à circuit intégré sans contact (Proximity Integrated Circuit Card - PICC) , commence généralement par une opération d'authentification mutuelle du dispositif sans contact et du dispositif de couplage en champ proche. L'opération d'authentification comprend une succession d'étapes d'échange de données entre le dispositif de couplage en champ proche et le dispositif sans contact et d'étapes de calcul par le dispositif de couplage en champ proche et le dispositif sans contact. Certaines de ces étapes peuvent présenter des vulnérabilités à des attaques visant notamment à récupérer des informations concernant le procédé de cryptage mis en oeuvre par le dispositif sans contact. Résumé
Il serait souhaitable de protéger davantage les étapes d'une opération d'authentification d'un dispositif sans contact par un dispositif de couplage en champ proche.
Ainsi, un mode de réalisation prévoit un procédé d'authentification d'un circuit de communication sans contact par un terminal de communication sans contact, comprenant successivement : une première phase comprenant la détermination par le circuit de communication sans contact d'un premier nombre, la première phase se terminant par la transmission du premier nombre par le circuit de communication sans contact au terminal de communication sans contact ; une deuxième phase comprenant la détermination par le terminal de communication sans contact d'un deuxième nombre, par décryptage du premier nombre en utilisant une première clé, la détermination par le terminal de communication sans contact d'un troisième nombre à partir du deuxième nombre et la détermination par le terminal de communication sans contact d'un quatrième nombre par cryptage du troisième nombre en utilisant la première clé, la deuxième phase se terminant par la transmission du quatrième nombre par le terminal de communication sans contact au circuit de communication sans contact ; et une troisième phase comprenant le décryptage par le circuit de communication sans contact du quatrième nombre en utilisant la première clé pour obtenir le troisième nombre et 1'interruption par le circuit de communication sans contact de 1'authentification si un sixième nombre obtenu à partir du troisième nombre est différent d'un septième nombre, la première phase ne comprenant pas d'opération de cryptage utilisant la première clé.
Selon un mode de réalisation, le septième nombre est déterminé par le circuit de communication sans contact à partir d'un huitième nombre obtenu par décryptage par le circuit de communication sans contact du premier nombre en utilisant la première clé.
Selon un mode de réalisation, le procédé comprend, à la première phase, la détermination d'un neuvième nombre, le neuvième nombre étant aléatoire, sans opération de cryptage par le circuit de communication sans contact.
Selon un mode de réalisation, à la première phase, le premier nombre est égal au neuvième nombre.
Selon un mode de réalisation, à la première phase, le premier nombre est obtenu par cryptage par le circuit de communication sans contact du neuvième nombre en utilisant une deuxième clé différente de la première clé, la deuxième clé ayant la même taille que la première clé, l'algorithme de cryptage utilisant la deuxième clé étant le même que 1 ' algorithme de cryptage utilisant la première clé.
Selon un mode de réalisation, à la première phase, le premier nombre est obtenu par cryptage par le circuit de communication sans contact d'un dixième nombre non aléatoire en utilisant une troisième clé qui est aléatoire, la troisième clé ayant la même taille que la première clé, l'algorithme de cryptage utilisant la troisième clé étant le même que l'algorithme de cryptage utilisant la première clé.
Selon un mode de réalisation, à la première phase, le circuit de communication sans contact réalise de façon aléatoire les étapes suivantes : a) la détermination du premier nombre comme étant égal au résultat du cryptage du neuvième nombre en utilisant la première clé ; b) la détermination du premier nombre comme étant égal au huitième nombre.
Selon un mode de réalisation, le procédé comprend en outre à l'étape a) la détermination du huitième nombre comme étant égal au neuvième nombre et à l'étape b) la réalisation d'une opération de cryptage utilisant une quatrième clé différente de la première clé, la quatrième clé ayant la même taille que la première clé, l'algorithme de cryptage utilisant la quatrième clé étant le même que l'algorithme de cryptage utilisant la première clé.
Selon un mode de réalisation, le procédé comprend, en outre, à la troisième phase, la réalisation d'une étape c) par le circuit de communication sans contact, l'étape c) comprenant, lorsque l'étape a) est réalisée, la réalisation d'une opération de décryptage utilisant une cinquième clé différente de la première clé, la cinquième clé ayant la même taille que la première clé, l'algorithme de décryptage utilisant la cinquième clé étant le même que l'algorithme de cryptage utilisant la première clé et l'étape c) comprenant, lorsque l'étape b) est réalisée, la détermination du huitième nombre par décryptage par le circuit de communication sans contact du premier nombre en utilisant la première clé.
Selon un mode de réalisation, le procédé comprend successivement à la première phase, si une variable booléenne est vraie, la détermination par le circuit de communication sans contact du premier nombre comme étant égal au résultat du cryptage du neuvième nombre en utilisant la première clé et, si la variable booléenne est fausse, la réutilisation par le circuit de communication sans contact de la dernière valeur déterminée du premier nombre et comprenant la mise de la variable booléenne à 1'état faux.
Selon un mode de réalisation, le procédé comprend, en outre, à la troisième phase, la mise par le circuit de communication sans contact de la variable booléenne à 1'état vrai si le sixième nombre obtenu à partir du quatrième nombre est égal au septième nombre.
Selon un mode de réalisation, le procédé comprend, dans la seconde phase, la détermination par le terminal de communication sans contact d'un onzième nombre, le onzième nombre étant aléatoire, et la détermination par le terminal de communication sans contact d'un douzième nombre basé sur le deuxième nombre, le troisième nombre correspondant à la juxtaposition du onzième nombre et du douzième nombre.
Selon un mode de réalisation, le procédé comprend en outre, dans la troisième phase, la détermination par le circuit de communication sans contact d'un treizième nombre basé sur le troisième nombre, la détermination d'un quatorzième nombre par cryptage du treizième nombre en utilisant la première clé, la troisième phase se terminant avec la transmission du quatorzième nombre par le circuit de communication sans contact au terminal de communication sans contact.
Un mode de réalisation prévoit également un procédé d'authentification d'un circuit de communication sans contact par un terminal de communication sans contact, comprenant successivement : une première phase comprenant la détermination par le circuit de communication sans contact d'un premier nombre égal au résultat du cryptage d'un deuxième nombre avec une première clé, le deuxième nombre étant un nombre aléatoire, la première phase se terminant par la transmission du premier nombre par le circuit de communication sans contact au terminal de communication sans contact ; une deuxième phase comprenant la détermination par le terminal de communication sans contact d'un troisième nombre par décryptage du premier nombre en utilisant la première clé, la détermination par le terminal de communication sans contact d'un quatrième nombre à partir du troisième nombre et la détermination par le terminal de communication sans contact d'un cinquième nombre par cryptage du quatrième nombre en utilisant la première clé, le cinquième nombre comprenant au moins des première et deuxième parties juxtaposées, la deuxième phase se terminant par la transmission du cinquième nombre par le terminal de communication sans contact au circuit de communication sans contact ; et une troisième phase comprenant la détermination d'un sixième nombre par le circuit de communication sans contact à partir du deuxième nombre, la détermination d'un septième nombre par cryptage par un mode d'opération par enchaînement des blocs du sixième nombre en utilisant la première clé et un vecteur d'initialisation égal à la première partie du cinquième nombre et 1 ' interruption par le circuit de communication sans contact de l'authentification si le septième nombre est différent de la deuxième partie du cinquième nombre.
Selon un mode de réalisation, le procédé comprend, en outre, à la troisième phase, le décryptage par le circuit de communication sans contact du cinquième nombre en utilisant la première clé pour fournir le quatrième nombre.
Selon un mode de réalisation, le procédé comprend, en outre, à la troisième phase, la détermination par le circuit de communication sans contact d'un huitième nombre à partir du quatrième nombre, la détermination d'un neuvième nombre par cryptage du huitième nombre avec la première clé, la troisième phase se terminant par la transmission du neuvième nombre par le circuit de communication sans contact au terminal de communication sans contact.
Selon un mode de réalisation, chaque opération de cryptage réalisée par le circuit de communication sans contact comprend la fourniture d'au moins un premier bloc de message et d'un deuxième bloc de message, la fourniture d'un premier bloc de message chiffré par cryptage en utilisant la première clé du résultat de la fonction XOR appliquée entre le premier bloc de message et un vecteur d'initialisation et la fourniture d'un deuxième bloc de message chiffré par cryptage en utilisant la première clé du résultat de la fonction XOR appliquée entre le deuxième bloc de message et le premier bloc de message chiffré.
Selon un mode de réalisation, le procédé comprend, à la deuxième phase, la détermination par le terminal de communication sans contact d'un dixième nombre, le dixième nombre étant aléatoire, et la détermination par le terminal de communication sans contact d'un onzième nombre à partir du troisième nombre, le quatrième nombre correspondant à la juxtaposition du dixième nombre et du onzième nombre.
Selon un mode de réalisation, la première phase ne comprend pas d'opération de cryptage utilisant la première clé.
Un mode de réalisation prévoit également un circuit de communication sans contact comportant un microprocesseur programmé pour la mise en oeuvre du procédé tel que défini précédemment.
Un mode de réalisation prévoit également une carte à microcircuit comportant un circuit programmé pour la mise en oeuvre du procédé tel que défini précédemment.
Brève description des dessins
Ces caractéristiques et avantages, ainsi que d'autres, seront exposés en détail dans la description suivante de modes de réalisation particuliers faite à titre non limitatif en relation avec les figures jointes parmi lesquelles : la figure 1 représente, de façon très schématique, un mode de réalisation d'un système de communication en champ proche ; la figure 2 est un schéma-bloc simplifié d'un exemple usuel d'un procédé d'authentification mutuelle d'un dispositif sans contact et d'un dispositif de couplage en champ proche ; les figures 3 à 5 sont des schémas-blocs simplifiés de modes de réalisation d'un procédé d'authentification mutuelle d'un dispositif sans contact et d'un dispositif de couplage en champ proche ; les figures 6 à 8 sont des schéma-blocs simplifiés de circuits de cryptage adaptés à la mise en oeuvre d'une opération de cryptage selon un mode d'opération par enchaînement de blocs ; et la figure 9 est un schéma-bloc simplifié d'un autre mode de réalisation d'un procédé d'authentification mutuelle d'un dispositif sans contact et d'un dispositif de couplage en champ proche.
Description détaillée
De mêmes éléments ont été désignés par de mêmes références aux différentes figures. Par souci de clarté, seuls les éléments qui sont utiles à la compréhension des modes de réalisation décrits ont été représentés et sont détaillés. En particulier, les échanges entre le dispositif de couplage en champ proche et un circuit intégré sans contact une fois l'opération d'authentification réalisée n'ont pas été détaillés, les modes de réalisation décrits étant compatibles avec les échanges usuels. Sauf précision contraire, les expressions "approximativement", "sensiblement", et "de l'ordre de" signifient à 10 % près, de préférence à 5 % près.
Des modes de réalisation sont décrits en prenant pour exemple une carte sans contact constituant une carte à circuit intégré sans contact (PICC) et un lecteur sans contact constituant un dispositif de couplage en champ proche (PCD). Ils s'appliquent toutefois plus généralement à tout dispositif utilisé en dispositif de couplage en champ proche et à tout circuit intégré de communication sans contact dans lesquels des problèmes similaires se posent.
La figure 1 représente, de façon très schématique, un système de communication sans contact du type auquel s ' appliquent les modes de réalisation décrits.
Un terminal 10 de communication sans contact ou lecteur sans contact (READER) génère un champ électromagnétique. Une carte 12 (CARD) sans contact se trouvant à portée du lecteur capte ce champ et est alors capable d'échanger des informations avec le lecteur 10.
La carte 12 peut héberger une ou plusieurs applications. A titre d'exemple; ces applications peuvent exploiter une technologie connue sous la dénomination MIFARE. L'application qui doit être lancée par la carte peut dépendre du lecteur avec lequel elle communique. En effet, un lecteur est généralement dédié à une application (par exemple, bancaire, de transport, de contrôle d'accès, etc.) et l'activation d'une carte dans le champ du lecteur dépend du protocole que la carte accepte.
La technologie MIFARE® se décline selon différentes variantes notamment les variantes MIFARE DESFire® ou MIFARE Plus®. MIFARE®, MIFARE DESFire® et MIFARE Plus® sont des marques de NXP B.V. enregistrées aux USA. Ces variantes se distinguent notamment par les procédés de cryptage mis en oeuvre. Selon un exemple, le procédé de cryptage correspond à un algorithme de chiffrement symétrique, par exemple l'algorithme AES (acronyme anglais pour Advanced Encryption Standard) ou l'algorithme DES (acronyme anglais pour Data Encryption Standard) utilisant une clé, deux clés ou trois clés de chiffrage.
La figure 2 est un schéma-bloc simplifié d'un exemple usuel d'un procédé -d'authentification mutuelle d'un lecteur et d'une carte à puces sans contact mettant en oeuvre la technologie MIFARE DESFire ou MIFARE Plus.
Le procédé d'authentification de la carte PICC débute lorsque le lecteur a détecté la présence de la carte et veut authentifier la carte. D'autres commandes peuvent être envoyées avant le début de l'authentification. Le procédé d'authentification comprend des phases successives SI, S2, S3 et S4 comprenant chacune des étapes successives.
Le PCD et le PD partagent la connaissance d'un nombre de valeurs de clés. A la phase Si, le lecteur (PCD) sélectionne une clé (étape 20) et transmet son identifiant Id^ 'à la carte (PICC) avec une commande d'authentification. La longueur de la clé k dépend notamment de 1'algorithme de cryptage mis en oeuvre. A titre d'exemple, la longueur de la clé peut être de 8, 16 ou 24 bits.
La carte génère un nombre aléatoire Rj-, de longueur RL (étape 22) . La longueur RL du nombre aléatoire Rj-, dépend de l'algorithme de cryptage mis en oeuvre. A titre d'exemple, la longueur RL peut être de 8 ou 16 bits. La carte détermine alors un message chiffré A^ par cryptage du nombre aléatoire Rj-, en utilisant la clé k avec l'identifiant Idp (étape 24) et transmet le message chiffré Ay au lecteur. A la phase S2, le lecteur décrypte le message chiffré Ay en utilisant la même clé k et obtient un nombre aléatoire Rp pcd (étape 26) . Le lecteur détermine alors un nombre aléatoire R'b pcd (étape 28) à partir du nombre aléatoire Rp pCp en décalant de façon circulaire à gauche, en représentation binaire, les bits du nombre aléatoire Rp pCp de plusieurs bits, par exemple de 8 bits. Le lecteur génère un nouveau nombre aléatoire Ra pCp de longueur RL (étape 30). Le lecteur détermine un message Ra pcdlIR'b pcd Par concaténation du nombre aléatoire Ra pCp et du nombre aléatoire R'p pCp et détermine un message chiffré By par cryptage du message Ra pCp| IR'b pcd en utilisant la clé k (étape 32) et transmet le message chiffré By à la carte. A la phase S3, la carte décrypte le message chiffré By en utilisant la clé k pour obtenir le message Ra pCCJ |R'p pcd (étape 36) . La carte détermine alors un nombre aléatoire R'p (étape 38) à partir du nombre aléatoire Rp en décalant de façon circulaire vers la gauche, en représentation binaire, les bits du nombre aléatoire Rp de plusieurs bits, par exemple de 8 bits. La carte compare les nombres aléatoires R'p pC<y et R'p. (étape 40). Si les deux nombres aléatoires R'p pCCj et R'p ne sont pas identiques, la carte interrompt l'opération d'authentification qui échoue (étape 42). Ceci correspond à l'authentification du PCD par le PICC. Si les deux nombres aléatoires R'p pCp et R'p sont identiques, la carte détermine alors un nombre aléatoire R'a (étape 44) à partir du nombre aléatoire Ra pCp en décalant de façon circulaire vers la gauche les bits du nombre aléatoire Ra pCd de plusieurs bits, par exemple de 8 bits. La carte détermine un message chiffré A2 par cryptage du nombre aléatoire R'a en utilisant la clé k (étape 46) et transmet le message chiffré A2 au lecteur. A la phase S4, le procédé peut comprendre des étapes supplémentaires (étape 48), notamment l'authentification du PICC par le PCD par la vérification du message A2, la détermination d'une clé de session utilisée pour les opérations ultérieures de cryptage et de décryptage par le lecteur et la carte. La clé de session peut être obtenue à partir des nombres aléatoires Ra et Rb.
Pour les procédés d'authentification de carte par lecture avec contact, il est connu de prévoir le comptage par la carte du nombre de tentatives d'authentification infructueuses et d'arrêter l'opération d'authentification lorsque le nombre de tentatives infructueuses dépasse un seuil. Toutefois, le comptage par la carte du nombre de tentatives d'authentification infructueuses, opération coûteuse en temps, n'est généralement pas prévu lors d'un procédé d'authentification d'une carte sans contact. En effet, une personne détenant un PCD frauduleux près du PICC pourrait transmettre des authentifications invalides jusqu'à ce que la carte soit bloquée. Pour des technologies qui ne prévoient pas un mécanisme de déblocage, ceci entraîne une destruction permanente de la carte. En outre, les échanges de signaux entre la carte et le lecteur n'ayant lieu que pendant la brève durée pendant laquelle la carte est à proximité du lecteur, l'opération d'authentification doit être la plus rapide possible. Un attaquant peut donc réaliser autant de tentatives d'authentification qu'il le souhaite.
Une faiblesse du procédé d'authentification décrit précédemment est qu'un attaquant peut répéter les étapes décrites précédemment réalisées par la carte à la phase SI de la même clé k. A chaque fois, un nouveau nombre aléatoire Rj-, et un nouveau message chiffré A]_ sont déterminés. L'analyse d'un nombre limité de traces d'attaques par canaux auxiliaires et les messages chiffrés A^ obtenus permet de réduire considérablement l'espace des clés k possibles sans qu'il y ait besoin alors d'exécuter à chaque répétition les autres phases du procédé d'authentification. Le fait que le PD génère des nouveaux nombres aléatoires fournit à l'attaquant une distribution intéressante de traces. L'attaquant peut ensuite réaliser une attaque par force brute sur 1'espace réduit des clés. L'attaquant sait que l'attaque a réussi lorsque la comparaison réalisée par la carte à l'étape 40 de la phase S3 n'aboutit pas à un échec.
Une autre faiblesse du procédé d'authentification décrit précédemment est que le message chiffré B]_ utilisé par la carte à la phase S3 peut être imposé par l'attaquant. Un attaquant peut donc répéter autant de fois que souhaité l'étape 36 de décryptage en imposant un message chiffré B]_ de son choix, obtenant ainsi des traces d'attaques par canaux auxiliaires. Toutefois, une attaque utilisant cette faiblesse prend plus de temps dans la mesure où les étapes des phases SI et S2 doivent être réalisées avant chaque tentative.
Des modes de réalisation d'un procédé d'authentification vont être décrits dans lesquels les étapes exécutées à la phase SI par la carte sont modifiées pour empêcher un attaquant d'utiliser ces étapes pour obtenir des informations suffisantes sur la clé k. La faiblesse décrite précédemment concernant les étapes réalisées par la carte à la phase SI ne peut alors plus être utilisée par un attaquant.
La figure 3 est un schéma-bloc simplifié d'un mode de réalisation d'un procédé d'authentification d'une carte PICC par un lecteur PCD. Le présent mode de réalisation du procédé d'authentification comprend les étapes du procédé d'authentification décrit précédemment en relation avec la figure 2 à la différence que les étapes 22 et 24 sont remplacées par une étape 50 dans laquelle le nombre A]_ est obtenu directement par génération d'un nombre aléatoire de longueur RL. Le présent mode de réalisation comprend, en outre, à la phase S3, avant l'étape 36, une étape 52 de détermination du nombre aléatoire Rj-, par décryptage du nombre A]_ en utilisant la clé k par la carte.
Selon une variante, l'étape 50 décrite précédemment est remplacée par une étape de détermination du message chiffré A]_ par le cryptage du nombre aléatoire en utilisant une clé dummy différente de la clé k.
Selon une autre variante, à l'étape 50, le message chiffré Ai est obtenu par cryptage d'un nombre donné, par exemple 0, avec une clé égale à un nombre aléatoire de longueur RL.
La faiblesse décrite précédemment concernant les étapes réalisées par la carte à la phase SI ne peut plus être utilisée par un attaquant puisque ces étapes ne comprennent plus d'étape de cryptage utilisant la clé k.
La figure 4 est un schéma-bloc simplifié d'un autre mode de réalisation d'un procédé d'authentification d'une carte par un lecteur. Dans le présent mode de réalisation, il est mis en oeuvre de façon aléatoire le procédé décrit précédemment en relation avec la figure 2 ou le procédé décrit précédemment en relation avec la figure 3.
Plus précisément, le mode de réalisation du procédé d'authentification comprend les étapes du procédé d'authentification décrit précédemment en relation avec la figure 2 à la différence que les étapes 22 et 24 sont remplacées par les étapes 60, 62, 64 et 66 décrites ci-après. La carte génère un nombre aléatoire Rç de longueur RL (étape 60). La carte détermine un bit aléatoire c (étape 62) et le compare à "0" (étape 64). Si le bit c est égal à "0", la carte détermine le message chiffré A^ par cryptage du nombre aléatoire R^ en utilisant la clé k (étape 66) et transmet le message chiffré A]_ au lecteur. Le nombre aléatoire Rj-, utilisé à la phase S3 est alors égal au nombre aléatoire R]_. Si le bit c est égal à "1", le nombre A]_ transmis par la carte au lecteur est égal à R^ et la carte réalise une opération de cryptage en attribuant au nombre R^ le résultat du cryptage du nombre aléatoire Rg en utilisant une clé dummy différente de la clé k (étape 68) . Le résultat de ce cryptage n'est pas utilisé mais assure qu'en utilisant une attaque par canaux auxiliaires, le cas dans lequel c est égal à "1" fournit la même trace que le cas dans lequel c est égal à "0".
Le présent mode de réalisation du procédé d'authentification comprend, en outre, à la phase S3, avant l'étape 36, les étapes supplémentaires 70, 72 et 74 décrites ci- après. La carte compare le bit aléatoire c à "0" (étape 70). Si le bit c est égal à "0", c'est-à-dire lorsque l'étape 66 a été exécutée à la phase SI, la carte exécute une opération de décryptage en attribuant à Ay le résultat d'un décryptage du nombre aléatoire Ry en utilisant une clé dummy différente de la clé k (étape 72). Le résultat de ce décryptage n'est pas utilisé mais assure qu'en utilisant une attaque par canaux auxiliaires, le cas dans lequel c est égal à "1" fournit la même trace que le cas dans lequel c est égal à "0".
Si le bit c est égal à "0", c'est-à-dire lorsque l'étape 68 a été exécutée à la phase Si, la carte détermine le nombre aléatoire Rp par le décryptage du nombre Ay en utilisant la clé k (étape 74).
La faiblesse décrite précédemment concernant les étapes réalisées par la carte à la phase SI ne peut plus être utilisée par un attaquant puisque ces étapes ne comprennent plus d'étape de cryptage utilisant la clé k. En outre, une étape de cryptage est toujours réalisée à la phase SI et une étape de décryptage est toujours réalisée à la phase S2 même si ces étapes ne sont pas nécessairement utiles selon la valeur du bit c. Ceci permet d'empêcher une attaque par canaux auxiliaires dans la mesure où un attaquant ne peut pas différencier les étapes de cryptage/décryptage utiles et non utiles.
La figure 5 est un schéma-bloc simplifié d'un autre mode de réalisation d'un procédé d'authentification d'une carte par un lecteur. Dans le présent mode de réalisation, la carte réalise les étapes 22 et 24 décrites précédemment seulement si la dernière procédure d'authentification s'est déroulée correctement. Lorsque la dernière procédure d'authentification ne s'est pas déroulée correctement, le nombre aléatoire Ry, et le message chiffré Ay utilisés à la dernière procédure d'authentification qui s'est déroulée correctement sont à nouveau utilisés.
Plus précisément, le présent mode de réalisation du procédé d'authentification comprend les étapes du procédé d'authentification décrit précédemment en relation avec la figure 2 et comprend, en outre, une étape 80 à laquelle la carte détermine si une variable booléenne ok est vraie, la variable ok étant initialisée à la valeur vraie à la première tentative d'authentification de la carte. Si la variable ok est à l'état vrai, les étapes 22 et 24 sont exécutées par la carte. Si la variable ok est à l'état faux, la carte réutilise les valeurs et Ap déterminées à la procédure d'authentification précédente (étape 82). Après avoir exécuté les étapes 22 et 24 ou l'étape 82, la carte met la variable ok à l'état faux (étape 84). Le présent mode de réalisation comprend, en outre, après les étapes 36 à 46, une étape 86 à laquelle la carte met la variable ok à l'état vrai.
Le présent mode de réalisation permet qu'une étape de cryptage à la phase SI ne soit réalisée par la carte que lorsque la procédure d'authentification précédente s'est déroulée correctement. Une attaque dans laquelle la phase SI serait répétée sans toutefois aboutir à une authentification réussie, notamment pour déterminer des informations sur la clé k, n'entraînerait pas à chaque répétition de la phase SI la réalisation d'une nouvelle étape de cryptage, ce qui réduit les informations utiles que peut espérer récupérer l'attaquant.
Une opération de cryptage/décryptage est effectuée en utilisant au moins un module de cryptage/décryptage. Un mode de cryptage/décryptage a une longueur de bloc de chiffrement, BL, et est adapté à crypter/décrypter des messages de la même longueur que la longueur de bloc de chiffrement. A titre d'exemple, pour l'algorithme DES, BL peut être de 8 bits et pour l'algorithme AES, BL peut être de 16 bits. Pour les messages qui sont plus longs que BL et correspondant à un multiple de BL, l'opération de cryptage/décryptage peut être effectuée par enchaînement des blocs de chiffrement (CBC) . Un autre mode de réalisation va maintenant être décrit qui est adapté au cas où le procédé de cryptage ou de décryptage utilisé pour déterminer les messages chiffrés Ap et Bp met en oeuvre un mode d'opération par enchaînement des blocs (CBC pour Cipher Block Chaining).
La figure 6 est un schéma-blocs d'un circuit de cryptage 90 illustrant le principe d'une opération de cryptage selon un mode d'opération CBC. Le circuit 90 comprend des modules MODg, MODg, MODg de cryptage, trois modules étant représentés en figure 6. Chaque module de cryptage MOD]_, MOD2, MOD3 peut effectuer une opération de cryptage avec la même clé k. Le circuit 90 reçoit, pour chaque module MODg, MOD2, MOD3, un bloc de message à chiffrer Eg, E2, E3 et fournit, pour chaque module MOD]_, MOD2, MOD3, un bloc de message chiffré Oy, O2 et O3. Chaque module MOD^, MOD2, MOD3 reçoit un nombre IN]_, IN2, IN3 et fournit le bloc de message chiffré O]_, 03, O3 par cryptage du nombre IN]_, IN2, IN3 en utilisant une clé key qui est la même pour tous les modules MODg, MOD2, MOD3.
Le mode d'opération est dit par enchaînement des blocs dans la mesure où chaque nombre qui est crypté par un module correspond au résultat de la fonction XOR appliquée entre le nombre d'entrée du module et le bloc de message crypté fourni par le module précédent. Comme cela est représenté en figure 6, le nombre IN3 est le résultat de la fonction XOR appliquée entre les nombres E3 et O2 et le nombre IN2 est le résultat de la fonction XOR appliquée entre les nombres E2 et O]_. Pour le premier module MOD]_, le nombre INy est obtenu par addition binaire du nombre Eg . et d'un nombre VI appelé vecteur d'initialisation.
La figure 7 est un schéma-blocs d'un circuit de cryptage 92 du type représenté en figure 6 pouvant être mis en oeuvre dans les modes de réalisation décrits précédemment dans le cas où le procédé de cryptage correspond à 1'algorithme AES ou 1'algorithme DES utilisant une clé ou deux clés. La longueur.de chaque nombre aléatoire utilisé par le lecteur ou la carte est alors égale à la longueur du nombre pouvant être crypté par un module de cryptage, c'est-à-dire la longueur, de bloc de chiffrement.
En figure 7, à titre d'exemple, on a représenté l'opération de cryptage pour l'obtention du message chiffré Bg à partir des nombres aléatoires Ra pCq et R^ pCCp Le message chiffré B]_ a deux fois la longueur RL et se divise en deux blocs juxtaposés, un premier bloc By,y et un deuxième bloc By 2, chacun ayant une longueur RL. Le module MODy reçoit le résultat de la fonction XOR appliquée entre le nombre aléatoire Ra pC(y et un vecteur d'initialisation IV et fournit le premier bloc By,y du message chiffré By. Le module MOD2 reçoit le résultat de la fonction XOR appliquée entre le nombre aléatoire Ry-, pCCy et le bloc de message crypté By,y et fournit le deuxième bloc By,2 du message chiffré By. A la première opération de cryptage, le vecteur d'initialisation IV est, par exemple, égal à "0". Le deuxième bloc By 2 est utilisé, par exemple, comme vecteur d'initialisation IV lors de la prochaine opération de cryptage. A titre de variante, IV est pris égal à "0" pour chaque opération de cryptage.
La figure 8 est un schéma-blocs d'un circuit de cryptage . 94 du type représenté en figure 6 pouvant être mis en oeuvre dans les modes de réalisation décrits précédemment dans le cas où le procédé de cryptage correspond à l'algorithme DES utilisant trois clés. La longueur RL, en représentation binaire, de chaque nombre aléatoire utilisé par le lecteur ou la carte est alors égale au double de la longueur BL.
En figure 8, à titre d'exemple, on a représenté l'opération de cryptage pour l'obtention du message chiffré By à partir des nombres aléatoires Ra pCj et Ry-, pCcj. Le message chiffré By a quatre fois la longueur BL et se divise en quatre blocs juxtaposés Byfya, By^yy^, By,2a et Bl,2b de longueur BL. Le nombre aléatoire Ra pCcj se divise en deux blocs juxtaposés Ra pcd, 1 et Ra pcd, 2 de longueur BL et le nombre aléatoire Ry-, pCCy se divise en deux blocs juxtaposés Ry-, pcd, 1 et Rb pcd, 2 de longueur BL. Le module MODy reçoit le résultat de la fonction XOR appliquée entre le bloc Ra pcd,1 et Ie vecteur d'initialisation IV et fournit le premier bloc By,ya du message chiffré By. Le module MOD2 reçoit le résultat de la fonction XOR appliquée entre le bloc Ra pCd, 2 et le bloc de message chiffré By,ya et fournit le deuxième bloc Bl,lb du message chiffré By. Le module MOD3 reçoit le résultat de la fonction XOR appliquée entre le nombre aléatoire Ry, pcd,1 et le bloc de message chiffré By^yy, et fournit le troisième bloc
Bp 2a du message chiffré Bp. Le module MOD4 reçoit le résultat de la fonction XOR appliquée entre le bloc Rj-, pCd,2 et Ie bloc Bp, 2a et fournit le quatrième bloc Bp,2b du message chiffré Bp. Le quatrième bloc Bp,2b est utilisé, par exemple, comme vecteur d'initialisation IV lors de la prochaine opération de cryptage. Les premier et deuxième blocs juxtaposés Bp,pa et Βρ,ρ^ forment un premier bloc Βρ,ρ de longueur RL du message chiffré Bp et les troisième et quatrième blocs juxtaposés Bp,2a et Bp,2b forment un deuxième bloc Bp, 2 de longueur RL du message chiffré Bp.
La figure 9 est un schéma-bloc simplifié d'un mode de réalisation d'un procédé d'authentification d'une carte par un lecteur.
Dans le présent mode de réalisation, à la phase S3, des étapes supplémentaires sont prévues de façon qu'un attaquant ne puisse plus commander le nombre utilisé pour une opération de cryptage ou de décryptage.
Plus précisément, le mode de réalisation du procédé d'authentification comprend les étapes du procédé d'authentification décrit précédemment en relation avec la figure 2 à la différence que, à la phase S3, l'étape 38 n'est pas présente et que la carte réalise à la phase S3 des étapes supplémentaires 100, 102, 104 et 106, avant l'étape 36, décrites ci-après. La carte détermine le nombre aléatoire R'b (étape 100) à partir du nombre aléatoire Rb en décalant de façon circulaire vers la gauche, en représentation binaire, les bits du nombre aléatoire Rb de plusieurs bits, par exemple de 8 bits. La carte met en oeuvre le procédé de cryptage (étape 102) en utilisant la clé k et le nombre aléatoire R'b qui est fourni, selon sa longueur, au premier module ou aux premiers modules du circuit de cryptage. Pour l'exemple de procédé de cryptage illustré en figure 7 dans lequel chaque module de cryptage peut recevoir un nombre ayant la même longueur RL que le nombre aléatoire R'b, Ie nombre aléatoire R'b est fourni au premier module de cryptage. Pour l'exemple de procédé de cryptage illustré en figure 8 dans lequel chaque module de cryptage peut recevoir un nombre ayant la moitié de la longueur RL du nombre aléatoire R'b' Ie premier bloc du nombre aléatoire R'b est fourni au premier module de cryptage et le deuxième bloc du nombre aléatoire R'b est fourni au deuxième module de cryptage. En outre, le procédé de cryptage est réalisé en utilisant comme vecteur initial IV le dernier bloc du message chiffré By qui est associé au nombre aléatoire Ra pCCp c'est-à-dire le bloc By,y du message chiffré By pour 1'exemple de procédé de cryptage illustré en figure 7 et le bloc By,yb du message chiffré By pour l'exemple de procédé de cryptage illustré par la figure 8. Le premier module ou les premiers modules du circuit de cryptage fournissent alors un bloc de message chiffré By,2 picc longueur RL. La carte compare alors le deuxième bloc By,2 du message chiffré By avec le bloc de message chiffré By,2 picc (étape 104) . Si le deuxième bloc du message chiffré By est différent-du nombre By,2 picc' la carte interrompt la phase d'authentification (étape 106). Si les deux nombres sont identiques, la carte continue à l'étape 36 décrite précédemment. A titre de variante, les étapes 40 et 42 peuvent ne pas être présentes.
Un attaquant souhaitant réaliser une attaque à la phase S3, peut imposer le message chiffré By utilisé par la carte à la phase S3. Toutefois, 1'attaquant,n'a pas accès au nombre aléatoire R'b· Comme une fonction XOR est appliquée entre le nombre aléatoire R'b et un bloc du message chiffré By, l'attaquant ne commande pas le nombre utilisé par les modules de cryptage lors de l'opération de cryptage.
Les modes de réalisation décrits précédemment sont mis en oeuvre côté carte et sont transparents pour le lecteur. Ils ne demandent aucune modification côté lecteur. Les cartes ainsi réalisées (programmées) sont donc compatibles avec les lecteurs existants.
Divers modes de réalisation ont été décrits. Diverses variantes et modifications apparaîtront à l'homme de l'art. En particulier, bien que les modes de réalisation aient été décrits en relation avec une carte à microcircuit, ils sont compatibles avec une réalisation dans tout dispositif de communication en champ proche dans lequel des problèmes similaires se posent, par exemple un téléphone mobile équipé d'un routeur NFC opérant en mode carte. Par ailleurs, bien que les modes de réalisation aient été plus particulièrement décrits en relation avec un exemple d'application à des transactions MIFARE, ils se transposent à d'autres applications dans lesquelles des problèmes similaires se posent. En outre, la mise en oeuvre pratique des modes de réalisation qui ont été décrits est à la portée de l'homme du métier à partir des indications fonctionnelles données ci-dessus et en utilisant ou programmant des circuits en eux-mêmes usuels. En particulier, un circuit intégré de communication sans contact auquel s'appliquent ces modes de réalisation comporte généralement au moins un microprocesseur, une ou plusieurs unités de mémoire volatile et non volatile, une interface de communication en champ proche et, souvent, d'autres circuits en fonction des applications hébergées.
Divers modes de réalisation avec diverses variantes ont été décrits ci-dessus. On note que l'homme de l'art peut combiner divers éléments de ces divers modes de réalisation et variantes sans faire preuve d'activité inventive. En particulier, le mode de réalisation décrit précédemment en relation avec la figure 9 peut être mis en oeuvre avec l'un quelconque des modes de réalisation décrits précédemment en relation avec les figures 3, 4 et 5.

Claims (15)

  1. REVENDICATIONS
    1. Procédé d'authentification d'un circuit de communication sans contact (PICC) par un terminal de communication sans contact (PCD) , comprenant successivement : une première phase (SI) comprenant la détermination par le circuit de communication sans contact d'un premier nombre (A]_) , la première phase se terminant par la transmission du premier nombre (A]_) par le circuit de communication sans contact au terminal de communication sans contact ; une deuxième phase (S2) comprenant la détermination par le terminal de communication sans contact d'un deuxième nombre (Rb pCd)/ par décryptage du premier nombre en utilisant une première clé (k) , la détermination par le terminal de communication sans contact d'un troisième nombre (Ra pcdl IR'b pcd) à partir du deuxième nombre (Rj-, pCj) et la détermination par le terminal de communication sans contact d'un quatrième nombre (B]_) par cryptage du troisième nombre (Ra pcdl lR'b pcd) en utilisant la première clé (k), la deuxième phase se terminant par la transmission du quatrième nombre (B]_) par le terminal de communication sans contact au circuit de communication sans contact ; et une troisième phase (S3) comprenant le décryptage par le circuit de communication sans contact du quatrième nombre (B]_) en utilisant la première clé (k) pour obtenir le troisième nombre (Ra pcdllR’b pcd) et l'interruption par le circuit de communication sans contact de l'authentification si un sixième nombre (R'b pcd) obtenu à partir du troisième nombre (Ra pcdllR'b pcd) est différent d'un septième nombre (R'b), dans lequel la première phase ne comprend pas d'opération de cryptage utilisant la première clé (k).
  2. 2. Procédé selon la revendication 1, dans lequel le septième nombre (R'b) est déterminé par le circuit de communication sans contact (PICC) à. partir d'un huitième nombre (Rb) obtenu par décryptage par le circuit de communication sans contact (PICC) du premier nombre (A]_) en utilisant la première clé (k).
  3. 3. Procédé selon la revendication 1 ou 2, comprenant, à la première phase (SI), la détermination d'un neuvième nombre (R]_), le neuvième nombre étant aléatoire, sans opération de cryptage par le circuit de communication sans contact (PICC).
  4. 4. Procédé selon la revendication 3, dans lequel, à la première phase (SI), le premier nombre (A^) est égal au neuvième nombre.
  5. 5. Procédé selon la revendication 3, dans lequel, à la première phase (SI), le premier nombre (A]_) est obtenu par cryptage par le circuit de communication sans contact (PICC) du neuvième nombre en utilisant une deuxième clé différente de la première clé (k) , la deuxième clé ayant la même taille que la première clé, l'algorithme de cryptage utilisant la deuxième clé étant le même que l'algorithme de cryptage utilisant la première clé.
  6. 6. Procédé selon la revendication 1 ou 2, dans lequel, à la première phase, le premier nombre (Ay) est obtenu par cryptage par le circuit de communication sans contact (PICC) d'un dixième nombre non aléatoire en utilisant une troisième clé qui est aléatoire, la troisième clé ayant la même taille que la première clé, l'algorithme de cryptage utilisant la troisième clé étant le même que l'algorithme de cryptage utilisant la première clé.
  7. 7. Procédé selon la revendication 3, dans lequel, à la première phase (SI), le circuit de communication sans contact (PICC) réalise de façon aléatoire les étapes suivantes : a) la détermination du premier nombre (A]_) comme étant égal au résultat du cryptage du neuvième nombre (R3J en utilisant la première clé (k) ; b) la détermination du premier nombre (A]_) comme étant égal au huitième nombre (R]_) .
  8. 8. Procédé selon la revendication 7, comprenant en outre à l'étape a) la détermination du huitième nombre (Rj-,) comme étant égal au neuvième nombre (R]_) et à l'étape b) la réalisation d'une opération de cryptage utilisant une quatrième clé (dummy) différente de la première clé (k) , la quatrième clé ayant la même taille que la première clé, l'algorithme de cryptage utilisant la quatrième clé étant le même que 1 ' algorithme de cryptage utilisant la première clé.
  9. 9. Procédé selon la revendication 7 ou 8, comprenant, en outre, à la troisième phase (S3), la réalisation d'une étape c) par le circuit de communication sans contact (PICC), l'étape c) comprenant, lorsque l'étape a) est réalisée, la réalisation d'une opération de décryptage utilisant une cinquième clé (dummy) différente de la première clé (k) , la cinquième clé ayant la même taille que la première clé, l'algorithme de décryptage utilisant la cinquième clé- étant le même que 1 ' algorithme de cryptage utilisant la première clé et l'étape c) comprenant, lorsque l'étape b) est réalisée, la détermination du huitième nombre (¾) par décryptage par le circuit de communication sans contact (PICC) du premier nombre (A^) en utilisant la première clé (k).
  10. 10. Procédé selon la revendication 3, comprenant successivement à la première phase (SI), si une variable booléenne (ok) est vraie, la détermination par le circuit de communication sans contact (PICC) du premier nombre (A]_) comme étant égal au résultat du cryptage du neuvième nombre (¾) en utilisant la première clé (k) et, si la variable booléenne (ok) est fausse, la réutilisation par le circuit de communication sans contact (PICC) de la dernière valeur déterminée du premier nombre (Al) et comprenant la mise de la variable booléenne (ok) à l'état faux.
  11. 11. Procédé selon la revendication 10, comprenant, en outre, à la troisième phase (S3), la mise par le circuit de communication sans contact (PICC) de la variable booléenne (ok) à l'état vrai si le sixième nombre (R’b pcd) obtenu à partir du quatrième nombre (Bj_) est égal au septième nombre (R'b) ·
  12. 12. Procédé selon l'une quelconque des revendications 1 à 11, comprenant, dans la seconde phase, la détermination par le terminal de communication sans contact (PCD) d'un onzième nombre (Ra_j5cd) ’ onzième nombre étant aléatoire, et la détermination par le terminal de communication sans contact (PCD) d'un douzième nombre (R'b pcd) basé sur le deuxième nombre (Rfo pcd) ’ le troisième nombre (Ra pcdl lR'b pcd) correspondant à la juxtaposition du onzième nombre (Ra pCCj) et du douzième nombre (R'b_pcd)·
  13. 13. Procédé selon l'une quelconque des revendications 1 à 12, comprenant en outre, dans la troisième phase, la détermination par le circuit de communication sans contact d'un treizième nombre (R'a) basé sur le troisième nombre (Ra pcdl IR'b pcd) ' la détermination d'un quatorzième nombre (A2) par cryptage du treizième nombre (R'a) en utilisant la première clé (k), la troisième phase (S3) se terminant avec la transmission du quatorzième nombre (A2) par le circuit de communication sans contact (PICC) au terminal de communication sans contact (PCD).
  14. 14. Circuit de communication sans contact (PICC) comportant un microprocesseur programmé pour la mise en oeuvre du procédé selon l'une quelconque des revendications 1 à 13.
  15. 15. Carte à microcircuit comportant un circuit programmé pour la mise en oeuvre du procédé selon l'une quelconque des revendications 1 à 13.
FR1655074A 2016-06-03 2016-06-03 Authentification d'une carte par lecture sans contact Expired - Fee Related FR3052279B1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
FR1655074A FR3052279B1 (fr) 2016-06-03 2016-06-03 Authentification d'une carte par lecture sans contact
US15/332,758 US10237071B2 (en) 2016-06-03 2016-10-24 Authentication of a card by contactless reading
EP16199687.1A EP3252993B1 (fr) 2016-06-03 2016-11-18 Authentification d'une carte par lecture sans contact
CN201611083056.3A CN107465655B (zh) 2016-06-03 2016-11-30 认证方法和非接触式通信电路

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1655074A FR3052279B1 (fr) 2016-06-03 2016-06-03 Authentification d'une carte par lecture sans contact
FR1655074 2016-06-03

Publications (2)

Publication Number Publication Date
FR3052279A1 FR3052279A1 (fr) 2017-12-08
FR3052279B1 true FR3052279B1 (fr) 2019-06-21

Family

ID=57136987

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1655074A Expired - Fee Related FR3052279B1 (fr) 2016-06-03 2016-06-03 Authentification d'une carte par lecture sans contact

Country Status (4)

Country Link
US (1) US10237071B2 (fr)
EP (1) EP3252993B1 (fr)
CN (1) CN107465655B (fr)
FR (1) FR3052279B1 (fr)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3080927B1 (fr) * 2018-05-03 2024-02-02 Proton World Int Nv Authentification d'un circuit electronique
US11276258B2 (en) * 2020-06-15 2022-03-15 Delphian Systems, LLC Enhanced security for contactless access card system

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MY131509A (en) * 1999-03-15 2007-08-30 Sony Corp Data processing method, apparatus and system for encrypted- data transfer
US6898708B2 (en) * 1999-12-07 2005-05-24 Sanyo Electric Co., Ltd. Device for reproducing data
US9454752B2 (en) * 2001-07-10 2016-09-27 Chartoleaux Kg Limited Liability Company Reload protocol at a transaction processing entity
JP2006065660A (ja) 2004-08-27 2006-03-09 Sony Corp 端末機器、情報配信サーバ、および情報配信方法
JP2006080642A (ja) * 2004-09-07 2006-03-23 Sony Corp 情報処理装置および方法、プログラム並びに記録媒体
PL3487155T3 (pl) 2005-12-15 2022-01-03 Nokia Technologies Oy Sposób, urządzenie i program komputerowy do sieciowej zdalnej kontroli bezstykowej bezpiecznej pamięci masowej
US20100146273A1 (en) * 2008-12-04 2010-06-10 Electronics And Telecommunications Research Institute Method for passive rfid security according to security mode
KR101261674B1 (ko) * 2008-12-22 2013-05-06 한국전자통신연구원 다운로드 제한 수신 시스템에서의 상호 인증 방법 및 장치
ITMI20082364A1 (it) * 2008-12-31 2010-07-01 Incard Sa Metodo per proteggere un dispositivo crittografico contro attacchi spa, dpa e temporali
CN101866411B (zh) * 2009-04-16 2012-07-25 深圳市数智国兴信息科技有限公司 非接触式cpu卡一卡多应用安全认证加密方法及系统
JP5293572B2 (ja) * 2009-11-17 2013-09-18 富士通セミコンダクター株式会社 設計検証装置、設計検証方法及び設計検証プログラム
US20110291803A1 (en) 2010-05-27 2011-12-01 Zeljko Bajic Rfid security and mobility architecture
WO2013012435A1 (fr) * 2011-07-18 2013-01-24 Hewlett-Packard Development Company, L.P. Zéroïsation de paramètres de sécurité
CN102346862B (zh) * 2011-09-20 2014-02-05 飞天诚信科技股份有限公司 非接触式卡的认证方法和装置
US20140023195A1 (en) * 2012-07-23 2014-01-23 Electronics And Telecommunications Research Institute Radio frequency identification (rfid) tag, interrogator, and method for authentication between the rfid tag and the interrogator
US9715586B2 (en) 2012-09-04 2017-07-25 Legic Identsystems Ag Read/write device and transponder for exchanging data via an electromagnetic field
SG10201405789YA (en) * 2014-09-16 2016-04-28 Smart Communications Inc System, method and apparatus for updating a stored value card

Also Published As

Publication number Publication date
FR3052279A1 (fr) 2017-12-08
EP3252993A1 (fr) 2017-12-06
US10237071B2 (en) 2019-03-19
EP3252993B1 (fr) 2020-08-19
CN107465655A (zh) 2017-12-12
US20170353312A1 (en) 2017-12-07
CN107465655B (zh) 2020-08-28

Similar Documents

Publication Publication Date Title
EP3152860B1 (fr) Procédé d&#39;authentification d&#39;une première entité électronique par une seconde entité électronique et entité électronique mettant en oeuvre un tel procédé
EP1798888B1 (fr) Protection de l&#39;exécution d&#39;un algorithme DES
FR3002400A1 (fr) Generation d&#39;une cle de session pour l&#39;authentification et la transmission de donnees securisees
FR2986631A1 (fr) Dispositif et procede de production d&#39;un code d&#39;authentification d&#39;un message
CA2816933C (fr) Protection contre les ecoutes passives
EP0606792A1 (fr) Procédé d&#39;authentification d&#39;un ensemble informatique par un autre ensemble informatique
EP2795833A1 (fr) Procede d&#39;authentification entre un lecteur et une etiquette radio
FR3052280A1 (fr)
EP3185468B1 (fr) Procédé de transmission de données, procédé de réception de données, dispositifs et programmes correspondants
FR3052279B1 (fr) Authentification d&#39;une carte par lecture sans contact
EP3419246B1 (fr) Procédé d&#39;authentification par défi-réponse d&#39;un élément sécurisé (se) auprès d&#39;un microcontrôleur
EP1538508A1 (fr) Procédé et dispositif de chiffrement et dechiffrement à la volée
WO2012031848A1 (fr) Procede simplifie de personnalisation de carte a puce et dispositif associe
EP2374240B1 (fr) Procede de mise en oeuvre d&#39;un algorithme de chiffrement par blocs
EP3340096B1 (fr) Procédé de configuration d&#39;un programme cryptographique destiné à être exécuté par un terminal
EP3021515B1 (fr) Amélioration de l&#39;intégrité authentique de données à l&#39;aide du dernier bloc chiffrant ces données en mode cbc
WO2009068658A1 (fr) Procedes et dispositifs de cryptage et de decryptage d&#39;un message de donnees a cle secrete aleatoire
EP1479189A1 (fr) Procede de cryptographie utilisant un algorithme cryptographique symetrique par flot et application a une carte a puce
FR2753027A1 (fr) Instrument de securisation d&#39;echanges de donnees

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20171208

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 5

ST Notification of lapse

Effective date: 20220205