Brevet FR3011653A1 — publié le 20150410

DOMAINE DE L'INVENTION L'invention concerne la sécurisation de données sensibles dans un dispositif électronique. Elle s'applique, en particulier, au masquage et au démasquage de données sensibles dans un dispositif à ressources limitées. CONTEXTE DE L'INVENTION Les dispositifs électroniques actuels mobilisent de plus en plus de ressources pour mettre en oeuvre de multiples applications, comme par exemple des applications de paiement, requérant un niveau de sécurité satisfaisant. Pour cela, les applications et les données sensibles sont généralement stockées sous forme masquée, et pour être utilisées, elles doivent être démasquées. Ainsi, les données masquées doivent être démasquées préalablement à chacune de leurs utilisations, puisque pour maintenir leur sécurité, elles ne sont pas stockées « en clair » dans le dispositif électronique. De plus, dans le cas où les données masquées représentent des instructions pour la mise en oeuvre d'une application, le nombre de bits à démasquer préalablement à l'exécution de cette application dans le dispositif électronique est parfois très important. Ainsi, le démasquage en lui-même peut s'avérer fastidieux. L'expression « données sous forme masquée » signifie que les données ne sont pas « en clair », autrement dit qu'elles sont voilées ou cachées, c'est-à-dire ne pouvant être exploitées en l'état. Réciproquement, l'expression « données démasquées » signifie que les données sont « en clair », et qu'elles peuvent être exécutées, traitées, ou exploitées en l'état. Ces données démasquées sont vulnérables vis-à-vis par exemple d'un dispositif espion, c'est pourquoi elles ne sont généralement pas stockées sous cette forme dans les dispositifs électroniques. De façon générale, des données peuvent être masquées à l'aide d'un algorithme cryptographique définissant un algorithme de chiffrement de ces données. De manière correspondante, des données masquées peuvent être démasquées à l'aide d'un algorithme cryptographique définissant un algorithme de déchiffrement de ces données masquées. Ainsi, de tels algorithmes de chiffrement et de déchiffrement sont généralement conçus de sorte à être utilisés de manière conjointe, typiquement pour masquer et démasquer des données, au sein d'un même algorithme cryptographique. En particulier, il existe des algorithmes cryptographiques normalisés qui définissent les rôles respectifs des algorithmes de chiffrement et de déchiffrement. Parmi les algorithmes cryptographiques normalisés et couramment utilisés dans les dispositifs électroniques, on connait notamment les algorithmes de chiffrement par blocs (block cipher), comme par exemple l'AES (pour Advanced Enctyption Standard) défini dans la norme ISO/IEC 18033-3, section 5.2. Bien qu'il s'agisse d'un algorithme symétrique (le déchiffrement consiste à inverser les opérations du chiffrement), l'AES présente la particularité d'utiliser des ressources de manière asymétrique, au cours du chiffrement et du déchiffrement. En effet, le chiffrement présente un temps de calcul moins long que le déchiffrement. Dans le cadre de dispositifs électroniques à mémoire limitée, tels que les cartes à puces, la différence de performance entre le chiffrement et le déchiffrement de données peut atteindre jusqu'à 30%. Le temps de calcul dû à ces opérations de sécurité est donc considérable, notamment lorsque le nombre de bits des données à démasquer est très important (e.g. application) ou encore lorsque les données sont démasquées à chacune de leur utilisation. RESUME DE L'INVENTION La présente invention a ainsi pour objet de pallier au moins un de ces inconvénients. Dans ce contexte, un premier aspect de l'invention concerne un procédé de masquage de données sensibles, basé sur un algorithme cryptographique normalisé définissant un algorithme de chiffrement, et un algorithme de déchiffrement utilisant plus de ressources que l'algorithme de chiffrement, ledit procédé étant caractérisé en ce qu'il comprend une étape de masquage des données sensibles par application de l'algorithme de déchiffrement sur lesdites données sensibles pour obtenir des données sensibles masquées. Un second aspect de l'invention concerne un procédé de démasquage de données sensibles masquées, basé sur un algorithme cryptographique normalisé définissant un algorithme de chiffrement, et un algorithme de déchiffrement utilisant plus de ressources que l'algorithme de chiffrement, ledit procédé étant caractérisé en ce qu'il comprend une étape de démasquage des données sensibles masquées par application de l'algorithme de chiffrement sur les données sensibles masquées pour obtenir des données sensibles en clair. Ainsi, le temps de calcul dû aux opérations de sécurité est optimisé par rapport à l'état de l'art. Cela est dû au fait que l'accès aux données sensibles masquées, c'est-à-dire le démasquage pour obtenir les données sensibles « en clair >>, repose sur la mise en oeuvre d'un algorithme utilisant moins de ressources que celui utilisé pour le masquage des données. Ainsi, l'asymétrie existant dans l'utilisation des ressources entre le chiffrement et le déchiffrement est exploitée afin de réduire le temps global d'utilisation des ressources, dû aux opérations de sécurité telles que le masquage et le démasquage (i.e. l'accès en clair aux données masquées), en tenant compte du fait que les données à démasquer sont parfois très volumineuses, et que la plupart du temps, ces données ne sont souvent masquées généralement qu'une fois alors qu'elles sont démasquées lors de chacune de leurs utilisations, c'est-à-dire de nombreuses fois. De façon correspondante, l'invention concerne un dispositif de masquage de données sensibles, basé sur un algorithme cryptographique normalisé définissant un algorithme de chiffrement, et un algorithme de déchiffrement utilisant plus de ressources que l'algorithme de chiffrement, ledit dispositif étant caractérisé en ce qu'il comprend un module de masquage des données sensibles par application de l'algorithme de déchiffrement sur lesdites données sensibles pour obtenir des données sensibles masquées. L'invention concerne également un dispositif de démasquage de données sensibles masquées, basé sur un algorithme cryptographique normalisé définissant un algorithme de chiffrement, et un algorithme de déchiffrement utilisant plus de ressources que l'algorithme de chiffrement, ledit dispositif étant caractérisé en ce qu'il comprend un module de démasquage des données sensibles masquées par application de l'algorithme de chiffrement sur les données sensibles masquées pour obtenir des données sensibles en clair. Les dispositifs présentent des avantages similaires aux procédés qu'ils mettent en oeuvre. D'autres caractéristiques des procédés et des dispositifs selon des modes de réalisation de l'invention sont décrites dans les revendications dépendantes. Selon un mode particulier de réalisation, l'étape de démasquage est déclenchée à réception d'une requête comprenant une commande APDU conforme à la norme ISO 7816, telle qu'une réponse à ladite requête est basée sur lesdites données sensibles en clair. Les données sensibles en clair peuvent être une clé d'authentification. L'algorithme de chiffrement normalisé peut être mis en oeuvre par un crypto- processeur, à partir des données sensibles masquées et d'une clé K. Selon un mode particulier de réalisation, le procédé de démasquage comprend une étape d'application, à une clé K, d'un algorithme d'expansion de clé, pour obtenir une sous-clé Kn nécessaire en entrée de l'étape de masquage avec l'algorithme de déchiffrement. Cette étape d'application d'un algorithme d'expansion de clé s'avère particulièrement couteuse en temps de calcul. Selon un mode particulier de réalisation, le procédé de démasquage est tel que le démasquage avec l'algorithme de chiffrement comprend au moins un accès à une table stockée en mémoire et le procédé de masquage est tel que le masquage avec l'algorithme de déchiffrement comprend une pluralité d'accès à cette même table stockée en mémoire. Selon une caractéristique particulière de ce mode de réalisation, le nombre d'accès à la table lors du démasquage avec l'algorithme de chiffrement est inférieur au nombre d'accès à cette même table prévus dans l'algorithme de déchiffrement. Selon l'invention, l'algorithme de chiffrement utilise moins de ressources, que l'algorithme de déchiffrement correspondant habituellement utilisé pour démasquer les données. Habituellement, deux tables de 256 octets sont utilisées dans la mise en oeuvre de l'algorithme de chiffrement, alors que quatre autres tables de 256 octets sont nécessaires à la mise en oeuvre de l'algorithme de déchiffrement correspondant. Dans le cas d'un dispositif à mémoire limitée, il est possible de n'utiliser que trois tables de 256 octets pour le chiffrement et le déchiffrement, ce qui permet un gain de 768 octets de mémoire. Toutefois, la mise en oeuvre du déchiffrement nécessite des opérations supplémentaires, notamment un nombre d'accès bien plus important à ces tables, allongeant ainsi considérablement le temps de calcul du déchiffrement. Dans le cas de données très volumineuses, et/ou dans le cas où les données ne sont masquées qu'une fois, il n'est pas gênant de rallonger le temps de calcul en appliquant l'algorithme de déchiffrement, et de démasquer ces données en appliquant l'algorithme de chiffrement correspondant, beaucoup moins coûteux en calculs. Selon un mode particulier de réalisation, le procédé de démasquage comprend une pluralité d'accès aux données sensibles masquées, chaque accès comprenant une étape de démasquage, par application de l'algorithme de chiffrement sur les données sensibles masquées pour obtenir les données sensibles en clair. Ainsi, l'invention est particulièrement intéressante dans le cas où les données sensibles sont utilisées (donc démasquées) de nombreuses fois. Un troisième aspect de l'invention concerne un procédé de personnalisation d'un dispositif électronique, caractérisé en ce qu'il comprend les étapes suivantes : obtenir, par un dispositif tiers, des données sensibles ; masquer, par le dispositif tiers, des données sensibles obtenues, à l'aide du procédé de masquage tel que précité ; et stocker, dans le dispositif électronique, les données sensibles masquées obtenues de sorte à personnaliser le dispositif électronique. Un quatrième aspect de l'invention concerne un procédé d'authentification d'un dispositif électronique stockant en mémoire des données sensibles masquées, ledit procédé étant caractérisé en ce qu'il comprend les étapes suivantes : démasquer les données sensibles masquées stockées en mémoire du dispositif électronique à l'aide du procédé de démasquage tel que précité, de sorte à obtenir les données sensibles en clair ; et authentifier le dispositif électronique auprès d'un dispositif tiers à l'aide des données sensibles en clair obtenues. Selon des modes de réalisation, les données sensibles masquées sont démasquées à l'aide de l'algorithme de déchiffrement AES normalisé pour obtenir une clé de chiffrement en clair, ladite clé de chiffrement étant utilisée pour chiffrer un challenge d'une authentification par challenge/réponse. Selon des modes de réalisation de l'invention, les procédés précités utilisent un algorithme cryptographique normalisé conforme à la norme AES. Selon des modes de réalisation, les données sensibles comprennent des instructions pour la mise en oeuvre d'une application. Le nombre d'octets à démasquer peut alors être considérable, d'où l'intérêt d'optimiser le démasquage de l'application par rapport au masquage. Selon des modes, cette application est capable de communiquer à distance avec une entité électronique externe. Typiquement, il peut s'agir d'une application de paiement, ou encore d'une application d'authentification ou plus classiquement une application de téléphonie mobile. De manière générale, les dispositifs selon l'invention peuvent également inclure des caractéristiques correspondant aux modes de réalisation envisagés ci-dessus pour les procédés. Selon des modes de réalisation, le dispositif de démasquage précité peut comprendre en outre un module de démasquage d'autres données masquées, par application de l'algorithme de déchiffrement sur ces autres données masquées pour obtenir des autres données en clair. Selon des modes de réalisation, le dispositif de masquage précité peut comprendre en outre un module de masquage d'autres données, par application de l'algorithme de chiffrement sur ces autres données pour obtenir des autres données en clair. Ces deux dispositions permettent à un utilisateur de choisir entre un masquage (respectivement démasquage) classique, c'est-à-dire utilisant un algorithme de chiffrement (respectivement déchiffrement), et un masquage « inversé >>, selon les données à traiter (par exemple en vue de leur fréquence d'utilisation), sans avoir recourt à des dispositifs différents. L'invention vise ainsi aussi un programme d'ordinateur sur un support d'informations, comprenant des instructions pour la mise en oeuvre d'un des procédés précités, lorsqu'il est chargé et exécuté par un processeur. Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable. L'invention vise aussi un support d'informations lisible par un ordinateur, et comprenant des instructions d'un programme d'ordinateur tel que mentionné ci-dessus. Le support d'informations peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comprendre un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple une disquette (floppy disc en terminologie anglo-saxonne), un disque dur, ou encore une mémoire flash. D'autre part, le support d'informations peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Le programme selon l'invention peut être en particulier téléchargé sur une plateforme de stockage d'un réseau de type Internet. Alternativement, le support d'informations peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question. Le support d'informations et le programme d'ordinateur précités présentent des caractéristiques et avantages analogues aux procédés qu'ils mettent en oeuvre. BREVE DESCRIPTION DES FIGURES D'autres particularités et avantages de l'invention apparaîtront encore dans la description ci-après, illustrée par les figures ci-jointes qui en illustrent des exemples de réalisation dépourvus de tout caractère limitatif. Sur les figures : - la Figure 1 illustre un exemple d'architecture matérielle pour un dispositif électronique selon l'invention ; - la Figure 2 illustre le principe général de l'invention ; - la Figure 3 illustre les principales étapes d'un procédé de masquage selon un mode de réalisation particulier de l'invention ; - la Figure 4 illustre les principales étapes d'un procédé de démasquage selon un mode de réalisation particulier de l'invention. DESCRIPTION DETAILLEE DE L'INVENTION La Figure 1 représente un dispositif électronique 1, adapté à mettre en oeuvre les principales étapes d'un procédé de masquage de données sensibles et/ou de démasquage, et/ou de personnalisation, et/ou d'authentification selon l'invention, tel que décrit ultérieurement en référence à la Figure 2, 3 ou 4. De manière générale, l'invention concerne la sécurisation de l'accès à des données sensibles, c'est-à-dire le démasquage de ces données sensibles lorsqu'elles sont « cachées », pour obtenir ces données sensibles « en clair »), par exemple une clé de chiffrement masquée ou des instructions pour la mise en oeuvre d'une application chargée puis masquée sur le dispositif électronique 1 par un utilisateur de ce dispositif ou bien par une entité externe non représentée, par exemple maitrisée par un opérateur (par exemple au cours d'un procédé de personnalisation). Un tel dispositif peut être par exemple une carte SIM, ou un élément sécurisé, par exemple inséré dans un terminal (e.g. un téléphone mobile, une tablette, un ordinateur portable). De retour à la Figure 1, le dispositif 1 comprend un bus de communication 11 auquel sont reliés : - une unité de traitement 10 -ou microprocesseur- notée CPU (sigle de Central Processing Unit en terminologie anglo-saxonne); - une ou plusieurs mémoires non volatile 14 par exemple ROM (acronyme de Read Only Memory en terminologie anglo-saxonne) pouvant constituer un support au sens de l'invention, c'est-à-dire pouvant comprendre un programme informatique comprenant des instructions pour la mise en oeuvre des procédés selon l'invention ; cette mémoire non volatile peut également être une mémoire EEPROM (acronyme de Electrically Erasable Read Only Memory en terminologie anglo-saxonne) ou encore une mémoire Flash; - une mémoire vive 16 ou mémoire cache ou mémoire volatile par exemple RAM (acronyme de Random Access Memory en terminologie anglo-saxonne) comprenant des registres adaptés à l'enregistrement des variables et paramètres créés et modifiés au cours de l'exécution du programme précité ; lors de la mise en oeuvre de l'invention. Les codes d'instructions du programme stocké en mémoire non volatile (ex. EEPROM ou flash) sont chargés en mémoire RAM en vue d'être exécutés par l'unité de traitement CPU ; - une interface de communication 18 adaptée à transmettre et à recevoir des données, par exemple via un réseau de télécommunications ou une interface de lecture/écriture, c'est par cette interface par exemple qu'un opérateur peut déclencher le chargement de données sensibles sur le dispositif. De façon optionnelle, lorsque le dispositif 1 est inséré dans un terminal hôte, celui- ci peut comprendre une interface d'entrées/sorties 12 I/O (pour Input/Output en terminologie anglo-saxonne), par exemple un écran, un clavier, une souris ou un autre dispositif de pointage tel qu'un écran tactile ou une télécommande permettant par exemple à un utilisateur du terminal de créer une requête d'accès à des données sensibles chargées et masquées sur le dispositif. En variante, cette requête peut être générée par le terminal hôte lui-même ou bien par un dispositif tiers. Dans un mode particulier de réalisation, le dispositif comprend un crypto processeur recevant des instructions de la part de l'unité de traitement 10 pour chiffrer et/ou déchiffrer des données. Par exemple, le crypto-processeur peut être constitué de deux buffers commandés par l'unité de traitement CPU, à savoir, un buffer recevant en entrée une clé cryptographique (ou de chiffrement/déchiffrement) et un buffer dit de travail recevant en entrée les données sensibles en clair à masquer ou les données sensibles masquées à démasquer avec la clé précitée. Le bus de communication permet la communication et l'interopérabilité entre les différents éléments inclus dans le dispositif 1 ou reliés à lui. La représentation du bus n'est pas limitative et, notamment, l'unité de traitement est susceptible de communiquer des instructions à tout élément du dispositif directement ou par l'intermédiaire d'un autre élément de ce dispositif. Selon un mode particulier de réalisation de l'invention, le dispositif 1 comprend en mémoire, préférentiellement non volatile 14, des données sensibles masquées. Ces données sensibles (e.g. des instructions pour la mise en oeuvre d'une application par le dispositif ou encore des clés cryptographiques ou d'authentification) peuvent avoir été chargées sur le dispositif 1 par un utilisateur du dispositif. En variante, ces données sensibles ont été introduites dans le dispositif au cours d'un processus de personnalisation par exemple par le fournisseur du dispositif. Dans les deux cas, et tel qu'illustré sur la Figure 2, ces données sensibles sont mémorisées sous forme masquée, après avoir été masquée (20) par exemple via la mise en oeuvre d'un procédé de masquage selon l'invention, tel que décrit ultérieurement en détail en référence à la Figure 3. A chaque requête d'utilisation ou d'accès à ces données sensibles (22), un procédé de démasquage de ces données sensibles est mis en oeuvre. A noter que, pour des raisons de sécurité, les données sensibles ne sont pas mises spontanément à disposition (i.e. démasquées) par le dispositif 1. En d'autres termes, le démasquage se fait uniquement sur requête. En particulier, cette requête peut prendre la forme d'une commande APDU conforme à la norme ISO 7816 (ETSI 11.11), par exemple formulée par un utilisateur via l'interface I/O d'un terminal hôte dans lequel est inséré le dispositif 1. Par exemple, cette requête peut être une requête d'authentification du dispositif 1 auprès du terminal hôte. La réception de cette requête entraine la mise en oeuvre, dans le dispositif qui la reçoit, d'une commande utilisant les données sensibles en clair, par exemple pour générer une réponse à cette requête. Pour ce faire, les données sensibles masquées doivent donc être démasquées. La réception d'une telle requête APDU déclenche leur démasquage. Un procédé de démasquage des données sensibles masquées, conforme à l'invention, tel que décrit ultérieurement en détail en référence à la Figure 4, utilise un algorithme mobilisant moins de ressources que dans l'état de l'art. L'algorithme permettant d'accéder aux données sensibles en clair (i.e. de les démasquer) mobilise la ressource (e.g. la mémoire vive 16) pendant une durée moins longue que dans l'état de l'art. Dans la suite, les notations suivantes seront adoptées : -T0hjff, pour la durée d'un masquage selon l'état de l'art (i.e. chiffrement), - Tdéchiff pour la durée d'un démasquage selon l'état de l'art (i.e. déchiffrement), - Tmasquage pour la durée d'un masquage selon l'invention, - Tdémasquage pour la durée d'un démasquage selon l'invention. En particulier, selon l'invention, la durée de démasquage Tdémasquage (= Tchiff) est moins longue que la durée de masquage Tmasquage (= Tdéchiff) des données sensibles auxquelles on souhaite accéder. Autrement dit, Tdémasquage Tchiff - Une fois démasquées dans le dispositif, les données sensibles en clair sont utilisées (26), par exemple pour générer une réponse à la requête reçue à l'étape 22. Après utilisation, les données sensibles en clair sont supprimées (28) par le dispositif 1 afin de ne pas mettre en danger leur sécurité. L'invention permet ainsi une gestion optimisée des ressources en temps réel notamment lorsque les données sont très volumineuses, par exemple lorsqu'elles correspondent à une application, et/ou lorsque les données sensibles sont accédées de manière répétée (N fois, avec N très grand devant 1, voir retour de boucle en pointillés). Ainsi, de manière générale, le temps de calcul et les ressources mises en oeuvre dans le cadre d'opérations de sécurité sont optimisés par rapport à l'état de l'art, tout en garantissant un niveau de sécurité satisfaisant pour les données sensibles. Selon un mode de réalisation préféré, les algorithmes appliqués sont conformes à la norme AES (de l'anglais « Advanced Encryption Standard »). En particulier, l'invention utilise le fait que les algorithmes de chiffrement et déchiffrement selon cette norme présentent un niveau de sécurité équivalent, toutefois le chiffrement AES s'avère moins gourmand en ressources que le déchiffrement AES, autrement dit, Tchiff(AES) Le procédé de la Figure 3 peut être réalisé dans le dispositif de la Figure 1 ou bien dans une entité externe (non représentée) puis le résultat mémorisé dans le dispositif de la Figure 1 au cours par exemple d'une étape de personnalisation du dispositif. Ce procédé réalise le masquage des données sensibles D en appliquant les étapes de l'algorithme de déchiffrement par bloc selon la norme AES. De façon générale, la norme AES définit les algorithmes de chiffrement et déchiffrement symétriques, basés sur une même clé cryptographique K. Ainsi, une clé cryptographique K est mémorisée dans le dispositif, par exemple dans une mémoire non volatile. La taille de la clé utilisée dépend du niveau de sécurité souhaité. En effet, plus la clé comporte de bits, plus elle sera complexe à utiliser et plus les données à masquer avec cette clé seront en sécurité. Dans la norme AES, la clé utilisée peut être une clé de 128 bits, de 192 bits ou encore de 256 bits. Dans l'exemple de la Figure 3, une clé de 128 bits est utilisée. Au cours d'une étape 41, une procédure d'expansion (ou dérivation) de clé est appliquée à la clé K. Cette procédure permet d'obtenir un ensemble de sous-clés K°, liées deux à deux. Autrement dit, l'application d'un l'algorithme d'expansion à la clé K=K° permet d'obtenir K1, puis l'application de ce même algorithme d'expansion à la sous-clé ainsi obtenue K1 permet d'obtenir la sous-clé K2, et ainsi de suite jusqu'à obtention par exemple de la sous-clé Kl° par dix applications successives de l'algorithme d'expansion à la clé initiale K. Bien entendu, l'invention ne se limite pas à ce nombre précis de sous-clés. Par exemple, selon la norme AES, une procédure d'expansion d'une clé de 192 bits permet d'obtenir 12 sous-clés et une procédure d'expansion d'une clé de 256 bits permet d'obtenir 14 sous-clés. Ainsi, le nombre de tours ou rondes de l'algorithme d'expansion est lié au nombre de sous-clés. L'obtention de ces sous-clés peut être réalisée selon des techniques connues et qui ne seront donc pas décrites en détail ici. Il est à noter que la procédure d'obtention de ces sous-clés implique une mobilisation des ressources importante. En particulier, la durée de cette procédure est d'autant plus longue que la clé est grande. On notera que la norme AES est particulièrement adaptée aux dispositifs à ressources limitées puisque seule la clé K est mémorisée en mémoire morte, les sous-clés successives étant écrasées de proche en proche par la valeur de la sous-clé suivante, par exemple en mémoire vive. La mémorisation d'une sous-clé, par exemple Kl°, serait ainsi inutile puisque la norme AES ne prévoit pas d'utiliser des clés différentes (i.e. une clé K une sous-clé 1 Les itérations s'arrêtent suite à la transformation finale basée sur la clé K9 = K. Les données sensibles ainsi masquées D' sont donc le fruit d'un ensemble d'itérations telles que décrites ci-avant, conformément aux étapes d'un algorithme de déchiffrement selon la norme AES. Ces données sensibles masquées D' sont alors mémorisées dans le dispositif, soit directement sur demande d'un utilisateur, soit au cours d'une phase de personnalisation par un opérateur ou un constructeur du dispositif. En pratique, le masquage des données sensibles est réalisé par un cryptoprocesseur commandé par l'unité de traitement CPU. Ce crypto-processeur fonctionne selon une logique prédéterminée et n'accepte en entrée que des données sensibles D et une clé K, conformément à la norme AES. Un exemple non limitatif d'instructions envoyées par l'unité de traitement CPU au crypto-processeur pour qu'il mette en oeuvre le masquage de la Figure 3 est donné ci-dessous : Activate AES co-processor II activation du crypto-processeur Load 128-bit ciphertext II fourniture des données sensibles à masquer Load 128-bit AES key 11 fourniture de la clé cryptographique K Execute decryption 11 commande de lancement du déchiffrement AES pour masquer les données sensibles avec la clé K Poli co-processor until decryption terminated 11 déchiffrement AES Read 128-bit plaintext 11 obtention des données sensibles masquées Dans un mode de réalisation particulier, l'unité de traitement CPU est configurée pour commander le crypto-processeur en fonction de la fréquence d'utilisation des données. Par exemple, lorsqu'il s'agit de données utilisées occasionnellement, le CPU peut commander un masquage de ces données par la voie classique, c'est-à-dire en appliquant l'algorithme de chiffrement AES, puisque le démasquage ne sera qu'occasionnel. Lorsqu'il s'agit de données très fréquemment utilisées, le CPU peut commander un masquage de ces données critiques avec l'algorithme de déchiffrage AES, en vue de diminuer le coût calculatoire total en vue des nombreux démasquages que subiront ces données. Le procédé de la Figure 4 peut être mis en oeuvre par le dispositif de la Figure 1. Ce procédé sécurise l'accès à des données sensibles masquées D', par exemple celles obtenues à la Figure 3, en appliquant les étapes de l'algorithme de chiffrement par bloc selon la norme AES. Tel que décrit précédemment, ce procédé permet d'accéder aux données sensibles « en clair » D puisque ces données ont été masquées en appliquant l'algorithme de déchiffrement par bloc selon la norme AES, qui se trouve être l'algorithme inverse de celui utilisé selon l'invention pour démasquer (i.e. accéder de façon sécurisée) aux données sensibles D « en clair ». Ainsi, en partant des données sensibles masquées D', et de la clé K mémorisée par exemple en mémoire morte du dispositif, on effectue une transformation initiale (40) consistant à appliquer la clé K = K° aux données masquées D' (sous forme d'un bloc de bits), au moyen d'un opérateur OU exclusif : D' 0 K°. Suite à cette transformation initiale, un ensemble d'itérations (Itérations 1 à 9) est mis en oeuvre, chaque itération comprenant une étape 42 de : - substitution SB (pour SubBytes) des bits du bloc obtenu lors de l'itération précédente (D' 0 K° pour la première itération) par d'autres bits, en utilisant au moins une table préenregistrée ; - transposition SR (pour ShiftRows) du bloc obtenu ; et - multiplication MC (pour MixColumns) de sous-blocs du bloc obtenu par une matrice correspondant à l'inverse de la matrice utilisée pour l'opération MC-1 lors du chiffrement des données D. La dernière itération ne comprend pas de multiplication MC et conduit, après application de SR o SB puis de la transformation finale par la dernière sous-clé, ici K10, aux données sensibles « en clair » D. De manière générale, les étapes de transposition et de substitution sont interchangeables (SB o SR = SR o SB) et permettent de parvenir au même résultat. Bien entendu, l'accès (le démasquage) aux données sensibles n'est possible que dans la mesure où les tables et fonctions utilisées pour leur masquage (voir description de la Figure 3) correspondent aux inverses des tables et fonctions utilisées pour le présent démasquage de ces données. De façon connue de l'homme du métier, les fonctions inverses intervenant dans le procédé de masquage selon l'invention s'avèrent beaucoup plus laborieuses à utiliser que les fonctions correspondantes utilisées habituellement pour le chiffrement AES. En effet, l'opération de substitution dans l'algorithme de chiffrement selon AES consiste à appliquer une fonction non-linéaire aux données. Comme cette fonction est difficile à inverser, l'algorithme de déchiffrement selon AES est par conséquent plus couteux en termes de calculs. De plus, l'opération de multiplication (dans le cadre du chiffrement selon AES) repose généralement sur des multiplications par 2, alors que l'opération de multiplication inverse (déchiffrement selon AES) fait intervenir un plus grand nombre d'opérations élémentaires et de tables. A titre d'exemple non limitatif, considérons le cas où la multiplication porte sur un bloc constitué de 4 colonnes 'a de 4 bits a[0], a[1], a[2] et a[3]. Cette multiplication utilise une table `xtime' de 216 octets permettant de retourner le double de la colonne dans le corps utilisé par l'AES, bien connu de l'homme du métier. Selon AES, les instructions représentées ci-dessous sont exécutées successivement quatre fois pour chacune des colonnes a: Tmp = a[0] 0 a[1] 0 a[2] 0 a[3] ; Tm = a[0] 0 a[1] ; Tm = xtime(Tm); a[0] = a[0] C)Tm 0 Tmp ; Tm = a[1] a[2]; Tm = xtime(Tm); a[1] = a[1]0 Tm 0 Tmp ; Tm = a[2] 0 a[3] ; Tm = xtime(Tm); a[2] = a[2]0 Tm 0 Tmp ; Tm = a[3] 0 a[0] ; Tm = xtime(Tm); a[3] =a[3] 0 Tm 0 Tmp ; Le coût calculatoire de la multiplication d'une seule colonne est donc de 15 XOR et de 4 accès à la table `xtime' et le coût de la multiplication pour le bloc entier est de quatre fois ce coût par colonne : CO= 4*(15*Ce+4*Cxtime) Réciproquement, considérons la multiplication inverse de ce même bloc de 4x4 bits. Pour ce faire, la même table `xtime' est utilisée de sorte à limiter l'occupation de la mémoire nécessaire, au détriment du coût calculatoire, comme peut être constaté de par ce qui suit. Selon AES, les instructions représentées ci-dessous sont exécutées successivement quatre fois pour chacune des colonnes 'a de 4 bits : Tmp1 = a[0] a[1] a[2] a[3] ; Tmp2 = xtime(Tmp1) ; a[3] = xtime(xtime(Tmp20 a[1] e a[3]) e a[3] e a[0]) e Tmp1 e a[3] ; a[2] = xtime(xtime(Tmp20 a[0] a[2]) e a[2] a[3]) Tmp1 e a[2] ; a[1] = xtime(xtime(Tmp20 a[3] a[1]) e a[1] a[2]) Tmp1 e a[1] ; a[0] = xtime(xtime(Tmp20 a[2] e a[0]) e a[0] e a[1]) e Tmp1 e a[0] ; Le coût de la multiplication inverse d'une seule colonne est donc de 27 XOR et de 9 accès à la table `xtime' et le coût de la multiplication pour le bloc entier est de quatre fois ce coût par colonne : C'm = 4*(27*Ce+9*Cxtime)- Ainsi, l'opération de multiplication inverse (dans le cadre du déchiffrement AES) est beaucoup plus couteuse en termes de calculs que la multiplication (dans le cadre du chiffrement AES). C'est pourquoi les inventeurs proposent d'utiliser le déchiffrement selon AES pour masquer les données, puisque les données sont en théorie masquées qu'une seule fois. De façon correspondante, le chiffrement selon AES (plus rapide que le déchiffrement) est utilisé pour démasquer ces données, à chaque fois que l'utilisateur ou une entité externe demande à utiliser ces données. Cette inversion des algorithmes AES est néanmoins rendue possible car ces algorithmes sont complémentaires, par construction (norme). Il est donc possible de retrouver les données sensibles à l'aide de la clé cryptographique K, lorsqu'elles ont été masquées selon l'algorithme de déchiffrement AES en utilisant cette même clé. Ainsi, les procédés selon l'invention permettent de sécuriser des données sensibles sans pour autant devoir les mémoriser dans une mémoire sécurisée. Ces données sensibles peuvent être par exemple : - des applications, - une clé de chiffrement utilisée au cours d'une étape de chiffrement et/ou de déchiffrement de données, - des données d'authentification utilisées au cours d'une étape d'authentification par exemple d'un utilisateur ou d'une entité électronique. L'invention concerne également un procédé de personnalisation au cours duquel des données sensibles, typiquement des données d'authentification ou une application, sont masquées dans un dispositif (e.g. contrôlé par un opérateur de réseau) selon un procédé de masquage conforme à l'invention, puis insérées sous forme masquée dans un autre dispositif (ex : une carte d'identification au réseau) ou stockées dans le même dispositif. Ainsi le dispositif stockant les données d'authentification est personnalisé. Typiquement, une opération de personnalisation peut comprendre l'authentification du dispositif à personnaliser auprès d'un dispositif tiers ; ce dernier peut obtenir les données d'authentification pour la personnalisation, par exemple une clé de chiffrement à utiliser dans une authentification par challenge/réponse. La clé peut être générée à partir d'éléments d'identification propres au dispositif à personnaliser. Le dispositif tiers masque cette clé à l'aide du procédé de masquage selon l'invention, par exemple en utilisant l'algorithme de déchiffrement tel que défini dans la norme AES. La clé ainsi masquée est écrite en mémoire ROM du dispositif à personnaliser, assurant de la sorte ladite personnalisation de ce dispositif. Enfin, le dispositif personnalisé peut être verrouillé d'un point de vue sécuritaire par exemple par l'écriture d'un drapeau de sécurité (setting flag) interdisant toute nouvelle écriture dans la zone mémoire stockant la clé masquée. En variante, cette zone mémoire peut être du type accessible en écriture une fois et accessible en lecture de nombreuses fois, empêchant ainsi un accès en écriture de la clé masquée une fois la personnalisation effectuée. Dans le cadre d'une d'authentification auprès d'une entité tierce, le dispositif personnalisé peut avoir à utiliser ces données d'authentification présentes sous forme masquée en mémoire. Comme évoqué ci-dessus, c'est par exemple le cas si cette donnée masquée est une clé de chiffrement nécessaire pour une authentification par challenge/réponse. Pour ce faire, un procédé de démasquage selon les enseignements de l'invention peut être appliqué pour retrouver les données d'authentification, ici la clé, et les utiliser pour authentifier l'autre dispositif auprès d'une entité tierce. Notamment, l'algorithme de chiffrement tel que défini dans la norme AES peut être utilisé. En pratique, une telle authentification peut faire suite à une commande APDU de type Internai Authenticate (conforme à la norme ISO 7816) émise par l'entité tierce au dispositif personnalisé et contenant un challenge (par exemple une donnée aléatoire). L'authentification par challenge/réponse comprend alors, sur le dispositif personnalisé, le démasquage de la clé masquée, le chiffrement du challenge à l'aide de la clé démasquée, par exemple basé sur l'algorithme DES, puis le résultat de ce chiffrement est retourné à l'entité tierce, dans une réponse APDU, pour valider l'authentification. Les exemples qui précèdent ne sont que des modes de réalisation de l'invention qui ne s'y limite pas. REVENDICATIONS1. Procédé de démasquage de données sensibles masquées (D'), basé sur un algorithme cryptographique normalisé définissant un algorithme de chiffrement, et un algorithme de déchiffrement utilisant plus de ressources que l'algorithme de chiffrement, ledit procédé étant caractérisé en ce qu'il comprend une étape de démasquage (24) des données sensibles masquées (D') par application de l'algorithme de chiffrement sur les données sensibles masquées pour obtenir des données sensibles en clair (D). 2. Procédé selon la revendication 1, mis en oeuvre dans un dispositif électronique configuré pour également démasquer d'autres données masquées, par application de l'algorithme de déchiffrement sur ces autres données masquées pour obtenir ces autres données en clair. 3. Procédé selon l'une des revendications 1 à 2, caractérisé en ce que le démasquage avec l'algorithme de chiffrement comprend au moins un accès à une table stockée en mémoire, et en ce que le nombre d'accès à la table lors du démasquage avec l'algorithme de chiffrement est inférieur au nombre d'accès à cette même table prévus dans l'algorithme de déchiffrement. 4. Procédé selon l'une des revendications 1 à 3, caractérisé en ce qu'il comprend une pluralité (N) d'accès aux données sensibles masquées (D'), chaque accès comprenant une étape de démasquage (24) par application de l'algorithme de chiffrement sur les données sensibles masquées (D') pour obtenir les données sensibles en clair (D). 5. Procédé selon l'une des revendications 1 à 4, caractérisé en ce que l'étape de démasquage (24) est déclenchée à réception (22) d'une requête comprenant une commande APDU conforme à la norme ISO 7816, telle qu'une réponse à ladite requête est basée sur lesdites données sensibles en clair (D). 6. Procédé selon l'une des revendications 1 à 5, dans lequel les données sensibles en clair (D) sont une clé d'authentification. 7. Procédé selon l'une quelconque des revendications 1 à 6, caractérisé en ce que l'algorithme de chiffrement normalisé est mis en oeuvre par un crypto-processeur, à partir des données sensibles masquées (D') et d'une clé K. 8. Procédé de masquage de données sensibles (D), basé sur un algorithme cryptographique normalisé définissant un algorithme de chiffrement, et un algorithme de déchiffrement utilisant plus de ressources que l'algorithme de chiffrement, ledit procédé étant caractérisé en ce qu'il comprend une étape de masquage (20) des données sensibles (D) par application de l'algorithme de déchiffrement sur lesdites données sensibles pour obtenir des données sensibles masquées (D'). 9. Procédé selon la revendication 8, mis en oeuvre dans un dispositif électronique configuré pour également masquer d'autres données, par application de l'algorithme de chiffrement sur ces autres données pour obtenir des autres données en clair. 10. Procédé selon l'une des revendications 8 à 9, caractérisé en ce qu'il comprend une étape d'application, à une clé K, d'un algorithme d'expansion de clé, pour obtenir une sous-clé Kn nécessaire en entrée de l'étape de masquage avec l'algorithme de déchiffrement. 11. Procédé de personnalisation d'un dispositif électronique, caractérisé en ce qu'il comprend les étapes suivantes : obtenir, par un dispositif tiers, des données sensibles (D) ; masquer (20), par le dispositif tiers, des données sensibles obtenues (D), à l'aide du procédé de masquage selon l'une quelconque des revendications 8 à 10 ; et stocker, dans le dispositif électronique, les données sensibles masquées (D') obtenues de sorte à personnaliser le dispositif électronique. 12. Procédé selon l'une des revendications précédentes, caractérisé en ce que l'algorithme cryptographique normalisé est conforme à la norme AES. 13. Dispositif (1) de démasquage de données sensibles masquées (D'), basé sur un algorithme cryptographique normalisé définissant un algorithme de chiffrement, et un algorithme de déchiffrement utilisant plus de ressources que l'algorithme de chiffrement, ledit dispositif étant caractérisé en ce qu'il comprend un module de démasquage (10) des données sensibles masquées (D') par application de l'algorithme de chiffrement sur les données sensibles masquées (D') pour obtenir des données sensibles en clair (D). 14. Dispositif selon la revendication 13, caractérisé en ce qu'il comprend en outre un module de démasquage (10) d'autres données masquées, par application de l'algorithme de déchiffrement sur ces autres données masquées pour obtenir des autres données en clair. 15. Dispositif (1) de masquage de données sensibles (D), basé sur un algorithme cryptographique normalisé définissant un algorithme de chiffrement, et un algorithme dedéchiffrement utilisant plus de ressources que l'algorithme de chiffrement, ledit dispositif étant caractérisé en ce qu'il comprend un module de masquage (10) des données sensibles (D) par application de l'algorithme de déchiffrement sur lesdites données sensibles (D) pour obtenir des données sensibles masquées (D'). 16. Dispositif selon la revendication 15, caractérisé en ce qu'il comprend en outre un module de masquage (10) d'autres données, par application de l'algorithme de chiffrement sur ces autres données pour obtenir des autres données en clair.