EP1234284A1 - Procede de securisation de la phase de pre-initialisation d'un systeme embarque a puce electronique, notamment d'une carte a puce, et systeme embarque mettant en oeuvre le procede - Google Patents

Procede de securisation de la phase de pre-initialisation d'un systeme embarque a puce electronique, notamment d'une carte a puce, et systeme embarque mettant en oeuvre le procede

Info

Publication number
EP1234284A1
EP1234284A1 EP01943588A EP01943588A EP1234284A1 EP 1234284 A1 EP1234284 A1 EP 1234284A1 EP 01943588 A EP01943588 A EP 01943588A EP 01943588 A EP01943588 A EP 01943588A EP 1234284 A1 EP1234284 A1 EP 1234284A1
Authority
EP
European Patent Office
Prior art keywords
key
secret
bytes
des
algorithm
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.)
Withdrawn
Application number
EP01943588A
Other languages
German (de)
English (en)
Inventor
Nicolas Fougeroux
Benoít BOLE
Patrice Hameau
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.)
CP8 Technologies SA
Original Assignee
Bull CP8 SA
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 Bull CP8 SA filed Critical Bull CP8 SA
Publication of EP1234284A1 publication Critical patent/EP1234284A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • 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/105Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems involving programming of a portable memory device, e.g. IC cards, "electronic purses"
    • 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/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • 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/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/355Personalisation of cards for use
    • G06Q20/3558Preliminary personalisation for transfer to user
    • 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
    • G06Q20/4097Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
    • G06Q20/40975Device specific authentication in transaction processing using mutual authentication between devices and transaction partners using encryption therefor
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/0806Details of the card
    • G07F7/0813Specific details related to card security
    • G07F7/0826Embedded security module
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3249Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using RSA or related signature schemes, e.g. Rabin scheme
    • 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
    • H04L9/3273Cryptographic 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 for mutual authentication

Definitions

  • the invention relates to a method for securing a predetermined operation, in particular the pre-initialization phase of an on-board system with an electronic chip, by the secure loading of an encryption key for dedicated use. It applies more particularly to a smart card.
  • the invention also relates to an on-board system for implementing the method.
  • pre-initialization is understood in a general sense. It relates in particular to the manufacturing phase of a traditional smart card or to the phase preceding the initialization phase of a so-called open smart card.
  • on-board system refers to various systems or devices having in common the fact of having an electronic chip comprising memory and data processing means, generally constituted by a microprocessor or a microcontroller. Such an on-board system can be constituted in particular by a smart card.
  • the manufacturing of a smart card is carried out in two main phases.
  • an electronic chip is manufactured by a first entity, which will be called “founder” below.
  • this electronic chip is placed in a module and then integrated into a support, namely a substantially rectangular piece of plastic, constituting the smart card itself.
  • This operation is generally carried out by a second entity, distinct from the first, which will be called hereinafter "inserter”.
  • pre-personalizer performs the aforementioned pre-initialization operation.
  • the manufacturing key securing all the stages of pre-initialization of a smart card is written in clear and without prior authentication by the card designer.
  • This operating mode poses several problems: if cards are stolen during their transport from the founder to the inserter, no software security (“software”) is ensured: the cards can be fraudulently pre-initialized and used in a malicious manner by the following ; a fraudster making a card at any cloned point can insert it into the carding chain without being spotted; and - a simple line espionage makes it possible to obtain the manufacturing key transmitted in clear.
  • the invention aims to overcome the drawbacks of the devices of the known art, some of which have just been mentioned.
  • the writing of the manufacturing key is protected by mutual authentication between a body known by the acronym "SAM” (for "Security Access Module” or “ Secure Access Module ”) and the smart card, so as to take advantage of the use of a false" SAM “module or a cloned smart card or else having a non-volatile memory,” ROM “or other ", falsified.
  • SAM Secure Access Module
  • this module will be called” SAM ". It can be hosted in a microcomputer or a smart card, for example.
  • SAM as being a” key-carrying "organ. This in fact stores a secret key which is never disclosed, in the sense that it is not communicated to the outside world. It is used to calculate other keys allowing the aforementioned mutual authentication.
  • the authentication of the "SAM” by the smart card uses an asymmetric type encryption algorithm. It may be, for example, the algorithm widely used in the field of banking applications and known by the acronym "RSA” (for “Rivest, Shamir and Adieman", inventors designated in US Patent 4,405,829 A) .
  • RSA for "Rivest, Shamir and Adieman", inventors designated in US Patent 4,405,829 A
  • a smart card being provided only with limited computer resources, it will be preferable to use, for this purpose, the so-called “Rabin” algorithm. Indeed, in the latter case, the necessary computing power is less, which is better suited to the characteristics specific to a device of the chip card or similar type.
  • the asymmetric type algorithm used is the "Rabin” algorithm.
  • this is advantageously based on a symmetrical algorithm, preferably of the type called “triple DES” (for "Data Encryption System”).
  • the method according to the invention then allows the authenticated "SAM" to load the manufacturing key securely to the smart card itself authenticated.
  • the main object of the invention is therefore a method of securely loading a key dedicated to securing a predetermined operation in memory means of an electronic chip of an on-board system, said dedicated key being contained in a device.
  • said security device comprising bidirectional communication means with said electronic chip, characterized in that, said memory means of said electronic chip storing a symmetric secret encryption key and an asymmetric public key and said security device storing the same secret encryption key symmetrical and the asymmetric secret key corresponding to the public key of said electronic chip, it comprises: - a first phase consisting in the authentication of said security device by said electronic chip and comprising the steps of generation by the electronic chip of a first random number and its transmission n to the security device, the generation by the latter of a second random number and of a first cryptogram, from said first and second random numbers, by the application of a signature algorithm of asymmetric type, to the using said secret key asymmetrical, and its transmission to said electronic chip so as to carry out therein said authentication by verification using said public key;
  • a second phase consisting in the authentication of said electronic chip and comprising the steps of generation, by the electronic chip and said security device of a secret key known as a session key from said first random number, by the application of a symmetric type encryption algorithm, using said secret encryption key, followed by the generation of a second cryptogram by the application of a symmetric type encryption algorithm, using said secret key session and its transmission to said security device so as to perform said authentication by verification using said session key;
  • the invention also relates to an on-board electronic chip system for implementing the method.
  • FIG. 1 schematically illustrates an example of configuration of the memory of a chip card according to one aspect of the invention, for the registration of a public key
  • FIG. 2 schematically illustrates the main exchanges of information for the mutual authentication of a so-called "SAM" module, key holder, and of a smart card, according to the method of the invention
  • FIG. 3 illustrates an example of concatenated data used for the calculation of a Rabin signature on random numbers generated respectively by the smart card and the "SAM" module, according to one aspect of the method of the invention
  • FIG. 4 illustrates, in one example, the generation of a session key in the smart card, according to one aspect of the invention
  • FIG. 5 illustrates, in one example, the generation of a cryptogram in the smart card, using the session key, according to one aspect of the invention
  • FIG. 6 illustrates an example of concatenated data used for the calculation of a Rabin signature, calculated by the "SAM", on the command for loading the manufacturing key to be transferred encrypted in the smart card.
  • the method according to the invention requires, from the point of view of the smart card and of the "SAM” module, a symmetrical secret key, which will be called hereinafter master key K M.
  • This key K M must be present as soon as the electronic chip or "chip” leaves the entity which has been called “founder”.
  • This key K M is carried out in a non-volatile part of the memory with which the electronic chip is provided: fixed memory of “ROM” type or semi-fixed of “EEPROM” type or the like.
  • the key K M is written "under point" in "EEPROM” by the founder.
  • the bytes making up the K M key are extremely sensitive data and should be treated as security bytes. Storage in "EEPROM” allows a possible diversification of this K M key for several batches of cards.
  • the method according to the invention also requires, from the point of view of the smart card, an asymmetric public key, which will be called hereinafter asymmetric public key n.
  • This key n fixed for all cards, must be present as soon as the electronic chip or "chip” leaves the entity which has been called “founder”.
  • the storage of this key n is carried out in a non-volatile part of the memory with which the electronic chip is provided: fixed memory of “ROM” type and / or semi-fixed of “EEPROM” type or similar
  • the non-volatile memory of the electronic chip has a hybrid, physical and logical, particular configuration.
  • a fixed part is provided, of the "ROM” type and a semi-fixed re-programmable part, for example of the "EEPROM” type.
  • the bytes of the aforementioned public key are distributed between these two memory areas in the particular way explained below. The bytes must be present as soon as the chip leaves the home of the founder.
  • FIG. 1 schematically illustrates such a memory configuration of a chip card CP.
  • the memory means M comprise in particular a memory part 1, of the "ROM” type, and a memory part 2, of the "EEPROM” type.
  • eight blocks of twelve bytes of digital data, B ⁇ to B a representing the aforementioned public key n, are recorded in the memory “ROM” 1.
  • B ⁇ to B s there is an intentionally wrong byte, arbitrarily the bytes, O ⁇ to O ⁇ .
  • Eight correct bytes, 0 to 0 ' 8 corresponding to these erroneous bytes Oi to O ⁇ , are recorded in the memory "EEPROM" 2.
  • the first phase of the method according to the invention consists in authenticating the "SAM" vis-à-vis the smart card CP.
  • This phase notably includes a step of calculation by the "SAM" of a cryptogram by making use of an asymmetric secret key corresponding to the asymmetric public key n contained in the card.
  • the key is composed of two prime numbers, which will be called arbitrarily p and g.
  • K pq the asymmetric secret key of the "SAM.
  • the SAM "identifies itself vis-à-vis the smart card CP and the latter recognizes its interlocutor with the public key n.
  • SAM 3 recovers from the chip card CP a random number N aC over sixteen bytes.
  • the number N aC will be called hereinafter “card random number” and can be generated, for example, by the calculation means of the chip card CP, in the example illustrated, a microprocessor CPU.
  • the "SAM” 3 generates also a random number of sixteen bytes which will be called “SAM random number" N aS .
  • a Rabin signature which will be called SR below, is calculated by the "SAM" 3 on ninety-six bytes of data, referenced DSR.
  • This DSR data can be in accordance with the concatenation illustrated in FIG. 3, so as to reach the aforementioned ninety-six bytes:
  • DSR ⁇ a sequence of fifty nine bytes of filling, DSR ⁇ , having for example the following fixed configuration: 01, FF, ... FF, in hexadecimal; - a series of five bytes, DSR 2 , known as the header of the mutual authentication command; and
  • DSR3 thirty two bytes, DSR3, constituted by the concatenation of the numbers N aS and N aC above.
  • the sequence of five bytes from the header of the mutual authentication command, DSR 2 can advantageously consist of the content of a command of a type called "APDU", if the chip card CP is read by a smart card reader according to a protocol conforming to the standards "ISO 7816-1" to "ISO 7816-4". More specifically, it may be the code associated with a loading instruction.
  • the Rabin signature SR and the random number N aS are sent to the smart card CP, by means of an incoming-outgoing order 0 E s, indicating mutual authentication.
  • the "SAM” 3 is the only one capable of generating this SR signature, since the secret key which it stores is never disclosed.
  • the smart card CP verifies the Rabin signature using the asymmetric public key n which it stores, which makes it possible to authenticate the "SAM” 3.
  • the second phase of the method consists in authenticating the smart card CP vis-à-vis the "SAM" 3, so as to complete the mutual authentication of the two entities.
  • the smart card CP From the master secret key K M and the aforementioned random number of sixteen bytes, N aC , the smart card CP generates a secret symmetric key so-called session, K s , of sixteen bytes, making it possible to calculate a cryptogram specific to the smart card CP.
  • this secret session key, K s is obtained by carrying out an encryption by a triple type algorithm "DES" on the two parts, ⁇ / aC ⁇ and ⁇ / aC 2, of the random number card N aC ,
  • DES triple type algorithm
  • an encryption by a triple DES type algorithm comprises, in cascade, a first encryption, using a key (in this case the master secret key K M ), by a "DES "direct, a second reverse” DES “and a third” DES ", also direct.
  • the triple “DES” is carried out directly using three cascaded modules, referenced Du, D 2 ⁇ and D 31 .
  • the modules D and D 31 receive, on their key inputs, the same key value, in this case the "most significant" part of eight bytes, K M , of the key K M , while the module D 2 ⁇ receives , on its key entry, the "least significant” part, K M2 , always on eight bytes.
  • the “most significant” part of eight bytes, K S ⁇ , of the secret session key K s is obtained.
  • This eight-byte word, K Sl can be temporarily stored in a memory register or in a part of the random access memory with which the chip card CP is usually provided.
  • the part " S1 is re-injected on a first input of a logic circuit of the" OR-exclusive “type referenced XOR. This receives, on a second input, the part” most significant "of eight bytes, N aC2 , of the random number smart card, N aC .
  • the output of this logic circuit XOR is transmitted to the input of an encryption chain in triple "DES". This triple "DES” is carried out using three modules in cascade, referenced D 12 , D 22 and D 32.
  • the modules D 12 and D 32 receive, on their key inputs, the same key value, in this case the "most significant” part of eight bytes , Km, of the key K M , while the module D 22 receives, on its key input, the "least significant” part, K M2 , always on eight bytes.
  • the “least significant” part of eight bytes, K S2 of the secret session key K s is obtained.
  • This eight-byte word, K S2 can also be temporarily stored in a memory register or in a part of the random access memory.
  • the secret key K M can be present in "ROM”, or written “under point” in "EEPROM”, as it was recalled previously.
  • the "SAM" 3 is able to calculate the same secret session key K s , as has just been described, since the latter also stores the master secret key K M.
  • the smart card CP In an additional step, the smart card CP generates a series of bytes which will be called hereinafter "card cryptogram" CC.
  • card cryptogram CC.
  • the latter is obtained by encrypting the random number "SAM” transmitted to the smart card CP using the secret session key K s which has just been calculated.
  • Figure 5 illustrates the process. The latter is similar to that which made it possible to calculate the secret session key K s . It notably uses "OR-exclusive" functions and encryption according to the triple "DES" algorithm.
  • the random number "SAM”, N aS has been received from “SAM” 3 and is temporarily stored in a memory, register or other location.
  • the most significant part on eight bytes, ⁇ / aS ⁇ , of this random number, N aS is subjected to a triple "DES" by the chain Du to D 31 .
  • the encryption key is the secret session key K s calculated in the previous step. More precisely, the key entries of the "DES” Du and D 31 receive the eight most significant bytes, K S ⁇ , of this key K s , and the key entry of the "DES” D 2 ⁇ , the eight least significant bytes, K S2 .
  • This process calculates the eight most significant bytes, CC, of the CC cryptogram.
  • CC bytes ⁇ are re-injected at the input of the triple encryption chain "DES", D 12 to D 32 , for the least significant bytes, N aS2 , of the random number "SAM" N aS , more precisely on a inputs of a second XOR 2 "OR-exclusive" circuit, the first input receiving the eight least significant bytes of the random number N aS . Is this the output of this XOf circuit? 2 which is transmitted to the above-mentioned channel.
  • the key entries of "DES” D 12 and D 3 receive the eight most significant bytes, K S of this key K s , and the key entry of "DES” D 22 , the eight most significant bytes , K S2 .
  • the output of "DES” D 32 generates the eight least significant bytes CC 2 of the CC card cryptogram.
  • This cryptogram is transmitted to the "SAM” 3, by means of the OES input-output order (FIG. 2) of mutual authentication.
  • the "SAM” 3 can authenticate the smart card CP from the cryptogram card CC, since it has also calculated the session key K s , as recalled above.
  • the last step consists of loading the so-called manufacturing key K F into the memory of the chip card CP., Using a loading command C cn .
  • This key K F is secured by encryption using the secret session key K s , in so-called "CBC" mode (for "Concatened Blocks Ciphering"). If the load command fails, the session key K s is lost and a new mutual authentication is necessary, with the calculation of a new session key.
  • FIG. 6 schematically illustrates the DSR data used to calculate a Rabin signature SR '.
  • DSR ie x bytes, for example of configuration: 01, FF ... FF, in hexadecimal (the value of x is chosen so that the total number of bytes of DSR 'is equal to four twenty sixteen).
  • the invention achieves the goals it has set for itself.
  • the loading of the manufacturing key used subsequently for securing the pre-initialization steps of the chip card CP is carried out with a very high level of security.
  • the method makes it possible to load into each chip card CP its own key, or in other words a key different from the other chip cards.
  • the method does not necessarily require the use of long and costly operations, of the reported type known as "under the tip of the founder".
  • the precise numerical values, number of bytes or others, have been indicated only for the purpose of fixing ideas and cannot in any way limit the scope of the invention.
  • the length of the encryption keys depends on the degree of security that is expected to be achieved and can result from technological choices, linked for example to de facto standards and / or to the types of algorithms chosen.
  • the invention is not limited to only applications based on smart cards. It can find application within the framework of any on-board system comprising an electronic chip or a similar member, in which it is necessary to load a key for securing predetermined operations.
  • the operations in question may be pre-initialization operations, as described in detail, but also other types of operations.

Abstract

L'invention concerne la sécurisation de la phase de pré-initialisation d'une carte à puce (CP) avec authentification mutuelle de cette carte (CP), enregistrant une clé secrète symétrique (KM) et une clé publique asymétrique (n), et d'un dispositif de sécurité (3) emmagasinant la même clé secrète (KM) et la clé secrète asymétrique (Kpq) correspondant à la clé publique (n). La carte (CP) et le dispositif (3) fournissent des nombres aléatoires (NaC). Le dispositif (3) s'authentifie en transmettant à la carte (CP) un cryptogramme (SR) dérivé des deux nombres aléatoires, par usage d'un algorithme asymétrique. La carte (CP) s'authentifie en calculant une clé secrète de session dérivée du nombre aléatoire (NaC), à l'aide d'un algorithme symétrique et de la clé secrète (KM), et en transmettant au dispositif (3) un cryptogramme (CC) dérivé du second nombre aléatoire, à l'aide de l'algorithme symétrique et de la clé de session. La clé dédiée (KF) est transmise à la carte, chiffrée par la clé de session (KS).

Description

PROCÉDÉ DE SÉCURISATION DE LA PHASE DE PRÉ-INITIALISATION
D'UN SYSTÈME EMBARQUÉ À PUCE ÉLECTRONIQUE, NOTAMMENT
D'UNE CARTE À PUCE, ET SYSTÈME EMBARQUÉ METTANT EN
ŒUVRE LE PROCÉDÉ
L'invention concerne un procédé de sécurisation d'une opération prédéterminée, notamment de la phase de pré-initialisation d'un système embarqué à puce électronique, par le chargement sécurisé d'une clé de chiffrement à usage dédié. Elle s'applique plus particulièrement à une carte à puce.
L'invention concerne encore un système embarqué pour la mise en œuvre du procédé.
Dans le cadre de l'invention, le terme "pré-initialisation" s'entend dans un sens général. Il est notamment relatif à la phase de fabrication d'une carte à puce traditionnelle ou à la phase précédant la phase d'initialisation d'une carte à puce dite ouverte.
De même, le terme "système embarqué" vise des systèmes ou dispositifs divers ayant en commun le fait de disposer d'une puce électronique comprenant des moyens de mémoire et de traitement de données, généralement constitués par un microprocesseur ou un microcontrôleur. Un tel système embarqué peut être constitué notamment par une carte à puce.
Pour fixer les idées, on se placera dans ce qui suit dans le cas de l'application préférée de l'invention, à savoir celui de la pré-initialisation d'une carte à puce.
Dans la plupart des applications à base de carte à puce, il est dévolu à ces dernières des fonctions relatives à la sécurité. Ce terme recouvre d'ailleurs lui-même divers concepts : confidentialité, authentification, etc. Pour ce faire, on inscrit, dans une partie non volatile des moyens de mémoire précités de la puce électronique, de façon définitive (utilisation de mémoires fixes du type dit "ROM", pour "Read Only Memory" ou mémoire à lecture seule), ou semi-fixe (mémoire re-programma le du type "EEPROM", pour "Electrically Erasable Programmable Read Only Memory" ou mémoire effaçable programmable par voie électrique à lecture seule, etc.), des données dites secrètes nécessaires à ces fonctions : algorithmes de chiffrage, clés secrètes de chiffrage, données d'identification, etc.
Parmi ces données, il existe une clé dite de fabrication permettant traditionnellement de sécuriser toutes les étapes de pré-initialisation de la carte à puce. De façon habituelle, la fabrication d'une carte à puce s'effectue en deux grandes phases. Pendant la première phase, une puce électronique est fabriquée par une première entité, que l'on appellera ci-après "fondeur". Pendant une seconde phase cette puce électronique est mise en module puis intégrée dans un support, à savoir une pièce de plastique sensiblement rectangulaire, constituant la carte à puce proprement dite. Cette opération est réalisée généralement par une seconde entité, distincte de la première, que l'on appellera ci-après "encarteur".
Une troisième entité, que l'on appellera ci-après "pré- personnalisateur", réalise l'opération de pré-initialisation précitée. Dans l'état actuel de la technique, de manière quasi systématique, la clé de fabrication sécurisant toutes les étapes de pré-initialisation d'une carte à puce est écrite en clair et sans authentification préalable par Pencarteur. Ce mode opératoire pose plusieurs problèmes : si des cartes sont subtilisées lors de leur transport du fondeur vers l'encarteur, aucune sécurité logicielle ("software") n'est assurée : les cartes peuvent être frauduleusement pré-initialisées et utilisées de façon malveillante par la suite ; un fraudeur réalisant une carte en tout point clonée peut l'insérer dans la chaîne d'encartage sans être repéré ; et - un simple espionnage de ligne permet d'obtenir la clé de fabrication transmise en clair. Une solution serait de faire écrire la clé de fabrication par le fondeur lors d'une opération dite "sous pointe", mais cette solution est très onéreuse, car les données secrètes doivent être diversifiées pour chaque carte (données non fixes), ce qui de plus est mal adapté aux cadences de fabrication du fondeur. Ce procédé onéreux n'est donc pas réaliste et, de ce fait, pratiquement jamais mis en œuvre.
L'invention vise à pallier les inconvénients des dispositifs de l'art connu, et dont certains viennent d'être rappelés.
Pour ce faire, selon une première caractéristique avantageuse de l'invention, l'écriture de la clé de fabrication est protégée par une authentification mutuelle entre un organe connu sous le sigle anglo-saxon "SAM" (pour "Security Access Module" ou "Module d'Accès Sécurisé") et la carte à puce, de manière à se prévaloir de l'utilisation d'un faux module "SAM" ou d'une carte à puce clonée ou encore ayant une mémoire non volatile, "ROM" ou autre", falsifiée. Ci-après, par mesure de simplification, ce module sera appelé "SAM". Celui-ci peut être hébergé dans un microordinateur ou une carte à puce, par exemple. De façon générale, on peut définir le "SAM" comme étant un organe "porteur de clé". Celui-ci emmagasine en effet une clé secrète qui n'est jamais divulguée, dans le sens où elle n'est pas communiquée au monde extérieur. Elle sert à calculer d'autres clés permettant l'authentification mutuelle précitée.
L'authentification du "SAM" par la carte à puce utilise un algorithme de chiffrage de type asymétrique. Il peut s'agir, par exemple, de l'algorithme très utilisé dans le domaine des applications bancaires et connu sous le sigle "RSA" (pour "Rivest, Shamir et Adieman", inventeurs désignés dans le brevet US 4 405 829 A). Cependant, une carte à puce n'étant pourvue que de ressources informatiques limitées, on préférera utiliser, pour ce faire, l'algorithme dit de "Rabin". En effet, dans ce dernier cas, la puissance de calcul nécessaire est moindre, ce qui convient mieux aux caractéristiques propres à un dispositif du type carte à puce ou similaire. Aussi, on considérera ci-après, sans que cela limite en quoi que ce soit la portée de l'invention, que l'algorithme de type asymétrique utilisé est l'algorithme de "Rabin".
En ce qui concerne l'authentification de la carte à puce par le module "SAM", celle-ci est basée avantageusement sur un algorithme symétrique, préferentiellement du type dit "triple DES" (pour "Data Encryption System").
En utilisant l'algorithme de Rabin pour l'authentification du "SAM" par la carte à puce et l'algorithme "triple DES" pour l'authentification de la carte à puce par le "SAM", le recours à un cryptoprocesseur n'est pas nécessaire pour mettre en œuvre le mécanisme de sécurisation, ce qui est avantageux également dans le cadre des applications visées par l'invention.
Le procédé selon l'invention permet ensuite au "SAM" authentifié de charger la clé de fabrication de manière sécurisée vers la carte à puce elle-même authentifiée. L'invention a donc pour objet principal un procédé de chargement sécurisé d'une clé dédiée à la sécurisation d'une opération prédéterminée dans des moyens de mémoire d'une puce électronique d'un système embarqué, ladite clé dédiée étant contenue dans un dispositif de sécurité comportant des moyens de communication bidirectionnels avec ladite puce électronique, caractérisé en ce que, lesdits moyens de mémoire de ladite puce électronique emmagasinant une clé de chiffrement secrète symétrique et une clé publique asymétrique et ledit dispositif de sécurité emmagasinant la même clé de chiffrement secrète symétrique et la clé secrète asymétrique correspondant à la clé publique de ladite puce électronique, il comprend : - une première phase consistant en l'authentification dudit dispositif de sécurité par ladite puce électronique et comprenant les étapes de génération par la puce électronique d'un premier nombre aléatoire et sa transmission au dispositif de sécurité, la génération par celui-ci d'un deuxième nombre aléatoire et d'un premier cryptogramme, à partir desdits premier et deuxième nombres aléatoires, par l'application d'un algorithme de signature de type asymétrique, à l'aide de ladite clé secrète asymétrique, et sa transmission à ladite puce électronique de manière à y réaliser ladite authentification par vérification à l'aide de ladite clé publique ;
- une deuxième phase consistant en l'authentification de ladite puce électronique et comprenant les étapes de génération, par la puce électronique et ledit dispositif de sécurité d'une clé secrète dite de session à partir dudit premier nombre aléatoire, par l'application d'un algorithme de chiffrement de type symétrique, à l'aide de ladite clé de chiffrement secrète, suivi de la génération d'un deuxième cryptogramme par l'application d'un algorithme de chiffrement de type symétrique, à l'aide de ladite clé secrète de session et sa transmission au dit dispositif de sécurité de manière à y réaliser ladite authentification par vérification à l'aide de ladite clé de session ; et
- une phase de transfert dans lesdits moyens de mémoire de ladite puce électronique de ladite clé dédiée, chiffrée par ladite clé secrète de session.
L'invention a encore pour objet un système embarqué à puce électronique pour la mise en œuvre du procédé.
L'invention va maintenant être décrite de façon plus détaillée en se référant aux dessins annexés, parmi lesquels : la figure 1 illustre schématiquement un exemple de configuration de la mémoire d'une carte à puce selon un aspect de l'invention, pour l'enregistrement d'une clé publique ; la figure 2 illustre schématiquement les principaux échanges d'informations pour l'authentification mutuelle d'un module dit "SAM", porteur de clé, et d'une carte à puce, selon le procédé de l'invention
la figure 3 illustre un exemple de données concaténées servant au calcul d'une signature Rabin sur des nombres aléatoires générés respectivement par la carte à puce et le module "SAM", selon un aspect du procédé de l'invention ; la figure 4 illustre, sur un exemple, la génération d'une clé de session dans la carte à puce, selon un aspect de l'invention ; la figure 5 illustre, sur un exemple, la génération d'un cryptogramme dans la carte à puce, à l'aide de la clé de session, selon un aspect de l'invention ; et la figure 6 illustre un exemple de données concaténées servant au calcul d'une signature Rabin, calculée par le "SAM", sur la commande de chargement de la clé de fabrication devant être transférée chiffrée dans la carte à puce. Dans ce qui suit, sans en limiter en quoi que ce soit la portée, on se placera ci-après dans le cadre de l'application préférée de l'invention, sauf mention contraire, c'est-à-dire dans le cas de la sécurisation de la phase de pré-initialisation d'une carte à puce.
Le procédé selon l'invention nécessite, du point de vue de la carte à puce et du module "SAM", une clé secrète symétrique, que l'on appellera ci- après clé maître KM. Cette clé KM doit être présente dès que la puce électronique ou "chip" sort de l'entité qui a été appelé "fondeur".
Le stockage de cette clé KM est effectué dans une partie non volatile de la mémoire dont est munie la puce électronique : mémoire fixe de type "ROM" ou semi-fixe de type "EEPROM" ou similaire.
Dans une variante de réalisation préférée de l'invention, et selon une première caractéristique, la clé KM est écrite "sous pointe" en "EEPROM" par le fondeur. Les octets composant la clé KM sont des données extrêmement sensibles et doivent être traités comme des octets de sécurité. Le stockage en "EEPROM" permet une éventuelle diversification de cette clé KM pour plusieurs lots de cartes.
Le procédé selon l'invention nécessite également, du point de vue de la carte à puce, une clé publique asymétrique, que l'on appellera ci-après clé publique asymétrique n. Cette clé n, fixe pour toutes les cartes, doit être présente dès que la puce électronique ou "chip" sort de l'entité qui a été appelé "fondeur". Le stockage de cette clé n est effectué dans une partie non volatile de la mémoire dont est munie la puce électronique : mémoire fixe de type "ROM" et/ou semi-fixe de type "EEPROM" ou similaire
Dans une variante de réalisation préférée de l'invention, et selon une deuxième caractéristique, la mémoire non volatile de la puce électronique présente une configuration hybride, physique et logique, particulière. On prévoit une partie fixe, de type "ROM" et une partie semi-fixe re-programmable, par exemple de type "EEPROM". On répartit les octets de la clé publique précitée entre ces deux zones de mémoire de la façon particulière explicitée ci-après. Les octets doivent être présents dès que la puce sort de chez le fondeur.
Les octets écrits "sous pointe" dans la partie "EEPROM" de la mémoire doivent être considérés comme extrêmement sensibles, et, à ce titre, être traités comme des octets de sécurité. Par exemple, pour fixer les idées, on va considérer une clé publique de longueur 768 bits (soit 96 octets). Celle-ci réside totalement en mémoire "ROM". Cependant, selon un mode de réalisation préféré du procédé selon l'invention, on enregistre un octet par bloc de douze de façon intentionnellement erronée dans la zone de mémoire de type "ROM", cette valeur erronée ayant été volontairement écrite dans le code enregistré dans cette partie de la mémoire de type "ROM". Pour sa part, la valeur correcte de l'octet en question est enregistrée dans la partie de type "EEPROM". Dans cet exemple, huit octets (c'est-à-dire 96/12=8) doivent donc être programmés dans la partie de type "EEPROM" de la mémoire. Ces données sont fixes, car une clé publique ne se diversifie pas.
En outre, il est réalisé une opération connue sous le terme "hachage" ("hash") sur 160 bits de la clé publique n. Le résultat est stocké en mémoire "ROM", de façon à pouvoir être vérifié à chaque utilisation de la clé n. Pour ce faire, il est utilisé avantageusement un algorithme du type connu sous le sigle "SHA-1 ". Cet algorithme particulier doit donc être implanté dans la carte à puce. Associé au stockage particulier de la clé publique n, le "hash" permet de garantir simultanément l'intégrité des deux parties de type "ROM" et "EEPROM" de la mémoire.
La figure 1 illustre schématiquement une telle configuration de mémoire d'une carte à puce CP. Dans l'exemple décrit, les moyens de mémoire M comprennent notamment une partie de mémoire 1 , de type "ROM", et une partie de mémoire 2, de type "EEPROM". Toujours dans l'exemple décrit, on enregistre, dans la mémoire "ROM" 1 , huit blocs de douze octets de données numériques, BΛ à Ba, représentant la clé publique précitée n. Dans chacun de ces huit blocs, Bλ à Bs, il existe un octet intentionnellement erroné, arbitrairement les octets, Oλ à Oβ. On enregistre, dans la mémoire "EEPROM" 2, huit octets corrects, 0 à 0'8, correspondant à ces octets erronés Oi à Oβ.
On va maintenant décrire les étapes permettant le chargement sécurisé d'une clé dite de fabrication dans la carte à puce.
La première phase du procédé selon l'invention consiste en l'authentification du "SAM" vis-à-vis de la carte à puce CP.
Cette phase comprend notamment une étape de calcul par le "SAM" d'un cryptogramme en faisant usage d'une clé secrète asymétrique correspondant à la clé publique asymétrique n contenue dans la carte. Dans la pratique, la clé est composée de deux nombres premiers, que l'on appellera arbitrairement p et g. On appellera arbitrairement Kpq la clé secrète asymétrique du "SAM. En d'autres termes, le "SAM" s'identifie vis-à-vis de la carte à puce CP et celle-ci reconnaît son interlocuteur avec la clé publique n.
Comme le montre la figure 2, au moyen d'un ordre sortant Os, le
"SAM" 3 récupère de la carte à puce CP un nombre aléatoire NaC sur seize octets. Le nombre NaC sera appelé ci-après "nombre aléatoire carte" et peut être généré, par exemple, par les moyens de calcul de la carte à puce CP, dans l'exemple illustré, un microprocesseur CPU. Le "SAM" 3 génère également un nombre aléatoire de seize octets que l'on appellera "nombre aléatoire SAM" NaS.
Une signature Rabin, que l'on dénommera ci-après SR, est calculée, par le "SAM" 3sur quatre vingt seize octets de données, référencées DSR. Ces données DSR peuvent être conformes à la concaténation illustrée par la figure 3, de façon à atteindre les quatre vingt seize octets précités :
- une suite de cinquante neuf octets de remplissage, DSR^, ayant par exemple la configuration fixe suivante : 01 , FF, ... FF, en hexadécimal ; - une suite de cinq octets, DSR2, dits d'en-tête de la commande d'authentification mutuelle ; et
- trente deux octets, DSR3, constitués par la concaténation des nombres NaS et NaC précités.
La suite de cinq octets d'en-tête de la commande d'authentification mutuelle, DSR2, peut être constituée avantageusement par le contenu d'une commande d'un type dit "APDU", si la carte à puce CP est lue par un lecteur de carte à puce selon un protocole conforme aux normes "ISO 7816-1 " à "ISO 7816-4". De façon plus précise, il peut s'agir du code associé à une instruction de chargement. Si on se réfère de nouveau à la figure 2, la signature Rabin SR et le nombre aléatoire NaS sont envoyés à la carte à puce CP, au moyen d'un ordre entrant-sortant 0Es, indiquant une authentification mutuelle. Le "SAM" 3 est seul capable de générer cette signature SR, puisque la clé secrète qu'il emmagasine n'est jamais divulguée. La carte à puce CP vérifie la signature Rabin à l'aide de la clé publique asymétrique n qu'elle stocke, ce qui permet d'authentifier le "SAM" 3.
La deuxième phase du procédé consiste en l'authentification de la carte à puce CP vis-à-vis du "SAM" 3, de façon à compléter l'authentification mutuelle des deux entités. A partir de la clé secrète maître KM et du nombre aléatoire précité de seize octets, NaC, la carte à puce CP génère une clé symétrique secrète dite de session, Ks, de seize octets, permettant de calculer un cryptogramme propre à la carte à puce CP.
De façon préférentielle, cette clé secrète de session, Ks, dite d'authentification, s'obtient en effectuant un chiffrement par un algorithme de type triple "DES" sur les deux parties, Λ/aCι et Λ/aC2, du nombre aléatoire carte NaC,
De façon plus précise, le processus de calcul de la clé secrète de session, Ks, s'effectue comme illustré par le diagramme de la figure 4.
Comme il bien connu, un chiffrement par un algorithme de type triple "DES" comporte, en cascade, un premier chiffrement, à l'aide d'une clé (en l'occurrence la clé secrète maître KM), par un "DES" direct, un deuxième "DES" de type inverse et un troisième "DES", direct également.
Sur la partie "poids faible" de huit octets, Λ/acι, du nombre aléatoire carte à puce, NaC, le triple "DES" s'effectue directement à l'aide de trois modules en cascade, référencés Du, D2ι et D31. Les modules D et D31 reçoivent, sur leurs entrées de clé, une même valeur de clé, en l'occurrence la partie "poids fort" de huit octets, KM , de la clé KM, alors que le module D reçoit, sur son entrée de clé, la partie "poids faible", KM2, toujours sur huit octets. En sortie du module D3 , on obtient la partie "poids fort" sur huit octets, KSΛ , de la clé secrète de session Ks. Ce mot de huit octets, KSl, peut être stocké temporairement dans un registre de mémoire ou dans une partie de la mémoire vive dont est habituellement munie la carte à puce CP.
La partie " S1 est ré-injectée sur une première entrée d'un circuit logique de type "OU-exclusif" référencé XOR. Celui-ci reçoit, sur une seconde entrée, la partie "poids fort" de huit octets, NaC2, du nombre aléatoire carte à puce, NaC. La sortie de ce circuit logique XOR est transmise à l'entrée d'une chaîne de chiffrage en triple "DES". Ce triple "DES" s'effectue à l'aide de trois modules en cascade, référencés D12, D22 et D32. Comme précédemment, les modules D12 et D32 reçoivent, sur leurs entrées de clé, une même valeur de clé, en l'occurrence la partie "poids fort" de huit octets, Km, de la clé KM, alors que le module D22 reçoit, sur son entrée clé, la partie "poids faible", KM2, toujours sur huit octets. En sortie du module D32, on obtient la partie "poids faible" sur huit octets, KS2, de la clé secrète de session Ks. Ce mot de huit octets, KS2, peut lui aussi être stocké temporairement dans un registre de mémoire ou dans une partie de la mémoire vive.
La clé secrète KM peut être présente en "ROM", ou écrite "sous pointe" en "EEPROM", comme il a été rappelé précédemment.
Il va de soit que l'opération logique "OU-exclusif" peut être réalisée de manière logicielle, au lieu d'utiliser un circuit logique spécifique XOR, ce en faisant appel à une routine enregistrée en mémoire "ROM" 1 par exemple, sous la commande du microprocesseur CPU. De même, les opérations de chiffrage "DES" ou "DES-1" sont généralement réalisées à l'aide d'algorithmes enregistrés en mémoire "ROM" 1 , toujours sous la commande du microprocesseur CPU. Les résultats intermédiaires sont stockés dans des registres ou en mémoire vive.
Le "SAM" 3 est en mesure de calculer la même clé de session secrète Ks, de la façon qui vient d'être décrite, car ce dernier stocke également la clé secrète maître KM.
Dans une étape supplémentaire, la carte à puce CP génère une suite d'octets qui va être appelée ci-après "cryptogramme carte" CC. Ce dernier est obtenu en chiffrant le nombre aléatoire "SAM" transmis à la carte à puce CP à l'aide de la clé secrète de session Ks qui vient d'être calculée.
La figure 5 illustre le processus. Ce dernier est similaire à celui qui a permis de calculer la clé secrète de session Ks. Il a notamment recours à des fonctions "OU-exclusif" et à chiffrage selon l'algorithme triple "DES".
Aussi, les éléments communs aux figures précédentes portent les mêmes références et ne seront re-décrits qu'en tant que de besoin.
Le nombre aléatoire "SAM", NaS, a été reçu du "SAM" 3 et est stocké provisoirement dans un emplacement de mémoire, registre ou autre. La partie poids fort sur huit octets, Λ/aSι, de ce nombre aléatoire, NaS, est soumise à un triple "DES" par la chaîne Du à D31. Cependant elle subit d'abord une opération logique "OU-exclusif" avec une valeur de chaînage initiale de huit octets, Nf, de valeur hexadécimale "00", à l'aide d'un premier circuit XORi (ou par un processus logiciel). C'est la sortie de ce circuit XOR^ qui est transmise à la chaîne précitée. La clé de chiffrage est la clé de session secrète Ks calculée à l'étape précédente. De façon plus précise, les entrées de clé des "DES" Du et D31 reçoivent les huit octets de plus fort poids, KSι, de cette clé Ks, et l'entrée de clé du " DES " D2ι, les huit octets de plus faible poids, KS2.
Ce processus permet de calculer les huit octets de plus fort poids, CC , du cryptogramme CC. Ces octets CCΛ sont ré-injectés en entrée de la chaîne de chiffrage triple "DES", D12 à D32, pour les octets de plus faible poids, NaS2, du nombre aléatoire "SAM" NaS, plus exactement sur une des entrées d'un deuxième circuit "OU-exclusif" XOR2, la première entrée recevant les huit octets de plus faible poids du nombre aléatoire NaS. C'est la sortie de ce circuit XOf?2 ui est transmise à la chaîne précitée. Les entrées de clé des "DES" D12 et D3 reçoivent les huit octets de plus fort poids, KS de cette clé Ks, et l'entrée de clé du " DES " D22, les huit octets de plus faible poids, KS2. La sortie du "DES" D32 génère les huit octets de poids faible CC2 du cryptogramme carte CC. Ce cryptogramme est transmis au "SAM" 3, au moyen de l'ordre d'entrée-sortie OES (figure 2) d'authentification mutuelle. A l'issue de cette étape, le "SAM" 3 peut authentifier la carte à puce CP à partir du cryptogramme carte CC, puisqu'il a également calculé la clé de session Ks, comme rappelé ci-dessus. La dernière étape consiste à charger la clé dite de fabrication KF dans la mémoire de la carte à puce CP., à l'aide d'une commande de chargement Ccn. Cette clé KF est sécurisée par chiffrage à l'aide de la clé secrète de session Ks, en mode dit "CBC" (pour "Concatened Blocks Ciphering" ou Blocs Concaténés Chiffrés). Si la commande de chargement échoue, la clé de session Ks est perdue et une nouvelle authentification mutuelle est nécessaire, avec calcul d'une nouvelle clé de session.
La commande de chargement est signée à l'aide d'une signature Rabin par le "SAM" 3. La figure 6 illustre schématiquement les données DSR servant à calculer une signature Rabin SR'.
Au total, DSR' comprend quatre vingt seize octets. DSR' comprend, dans l'exemple trois parties :
- une en-tête DSR'3, avantageusement une commande "APDU" comme dans le cas de la figure 2 ;
- des données chiffrées, DSR'2l soit Do-, à Don, représentant la clé de fabrication KF (avec n le nombre d'octets total de la clé de fabrication KF) ; et
- des données fixes de remplissage, DSR , soit x octets, par exemple de configuration : 01 , FF ... FF, en hexadécimal (la valeur de x est choisie pour que le nombre total d'octets de DSR' soit égal à quatre vingt seize).
A la lecture de ce qui précède, on constate aisément que l'invention atteint bien les buts qu'elle s'est fixés. Notamment, le chargement de la clé de fabrication utilisée ultérieurement pour la sécurisation des étapes de pré-initialisation de la carte à puce CP s'effectue avec un niveau de sécurité très élevé. Le procédé permet de charger dans chaque carte à puce CP sa propre clé, ou en d'autres termes une clé différente des autres cartes à puce. Cependant, bien qu'il permette cette diversification de clé, le procédé n'oblige pas pour autant à avoir recours à des opérations longues et coûteuses, du type signalé dit d'écriture "sous pointe du fondeur".
Il doit être clair cependant que l'invention n'est pas limitée aux seuls exemples de réalisations explicitement décrits, notamment en relation avec les figures 1 à 6. Comme il a été indiqué, bien que l'algorithme de Rabin soit particulièrement avantageux, car peu gourmand en ressources informatiques, cet algorithme pourrait être remplacé par d'autres types d'algorithmes asymétriques, tel le "RSA". Il en est de même de l'algorithme du type triple "DES". D'autres algorithmes à clés symétriques sont utilisables sans quitter le domaine de l'invention. Ceci ne constitue qu'un choix technologique, en soi à la portée de l'Homme de Métier, et dépendant notamment de l'application précise envisagée.
De même, les valeurs numériques précises, nombre d'octets ou autres, n'ont été indiquées que dans un but de fixer les idées et ne sauraient limiter en quoi que ce soit la portée de l'invention. Notamment, comme il est bien connu, la longueur des clés de chiffrement dépend du degré de sécurité que l'on escompte atteindre et peut résulter de choix technologiques, liés par exemple à des standards de fait et/ou aux types d'algorithmes choisis. Enfin, comme il a été indiqué, l'invention n'est pas limitée aux seules applications à base de cartes à puce. Elle peut trouver application dans le cadre de tout système embarqué comprenant une puce électronique ou un organe similaire, dans lequel il est nécessaire de charger une clé pour la sécurisation d'opérations prédéterminées. Les opérations en question peuvent être des opérations de préinitialisation, comme il a été décrit de façon détaillée, mais aussi d'autres types opérations.
A titre d'exemple, il est possible de soumettre des commandes sensibles d'une carte à puce dite ouverte, telles le chargement de librairies du type dit "API" ("Application Program Interface") ou de codes divers, dans la partie "EEPROM", à une authentification mutuelle entre le dispositif de chargement et la carte à puce, le processus d'authentification mutuelle se déroulant de façon conforme au procédé de l'invention.
De façon générale, Il est possible d'affecter du point de vue de la carte à puce une clé publique et une clé secrète symétrique à chaque type d'opération à sécuriser. La clé de session dérivée lors du mécanisme d'authentification peut être utilisée par la suite afin de sécuriser le chargement d'une autre clé à usage dédié, comme la protection de librairies de type "API" précité ou de "patches", c'est-à-dire l'application de données binaires en remplacement de tout ou partie d'un programme existant.

Claims

REVENDICATIONS
1. Procédé de chargement sécurisé d'une clé dédiée à la sécurisation d'une opération prédéterminée dans des moyens de mémoire d'une puce électronique d'un système embarqué, ladite clé dédiée étant contenue
5 dans un dispositif de sécurité comportant des moyens de communication bidirectionnels avec ladite puce électronique, caractérisé en ce que, lesdits moyens de mémoire (M) de ladite puce électronique emmagasinant une clé de chiffrement secrète symétrique (KM) et une clé publique asymétrique (n) et ledit dispositif de sécurité (3) emmagasinant w la même clé de chiffrement secrète symétrique (KM) et une clé secrète asymétrique (Kpq) correspondant à ladite clé publique n de ladite puce électronique, il comprend :
- une première phase consistant en l'authentification dudit dispositif de sécurité (3) par ladite puce électronique (CP) et comprenant les
15 étapes de génération par la puce électronique (CP) d'un premier nombre aléatoire (Λ/aC) et sa transmission au dispositif de sécurité (3), la génération par celui-ci d'un deuxième nombre aléatoire (NaS) et d'un premier cryptogramme (SR), à partir desdits premier (NaC) et deuxième (NaS) nombres aléatoires, par l'application d'un algorithme 0 de signature de type asymétrique, à l'aide de ladite clé secrète
(Kpq), et sa transmission à ladite puce électronique (CP), de manière à y réaliser ladite authentification par vérification à l'aide de ladite clé publique (n);
- une deuxième phase consistant en l'authentification de ladite puce 5 électronique (CP) et comprenant les étapes de génération, par la puce électronique (CP) et ledit dispositif de sécurité (3), d'une clé secrète dite de session (Ks) à partir dudit premier nombre aléatoire (Λ/aC), par l'application d'un algorithme de chiffrement de type symétrique, à l'aide de ladite clé secrète (KM), suivi de la génération d'un deuxième cryptogramme (CC) par l'application d'un algorithme de chiffrement de type symétrique, à l'aide de ladite clé secrète de session (Ks) et sa transmission au dit dispositif de sécurité (3) de manière à y réaliser ladite authentification par vérification à l'aide de ladite clé de session (Ks) ; et
- une phase de transfert dans lesdits moyens de mémoire (M) de ladite puce électronique (CP) de ladite clé dédiée (KF), chiffrée par ladite clé de session (Ks).
2. Procédé selon la revendication 1 , caractérisé en ce que ladite phase de transfert de ladite clé dédiée (KF) est déclenchée par une commande de chargement de clé (Cc„) est signée (SR') par l'application d'un algorithme de signature de type asymétrique.
3. Procédé selon la revendication 1 , caractérisé en ce que ledit algorithme asymétrique est l'algorithme dit de Rabin.
4. Procédé selon la revendication 3, caractérisé en ce que lesdits premier (NaC) et deuxième (Λ/aS) nombres aléatoires ont une longueur de seize octets et en ce que ledit premier cryptogramme (SR) est obtenu par application dudit algorithme de Rabin sur la concaténation desdits premier (NaC) et deuxième (NaS) nombres aléatoires (DSR3), d'un premier nombre déterminé d'octets formant un en-tête (DSR2), et d'un deuxième nombre déterminé d'octets (DSR^), dits de remplissage, de manière à ce que la longueur totale de ladite concaténation (DSR) soit de quatre vingt seize octets, équivalente à la longueur de ladite clé publique (n).
5. Procédé selon la revendication 3, caractérisé en ce que ladite clé dédiée (KF) est chiffrée (DSR'2) par ladite clé secrète de session (Ks) et est concaténée avec un troisième nombre déterminé d'octets (DSR'3), formant un en-tête, et un quatrième nombre déterminé d'octets (DSR ), dits de remplissage, de manière à ce que la longueur totale de ladite concaténation (DSR) soit de quatre vingt seize octets, et en ce que ladite concaténation (DSR) soit signée par application dudit algorithme de 5 Rabin, avant ledit transfert vers ladite puce électronique (CP).
6. Procédé selon la revendication 1 , caractérisé en ce que ledit algorithme symétrique est l'algorithme est du type dit triple "DES".
7. Procédé selon la revendication 6, caractérisé en ce que lesdits premier nombre aléatoire (NaC) et la dite clé secrète (KM) ayant une longueur de w seize octets, ladite étape de génération de ladite clé secrète de session comprend :
- l'application dudit triple "DES" sur les huit octets de plus faible poids (/VaCι) dudit premier nombre aléatoire (Λ/aC), avec en cascade un "DES" direct (Du), avec pour clé de chiffrement les huit octets de
15 plus fort poids de ladite clé secrète (KMι), un "DES" inverse (D2ι), avec pour clé de chiffrement les huit octets de plus faible poids de ladite clé secrète (KM2), et de nouveau un "DES" direct (D31), avec pour clé de chiffrement les huit octets de plus fort poids de ladite clé secrète (Km), de manière à générer huit octets de plus fort poids de 0 ladite clé secrète de session (KsXj ;
- l'application d'une opération logique "OU-exclusif" (XOR) entre ces huit octets de plus fort poids et les huit octets de plus fort poids (NaC2) dudit premier nombre aléatoire (NaC) ; et
- l'application sur le résultat de ladite opération logique dudit triple 5 "DES", avec en cascade un "DES" direct (D 2), avec pour clé de chiffrement les huit octets de plus fort poids de ladite clé secrète ( I), un "DES" inverse (D22), avec pour clé de chiffrement les huit octets de plus faible poids de ladite clé secrète (KM2), et de nouveau un "DES" direct (D32), avec pour clé de chiffrement les huit octets de plus fort poids de ladite clé secrète (KM ), de manière à générer huit octets de plus faible poids (KS2) de ladite clé secrète de session (Ks), lesdits octets de plus fort poids (K" S1) et de plus faible poids (Ks∑) formant ensemble ladite clé secrète de session (Ks).
8. Procédé selon la revendication 6, caractérisé en ce que ledit deuxième nombre aléatoire (NaS) et ladite clé secrète de session ( Ks) ayant une longueur de seize octets, ladite étape de génération dudit cryptogramme de la carte comprend :
- l'application d'une opération logique "OU-exclusif" (XORXj entre les huit octets de plus fort poids (Λ/aSι) dudit deuxième nombre aléatoire (NaS) et huit octets fixes à la valeur hexadécimale 00 ;
- l'application dudit triple "DES" sur le résultat de ladite opération logique, avec en cascade un "DES" direct (Du), avec pour clé de chiffrement les huit octets de plus fort poids de ladite clé secrète de session (KsXj, un "DES" inverse (D2ι), avec pour clé de chiffrement les huit octets de plus faible poids de ladite clé secrète de session (Ks∑), et de nouveau un "DES" direct (D31), avec pour clé de chiffrement les huit octets de plus fort poids de ladite clé secrète de session ( " s-ι), de manière à générer huit octets de plus fort poids
(CCXj dudit deuxième cryptogramme (CC) ;
- l'application d'une opération logique "OU-exclusif" (XOR2) entre ces huit octets de plus fort poids (Cd) et les huit octets de plus faible poids (NaS2) dudit deuxième nombre aléatoire (NaS) ; et
- l'application sur le résultat de ladite opération logique dudit triple
"DES", avec en cascade un "DES" direct (D12), avec pour clé de chiffrement les huit octets de plus fort poids de ladite clé secrète de session (Ksi), un "DES" inverse (D22), avec pour clé de chiffrement les huit octets de plus faible poids de ladite clé secrète de session (KS2j, et de nouveau un "DES" direct (D32), avec pour clé de chiffrement les huit octets de plus fort poids de ladite clé secrète de session (KsXj, de manière à générer huit octets de plus faible poids (CC2) dudit deuxième cryptogramme (CC), lesdits octets de plus fort poids (CCi) et de plus faible poids (CC2) formant ensemble ledit deuxième cryptogramme (CC).
9. Procédé selon la revendication 1 , caractérisé en ce que, ledit système embarqué à puce électronique étant une carte à puce (CP), ladite clé dédiée est une clé dite de fabrication (KF) servant à sécuriser les opérations de pré-initialisation de la carte à puce.
10. Système embarqué à puce électronique comprenant des moyens de traitement et de mémorisation de données, destiné à coopérer avec un dispositif de sécurité via des moyens de communication bidirectionnels, de manière à recevoir une clé dédiée à la sécurisation d'opérations prédéterminées, caractérisé en ce que lesdits moyens de mémorisation de données (M) emmagasinant une clé de chiffrement secrète symétrique (KM) et une clé publique asymétrique (n) et ledit dispositif de sécurité (3) enregistrant la même clé de chiffrement secrète symétrique (KM) et la clé secrète asymétrique (Kpq) correspondant à ladite clé publique (n), ladite puce électronique comprend des moyens pour générer un premier nombre aléatoire (NaC) destiné à être transmis au dit dispositif de sécurité (3), des moyens pour recevoir de celui-ci un deuxième nombre aléatoire (NaS) et un premier cryptogramme d'authentification (SR), généré à partir desdits premier (Λ/aC) et deuxième (NaS) nombres aléatoires, par application d'un algorithme du type asymétrique et l'utilisation de ladite clé secrète (Kpq),des moyens (XOR, Du - D32) pour générer une clé secrète dite de session (Ks), à partir dudit premier nombre aléatoire (Λ/aC), par application d'un algorithme du type symétrique et l'utilisation de ladite clé secrète (KM), des moyens pour générer un deuxième cryptogramme (CC), à partir dudit deuxième nombre aléatoire (NaS) reçu dudit dispositif de sécurité (3), par application d'un algorithme du type symétrique et l'utilisation de ladite clé secrète de session (Ks), et des moyens pour recevoir dudit dispositif de sécurité (3) ladite clé dédiée (KF) chiffrée 5 (DSR2) à l'aide de ladite clé de session (Ks) et pour l'enregistrer dans lesdits moyens de mémoire (M).
11. Système selon la revendication 9, caractérisé en ce qu'il est constitué par une carte à puce (CP) et en ce que ladite clé dédiée est une clé dite de fabrication (KF), et en ce que lesdites opérations à sécuriser sont des w opérations de pré-initialisation de ladite carte à puce (CP).
EP01943588A 2000-06-08 2001-06-08 Procede de securisation de la phase de pre-initialisation d'un systeme embarque a puce electronique, notamment d'une carte a puce, et systeme embarque mettant en oeuvre le procede Withdrawn EP1234284A1 (fr)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0007319 2000-06-08
FR0007319A FR2810139B1 (fr) 2000-06-08 2000-06-08 Procede de securisation de la phase de pre-initialisation d'un systeme embarque a puce electronique, notamment d'une carte a puce, et systeme embarque mettant en oeuvre le procede
PCT/FR2001/001774 WO2001095274A1 (fr) 2000-06-08 2001-06-08 Procede de securisation de la phase de pre-initialisation d'un systeme embarque a puce electronique, notamment d'une carte a puce, et systeme embarque mettant en oeuvre le procede

Publications (1)

Publication Number Publication Date
EP1234284A1 true EP1234284A1 (fr) 2002-08-28

Family

ID=8851071

Family Applications (1)

Application Number Title Priority Date Filing Date
EP01943588A Withdrawn EP1234284A1 (fr) 2000-06-08 2001-06-08 Procede de securisation de la phase de pre-initialisation d'un systeme embarque a puce electronique, notamment d'une carte a puce, et systeme embarque mettant en oeuvre le procede

Country Status (7)

Country Link
US (1) US7602920B2 (fr)
EP (1) EP1234284A1 (fr)
JP (1) JP3773488B2 (fr)
CN (1) CN1172477C (fr)
FR (1) FR2810139B1 (fr)
TW (1) TW513681B (fr)
WO (1) WO2001095274A1 (fr)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7650314B1 (en) 2001-05-25 2010-01-19 American Express Travel Related Services Company, Inc. System and method for securing a recurrent billing transaction
US8001054B1 (en) * 2001-07-10 2011-08-16 American Express Travel Related Services Company, Inc. System and method for generating an unpredictable number using a seeded algorithm
US7543738B1 (en) * 2001-07-10 2009-06-09 American Express Travel Related Services Company, Inc. System and method for secure transactions manageable by a transaction account provider
US9031880B2 (en) 2001-07-10 2015-05-12 Iii Holdings 1, Llc Systems and methods for non-traditional payment using biometric data
US7840803B2 (en) * 2002-04-16 2010-11-23 Massachusetts Institute Of Technology Authentication of integrated circuits
DE10218835B4 (de) * 2002-04-22 2009-09-10 Deutscher Sparkassen Verlag Gmbh Verfahren zum Herstellen einer Chipkarte und Chipkarte
EP1561299B1 (fr) * 2002-10-28 2009-09-16 Nokia Corporation Cles de dispositifs
US7818519B2 (en) 2002-12-02 2010-10-19 Silverbrook Research Pty Ltd Timeslot arbitration scheme
DE10340181A1 (de) * 2003-09-01 2005-03-24 Giesecke & Devrient Gmbh Verfahren zur kryptographischen Absicherung der Kommunikation mit einem tragbaren Datenträger
FR2873467A1 (fr) * 2004-07-26 2006-01-27 Proton World Internatinal Nv Enregistrement d'une cle dans un circuit integre
US7702927B2 (en) 2004-11-12 2010-04-20 Verayo, Inc. Securely field configurable device
JP4613764B2 (ja) * 2005-09-12 2011-01-19 ソニー株式会社 通信システム、通信装置、通知方法、記録媒体、および、プログラム
EP2711889A3 (fr) 2005-09-28 2014-04-30 Visa International Service Association Dispositif, système et procédé permettant de réduire un temps d'interaction pour une transaction sans contact
EP1773018A1 (fr) * 2005-10-05 2007-04-11 Privasphere AG Méthode et dispositifs d'authentification d'un utilisateur
JP2009510955A (ja) * 2005-10-05 2009-03-12 プリヴァスヒア アーゲー ユーザ認証の方法およびデバイス
WO2007087559A2 (fr) 2006-01-24 2007-08-02 Pufco, Inc. Sécurité de dispositif à base de générateur de signaux
JP2007233725A (ja) * 2006-03-01 2007-09-13 Freescale Semiconductor Inc 集積回路、ウェハ及び集積回路の製造方法
US7818264B2 (en) 2006-06-19 2010-10-19 Visa U.S.A. Inc. Track data encryption
US9065643B2 (en) * 2006-04-05 2015-06-23 Visa U.S.A. Inc. System and method for account identifier obfuscation
CN100401309C (zh) * 2006-04-24 2008-07-09 南京熊猫电子股份有限公司 税控设备软件版本智能升级加密验证方法
FR2905216B1 (fr) * 2006-08-25 2009-03-06 Thales Sa Procede de personnalisation d'un composant de securite, notamment en milieu non protege
CN101056166B (zh) * 2007-05-28 2010-04-21 北京飞天诚信科技有限公司 一种提高数据传输安全性的方法
EP2214117B1 (fr) * 2007-09-19 2012-02-01 Verayo, Inc. Authentification avec fonctions physiques inclonables
US20100082955A1 (en) * 2008-09-30 2010-04-01 Jasmeet Chhabra Verification of chipset firmware updates
TWI498827B (zh) * 2008-11-21 2015-09-01 Verayo Inc 非連網射頻辨識裝置物理不可複製功能之鑑認技術
CN101577022B (zh) * 2009-03-13 2013-03-27 深圳德诚信用咭制造有限公司 一种cpu卡数据加密和解密方法
US20100241852A1 (en) * 2009-03-20 2010-09-23 Rotem Sela Methods for Producing Products with Certificates and Keys
FR2945134A1 (fr) * 2009-04-29 2010-11-05 Bull Sa Machine de test d'un produit sous test comprenant un moyen de memorisation et procede de test associe
US8468186B2 (en) * 2009-08-05 2013-06-18 Verayo, Inc. Combination of values from a pseudo-random source
US8811615B2 (en) * 2009-08-05 2014-08-19 Verayo, Inc. Index-based coding with a pseudo-random source
DE102010006987A1 (de) * 2010-02-05 2011-08-11 Giesecke & Devrient GmbH, 81677 Komplettierung portabler Datenträger
EP2362574A1 (fr) * 2010-02-19 2011-08-31 Irdeto B.V. Vérification de la correspondance de clés dans des systèmes à carte intelligente
EP2362573A1 (fr) * 2010-02-19 2011-08-31 Irdeto B.V. Dispositif et procédé pour établir une clé de confiance sécurisée
CN102236770B (zh) * 2010-04-20 2015-05-20 公安部第一研究所 一种机读旅行证件访问控制方法
CN101835153A (zh) * 2010-04-27 2010-09-15 中兴通讯股份有限公司 一种公话卡及其与移动终端互锁的方法
DE102010035098A1 (de) * 2010-08-23 2012-02-23 Giesecke & Devrient Gmbh Verfahren zum Authentisieren eines portablen Datenträgers
JP6279217B2 (ja) * 2013-03-08 2018-02-14 株式会社東芝 Icカード、電子装置、及び携帯可能電子装置
CN103178967B (zh) * 2013-03-20 2016-12-28 东信和平科技股份有限公司 一种空白智能卡激活认证密钥方法
DE102013207477A1 (de) * 2013-04-24 2014-10-30 Bundesdruckerei Gmbh Durchführung einer Chipkartenfunktion
CN103440462A (zh) * 2013-08-28 2013-12-11 成都卫士通信息产业股份有限公司 一种提高安全微处理器安全保密性能的嵌入式控制方法
US9774576B2 (en) 2014-03-18 2017-09-26 Em Microelectronic-Marin S.A. Authentication by use of symmetric and asymmetric cryptography
CN105721143B (zh) * 2016-01-30 2019-05-10 飞天诚信科技股份有限公司 一种对智能卡应用进行初始化的方法和装置
CN108234132B (zh) * 2017-12-07 2021-11-26 深圳市中易通安全芯科技有限公司 一种主控芯片与加密芯片的安全通信系统及方法

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4405829A (en) 1977-12-14 1983-09-20 Massachusetts Institute Of Technology Cryptographic communications system and method
FR2613565B1 (fr) * 1987-04-03 1989-06-23 Bull Cps Procede pour acheminer des cles secretes vers des modules de securite et des cartes utilisateurs, dans un reseau de traitement d'informations
JP2731945B2 (ja) * 1989-06-05 1998-03-25 エヌ・ティ・ティ・データ通信株式会社 個別鍵による認証が可能なicカード
FR2653914A1 (fr) * 1989-10-27 1991-05-03 Trt Telecom Radio Electr Systeme d'authentification d'une carte a microcircuit par un micro-ordinateur personnel, et procede pour sa mise en óoeuvre.
US5365466A (en) * 1989-12-19 1994-11-15 Bull Cp8 Method for generating a random number in a system with portable electronic objects, and system for implementing the method
US5293424A (en) * 1992-10-14 1994-03-08 Bull Hn Information Systems Inc. Secure memory card
US5299263A (en) * 1993-03-04 1994-03-29 Bell Communications Research, Inc. Two-way public key authentication and key agreement for low-cost terminals
FR2704341B1 (fr) * 1993-04-22 1995-06-02 Bull Cp8 Dispositif de protection des clés d'une carte à puce.
US5371794A (en) * 1993-11-02 1994-12-06 Sun Microsystems, Inc. Method and apparatus for privacy and authentication in wireless networks
US5761309A (en) * 1994-08-30 1998-06-02 Kokusai Denshin Denwa Co., Ltd. Authentication system
FR2725537B1 (fr) * 1994-10-11 1996-11-22 Bull Cp8 Procede de chargement d'une zone memoire protegee d'un dispositif de traitement de l'information et dispositif associe
EP0723251A3 (fr) * 1995-01-20 1998-12-30 Tandem Computers Incorporated Procédé et appareil pour un utilisateur et dispositif de sécurité d'authentification
US5602918A (en) * 1995-12-22 1997-02-11 Virtual Open Network Environment Corp. Application level security system and method
FR2745135B1 (fr) * 1996-02-15 1998-09-18 Cedric Colnot Procede pour faire autoriser par un serveur l'acces a un service a partir de dispositifs portatifs a microcircuits electroniques du type carte a memoire par exemple
KR100213188B1 (ko) * 1996-10-05 1999-08-02 윤종용 사용자 인증 장치 및 방법
US5818939A (en) * 1996-12-18 1998-10-06 Intel Corporation Optimized security functionality in an electronic system
FR2759833A1 (fr) * 1997-02-19 1998-08-21 Gemplus Card Int Procede de protection d'une cle mere destinee a permettre l'authentification de cartes utilisateurs
FR2760871B1 (fr) * 1997-03-13 1999-04-16 Bull Cp8 Procede de stockage et d'exploitation d'une information sensible dans un module de securite, et module de securite associe
ATE281680T1 (de) * 1997-03-24 2004-11-15 Visa Int Service Ass System und verfahren für eine mehrzweckchipkarte die eine nachträgliche speicherung einer anwendung auf dieser karte ermöglicht
GB9709135D0 (en) * 1997-05-02 1997-06-25 Certicom Corp Two way authentication protocol
EP1000481A1 (fr) * 1997-05-09 2000-05-17 Connotech Experts-Conseils Inc. Etablissement d'un code secret initial comprenant des dispositifs de verification d'identite
FR2767624B1 (fr) * 1997-08-21 2002-05-10 Activcard Dispositif portable electronique pour systeme de communication securisee, et procede d'initialisation de ses parametres
US6094724A (en) * 1997-11-26 2000-07-25 Atmel Corporation Secure memory having anti-wire tapping
US6246771B1 (en) * 1997-11-26 2001-06-12 V-One Corporation Session key recovery system and method
AU758710B2 (en) * 1997-12-19 2003-03-27 Visa International Service Association Card activation at point of distribution
DE19822795C2 (de) * 1998-05-20 2000-04-06 Siemens Ag Verfahren und Anordnung zum rechnergestützten Austausch kryptographischer Schlüssel zwischen einer ersten Computereinheit und einer zweiten Computereinheit
FR2789829B1 (fr) * 1999-02-11 2001-04-20 Bull Sa Procede de verification de l'usage de cles publiques engendrees par un systeme embarque
US6820203B1 (en) * 1999-04-07 2004-11-16 Sony Corporation Security unit for use in memory card
ES2230814T3 (es) * 1999-04-29 2005-05-01 Cp8 Technologies Metodos y sistemas de firma de clave publica.
US6760752B1 (en) * 1999-06-28 2004-07-06 Zix Corporation Secure transmission system
FR2800478B1 (fr) * 1999-10-28 2001-11-30 Bull Cp8 Procede de securisation d'un ensemble electronique de cryptographie a base d'exponentiation modulaire contre les attaques par analyse physique
TWI234706B (en) * 2002-07-26 2005-06-21 Hon Hai Prec Ind Co Ltd System and method for firmware authentication

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO0195274A1 *

Also Published As

Publication number Publication date
CN1172477C (zh) 2004-10-20
WO2001095274A8 (fr) 2002-02-14
FR2810139B1 (fr) 2002-08-23
TW513681B (en) 2002-12-11
US7602920B2 (en) 2009-10-13
JP3773488B2 (ja) 2006-05-10
WO2001095274A1 (fr) 2001-12-13
JP2003536304A (ja) 2003-12-02
US20020107798A1 (en) 2002-08-08
FR2810139A1 (fr) 2001-12-14
CN1386249A (zh) 2002-12-18

Similar Documents

Publication Publication Date Title
EP1234284A1 (fr) Procede de securisation de la phase de pre-initialisation d'un systeme embarque a puce electronique, notamment d'une carte a puce, et systeme embarque mettant en oeuvre le procede
EP1774484B1 (fr) Enregistrement d'une cle dans un circuit integre
FR2834403A1 (fr) Systeme cryptographique de signature de groupe
WO2001095273A1 (fr) Procede de stockage securise d'une donnee sensible dans une memoire d'un systeme embarque a puce electronique, notamment d'une carte a puce, et systeme embarque mettant en oeuvre le procede
EP1791292B1 (fr) Personnalisation d'un circuit électronique
FR2779018A1 (fr) Terminal et systeme pour la mise en oeuvre de transactions electroniques securisees
FR2549989A1 (fr) Systeme d'authentification entre un lecteur de carte et une carte de paiement echangeant des informations
EP1791291A1 (fr) Personnalisation d'une carte bancaire pour d'autres applications
EP1055203B1 (fr) Protocole de controle d'acces entre une cle et une serrure electronique
WO2001071675A1 (fr) Procede cryptographique de protection contre la fraude
FR2816731A1 (fr) Procede de chargement et de personnalisation des informations et programmes charges dans une carte a puce
CA2451034C (fr) Procede cryptographique pour la protection d'une puce electronique contre la fraude
FR2788649A1 (fr) Procede de chargement securise de donnees entre des modules de securite
EP1269431B1 (fr) Procede de protection d'une puce electronique contre la fraude
FR3062501A1 (fr) Procede pour la securite d'une operation electronique
EP1547005B9 (fr) Carte à microcircuit dont les performances peuvent être modifiées après personnalisation
WO2002019613A1 (fr) Procede de generation de signatures non-repudiables, notamment par un systeme embarque, et systeme embarque pour la mise en oeuvre du procede
EP3021515B1 (fr) Amélioration de l'intégrité authentique de données à l'aide du dernier bloc chiffrant ces données en mode cbc
WO2003069841A1 (fr) Procede de detection des attaques par mise en defaut contre les algorithmes cryptographiques
FR2853785A1 (fr) Entite electronique securisee avec compteur modifiable d'utilisations d'une donnee secrete
FR2856815A1 (fr) Procede d'authentification de donnees contenues dans un objet a memoire
WO2002045035A2 (fr) Procede de verification de l'integrite des donnees dans le traitement des donnees de dispositifs electroniques
FR2875656A1 (fr) Diversification de cle dans un circuit integre
FR3089320A1 (fr) Vérification biométrique partagée entre un processeur et un élément sécurisé
FR2823401A1 (fr) Regeneration d'une quantite secrete a partir d'un identifiant d'un circuit integre

Legal Events

Date Code Title Description
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

17P Request for examination filed

Effective date: 20020613

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: CP8 TECHNOLOGIES

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20130103