FR2833120A1 - Appareil et procede de cryptage de donnees - Google Patents
Appareil et procede de cryptage de donnees Download PDFInfo
- Publication number
- FR2833120A1 FR2833120A1 FR0214878A FR0214878A FR2833120A1 FR 2833120 A1 FR2833120 A1 FR 2833120A1 FR 0214878 A FR0214878 A FR 0214878A FR 0214878 A FR0214878 A FR 0214878A FR 2833120 A1 FR2833120 A1 FR 2833120A1
- Authority
- FR
- France
- Prior art keywords
- index
- memory
- data
- encryption
- code
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting 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/79—Protecting 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1408—Protection against unauthorised use of memory or access to memory by using cryptography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/82—Protecting input, output or interconnection devices
- G06F21/85—Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
L'invention concerne un appareil pour crypter des données entre un processeur et une mémoire.Le processeur (10) comprend un module (12) destiné à crypter des données d'entrée (DATA) ou à décrypter des données cryptées (EDATA), une table de codes (13) destinée à stocker des codes secrets pour le cryptage/ décryptage de données, et des moyens de commande (14) destinés à générer un index (IND), pour l'opération de cryptage.La mémoire (20) comprend une matrice de cellules de mémoire (21) pour stocker des données cryptées par le module du processeur, et une mémoire d'état de code (22) pour stocker l'index généré dans les moyens de commande du processeur et utilisé pour le cryptage des données d'entrée.L'invention concerne également un procédé de cryptage et de décryptage de données utilisé par cet appareil.
Description
une durée prédétermince.
La présente invention concerne un appareil et un procédé pour crypter des données entre un processeur et une mémoire et, en particulier, un appareil et un procédé de cryptage de données permettant d'éviter des écritures en mémoire inutiles dues à un recryptage et de réduire une consommation d'énergie grâce à l'exécution d'un cryptage de données dynamique sans recryptage, à l'enregistrement dans une zone spéciale d'une mémoire d'un index-indiquant lequel de plusieurs codes secrets est utilisé pour crypter des données lors de l'écriture de celles-ci, à la lecture de l' index stocké lors de la lecture des données cryptées et à
l'utilisation de l' index pour décrypter celles-ci.
Un système de cryptographie sert à protéger un
système interne contre des attaques extérieures.
Par exemple, dans la société informatisce actuelle dans laquelle de plus en plus de cartes à mémoire ou cartes à puce sont distribuées, il est essentiel de protoger les informations personnelles et les informations de compte bancaire d'utilisateurs qui sont
mémorisées dans ces cartes à mémoire.
Etant donné que ces informations sont stockées dans une mémoire prédéterminée après une opération de traitement spécial, la mémoire peut être la cible
d'attaques par des agresseurs extérieurs.
Comme procédés de cryptage de donnces entre un processeur et une mémoire, on connaît un procédé de brouillage de mémoire, un procédé de brouillage de bus
et un procédé de cryptage dynamique.
Dans le procédé de brouillage de mémoire, lorsque des données sont stockées dans une mémoire, un emplacement de stockage des données est modifié à l' aide d'une adresse convertie au moyen d'un certain algorithme, en remplacement d'une adresse initiale. Par conséquent, des agresseurs extérieurs ne peuvent pas
détecter le contenu de la mémoire.
Dans le procédé de brouillage de bus, les bus prévus entre le processeur et la mémoire ne sont pas alignés de manière séquentielle. Par conséquent, même si des agresseurs extérieurs sondent les bus, ils ne
peuvent pas décrypter le contenu de ceux-ci.
Cependant, comme les procédés mentionnés ci-dessus . sont mis en oeuvre de manière statique dans la configuration des puces, il existe un risque de fuite de données par suite de tentatives et d'erreurs des agresseurs. Pour compenser les procédés de brouillage statiques, on a proposé le procédé de cryptage dynamique divulgué dans le brevet américain
n 5 987 572.
Le procédé de cryptage dynamique fait appel au recryptage. En l' absence d'une demande d'accès mémoire, des données sont lues dans une mémoire désignée par un indicateur, décryptées à l'aide d'un premier code secret, cryptées à l 'aide d'un second code secret et
réccrites dans la mémoire désignée par l'indicateur.
Le procédé de cryptage dynamique crypte les données de la zone de mémoire désignée par l'indicateur, au moyen de deux codes secrets différents. Dans ce cas, l'opération de recryptage exécutée pour renouveler des informations de code secret lorsqu'une demande d'accès mémoire n'est pas générée conserve simplement le cryptage des données. Par conséquent, le recryptage n'est pas nécessaire lors
d'une opération de cryptage de données du processeur.
En particulier, les mémoires mortes reprogrammables et effagables électriquement (EEPROM) généralement utilisées pour les cartes à puce ont un nombre d'écritures limité. Ce recryptage inutile réduit
la durée de vie des cartes à puce.
En outre, la consommation d'énergie de l'ensemble
s de la puce est augmentée par le recryptage fréquent.
La présente invention a par conséquent pour but principal de réduire une consommation d'énergie en évitant une opération d'écriture en mémoire due à un recryptage inutile lors d'un cryptage de donnces ..
dynamique entre un processeur et une mémoire.
La présente invention a pour autre but d' augmenter la durée de vie de dispositifs à mémoire, tels que des cartes à mémoire, en évitant une opération d'écriture en mémoire due à un recryptage inutile au cours d'un cryptage de données dynamique entre un processeur et
une mémoire.
Pour atteindre ce but et selon un premier aspect de la présente invention, il est proposé un appareil pour crypter des donnses entre un processeur et une mémoire, caractérisé en ce qu'il comprend un module destiné à crypter des données d'entrée ou à décrypter des donnces cryptées; une table de codes destinée à stocker des codes secrets pour le cryptage/décryptage de données; et des moyens de commande destinés à 2s générer un lndex pour l'opération de cryptage du module; et en ce que la mémoire comprend une matrice de cellules de mémoire destinée a stocker des données cryptées par le module du processeur; et une mémoire d'état de code destinée à stocker l' index généré dans les moyens de commande du processeur et utilisé pour le
cryptage des données d'entrée.
De préférence, le module comprend un multiplexeur destiné à sélectionner l'un des codes secrets stockés dans la table de codes; et des moyens opérateurs pour 3s crypter des données d'entrce ou décrypter des données cryptées stockées dans la mémoire, en fonction du code
secret sélectionné par le multiplexeur.
De préférence également, le multiplexeur sélectionne l'un des codes secrets stockés dans la table de codes en fonction de l' index généré dans les moyens de commande, au cours du cryptage, et l'un des codes secrets stockés dans la table de codes en fonction de l' index stocké dans la mémoire d'état de
code de la mémoire, au cours du décryptage.
- Conformément à une caractéristique particulière de la présenteinvention, des moyens exécutant une opération OU exclusif peuvent être utilisés comme
moyens opérateurs.
De préférence, les moyens de commande comprennent un registre destiné à stocker un index global; et des moyens d'incrémentation destinés à incrémenter une valeur de l' index utilisé pour le cryptage et à stocker
la valeur dans le registre.
De préférence également, les moyens de commande comprennent un générateur de nombres aléstoires destiné
à générer l' index.
La mémoire d'état de code peut comprendre des cellules de mémoire identiques aux cellules de mémoire
qui constituent la matrice de cellules de mémoire.
Selon un second aspect de la présente invention, il est également proposé un procédé de cryptage et de décryptage de données, caractérisé en ce que le cryptage comprend les étapes qui consistent à générer un index; à sélectionner un code secret pour le cryptage en fonction de l' index; à stocker l' index utilisé pour le cryptage dans une zone de stockage spéciale de la mémoire; et à crypter des données d'entrée à l 'aide du code secret sélectionné; et en ce que le décryptage comprend les étapes qui consistent à lire des donnéss cryptées stockées dans la mémoire; à lre l' index stocké dans la zone de stockage spéciale de la mémoire; à sélectionner un code secret pour le décryptage en fonction de l' index; et à décrypter les
donnces cryptées à l' aide du code secret sélectionné.
s L'étape de génération d' index peut comprendre les étapes qui consistent à stocker un index global; et à incrémenter une valeur de l' index à utiliser pour le
cryptage suivant.
De préférence, l'étape de génération d' index génère l' index de manière aléatoire à l'aided-e moyens
générateurs de nombres aléatoires.
Ce qui précède, ainsi que d'autres buts, caractéristiques et avantages de la présente invention,
ressortira plus clairement de la description détaillée
suivante d'un mode de réalisation préféré donnée à titre d'exemple nullement limitatif en référence aux dessins annexés dans lesquels: la figure 1 est un schéma fonctionnel d'un appareil pour exéauter un cryptage dynamique de données entre un processeur et une mémoire, conformément à la présente invention; la figure 2 est un schéma représentant une opération de cryptage de données entre le processeur et la mémoire, conformément à la présente invention; 2s la figure 3 est un schéma représentant une opération de décryptage de données entre le processeur et la mémoire, conformément à la présente lnvention; la figure 4 est un organigramme d'un procédé de cryptage de données entre le processeur et la mémoire, conformément à la présente invention; et la figure 5 est un organigramme d'un procédé de décryptage de données entre le processeur et la
mémoire, conformément à la présente invention.
Un appareil et un procédé de cryptage de données selon un mode de réalisation préféré de la présente invention vont maintenant être décrits en détail en
référence aux dessins.
En référence à la figure 1, l'appareil de cryptage de données comprend un processeur 10 et un bloc de mémoire 20. Le processeur 10 comprend une mémoire centrale 11 destinée à stocker des données DATA introduites de l'extérieur, un module de cryptage/décryptage 12 destiné à crypter les données DATA stockées dans la mémoire centrale 11, une table de codes 13 destinée à stocker des codes secrets K1 à Kn pour le cryptage/décryptage des données; et une unité de commande de cryptage de données 14 destinée à générer un index IND en vue de la sélection du code secret Ki
pour le cryptage/décryptage des donnces.
Le bloc de mémoire 20 comprend une matrice de cellules de mémoire 21 destinée à stocker des données EDATA cryptées dans le processeur 10, et une mémoire d'état de code 22 destinée à stocker l' index IND
utilisé pour le cryptage des données.
Dans ce mode de réalisation, l' index IND qui constitue les informations de cryptage dynamique de données est stocké dans la mémoire d'état de code 22 du bloc de mémoire 20. Plus précisément, l' index IND qui indique lequel de n codes secrets K1 à Kn est utilisé pour le cryptage des données est enregistré dans la mémoire d'état de code 22 lors de l'écriture des donnces. De plus, l' index IND stocké dans la mémoire d'état de code 22 est lu en même temps que les données cryptées EDATA et utilisé pour le décryptage des données. La mémoire d'état de code 22 est constituée par l'addition d'une cellule à 2N bits à chaque unité d'accès minimum (en général octale) de la mémoire. Une cellule de mémoire de la mémoire d'état de code 22 présente la même configuration que celle de la mémoire générale. La table de codes 13 comprend un registre ou une cellule de mémoire pour stocker n codes secrets K1
S à Kn.
En fonction de l' index IND délivré en sortie par l'unité de commande de cryptage de données 14 au cours du cryptage, ou de l' index IND délivré en sortie par la mémoire d'état de code 22 du bloc de mémoire 20 au l0 cours du décryptage, un code se-cret Ki -ou Km est sélectionné par l'intermédiaire d'un multiplexeur N à -1 parmi les n codes secrets K1 à Kn et est utilisé
pour le cryptage ou le décryptage.
On suppose que "n" est un nombre pouvant être IS défini arbitrairement conformément aux spécifications du système et que les n codes secrets K1 à Kn ont été générés préalablement grâce à un générateur de nombres
aléatoires (non représenté).
L'unité de commande de cryptage de donnces 14 détermine l' index IND du code secret exécutant le cryptage récl parmi les codes secrets stockés dans la table de codes 13. Dans le présent mode de réalisation, l'unité de commande de cryptage de données 14 comprend un registre à 2N bits 17 pour stocker un index global,
2s et un dispositif d'incrémentation à 2N bits 18.
Dans un autre mode de réalisation de la présente invention, l'unité de commande de cryptage de données 14 peut comprendre un générateur de nombres aléatoires
à 2N bits pour générer l' index IND.
Une valeur stockée dans le registre binaire 17 est utilisée comme index de cryptage IND au cours de l'opération d'écriture en mémoire, et incrémentée de +1 dans le dispositif d'incrémentation 18 au cours d'une opération d'écriture en mémoire suivante, puis stockée 3s dans le registre binaire 17. En vertu de l'opération de postincrémentation, même les données stockées à la même adresse peuvent être cryptées de manière dynamique à l' aide de codes secrets différents lors de chaque
opération d'écriture en mémoire.
L' index IND utilisé pour le cryptage est stocké dans la mémoire d'état de code 22 du bloc de mémoire 20 afin que le code secret utilisé pour le cryptage
corresponde au code secret utilisé pour le décryptage.
Le module de cryptage/décryptage 12 crypte les données DATA du processeur lO ou décrypte les données EDATA stoc-kées-dans la mémoire, à l' aide du code secret sélectionné à partir de la table de codes 13. Par conséquent, un code secret différent est sélectionné à chaque cryptage par l' index IND de l'unité de commande de cryptage de données 14, pour exécuter le cryptage
dynamique des données.
Une unité de cryptage/décryptage l6 crypte/décrypte les données et le code secret conformément à une opération logique OU exclusif. Etant donné que l'opération logique OU exclusif est une opération symétrique pour décrypter les donnces cryptées EDATA à l' aide du code secret utilisé pour le cryptage, les
données d'origine sont reconstituées avec précision.
Comme on peut le voir sur la figure 2 qui représente une opération de cryptage de données à l' aide de l'appareil de cryptage de données de la figure l, au cours de l'opération d'écriture de données, l' index de cryptage IND est généré dans l'unité de commande de cryptage de données 14. Dans le présent mode de réalisation, l' index de cryptage IND est incrémenté par le dispositif d'incrémentation 18 pour avoir une valeur différente à chaque opération d'écriture en mémoire et est stocké dans le registre
binaire 17.
En fonction de l' index IND généré par 1lunité de commande de cryptage de données 14, le multiplexeur 15 sélectionne pour le cryptage le code secret Ki parmi les multiples codes secrets K1 à Kn fournis par la
s table de codes 13.
L'unité de cryptage/décryptage 16 qui comporte une porte OU exclusif crypte les donnces DATA stockées dans la mémoire centrale 11 à l'aide du code secret Ki sélectionné. Les donnces cryptées EDATA sont inscrites dans la matrice de cellules de mémoire 21 du bloc -de mémoire 20. Dans le présent mode de réalisation, l' index IND utilisé pour le cryptage est également stocké dans la
mémoire d'état de code 22 du bloc de mémoire 20.
En référence à la figure 3 qui représente une opération de décryptage de données à l' aide de l'appareil de la figure 1, au cours de l'opération de lecture de données, les données cryptées EDATA stockées dans la matrice de cellules de mémoire 21 du bloc de mémoire 20 sont tout d'abord lues en méme temps que l' index IND stocké dans la mémoire d'état de code 22 du
bloc de mémoire 20.
En fonction de l' index IND lu dans la mémoire d'état de code 22 du bloc de mémoire 20, le 2s multiplexeur 15 sélectionne à partir de la table de codes 13 le même code secret Km que celui utilisé pour
les données cryptées EDATA.
Etant donné que le même index IND est utilisé pour sélectionner le code secret destiné au cryptage et au décryptage, le même code est utilisé pour crypter/décrypter les mêmes données. Par conséquent, les données cryptées EDATA sont reconstituces exactement sous là forme des donnces initiales DATA par
l'opération de décryptage.
Le procédé de cryptage dynamique de donnces entre le processeur et la mémoire, selon la présente invention, va maintenant être décrit en référence à
l'organigramme de la figure 4.
s L'unité de commande de cryptage de données 14 génère l' index de cryptage IND au cours de l'étape S1, puis génère et stocke un index IND' en vue de son
utilisation ultérieure.
En fonction de l' index IND généré dans l'unité de commande de cryptage de données 14, le multiplexeur 1$ sélecti-onne-le code secret Ki parmi les multiples codes secrets K1 à Kn stockés dans la table de codes 13, au
cours de l'étape S2.
L' index IND utilisé pour le cryptage est stocké dans la mémoire d'état de code 22 du bloc de mémoire 20
au cours de l'étape S3.
Les données d'entrce DATA sont cryptées à l 'aide
du code secret Ki sélectionné, au cours de l'étape S4.
Les données cryptées EDATA sont stockées dans la matrice de cellules de mémoire 21 du bloc de mémoire 20
au cours de l'étape S5.
Le procédé de décryptage dynamique de donnces entre le processeur et la mémoire, conformément à la présente invention, va maintenant étre décrit en
référence à l'organigramme de la figure 5.
Les données cryptées EDATA stockées dans la matrice de cellules de mémoire 21 du bloc de mémoire 20 sont lues au cours de l'étape S11. Conformément au procédé de décryptage dynamique de l' invention, l' index IND stocké dans la mémoire d'état de code 22 du bloc de
mémoire 20 est lui aussi lu au cours de l'étape S12.
En fonction de l' index IND, le multiplexeur 15 sélectionne pour le décryptage le code secret Km parmi les multiples codes secrets K1 à Kn au cours de l'étape S13. Les données cryptées EDATA sont décryptées à l aide du code secret Km sélectionné, et les données décryptées sont déllvrées en sortie au cours de l'étape S14. s Comme cela a été expliqué précédemment, l'appareil et le procédé proposés par la présente invention pour crypter les données entre le processeur et la mémoire permettent d'éviter une écriture en mémoire inutile due au recryptage, et de réduire une consommation d'énergie grâce à l'enregistrement de l' index indiquant celui des multiples codes- secrets qui est utilisé pour le cryptage des données, dans la mémoire d'état de code qui constitue la zone de mémoire spéciale au cours de l'écriture des données, à la lecture de l' index stocké dans la mémoire d'état de code au cours de la lecture des données et à l'utilisation de l' index pour le décryptage.
Bien que la description précédente ait porté sur
un mode de réalisation préféré de la présente invention, celle-ci n'est bien entendu pas limitée à l'exemple particulier décrit et illustré ici et l'homme de l'art comprendra aisément qu'il est possible d'y apporter de nombreuses variantes et modifications sans
pour autant sortir du cadre de l' invention.
Claims (10)
1. Appareil pour crypter des données entre un processeur et une mémoire, caractérisé en ce que le processeur (10) comprend: un module (12) destiné à crypter des données d'entrée ou à décrypter des donnces cryptées; une table de codes (13) déstinée à stocker des codes secrets pour le cryptage/décryptage de données; ; et : - des moyens de commande (14) destinés à générer un index pour l'opération de cryptage du module; et ence que la mémoire (20) comprend: une matrice de cellules de mémoire (21) destinée à stocker des données cryptées par le module du processeur; et une mémoire d'état de code (22) destinée à stocker l' index généré dans les moyens de commande du processeur et utilisé pour le cryptage des données d'entrée.
2. Appareil selon la revendication 1, caractérisé en ce que le module (12) comprend: un multiplexeur (15) destiné à sélectionner l'un des codes secrets stockés dans la table de codes (13); et des moyens opérateurs (16) destinés à crypter des données d'entrée ou à décrypter des données cryptées stockées dans la mémoire, en fonction du code
secret sélectionné par le multiplexcur.
3. Appareil selon la revendication 2, caractérisé en ce que le multiplexeur (15) sélectionne l'un des codes secrets stockés dans la table de codes (13) en fonction de l' index généré dans les moyens de commande (14), au cours du cryptage, et l'un des codes secrets stockés dans la table de codes en fonction de l' index stocké dans la mémoire d'état de code (22) de la
mémoire, au cours du décryptage.
4. Appareil selon la revendication 2, caractérisé en ce que des moyens exécutant une opération OU exclusif sont utilisés comme moyens opérateurs (16).
5. Appareil selon la revendication 1, caractérisé en ce que les moyens de commande (14) comprennent: un registre (17) destiné à stocker un index global; et des moyens d'incrémentation (18) destinés à incrémenter une valeur de l' index utilisé pour le
cryptage, et à stocker la valeur dans le registre (17).
6. Apparei.l selon la revendication 1, caractérisé en ce que les moyens de commande (14) comprennent un
générateur de nombres aléatoires pour générer l' index.
7. Appareil selon la revendication 1, caractérisé en ce que la mémoire d'état de code (22) comprend des cellules de mémoire identiques aux cellules de mémoire
qui constituent la matrice de cellules de mémoire (21).
8. Procédé de cryptage et de décryptage de données, caractérisé en ce que le cryptage comprend les étapes qui consistent à: générer un index (IND); sélectionner un code secret (Ki) pour le cryptage en fonction de l'index; stocker l' index (IND) utilisé pour le cryptage dans une zone de stockage spéciale d'une mémoire; et crypter des données d'entrée (DATA) à l 'aide du code secret (Ki) sélectionné; et en ce que le décryptage comprend les étapes qui consistent à: lire des donnces cryptées (EDATA) stockéss dans la mémoire; lire l' index (IND) stocké dans la zone de stockage spéciale de la mémoire; sélectionner un code secret (Km) pour le décryptage en fonction de l' index; et décrypter les donnces cryptées (EDATA) à l' aide
du code secret (Km) sélectionné.
9. Procédé selon la revendication 8, caractérisé en ce que l'étape de génération d' index comprend les étapes qui consistent à: stocker un index global; et incrémenter une valeur de l' index à utiliser
pour le cryptage suivant.
10. Procédé selon la revendication 8, caractérisé en ce que l'étape de génération d' index génère l' index de manière aléatoire à l' aide de moyens générateurs de
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2001-0075492A KR100445406B1 (ko) | 2001-11-30 | 2001-11-30 | 데이터 암호화 장치 및 그 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2833120A1 true FR2833120A1 (fr) | 2003-06-06 |
FR2833120B1 FR2833120B1 (fr) | 2005-04-08 |
Family
ID=19716509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0214878A Expired - Fee Related FR2833120B1 (fr) | 2001-11-30 | 2002-11-27 | Appareil et procede de cryptage de donnees |
Country Status (5)
Country | Link |
---|---|
US (1) | US20030105967A1 (fr) |
JP (1) | JP2003198534A (fr) |
KR (1) | KR100445406B1 (fr) |
DE (1) | DE10254396A1 (fr) |
FR (1) | FR2833120B1 (fr) |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7171560B2 (en) | 1998-06-22 | 2007-01-30 | Semtek Solutions, Inc. | Method and apparatus for securing and authenticating encoded data and documents containing such data |
FI114061B (fi) * | 2002-05-17 | 2004-07-30 | Nokia Corp | Menetelmä ja järjestelmä digitaalisessa langattomassa tiedonsiirtoverkossa datasalauksen järjestämiseksi ja vastaava palvelin |
JP4263976B2 (ja) * | 2003-09-24 | 2009-05-13 | 株式会社東芝 | オンチップマルチコア型耐タンパプロセッサ |
DE10345454A1 (de) * | 2003-09-30 | 2005-04-28 | Infineon Technologies Ag | Wortindividuelle Schlüsselerzeugung |
US7562230B2 (en) * | 2003-10-14 | 2009-07-14 | Intel Corporation | Data security |
KR100585135B1 (ko) * | 2004-02-28 | 2006-06-01 | 삼성전자주식회사 | 불법 복제 방지 기능을 갖는 aes 엔진 장치 및 이의암호화/복호화 방법 |
US7543158B2 (en) * | 2004-03-23 | 2009-06-02 | Texas Instruments Incorporated | Hybrid cryptographic accelerator and method of operation thereof |
US7506812B2 (en) | 2004-09-07 | 2009-03-24 | Semtek Innovative Solutions Corporation | Transparently securing data for transmission on financial networks |
US7711965B2 (en) * | 2004-10-20 | 2010-05-04 | Intel Corporation | Data security |
KR20060066626A (ko) * | 2004-12-13 | 2006-06-16 | 엘지전자 주식회사 | 컨텐트의 암호/해독을 위한 키를 기록하고 사용하는 방법및 장치와 그 방법에 의해 키가 기록되어 있는 기록매체 |
EP1825470A4 (fr) * | 2004-12-13 | 2009-04-29 | Lg Electronics Inc | Procede et dispositif pour ecrire et utiliser des cles servant a chiffrer/dechiffrer du contenu, et support d'enregistrement stockant les cles ecrites a l'aide du procede |
AU2005317447A1 (en) * | 2004-12-13 | 2006-06-22 | Lg Electronics Inc. | Method and apparatus for writing and using keys for encrypting/decrypting a content and a recording medium storing keys written by the method |
KR20060066627A (ko) * | 2004-12-13 | 2006-06-16 | 엘지전자 주식회사 | 컨텐트의 암호/해독을 위한 키를 기록하고 사용하는 방법및 장치와 그 방법에 의해 키가 기록되어 있는 기록매체 |
JP2008530663A (ja) * | 2005-02-11 | 2008-08-07 | ユニバーサル データ プロテクション コーポレーション | マイクロプロセッサのデータセキュリティの方法およびシステム |
US20060194603A1 (en) * | 2005-02-28 | 2006-08-31 | Rudelic John C | Architecture partitioning of a nonvolatile memory |
US8165302B2 (en) * | 2005-06-07 | 2012-04-24 | Sony Corporation | Key table and authorization table management |
EP1785902B1 (fr) * | 2005-10-28 | 2010-05-05 | Emma Mixed Signal C.V. | Contrôle d'accès par table à clé de décryptage sur ASIC ou ASSP |
US8001591B2 (en) * | 2006-01-31 | 2011-08-16 | Freescale Semiconductor, Inc. | Distributed resource access protection |
US20070239605A1 (en) * | 2006-04-06 | 2007-10-11 | Peter Munguia | Supporting multiple key ladders using a common private key set |
US8769275B2 (en) | 2006-10-17 | 2014-07-01 | Verifone, Inc. | Batch settlement transactions system and method |
US9361617B2 (en) | 2008-06-17 | 2016-06-07 | Verifone, Inc. | Variable-length cipher system and method |
US9123042B2 (en) * | 2006-10-17 | 2015-09-01 | Verifone, Inc. | Pin block replacement |
US20080288403A1 (en) * | 2007-05-18 | 2008-11-20 | Clay Von Mueller | Pin encryption device security |
US8355982B2 (en) | 2007-08-16 | 2013-01-15 | Verifone, Inc. | Metrics systems and methods for token transactions |
EP2028603B1 (fr) | 2007-08-20 | 2011-07-13 | NTT DoCoMo, Inc. | Support d'adaptateur de stockage externe |
JP2009064055A (ja) * | 2007-09-04 | 2009-03-26 | Hitachi Ltd | 計算機システム及びセキュリティ管理方法 |
KR101012770B1 (ko) * | 2008-05-16 | 2011-02-08 | 한국표준과학연구원 | 가변압력을 이용한 건조기 및 이를 이용한 건조방법 |
EP2300954B1 (fr) * | 2008-06-24 | 2014-12-03 | NDS Limited | Sécurité dans des circuits intégrés |
US8144940B2 (en) | 2008-08-07 | 2012-03-27 | Clay Von Mueller | System and method for authentication of data |
JP4648461B2 (ja) * | 2009-01-30 | 2011-03-09 | 株式会社東芝 | 磁気ディスク装置及び同装置における暗号鍵更新方法 |
US8251283B1 (en) | 2009-05-08 | 2012-08-28 | Oberon Labs, LLC | Token authentication using spatial characteristics |
WO2012161505A1 (fr) * | 2011-05-23 | 2012-11-29 | Samsung Electronics Co., Ltd. | Procédé et appareil destinés à l'authentification d'un dispositif à mémoire non volatile |
KR101878682B1 (ko) * | 2011-11-14 | 2018-07-18 | 삼성전자주식회사 | 컨텐츠를 보호하기 위한 방법 및 저장 매체 |
KR101329084B1 (ko) * | 2012-05-17 | 2013-11-14 | 한국전자통신연구원 | 무중단 암호통신을 위한 암복호 통신 방법 및 장치 |
US9672519B2 (en) | 2012-06-08 | 2017-06-06 | Fmr Llc | Mobile device software radio for securely passing financial information between a customer and a financial services firm |
KR102218715B1 (ko) * | 2014-06-19 | 2021-02-23 | 삼성전자주식회사 | 채널별로 데이터를 보호할 수 있는 반도체 장치 |
KR101625018B1 (ko) | 2014-09-30 | 2016-05-30 | 칩스브레인글로벌주식회사 | 데이터 암호화 장치 및 방법, 그를 이용한 컴퓨팅 장치 및 통신 장치 |
KR101828234B1 (ko) * | 2016-04-05 | 2018-02-12 | 주식회사 다산네트웍스 | 시각 동기 기반의 차량용 전자 제어 시스템, 장치 및 방법 |
KR101932680B1 (ko) * | 2018-09-27 | 2018-12-26 | (주)아이엔아이 | 데이터를 안전하게 보호하는 암호화 키 생성 모듈 |
KR102285885B1 (ko) * | 2019-05-22 | 2021-08-05 | 주식회사 디지트로그 | 무선 데이터 통신용 대칭형 양자 암호화 키 기반 암호화 장치 |
CN111556071B (zh) * | 2020-05-12 | 2020-12-04 | 深圳市汇智通咨询有限公司 | 一种用于计算机的数据加密算法与系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4731840A (en) * | 1985-05-06 | 1988-03-15 | The United States Of America As Represented By The United States Department Of Energy | Method for encryption and transmission of digital keying data |
US5222137A (en) * | 1991-04-03 | 1993-06-22 | Motorola, Inc. | Dynamic encryption key selection for encrypted radio transmissions |
US5987572A (en) * | 1997-09-29 | 1999-11-16 | Intel Corporation | Method and apparatus employing a dynamic encryption interface between a processor and a memory |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5253294A (en) * | 1983-02-22 | 1993-10-12 | At&T Bell Laboratories | Secure transmission system |
US4853962A (en) * | 1987-12-07 | 1989-08-01 | Universal Computer Consulting, Inc. | Encryption system |
US5265162A (en) * | 1990-01-16 | 1993-11-23 | George Bush | Portable pin card |
US5365589A (en) * | 1992-02-07 | 1994-11-15 | Gutowitz Howard A | Method and apparatus for encryption, decryption and authentication using dynamical systems |
JPH104403A (ja) * | 1996-06-17 | 1998-01-06 | N T T Data Tsushin Kk | 暗号化装置、復号化装置およびその方法 |
KR100201396B1 (ko) * | 1996-07-20 | 1999-06-15 | 구본준 | 이피롬의 비화코드 해독 방지회로 |
US5970147A (en) * | 1997-09-30 | 1999-10-19 | Intel Corporation | System and method for configuring and registering a cryptographic device |
US6061449A (en) * | 1997-10-10 | 2000-05-09 | General Instrument Corporation | Secure processor with external memory using block chaining and block re-ordering |
US7457415B2 (en) * | 1998-08-20 | 2008-11-25 | Akikaze Technologies, Llc | Secure information distribution system utilizing information segment scrambling |
JP4206529B2 (ja) * | 1998-09-17 | 2009-01-14 | ソニー株式会社 | コンテンツ管理方法及びコンテンツ記憶システム |
US6490353B1 (en) * | 1998-11-23 | 2002-12-03 | Tan Daniel Tiong Hok | Data encrypting and decrypting apparatus and method |
US6094368A (en) * | 1999-03-04 | 2000-07-25 | Invox Technology | Auto-tracking write and read processes for multi-bit-per-cell non-volatile memories |
DE50015839D1 (fr) * | 1999-12-02 | 2010-02-25 | Infineon Technologies Ag | |
US7005733B2 (en) * | 1999-12-30 | 2006-02-28 | Koemmerling Oliver | Anti tamper encapsulation for an integrated circuit |
JP2001325153A (ja) * | 2000-05-15 | 2001-11-22 | Toyo Commun Equip Co Ltd | フィールドプログラマブルゲートアレイの回路情報保護方法 |
US7277542B2 (en) * | 2000-09-25 | 2007-10-02 | Broadcom Corporation | Stream cipher encryption application accelerator and methods thereof |
JP2002344441A (ja) * | 2001-05-11 | 2002-11-29 | Ricoh Co Ltd | ディジタルデータ暗号システム、ディジタルデータ再生装置、ディジタルデータ暗号方法、ディジタルデータ再生方法およびそれらの方法をコンピュータに実行させるプログラム |
US7594265B2 (en) * | 2001-11-14 | 2009-09-22 | Ati Technologies, Inc. | System for preventing unauthorized access to sensitive data and a method thereof |
-
2001
- 2001-11-30 KR KR10-2001-0075492A patent/KR100445406B1/ko not_active IP Right Cessation
-
2002
- 2002-09-25 JP JP2002279831A patent/JP2003198534A/ja not_active Withdrawn
- 2002-11-07 US US10/289,927 patent/US20030105967A1/en not_active Abandoned
- 2002-11-21 DE DE10254396A patent/DE10254396A1/de not_active Withdrawn
- 2002-11-27 FR FR0214878A patent/FR2833120B1/fr not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4731840A (en) * | 1985-05-06 | 1988-03-15 | The United States Of America As Represented By The United States Department Of Energy | Method for encryption and transmission of digital keying data |
US5222137A (en) * | 1991-04-03 | 1993-06-22 | Motorola, Inc. | Dynamic encryption key selection for encrypted radio transmissions |
US5987572A (en) * | 1997-09-29 | 1999-11-16 | Intel Corporation | Method and apparatus employing a dynamic encryption interface between a processor and a memory |
Also Published As
Publication number | Publication date |
---|---|
US20030105967A1 (en) | 2003-06-05 |
DE10254396A1 (de) | 2003-08-21 |
KR100445406B1 (ko) | 2004-08-25 |
JP2003198534A (ja) | 2003-07-11 |
FR2833120B1 (fr) | 2005-04-08 |
KR20030044654A (ko) | 2003-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FR2833120A1 (fr) | Appareil et procede de cryptage de donnees | |
US8175276B2 (en) | Encryption apparatus with diverse key retention schemes | |
JP4500306B2 (ja) | 解読待ち時間が削減されたメモリ暗号化のための装置及び方法 | |
US7444480B2 (en) | Processor, memory device, computer system, and method for transferring data | |
US20190384939A1 (en) | Data Protection Device and Method and Storage Controller | |
EP1617586B1 (fr) | Chiffrement en continu du contenu d'une mémoire externe à un processeur | |
EP0800691A1 (fr) | Procede pour la mise en uvre d'un protocole de communication a cle secrete entre deux dispositifs de traitement | |
FR2995111A1 (fr) | Protection contre canaux auxiliaires | |
EP3555743B1 (fr) | Procédé d'exécution par un microprocesseur d'un code machine polymorphique d'une fonction prédéterminée | |
US8090108B2 (en) | Secure debug interface and memory of a media security circuit and method | |
FR2979443A1 (fr) | Microcontroleur securise a base de mode | |
US7657034B2 (en) | Data encryption in a symmetric multiprocessor electronic apparatus | |
US8607068B2 (en) | Method of storing data in a memory device and a processing device for processing such data | |
EP1355446B1 (fr) | Chiffrement du contenu d'une mémoire externe à un processeur | |
EP1615369A1 (fr) | Chiffrement par blocs du contenu d'une mémoire externe à un processeur | |
CN116070293A (zh) | 一种通过芯片加密进行固件保护的处理方法和装置 | |
WO2015032921A1 (fr) | Procédé de gestion de cohérence de caches | |
CN108920967B (zh) | 一种数据处理方法、装置、终端和计算机存储介质 | |
EP2088732A1 (fr) | Appareil et procédé de traitement de données sécurisées | |
FR3078419A1 (fr) | Procede et circuit de realisation d'une operation de substitution | |
FR3078463A1 (fr) | Procede et dispositif de realisation d'operations en table de substitution | |
EP1493072B1 (fr) | Procede et dispositif de protection de donnees numeriques stockees dans une memoire | |
EP4242884A1 (fr) | Procédé de protection contre les attaques par canaux auxiliaires | |
EP4068681A1 (fr) | Procédé et dispositif pour le déchiffrement sécurisé de données chiffrées | |
CN114817869A (zh) | 程序处理装置、方法、计算机设备、存储介质及程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TP | Transmission of property | ||
ST | Notification of lapse |
Effective date: 20070731 |