EP1524795A1

Data encryption in an electronic apparatus with several symmetrical processors

Abstract

The method involves selecting a secret key from keys stored with key identifiers in registers. Data is divided into a stream of data words of determined size. A pseudo-random number is generated based on the secret key and an initialization vector. The data word and number are combined to generate an encrypted data word and the encrypted data word is stored with the vector and the identifier of the key in an external memory (23). Independent claims are also included for the following: (A) a device for implementing a data encrypting method (B) an electronic apparatus having processors with encrypting/decrypting unit.

EP1524795A1, drawing sheet 1
Sheet 1 of 2

Term

Term ended

Projected expiry passed 6 September 2024, 2 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

14 claims: 5 independent, 9 dependent

  1. 1
    Method of encryption in a circuit (2) of an electronic apparatus, of data storing in a memory (23) external to said circuit, comprising the steps of:select a secret key (K) from a secret key list (K) respectively stored in a set of registers (32) of the circuit each combination with a key identifier (KID), at least one said keys being a key shared with at least one other circuit the electronic apparatus;cut data as a stream of data words (Wi) of size determined;and, continuously for each data word,generating a pseudo random number (PNi) of the determined size means of a pseudorandom generator implementing an algorithm of generation based on said secret key and an initialization vector (IVi) changing value to each data word;combining the data word and the pseudo random number corresponding to generate an encrypted data word (Ci);then,storing in said external memory each encrypted data word in association with the initialization vector and the key identifier (KIDI) associated with the secret key used to encrypt it. Procédé de chiffrement dans un circuit (2) d'un appareil électronique, de données à stocker dans une mémoire (23) externe audit circuit, comprenant les étapes consistant à : - sélectionner une clé secrète (Ki), à partir d'une liste de clés secrètes (K) respectivement stockées dans un ensemble de registres (32) du circuit en association chacune avec un identificateur de clé (KID), au moins l'une desdites clés étant une clé partagée avec au moins un autre circuit de l'appareil électronique ;- découper les données en un flux de mots de données (Wi) de taille déterminée ;et, en continu pour chaque mot de données,- générer un nombre pseudo aléatoire (PNi) de taille déterminée au moyen d'un générateur pseudo aléatoire mettant en oeuvre un algorithme de génération en fonction de ladite clé secrète et d'un vecteur d'initialisation (IVi) changeant de valeur à chaque mot de données ;- combiner le mot de données et le nombre pseudo aléatoire correspondant, pour générer un mot de données chiffré (Ci) ;puis,- stocker dans ladite mémoire externe chaque mot de données chiffré en association avec le vecteur d'initialisation et l'identificateur de clé (KIDi) associé à la clé secrète ayant servi à le chiffrer.
  2. 4
    A method of decryption, in a circuit (2) of an electronic apparatus, data stored in the form of encrypted data words in a memory (23) external to said circuit, comprising the steps of:said external memory read an encrypted data word (Cj) and an initialization vector (IVj) and a secret key identifier (KIDj) respectively associated with said data word;select a secret key (K) from a secret key list (K) respectively stored in a set of registers (32) of the circuit and of which at least one is a key shared with at least one other circuit the electronic device, and from further said identifier;and, continuously for each encrypted data word,generating a pseudo random number (PN) of fixed size, means of a pseudorandom generator (10) implementing an algorithm based generation of said secret key and of said initialization vector;and,combining the data word and the pseudo random number corresponding to generate a decrypted data word (wj). Procédé de déchiffrement, dans un circuit (2) d'un appareil électronique, de données stockées sous la forme de mots de données chiffrés dans une mémoire (23) externe audit circuit, comprenant les étapes consistant à : - lire dans ladite mémoire externe un mot de données chiffrés (Cj) ainsi qu'un vecteur d'initialisation (IVj) et qu'un identificateur de clé secrète (KIDj) respectivement associés audit mot de données ;- sélectionner une clé secrète (Kj), à partir d'une liste de clés secrètes (K) respectivement stockées dans un ensemble de registres (32) du circuit et dont l'une au moins est une clé partagée avec au moins un autre circuit de l'appareil électronique, et à partir en outre dudit identificateur ;et, en continu pour chaque mot de données chiffré,- générer un nombre pseudo aléatoire (PNj) de taille déterminée, au moyen d'un générateur pseudo aléatoire (10) mettant en oeuvre un algorithme de génération en fonction de ladite clé secrète et dudit vecteur d'initialisation ;et,- combiner le mot de données et le nombre pseudo aléatoire correspondant, pour générer un mot de données déchiffré (Wj).
  3. 7
    Device for the implementation of a cryptographic method according to one of claims 1 to 3, comprising:a set of registers (32) storing secret keys (K) respective ones of which at least one is a key shared with another circuit the electronic apparatus, in association with each key identifier (KID);a secret key selection unit adapted to select a secret key (Ki) from the list of keys stored in said set of records;a segmentation unit (22) adapted to cut out data so as to form a stream of data words (Wi) of determined size;a generator of initialization vectors (24) adapted to generate a Flow initialization vectors (IVi) value of changing each word data;a generator of pseudorandom numbers (10) implementing a generating algorithm suitable for generating, for each word data, based on said secret key and of said vectors determined initialization, a pseudo random number (PNi) of determined size;a combination unit (11) suitable for continuously combining the data word and the corresponding pseudo-random number to generate a encrypted data word (Ci);and,means for storing in said external memory each word Data encrypted in association with said determined and initialization vector the key identifier associated with the secret key used to encrypt it. Dispositif pour la mise en oeuvre d'un procédé de chiffrement selon l'une quelconque des revendications 1 à 3, comprenant : - un ensemble des registres (32) stockant des clés secrètes (K) respectives, dont l'une au moins est une clé partagée avec un autre circuit de l'appareil électronique, en association chacune avec un identificateur de clé (KID) ;- une unité de sélection de clés secrètes adaptée pour sélectionner une clé secrète (Ki) à partir de la liste des clés stockées dans ledit ensemble de registres ;- une unité de segmentation (22) adaptée pour découper les données de manière à former un flux de mots de données (Wi) de taille déterminée ;- un générateur de vecteurs d'initialisation (24) adapté pour générer un flux de vecteurs d'initialisation (IVi) changeant de valeur à chaque mot de données ;- un générateur de nombres pseudo aléatoires (10) mettant en oeuvre un algorithme de génération adapté pour générer, pour chaque mot de données, en fonction de ladite clé secrète et d'un déterminé desdits vecteurs d'initialisation, un nombre pseudo aléatoire (PNi) de taille déterminée ;- une unité de combinaison (11) adaptée pour combiner en continu le mot de données et le nombre pseudo aléatoire correspondant, pour générer un mot de données chiffré (Ci) ;et,- des moyens pour stocker dans ladite mémoire externe chaque mot de données chiffré en association avec ledit vecteur d'initialisation déterminé et l'identificateur de clé associé à la clé secrète ayant servi à le chiffrer.
  4. 8
    Device for the implementation of a decryption method according to to any one of claims 4 to 6, comprising:a set of registers storing respective secret keys which at least one is a shared key, each in association with a key identifier;reading means for reading from said external memory one word data and an initialization vector and with an identifier of a key secret associated respectively to said data word;selection means for selecting, for each word data, a secret key from a list of keys stored in said registers and from further said key identifier;a generator of pseudorandom numbers (10) implementing a generating algorithm suitable for generating, for each word data, based on said secret key and of said initialization vector, a pseudorandom number of determined size;and,a combination unit adapted to combine the data word and the corresponding pseudo-random number, so as to decrypt said data word of data. Dispositif pour la mise en oeuvre d'un procédé de déchiffrement selon l'une quelconque des revendications 4 à 6, comprenant: - un ensemble de registres stockant des clés secrètes respectives dont l'une au moins est une clé partagée, en association chacune avec un identificateur de clé ;- des moyens de lecture pour lire dans ladite mémoire externe un mot de données ainsi qu'un vecteur d'initialisation et qu'un identificateur d'une clé secrète respectivement associés audit mot de données ;- des moyens de sélection pour sélectionner, pour chaque mot de données, une clé secrète à partir d'une liste de clés stockées dans lesdits registres et à partir en outre dudit identificateur de clé ;- un générateur de nombres pseudo aléatoires (10) mettant en oeuvre un algorithme de génération adapté pour générer, pour chaque mot de données, en fonction de ladite clé secrète et dudit vecteur d'initialisation, un nombre pseudo aléatoire de taille déterminée ;et,- une unité de combinaison adaptée pour combiner le mot de données et le nombre pseudo aléatoire correspondant, de manière à déchiffrer ledit mot de données.
  5. 14
    An electronic apparatus comprising at least two circuits according to any one of claims 9 to 13, wherein at least one of the keys secret is shared between said circuits so as to form a subsystem secured. Appareil électronique comprenant au moins deux circuits selon l'une quelconque des revendications 9 à 13, dans lequel au moins l'une des clés secrètes est partagée entre lesdits circuits de manière à former un sous-système sécurisé.