FR2930065A1 - Procede de securisation de donnees d'une carte a puce - Google Patents

Procede de securisation de donnees d'une carte a puce Download PDF

Info

Publication number
FR2930065A1
FR2930065A1 FR0802006A FR0802006A FR2930065A1 FR 2930065 A1 FR2930065 A1 FR 2930065A1 FR 0802006 A FR0802006 A FR 0802006A FR 0802006 A FR0802006 A FR 0802006A FR 2930065 A1 FR2930065 A1 FR 2930065A1
Authority
FR
France
Prior art keywords
data
seal
variable
smart card
seals
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR0802006A
Other languages
English (en)
Inventor
Philippe Dailly
Athis Thierry D
Denis Ratier
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.)
Thales SA
Original Assignee
Thales 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 Thales SA filed Critical Thales SA
Priority to FR0802006A priority Critical patent/FR2930065A1/fr
Publication of FR2930065A1 publication Critical patent/FR2930065A1/fr
Pending 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/12Card verification
    • G07F7/125Offline card verification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • 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/04Payment circuits
    • G06Q20/045Payment circuits using payment protocols involving tickets
    • 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
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Accounting & Taxation (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

La présente invention concerne un procédé de sécurisation de données d'une carte à puce 1 comportant un identifiant 2, une première valeur entropique évoluant irréversiblement et une ou plusieurs données D1, D2, D3. Le procédé comporte notamment une phase d'écriture de données, une phase de vérification de données, une phase de modification de données. La phase 20 d'écriture des données D1, D2, D3 comporte notamment les étapes suivantes :. écriture 21 d'au moins une donnée D1, D2, D3 ;. génération 22 d'une deuxième valeur entropique 29 ;. génération 23 d'une clef de chiffrement K par diversification de l'identifiant 2 avec la deuxième valeur entropique 29 et un secret Ks ;. création 24 d'au moins un sceau S1, S2, S3 pour chaque donnée D1, D2, D3 écrite ;. insertion 25 de chaque sceau S1, S2, S3 créé dans une variable de sceaux Vs comportant les sceaux correspondant à chacune des données D1, D2, D3 de la carte ;. chiffrement 26 de la variable de sceaux Vs avec la clef de chiffrement K;. enregistrement 27 de la variable de sceaux Vs chiffrée dans au moins une mémoire de la carte à puce 1 ;L'invention trouve notamment son application dans le domaine de la billettique mais peut également s'appliquer à tout domaine nécessitant une protection de données sensibles stockées par une carte à puce.

Description

Procédé de sécurisation de données d'une carte à puce Domaine technique La présente invention concerne un procédé de sécurisation de données d'une carte à puce et notamment des données stockées par la carte à puce. L'invention trouve notamment son application dans le domaine de la billettique mais peut également s'appliquer à tout domaine nécessitant une protection de données sensibles stockées par une carte à puce. Problème technique Dans de nombreux domaines, l'utilisation de cartes comme des cartes à puces, sans contact ou avec contact, se généralise. Parmi ces domaines on peut citer notamment le domaine de la billettique, dans lequel les cartes à puces sont utilisées comme titre de transport. Les cartes à puces sont également utilisées dans des systèmes d'information et de communication afin d'authentifier un utilisateur souhaitant avoir accès au système. La téléphonie mobile peut également utiliser des cartes à puces afin d'authentifier un utilisateur du téléphone ou bien afin de stocker des unités correspondant par exemple à des unités de temps de communication téléphonique. Les cartes à puce peuvent également être utilisées dans le domaine de la sécurité d'accès à des zones d'accès réglementé comme des bâtiments, des salles protégées à l'intérieur de bâtiments. Dans les différents domaines utilisant les cartes à puces, il est important de garantir les informations contenues dans les cartes à puce contre une falsification des informations, un piratage des informations ou une duplication des cartes à puce en vue d'une utilisation frauduleuse. Les informations contenues dans la carte à puce que l'on souhaite protéger peuvent par exemple être des valeurs comme un nombre de points, une date de fin de validité, une valeur pécuniaire, un code d'accès, une clef d'authentification. Les informations peuvent aussi être des données confidentielles comme un profil social ou professionnel d'une personne. Par exemple, des cartes de voyages peuvent permettre à des personnes aux revenus modestes d'obtenir des réductions sur le prix du voyage.
Exposé de l'art antérieur Plusieurs types de carte à puce existent et assurent différents degrés de sécurité des données qu'elles contiennent. Un premier type de carte à puce utilise notamment une ou plusieurs clefs propres à la carte à puce, afin de sécuriser des données contenues dans la puce. Dans le cas du premier type de carte à puce, c'est donc la puce elle-même qui assure la sécurité des données qu'elle contient à l'aide de clefs d'accès, de cryptage ou de signature. Les cartes à puces du premier type peuvent être des cartes de paiement comme : des cartes bleues, des cartes de crédit. Le niveau de sécurité de ce premier type de cartes est très élevé. Cependant ces cartes sont très onéreuses. Ce premier type de carte est peu adapté à une utilisation dans des systèmes de billettique. En effet, dans des systèmes de billettique une carte à puce représente un support du titre de transport et à ce titre son prix ne peut excéder le prix d'un trajet par exemple. D'autres types de cartes existent et sont moins onéreux. Parmi celles-ci on peut citer des cartes à puce sans contact comportant des moyens de sécurisation de données notamment par clefs d'accès. Cependant, la sécurité des données de ces cartes à puce sans contact peut être compromise. Les cartes à puce sans contact pourraient donc être aisément falsifiables et piratées. Ces cartes sont si répandues, qu'il est difficile d'envisager de les remplacer par des cartes plus sécurisées, qui sont beaucoup plus chères. Par exemple des cartes à puce sans contact peuvent être utilisées par un ensemble de voyageurs utilisant un réseau de transport.
Dans ce cas, il peut être très coûteux de remplacer toutes les cartes par des cartes à puces à clef d'accès plus sécuritaire, par exemple. Un autre type de carte existant est une carte à puce jetable qui ne comporte aucun moyen de sécurisation des données qu'elle stocke. Ce type de carte à puce jetable, si elle est peu coûteuse, est un support proposant une faible sécurité des données qu'elle comporte. Résumé de l'invention (reprise des revendications) Un but de l'invention est notamment de pallier les inconvénients précités. A cet effet, l'invention a pour objet un procédé de sécurisation de données, stockées sur une carte à puce. La carte à puce comporte notamment : • un identifiant ; • une première valeur entropique évoluant irréversiblement ; • une ou plusieurs données. Ledit procédé comporte notamment une phase d'écriture de données, une phase de vérification de données. La phase d'écriture de données comporte, par exemple, au moins les étapes suivantes : • écriture d'au moins une donnée, dans au moins une mémoire de la carte à puce ; • génération d'une deuxième valeur entropique, par exemple, par évolution irréversible de la première valeur entropique ; • génération d'une clef de chiffrement, par exemple, par diversification de l'identifiant avec la deuxième valeur entropique et avec un secret ; • création d'au moins un sceau pour chaque donnée écrite ; • insertion de chaque sceau créé dans une variable de sceaux comportant les sceaux correspondant à chacune des données de la carte ; • chiffrement de la variable de sceaux avec la clef de chiffrement ; • enregistrement de la variable de sceaux chiffrée dans au moins une mémoire de la carte à puce ; La phase de vérification de données comporte, par exemple, au moins les étapes suivantes : • génération de la clef de chiffrement; • lecture de l'enregistrement de la variable de sceaux chiffrée ; • déchiffrement de la variable de sceaux chiffrée ; • désassemblage de la variable de sceaux pour obtenir au moins un sceau correspondant à une donnée ; • vérification de la cohérence d'au moins un sceau avec la donnée correspondant au sceau. Le procédé selon l'invention comporte notamment une phase de modification d'au moins une donnée de la carte à puce. La phase de modification de données peut comporter au moins les étapes suivantes : • écriture d'au moins une donnée modifiée, dans au moins une mémoire de la carte à puce ; • génération d'une troisième valeur entropique par évolution irréversible de la deuxième valeur entropique ; • génération d'une nouvelle clef de chiffrement par diversification de l'identifiant avec la troisième valeur entropique et avec le secret ; • création d'un nouveau sceau pour chaque donnée modifiée ; • insertion du nouveau sceau dans la variable de sceaux ; • chiffrement de la variable de sceaux à partir de la nouvelle clef ; • enregistrement de la variable de sceaux chiffrée dans au moins une mémoire de la carte à puce. Le procédé selon l'invention peut être mis en oeuvre par au moins un équipement apte à lire et à vérifier des cartes à puce. Le procédé selon l'invention peut être mis en oeuvre par au moins 15 un équipement faisant partie d'un système comportant plusieurs équipements. Le secret peut être un secret unique dans le système. L'identifiant peut être unique pour chaque carte à puce utilisée par le système. 20 Le sceau est par exemple une empreinte de la donnée. Le sceau est par exemple une signature de la donnée. Les sceaux des données peuvent être concaténés dans la variable de sceaux Vs. L'évolution irréversible de la valeur entropique peut se faire par 25 incrémentation de celle-ci. L'évolution irréversible de la valeur entropique peut se faire par décrémentation de celle-ci. Autres avantages de l'invention (résumé des avantages) 30 L'invention a notamment pour principaux avantages de sécuriser à moindre coût des données stockées sur un support de type carte à puce qui ne permet pas, de base, une sécurisation des données qu'il contient.
Brève description des figures D'autres caractéristiques et avantages de l'invention apparaîtront à l'aide de la description qui suit, donnée à titre illustratif et non limitatif, et faite en regard des dessins annexés qui représentent : • la figure 1 : de manière schématique des données contenues par une carte à puce; • la figure 2 : une écriture de données sur une carte à puce selon l'invention ; • la figure 3 : une vérification de la validité des données sur une carte à puce ; • la figure 4 : une modification de données sur une carte à puce selon l'invention. Description de l'invention (au moyen d'un exemple de réalisation) La figure 1 représente de manière schématique des données contenues par une carte à puce 1 à faible niveau de sécurité. La carte à puce 1 comporte notamment les informations suivantes : • un numéro de série 2 qui peut être unique pour chaque carte à puce 1 d'un même système de billettique par exemple ; • une première valeur 3, dite valeur entropique 3, pouvant provenir d'un compteur à sens unique ; • des données DO, DI, D2, D3, stockées dans une mémoire de la carte à puce 1.
Les données DO, D1, D2, D3 peuvent être des valeurs comme, une date de validité de la carte à puce. Par exemple, une première date de validité DO peut correspondre à un opérateur d'un système de transport en commun, une deuxième date de validité D1 correspondant à un autre opérateur d'un système de transport. Chaque opérateur de transport peut alors utiliser la date de validité DO, D1, qui lui correspond. D'autres valeurs, données et informations peuvent être stockées dans les données DO, DI, D2, D3. Par exemple on peut stocker des nombres de point de fidélité, des unités téléphoniques, des dates de validité, des zones de validité, des valeurs pécuniaires, des codes d'accès, des données confidentielles. Sur la figure 1, quatre données sont représentées à titre d'exemple, il est possible de stocker sur une carte à puce un nombre de données plus ou moins important. La première valeur entropique 3 est une donnée mise à jour à chaque écriture sur la carte à puce 1. La première valeur entropique 3 évolue notamment de manière irréversible. La première valeur entropique 3 peut être générée par un compteur entropique. Un compteur entropique est un compteur à sens unique, utilisé soit uniquement en incrémentation de la première valeur entropique 3, soit uniquement en décrémentation de la première valeur entropique 3. Un compteur entropique incrémente la première valeur entropique 3 dans un sens unique. Une première valeur entropique 3 incrémentée ne pourra alors pas être décrémentée si le compteur entropique fonctionne en incrémentation. De la même manière une première valeur entropique 3 décrémentée ne pourra pas être incrémentée si le compteur entropique fonctionne en décrémentation. Une fonction d'écriture par incrémentation ou décrémentation à sens unique peut également être effectuée par une simple impression. Une impression est une incrémentation à sens unique car elle permet uniquement d'ajouter des données. Une autre manière de réaliser la fonction d'écriture par incrémentation, décrémentation à sens unique est d'utiliser un ensemble de fusibles. Des cartes jetables peuvent par exemple comporter un compteur comportant un ensemble de fusibles sous la forme d'un ensemble de bits, soit originellement tous à zéro, soit originellement tous à un. A chaque écriture sur la carte jetable, un bit de l'ensemble de bits est basculé à sa valeur complémentaire, zéro ou un. Le numéro de série est un identifiant de la carte à puce 1 qui peut être par exemple unique pour chaque carte 1 faisant partie d'un même système comme un système billettique. Un exemple de type de carte à puce à identifiant unique est une carte à puce électronique. Un identifiant unique permet de pouvoir détecter les duplications de cartes existantes.
La figure 2 représente de manière schématique un exemple d'une phase d'écriture 20 de données de manière sécurisée sur une carte à puce selon l'invention. La phase d'écriture 20 de données fait partie du procédé de sécurisation des données d'une carte à puce 1 selon l'invention. La phase d'écriture sécurisée 20 de données peut être réalisée par un équipement du système autorisé à modifier les données D1, D2, D3 contenues dans la carte à puce 1. Un tel équipement peut être par exemple un valideur d'un système de billettique. La phase d'écriture sécurisée de données Dl, D2, D3 sur la carte 1 peut comporter plusieurs étapes 21, 22, 23, 24, 25, 26, 27.
Une première étape 21 peut être une étape d'écriture 21 d'une ou plusieurs données D1, D2, D3 sur la carte à puce 1. Une deuxième étape 22 peut être une étape de génération 22 d'une deuxième valeur entropique 29. La génération de la deuxième valeur entropique 29 est effectuée par une évolution de la première valeur entropique 3. La première valeur entropique 3 peut évoluer par une incrémentation ou une décrémentation respectivement effectuées par un compteur entropique par incrémentation ou un compteur entropique par décrémentation, par exemple. Ensuite, une troisième étape 23 peut être une étape de génération 23 d'une clef de chiffrement K. La clef de chiffrement K peut être obtenue par diversification du numéro de série 2 de la carte à puce 1. La diversification du numéro de série peut être obtenue par combinaison du numéro de série 2 avec la deuxième valeur entropique 29, obtenue au cours de la deuxième étape 22, ainsi qu'avec un secret Ks qui peut être une clef commune à l'ensemble des équipements du système. Le secret Ks peut être nommé secret souche Ks. Une quatrième étape 24 peut être une étape de création 24 d'au moins un sceau SI, S2, S3 pour chaque donnée Dl, D2, D3. Une création d'un sceau SI, S2, S3, peut être réalisée par un compactage de chaque données D1, D2, D3 correspondante. Le sceau peut être une empreinte, par exemple : de type LRC, acronyme pour l'expression anglo-saxonne Linear Redondancy Code signifiant code de redondance linéaire ; de type CRC, acronyme pour l'expression anglo-saxonne Cyclic Redondancy Code signifiant code de redondance cyclique. Un sceau S1, S2, S3 peut aussi être obtenu par cryptage de chaque donnée Dl, D2, D3 afin d'obtenir une signature. La signature obtenue est alors le sceau S1, S2, S3. Par exemple une signature électronique par clef électronique de chaque donnée Dl, D2, D3 peut être utilisée pour créer un sceau S1, S2, S3 pour chaque donnée D1, D2, D3. Parmi les procédés de génération d'une signature électronique existant, on peut par exemple utiliser le procédé MAC, acronyme pour l'expression anglo-saxonne Message Authentification Code, signifiant code d'authentification de message. Le sceau S1, S2, S3 permet d'authentifier la donnée Dl, D2, D3 scellée. Ainsi pour une première donnée Dl, un sceau SI peut par exemple être créé, pour une deuxième donnée D2, un sceau S2 peut être créé et pour la donnée D3, un sceau S3 peut être créé. Il est par exemple possible de créer au moins autant de sceaux Si, S2, S3 qu'il y a de données sur la carte à puce 1. Une cinquième étape 25 peut être une étape d'insertion 25 des sceaux SI, S2, S3, obtenus au cours de la quatrième étape 24, dans au moins une variable de sceaux Vs. L'insertion des sceaux SI, S2, S3 peut être une concaténation des sceaux S1, S2, S3 dans la variable de sceaux Vs. Une sixième étape 26 peut être une étape de chiffrement 26 de la variable Vs à partir de la clef de chiffrement K obtenue au cours de la troisième étape 23. Par le chiffrement de la variable de sceaux Vs, on obtient par exemple une variable chiffrée Vc. Une septième étape 27 peut être une étape d'enregistrement 27 de la variable chiffrée Vc obtenue par chiffrement de la variable de sceaux Vs au cours de la sixième étape 26. L'enregistrement de la variable chiffrée Vc dans un ou plusieurs mémoires de la carte à puce 1 peut être fait à un emplacement pouvant comporter des données. Par exemple, la variable chiffrée Vc peut être enregistrée à la place de la donnée DO représentée sur la figure 1. La variable chiffrée Vc, une fois enregistrée dans une mémoire de la carte à puce, représente un enregistrement des sceaux 28. La position de l'enregistrement des sceaux 28 dans la mémoire de la carte à puce peut être fixée. La position de l'enregistrement des sceaux 28 dans la mémoire de la carte à puce peut être connue des équipements du système aptes à modifier ou à vérifier les données contenues dans la carte à puce 1. Dans un autre mode de réalisation de la phase d'écriture 20 selon l'invention, la troisième étape de génération 23 d'une clef de chiffrement K peut intervenir après la cinquième étape d'insertion 25 des sceaux Si, S2, S3 dans la variable de sceaux Vs, et avant la sixième étape de chiffrement 26 de la variable Vs à partir de la clef de chiffrement K.
La figure 3 représente une phase de vérification 30 de la validité des données contenues dans la mémoire de la carte à puce 1. La phase de vérification 30 de la validité des données fait partie du procédé de sécurisation des données d'une carte à puce selon l'invention.
La phase de vérification 30 de la validité des données peut être effectuée par un équipement du système autorisé à vérifier ou à modifier les données contenues dans la carte à puce 1. Une première étape de la phase de vérification 30 des données peut être la troisième étape 23 de génération de la clef de chiffrement K, telle 10 que représentée sur la figure 2. Une deuxième étape de la phase de vérification 30 des données peut être une étape de lecture 31 de l'enregistrement des sceaux 28. La lecture de l'enregistrement des sceaux 28 permet d'obtenir la variable chiffrée Vc. 15 Une troisième étape de la phase de vérification 30 des données peut être une étape de déchiffrement 32 de la variable chiffrée Vc au moyen de la clef de chiffrement K. Le déchiffrement 32 de la variable chiffrée Vc permet d'obtenir la variable de sceaux Vs. L'étape de déchiffrement 32 peut permettre, lorsque le numéro de 20 série d'une carte à puce 1 est unique, de vérifier que la carte à puce n'a pas fait l'objet d'un procédé de clonage. Un procédé de clonage peut permettre de recopier l'intégralité ou une partie des données contenues dans une mémoire d'une carte à puce, sur une autre carte à puce. La vérification d'anti-clonage d'une carte à puce peut être réalisée en vérifiant l'intégrité de 25 la variable de sceaux Vs. En effet, une carte à puce résultat du clonage n'a pas le même identifiant de la carte clonée. La clef de chiffrement K générée n'est, dans ce cas, pas la même que celle qui a été générée avec la carte clonée. Le déchiffrement 32 de la variable chiffrée Vc donne, dans ce cas, une variable de sceaux Vs incohérente. 30 L'étape de déchiffrement 32 peut également permettre de détecter une auto-réplication de la carte à puce 1. Une auto-réplication d'une carte à puce permet de remettre à un état antérieur une partie des données ou l'ensemble des données contenues dans une ou plusieurs mémoires de la carte à puce 1. L'auto-réplication est détectable du fait que la carte à puce 1 35 interdit de remettre la valeur entropique dans un état antérieur tel que la première valeur entropique 3 par exemple. Le secret souche Ks n'étant pas connu des équipements non autorisés, il ne leur est pas possible de regénérer la clef de chiffrement diversifiée K et donc de recalculer et stocker la variable chiffrée Vc à l'aide la clef de chiffrement K. Un équipement autorisé effectue alors le déchiffrement 32 à l'aide d'une autre clef de chiffrement K, calculée à partir d'une valeur entropique postérieure, ce qui conduit à une incohérence de la variable des sceaux Vs. Une quatrième étape de la phase de vérification 30 des données peut être une étape de désassemblage 33 de la variable de sceaux Vs afin d'obtenir les sceaux S1, S2, S3 correspondant à chacune des données D1, D2, D3 stockées dans un ou plusieurs mémoires de la carte à puce 1. Une cinquième étape de la phase de vérification 30 des données peut être une étape 34 de vérification de la cohérence d'au moins un sceau SI, S2, S3 avec la données correspondante D1, D2, D3 stockée sur la carte à puce 1. Par exemple, il est possible de coder un nouveau sceau pour chaque données et de comparer le nouveau sceau obtenu avec le sceau S1, S2, S3 provenant du désassemblage de la variable de sceaux Vs. Une incohérence entre les deux sceaux, sensés représenter la même donnée D1, D2, D3, peut révéler une modification des données de la carte à puce effectuée par un équipement non habilité à faire cette modification. La phase de vérification 30 est une phase qui peut être effectuée préalablement à une lecture ou à une modification des données stockées sur la carte à puce 1 dans le procédé de sécurisation des données d'une carte à puce selon l'invention. Par exemple, une modification des données stockées sur la carte à puce 1 peut être autorisée dès lors que la phase de vérification a validé la cohérence des données. Un équipement en présence d'une carte à puce 1 indûment modifiée ou clonée ou encore répliquée peut par exemple refuser le traitement de la carte à puce 1. Ceci peut avoir pour conséquence, dans un système de billettique par exemple, une impossibilité à accéder à un réseau de transport.
La figure 4 représente une modification 40 de données stockées sur une carte à puce 1 selon l'invention. La modification des données 40 fait partie du procédé de sécurisation des données d'une carte à puce 1 selon '11 l'invention. Après la phase de vérification 30 de la validité des données, une modification sécurisée de données 40 peut comporter plusieurs étapes. Une première étape de la modification 40 de données peut être une étape d'écriture 41 dans une ou plusieurs mémoires de la carte à puce 1 d'une donnée modifiée à la place de l'ancienne donnée. Par exemple sur la figure 4, la donnée Dl est modifiée. Une deuxième étape de la modification 40 de données peut être la deuxième étape d'évolution 22 de la deuxième valeur entropique 29 représentée sur la figure 2. L'évolution de la deuxième valeur entropique 29 ~o donne par exemple une troisième valeur entropique 42. Une évolution 22 de la valeur entropique 3, 29 de la carte à puce 1 est successive à toute modification de données sur la carte à puce 1. Une troisième étape de la modification 40 de données peut être la troisième étape 23 de génération de la clef de chiffrement K. La génération 15 de la clef de chiffrement K prend en compte la nouvelle valeur entropique 42, issue de l'évolution 22 de la valeur entropique 3 effectuée au cours de la deuxième étape de la modification 40 de données. Une quatrième étape de la modification 40 de données peut être la quatrième étape 24 de création d'un nouveau sceau NS1 pour la donnée 20 Dl. Une cinquième étape de la modification 40 de données peut être la cinquième étape d'insertion 25 du nouveau sceau NS1 dans la variable de sceaux Vs récupérée au cours de la troisième étape de la phase de vérification 30 des données, en déchiffrant la variable chiffrée Vc au moyen 25 de la clef de chiffrement K. Le nouveau sceaux NS1 est inséré dans la variable de sceaux Vs à la place de l'ancien sceau SI représenté sur la figure 2. Une sixième étape de la modification 40 de données peut être la sixième étape de chiffrement 26 de la variable de sceaux Vs à partir de la 30 clef K obtenue au cours de la troisième étape de la modification 40 de données. Le chiffrement de la variable Vs permet d'obtenir la variable chiffrée Vc. Une septième étape de la modification 40 de données peut être une étape d'enregistrement 27 de la variable chiffrée Vc obtenue au cours de la sixième étape de la modification 40 de données. L'enregistrement 27 de la variable chiffrée Vc donne un nouvel enregistrement des sceaux 43. Dans une autre réalisation d'une modification 40 de données selon l'invention, la troisième étape de la modification 40, c'est à dire la troisième étape 23 de génération de la clef de chiffrement K, peut intervenir après la quatrième étape de création d'un nouveau sceau 34 et avant la cinquième étape d'insertion 25 du nouveau sceau NS1 dans la variable de sceaux Vs. Pour effectuer une modification d'une donnée Dl stockée sur la carte à puce 1 il n'est avantageusement pas utile de modifier les autres données D2, D3 ni même de recréer les sceaux correspondant aux données qui ne sont pas modifiées. Avantages La présente invention permet avantageusement de déceler sur une carte à puce 1 si elle a été l'objet d'un procédé de clonage, d'auto-réplication ou de modification non autorisée des données qu'elle contient. L'invention permet avantageusement d'augmenter le niveau de sécurité de données stockées par une carte à puce à faible niveau de sécurité. Le procédé selon l'invention est un moyen peu coûteux de sécuriser des données sur un carte à puce. Avantageusement, le procédé selon l'invention est simple à mettre en oeuvre par des équipements d'un système existant. En effet, il suffit de programmer l'équipement afin qu'ils accomplissent le procédé selon l'invention pendant les phases de lecture, d'écriture et de modification des données.30

Claims (11)

  1. REVENDICATIONS1. Procédé de sécurisation de données stockées sur une carte à puce (1) comportant : • un identifiant (2) ; • une première valeur entropique (3) évoluant irréversiblement ; • une ou plusieurs données D1, D2, D3 ; ledit procédé comportant une phase d'écriture de données, une phase de vérification de données, caractérisé en ce que : - la phase d'écriture (20) de données Dl, D2, D3 comporte au moins les étapes suivantes : • écriture (21) d'au moins une donnée Dl, D2, D3, dans au moins une mémoire de la carte à puce 1 ; • génération (22) d'une deuxième valeur entropique (29) par évolution 15 irréversible de la première valeur entropique (3) ; • génération (23) d'une clef de chiffrement K par diversification de l'identifiant (2) avec la deuxième valeur entropique (29) et avec un secret Ks ; • création (24) d'au moins un sceau S1, S2, S3 pour chaque donnée 20 Dl, D2, D3 écrite ; • insertion (25) de chaque sceau SI, S2, S3 créé dans une variable de sceaux Vs comportant les sceaux correspondant à chacune des données Dl, D2, D3 de la carte ; • chiffrement (26) de la variable de sceaux Vs avec la clef de 25 chiffrement K ; • enregistrement (27) de la variable de sceaux Vs chiffrée dans au moins une mémoire de la carte à puce (1) ; la phase de vérification (30) de données Dl, D2, D3 comporte au moins les étapes suivantes : 30 • génération (23) de la clef de chiffrement K ; • lecture (31) de l'enregistrement de la variable de sceaux Vs chiffrée ; • déchiffrement (32) de la variable de sceaux Vs chiffrée ; • désassemblage (33) de la variable de sceaux Vs pour obtenir au moins un sceau SI, S2, S3 correspondant à une donnée Dl, D2, D3 ;• vérification (34) de la cohérence d'au moins un sceau SI, S2, S3 avec la donnée D1, D2, D3 correspondant au sceau SI , S2, S3.
  2. 2. Procédé selon la revendication 1, caractérisé en ce qu'il comporte une phase de modification (40) d'au moins une donnée D1, D2, D3 de la carte à puce (1), ladite phase de modification (40) étant autorisée si la vérification (34) valide la cohérence d'au moins un sceau SI , S2, S3 avec la donnée Dl, D2, D3 correspondant au sceau S1, S2, S3, la phase de modification 40 de données comportant au moins les étapes suivantes : • écriture (41) d'au moins une donnée modifiée D1, dans au moins une mémoire de la carte à puce (1) ; • génération (22) d'une troisième valeur entropique (42) par évolution irréversible de la deuxième valeur entropique (29) ; • génération (23) d'une nouvelle clef de chiffrement K par diversification 15 de l'identifiant avec la troisième valeur entropique (42) et avec le secret Ks ; • création (24) d'un nouveau sceau NS1 pour chaque donnée modifiée D1 • insertion (25) du nouveau sceau NS1 dans la variable de sceaux Vs ; 20 • chiffrement (26) de la variable de sceaux Vs à partir de la nouvelle clef K, • enregistrement (27) de la variable de sceaux Vs chiffrée dans au moins une mémoire de la carte à puce (1). 25
  3. 3. Procédé selon l'une quelconque des revendications 1 et 2, caractérisé en ce qu'il est mis en oeuvre par au moins un équipement apte à lire et à vérifier des cartes à puce.
  4. 4. Procédé selon l'une quelconque des revendications précédentes, 30 caractérisé en ce qu'il est mis en oeuvre par au moins un équipement faisant partie d'un système comportant plusieurs équipements.
  5. 5. Procédé selon la revendication 4, caractérisé en ce que le secret Ks est un secret unique dans le système. 35
  6. 6. Procédé selon l'une quelconque des revendications 3 et 4, caractérisé en ce que l'identifiant (2) est unique pour chaque carte à puce (1) utilisée par le système.
  7. 7. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que le sceau SI, S2, S3 est une empreinte de la donnée D1, D2, D3.
  8. 8. Procédé selon l'une quelconque des revendications précédentes, 10 caractérisé en ce que le sceau SI, S2, S3 est une signature de la donnée D1, D2, D3.
  9. 9. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que les sceaux S1, S2, S3 des données D1, D2, D3 sont 15 concaténés dans la variable de sceaux Vs.
  10. 10. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que l'évolution irréversible de la valeur entropique (3), (29), se fait par incrémentation de celle-ci. 20
  11. 11. Procédé selon l'une quelconque des revendications 1 à 9, caractérisé en ce que l'évolution irréversible de la valeur entropique (3), (29), se fait par décrémentation de celle-ci.
FR0802006A 2008-04-11 2008-04-11 Procede de securisation de donnees d'une carte a puce Pending FR2930065A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR0802006A FR2930065A1 (fr) 2008-04-11 2008-04-11 Procede de securisation de donnees d'une carte a puce

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0802006A FR2930065A1 (fr) 2008-04-11 2008-04-11 Procede de securisation de donnees d'une carte a puce

Publications (1)

Publication Number Publication Date
FR2930065A1 true FR2930065A1 (fr) 2009-10-16

Family

ID=39884495

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0802006A Pending FR2930065A1 (fr) 2008-04-11 2008-04-11 Procede de securisation de donnees d'une carte a puce

Country Status (1)

Country Link
FR (1) FR2930065A1 (fr)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020038429A1 (en) * 2000-09-26 2002-03-28 Ben Smeets Data integrity mechanisms for static and dynamic data
US20070061597A1 (en) * 2005-09-14 2007-03-15 Micky Holtzman Secure yet flexible system architecture for secure devices with flash mass storage memory
WO2007062941A2 (fr) * 2005-12-01 2007-06-07 Telefonaktiebolaget Lm Ericsson (Publ) Stockage de mémoire sûr et protégé contre une réexécution

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020038429A1 (en) * 2000-09-26 2002-03-28 Ben Smeets Data integrity mechanisms for static and dynamic data
US20070061597A1 (en) * 2005-09-14 2007-03-15 Micky Holtzman Secure yet flexible system architecture for secure devices with flash mass storage memory
WO2007062941A2 (fr) * 2005-12-01 2007-06-07 Telefonaktiebolaget Lm Ericsson (Publ) Stockage de mémoire sûr et protégé contre une réexécution

Similar Documents

Publication Publication Date Title
EP3474209A1 (fr) Stockage de clés privées de chaîne de blocs dans une carte sim
EP0895149B1 (fr) Système ordinateur pour protéger un fichier et méthode de protection d'un fichier
WO2016200885A1 (fr) Montants de dissimulation cryptographique dans une transaction sur un registre tout en préservant la capacité d'un réseau à vérifier la transaction
US20090019291A1 (en) Backup and restoration of drm security data
LU100497B1 (fr) Méthode et système d'inscription sécurisé de clés cryptographiques sur un support physique pour clés cryptographiques, et support physique produit
US20090287942A1 (en) Clock roll forward detection
FR2976147A1 (fr) Schema d'entrelacement de donnees pour une memoire externe d'un microcontroleur securise
US8631235B2 (en) System and method for storing data using a virtual worm file system
EP1266364B1 (fr) Procede cryptographique de protection contre la fraude
CN1327356C (zh) 具有控制读取之微处理器的计算机可读介质和与该介质通信的计算机
JP2005502140A (ja) チップカードの初期化
EP2336931B1 (fr) Procédé de vérification de signature
EP1721246A2 (fr) Procede et dispositif pour accomplir une operation cryptographique
CN112668017B (zh) 一种具备自解释性加密卡券的构造方法、解密方法及其装置
FR2788649A1 (fr) Procede de chargement securise de donnees entre des modules de securite
WO2007085726A1 (fr) Certification avec autorite de certification distribuee
FR2930065A1 (fr) Procede de securisation de donnees d'une carte a puce
EP1609326A2 (fr) Procede de protection d'un terminal de telecommunication de type telephone mobile
CN111460466A (zh) 一种基于区块链的电子车票管理方法、设备及介质
FR2807245A1 (fr) Procede de protection d'une puce electronique contre la fraude
FR2566155A1 (fr) Procede et systeme pour chiffrer et dechiffrer des informations transmises entre un dispositif emetteur et un dispositif recepteur
CN116257862B (zh) 基于数据分级分类的数据存储系统及数据库透明加解密方法
CA2557516C (fr) Steganographie dirigee non algorithmique
FR3013868A1 (fr) Procede de transmission securisee d'une image d'un document d'identite electronique vers un terminal
CN117978399A (zh) 基于智能密码钥匙的软件身份校验方法、装置及存储介质