ES2207567T3 - Disposicion de microprocesadores con codificacion. - Google Patents

Disposicion de microprocesadores con codificacion.

Info

Publication number
ES2207567T3
ES2207567T3 ES00990531T ES00990531T ES2207567T3 ES 2207567 T3 ES2207567 T3 ES 2207567T3 ES 00990531 T ES00990531 T ES 00990531T ES 00990531 T ES00990531 T ES 00990531T ES 2207567 T3 ES2207567 T3 ES 2207567T3
Authority
ES
Spain
Prior art keywords
unit
key
memory
coding
data
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.)
Expired - Lifetime
Application number
ES00990531T
Other languages
English (en)
Inventor
Berndt Gammel
Oliver Kniffler
Holger Sedlak
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Application granted granted Critical
Publication of ES2207567T3 publication Critical patent/ES2207567T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/409Device specific authentication in transaction processing
    • G06Q20/4097Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
    • G06Q20/40975Device specific authentication in transaction processing using mutual authentication between devices and transaction partners using encryption therefor
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/0806Details of the card
    • G07F7/0813Specific details related to card security
    • G07F7/082Features insuring the integrity of the data on or in the card

Landscapes

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

Abstract

Disposición de microprocesadores, que comprende: - una unidad central de procesamiento (1) - otra unidad (2, 3, 4) - una unidad de memoria (5), - un bus (6), a través del cual están conectadas entre sí la unidad central de procesamiento (1), la otra unidad (2, 3, 4) y la memoria (5) para el intercambio de datos, - una primera unidad de codificación (12, 32, 52) respectiva asociada a las unidades (1, 2, 3, 4, 5), que está conectada entre el bus (6) y la unidad asociada (1, 2, 3, 4, 5) y comprende un medio (10, 50) para la preparación de una clave y un elemento de enlace lógico (11, 51), que está conectado entre el bus (6) y la unidad asociada (1, 2, 3, 5), siendo la clave igual para las unidades y siendo variable, caracterizada por - una segunda unidad de codificación (53) asociada a la unidad de memoria, (5) que comprende un medio (54) para la preparación de otra clave así como un elemento de enlace lógico (55), que está conectado entre el medio (54) para la preparación de la clave de la primera unidad de codificación (50) asociada y el elemento de enlace lógico (51) de la primera unidad de codificación asociada (52).

Description

Disposición de microprocesadores con codificación.
La invención se refiere a una disposición de microprocesadores, en la que están conectadas entre sí a través de un bus una unidad central de procesamiento, otra unidad así como una unidad de memoria.
Tales disposiciones de microprocesadores se emplean en aplicaciones críticas para la seguridad, por ejemplo en una tarjeta de chip. La disposición está integrada en un único chip de semiconductores, un llamado microcontrolador. Todo el tráfico de datos se desarrolla a través del bus. El bus transmite, por ejemplo, datos, direcciones, instrucciones de programas, instrucciones de control, etc. Los programas a ejecutar están memorizados en una memoria no volátil (ROM), los datos pueden ser memorizados igualmente en la memoria no volátil o temporalmente en una memoria volátil (RAM). Debido al acceso largo a estas memorias, los datos a procesar son memorizados temporalmente en memoriza Cache más rápidas.
Todas las memorias así como los buses en el microprocesador o microcontrolador son estructuras regulares fáciles de identificar sobre el chip. Por lo tanto, representan puntos de ataque preferidos cuando se intenta acceder a circuitos internos del chip o a ciclos de funcionamiento para espiar datos y funciones relevantes para la seguridad. Los ataques eventuales se pueden realizar a través de experimentación, en la que se accede a los ciclos de las señales a través de la colocación de agujas sobre estructuras de interés.
Por lo tanto, los datos depositados en la memoria están cifrados en los microprocesadores o microcontroladores convencionales con una codificación costosa. La lectura requiere un gasto de cálculo correspondiente. La transmisión siguiente de los datos y la alimentación a las diferentes unidades funcionales del microprocesador se realizan, en general, de forma no codificada. Por lo tanto, en el caso de un ataque con agujas sobre el bus se pueden consultar datos discrecionales en texto claro. No se recomienda una codificación y decodificación comparativamente costosa también del tráfico de datos desde y hacia la unidad central de procesamiento (CPU), hacia una unidad periférica o hacia una unidad lógica aritmética (ALU) o memoria Cache, porque se reduciría de esta manera en una medida esencial la velocidad de acceso a estas unidades.
El documento WO 99 46774 A muestra un esquema para la decodificación de corrientes binarias de datos codificadas para la configuración de unidades lógicas programables. A tal fin se carga una clave de decodificación en la unidad de decodificación del circuito, encontrándose el circuito en un primer estado. Luego se alimenta una corriente de datos binarios codificada al circuito. Después de que ha sido decodificada una primera parte de esta corriente de datos binarios i del circuito, se desplaza el circuito a un segundo estado. A continuación se decodifica una segunda corriente de datos binarios. La unidad lógica programable está configurada ahora utilizando estas dos corrientes de datos binarios.
El cometido de la invención consiste en indicar una disposición de microprocesador, que presenta una seguridad elevada frente a un espionaje de ciclos internos.
Este cometido se soluciona a través de una disposición de microprocesadores, que comprende: una unidad central de procesamiento, otra unidad, una unidad de memoria; un bus, a través del cual están conectadas entre sí la unidad central de procesamiento, la otra unidad y la memoria para el intercambio de datos; una primera unidad de codificación respectiva asociada a las unidades, que está conectada entre el bus y la unidad asociada y que comprende un medio para la preparación de una clave y un elemento de enlace lógico, que está conectado entre el bus y la unidad asociada, siendo la clave igual para las unidades y siendo variable; una segunda unidad de codificación asociada a la unidad de memoria, que comprende un medio para la preparación de otra clave así como un elemento de enlace lógico, que está conectado entre el medio para la preparación de la clave de la primera unidad de codificación asociada y el elemento de enlace lógico de la primera unidad de codificación asociada.
En la disposición de microprocesadores según la invención, en cada unidad funcional conectada con el bus está prevista una instalación de codificación, que está constituida de forma relativamente sencilla. Comprende un medio para la preparación de una clave, por ejemplo un registro, así como un elemento de enlace, por ejemplo una puerta O Exclusiva. La instalación de codificación está en condiciones tanto de realizar una codificación del dato emitido por la unidad funcional sobre el bus como también una codificación de un dato a recibir. La instalación de codificación está constituida de forma sencilla y, por lo tanto, no conduce a ningún retraso durante la transmisión de datos.
De una manera más conveniente, se modifica de vez en cuando la clave que está depositada en el registro. La actualización de la clave se realiza de una manera más preferida con cada pulso de reloj de funcionamiento. Para que un valor de dato emitido por una unidad funcional sobre el bus y codificado pueda ser decodificado de nuevo por otra unidad funcional en el caso de cambio de clave, los registros de claves de cada unidad funcional deben contener la misma clave durante los procesos de lectura y escritura correspondientes. La clave es generada a tal fin de una manera conveniente por un generador de claves, que transmite la misma clave a todos los registros de claves. Con preferencia, la clave es generada bajo control aleatorio. A pesar de la codificación y decodificación sencillas, que apenas requieren tiempo de retraso, se ofrece a través de la preparación aleatoria de diferentes palabras claves una seguridad suficiente frente al acceso y al espionaje del tráfico de datos.
Para impedir en una memoria conectada en el bus, por ejemplo una memoria Cache, una memoria intermedia o una memoria auxiliar para traducción de direcciones (Translation Lookaside Buffer), que la información sea memorizada allí en texto claro, se requiere una codificación y decodificación adicional. A tal fin, está prevista otra unidad de codificación, que comprende de nuevo un medio para la preparación de la clave, por ejemplo, otro registro de claves, así como un elemento de enlace lógico, por ejemplo una puerta O Exclusiva. Es esencial que el elemento de enlace lógico de la otra unidad de codificación esté dispuesto entre el elemento de enlace lógico de la primera unidad de codificación y su registro de claves. Esto tiene la ventaja de que todas las secciones del bus, especialmente aquéllas que están entre el elemento de enlace lógico de la primera unidad de codificación, que está dispuesta entre el bus y la memoria, y la memoria, conducen datos codificados.
El registro de claves de la segunda unidad de codificación es alimentado por otro generador de claves. De una manera más conveniente, también esta clave es modificada de vez en cuando. En este caso, se puede garantizar que los datos memorizados temporalmente codificados en la memoria son leídos de nuevo con la misma clave. Por lo tanto, la clave para el registro de claves mencionado solamente es actualizado cuando la memoria no contiene ya ninguna información válida. Éste es el caso, por ejemplo, cuando la memoria está totalmente vacía o cuando la memoria es inicializada de nuevo. Esto se lleva a cabo, por ejemplo, cuando la disposición de microprocesadores ha terminado una aplicación y comienza una aplicación nueva. En el caso de un cambio de aplicación de este tipo, no es necesario ya por razones de seguridad modificar el contenido de la memoria, puesto que debido al cambio de claves, los datos contenidos todavía en la memoria no pueden ser utilizados en adelante por una nueva aplicación.
En la configuración de la invención, las unidades de codificación comprenden solamente puestas O Exclusiva y registros de claves correspondientes en cada unidad funcional conectada en el bus. El gasto técnico de circuito es relativamente reducido. Los generadores de claves solamente deben preverse en cada caso en ejecución sencilla. El gasto de cálculo adicional es relativamente reducido medido en la seguridad obtenida frente a un espionaje del tráfico de datos.
A continuación se explica en detalle la invención con la ayuda del ejemplo de realización representado en el dibujo.
La figura representada en el dibujo muestra un diagrama de bloques de un microcontrolador para aplicaciones de seguridad según la invención. El microcontrolador comprende un número de componentes: una unidad central de procesamiento (CPU) 1, que desarrolla el control del tráfico de datos; una memoria 2, que memoria de forma permanente datos y programas a ejecutar; una unidad periférica 3, que ejecuta el tráfico de datos hacia circuitos externos que están dispuestos fuera del microcontrolador; una memoria intermedia 5, que memoria temporalmente datos. Las comunicaciones representadas en negrilla comprenden varias líneas.
La memoria no volátil 2 comprende una instalación de decodificación 21, que ejecuta una codificación muy buena con una longitud de la clave relativamente larga. Sin embargo, la decodificación requiere un tiempo de cálculo relativamente largo y es correspondientemente costosa desde el punto de vista de la técnica de circuitos. Los datos a leer desde la memoria 2 son memorizados temporalmente, por lo tanto, en la memoria 5, que está preparada para un acceso esencialmente rápido. La memoria 5 es una llamada memoria Cache. Las unidades funcionales mencionadas están conectadas entre sí a través de un bus 6, que comprende una pluralidad de líneas de datos y de control.
Entre el bus 6 y cada una de las unidades funcionales está dispuesta una unidad de codificación, por ejemplo las unidades 12, 32 y 52. La unidad de codificación codifica el tráfico de datos emitido por la unidad funcional sobre el bus 6 y decodifica el tráfico de datos recibido.
Las unidades de codificación de las unidades funcionales 1, 2 y 3 están realizadas idénticas. Por ejemplo la unidad de codificación 12 asociada a la CPU 1 comprende un registro de claves 10, en el que está memorizada una palabra clave. Una puerta O Exclusiva 11 está conectada en la trayectoria de los datos entre la CPU 1 y el bus 6. Además, se alimenta a la puerta 11 también la clave K1 desde el registro de claves 10. A través del enlace del valor de datos recibido por el bus 6 con la palabra clave K1 se transforma en texto claro T el dato T1 recibido codificado por el bus 6. La línea desde la puerta O Exclusiva hacia la CPU 1 es audible, en general, sin más, puesto que la CPU1 presenta una estructura irregular. Cuando la CPU 1 emite un valor de datos T sobre el bus, este valor de datos de texto claro en la puerta O Exclusiva 11 es enlazado con una clave acondicionada por el registro de claves 10 y es puesto a disposición como valor de datos T1 en el bus. Otra unidad, por ejemplo una unidad periférica 3, recibe el dato codificado t1 y lo decodifica de manera complementaria.
La clave K1 utilizada para la codificación en la unidad 12 es modificada de forma sincronizada. La clave es acondicionada por un generador de claves 61, que genera la palabra clave de forma aleatoria. Con cada pulso de reloj acondicionado por un generador de pulsos de reloj se modifica la palabra clave K1. Es esencial que una clave K1, que es utilizada para la codificación de un valor de datos emitido aguas arriba de la CPU 1, esté preparada igualmente en las otras unidades de codificación para la descodificación del mismo valor de datos. A tal fin, todos los registros de claves asociados a las unidades funcionales respectivas están conectados en paralelo en el generador de números aleatorios 61 y en el generador de pulsos de reloj 62. De esta manera, por ejemplo, un valor de datos T emitido por la CPU 1 es emitido como valor de datos T1 codificada sobre el bus y es decodificado con la misma clave K1 en la unidad periférica 3 y es puesto a disposición allí como el mismo dato T en texto claro. A través de la actualización bajo control aleatorio de la clave se consigue una alta seguridad frente a un intento de decodificación del dato transmitido a través del bus.
Aguas arriba de la memoria Cache 5 está conectada una instalación de codificación 52, que corresponde a las instalaciones de codificación 52 correspondientes. La instalación de codificación 52 comprende un registro de claves 50, que está conectado de la misma manera con el generador de pulsos de reloj 62 y con el generador de números aleatorios 61 así como una puerta O Exclusiva 51, que está conectada en la trayectoria de datos entre el bus 6 y la memoria Cache 5. Sin medidas adicionales, el tráfico de datos que se desarrolla entre la puerta 51 y la memoria Cache 5, estaría presente en texto claro, además, los datos estarían memorizados en texto claro en la memoria Cache 5.
Para codificar adicionalmente los datos depositados en la memoria Cache 5, está prevista otra unidad de codificación 53, que está combinada con la unidad de codificación 52, para codificar de nuevo los datos decodificados por la instalación de codificación 52 por medio de la clave K1. La otra instalación de codificación 53 comprende un registro de claves 54 así como una puerta O Exclusiva 55. La puerta O Exclusiva 55 está conectada entre el registro de claves 50 y la puerta O Exclusiva 51. A través de la puerta O Exclusiva 55 se enlazan entre sí las claves de los registros 50 y 54. Esto hace que la corriente de datos T2 depositada por la puerta O Exclusiva 51 en la memoria Cache 5 esté codificada.
De una manera correspondiente se decodifican los datos T2 leídos por la memoria Cache 5 de nuevo con la palabra clave K2 depositada en el registro de claves 54 y se codifican con la clave K1 variable actual depositada en el registro de claves 50 para la emisión sobre el bus de datos 6.
Mientras están memorizados datos válidos en la memoria Cache 5, que deben leerse para el procesamiento adicional de nuevo en el bus, debe permanecer igual inalterada la palabra clave K2 acondicionada por el registro de claves 54. La palabra clave K2 es generada por otro generador de claves 63. De una manera más conveniente, se modifica la clave K2 cuando no se encuentran ya datos válidos en la memoria Cache 5. La actualización de la clave se realiza de nuevo de acuerdo con un patrón aleatorio, de manera que se garantiza una seguridad suficiente frente al descifrado de los datos memorizados en la memoria y transmitidos a través de la sección del bus entre la puerta 51 y la memoria 5.
Se recomienda modificar la clave K2 cuando la memoria Cache 5 es vaciada después de un flujo Cache. Se realiza una operación de este tipo, por ejemplo, en el caso de un cambio de la aplicación ejecutada por la disposición de microprocesadores. En el caso de un flujo Cache, todos los valores de datos de la memoria Cache son repuestos a un valor predeterminado. En principio, también es posible prescindir de una reposición del contenido de la memoria, puesto que en el caso de una modificación no se puede decodificara de todos modos el contenido de la memoria.
A través de la invención se consigue que todo el tráfico de datos que se desarrolla a través del bus 6 y, además, los datos memorizados temporalmente en la memoria intermedia, estén siempre codificados y no estén presentes en texto claro. A través de la utilización de puertas O Exclusivas se pueden utilizar procedimientos simétricos de codificación y decodificación, que requieren un gasto reducido de circuito y de cálculo. La anchura de la clave se orienta al número de las líneas del bus. Se pueden codificar todas las líneas o solamente una parte de las líneas. Puesto que el registro de claves es entonces correspondientemente menor. Para cada línea se utiliza un bit de una palabra clave. En el caso de líneas de bus se pueden codificar tanto las líneas de datos como también las líneas de estado y de control del bus. En principio, también es posible codificar líneas de señales individuales relevantes para la seguridad en disposiciones de microprocesadores o en otros circuitos bajo la utilización correspondiente de las medidas descritas anteriormente. Como fuente aleatoria para los generadores de claves 61 y 63 es adecuada de una manera especial una fuente física. Cuando la necesidad de seguridad es menor, se puede generar la clave también a través de un pseudogenerador de números aleatorios. Los generadores de claves se pueden realizar como registros de corredera (LFSR) reacoplados linealmente. La actualización de la clave se puede realizar en cada ciclo de sincronización del bus 6 a través del generador de pulsos de reloj 62 o solamente después de un ciclo de un número determinado de ciclos de pulsos de reloj. A través de la selección adecuada de los parámetros se ajusta una medida deseada de seguridad.

Claims (10)

1. Disposición de microprocesadores, que comprende:
-
una unidad central de procesamiento (1)
-
otra unidad (2, 3, 4)
-
una unidad de memoria (5),
-
un bus (6), a través del cual están conectadas entre sí la unidad central de procesamiento (1), la otra unidad (2, 3, 4) y la memoria (5) para el intercambio de datos,
-
una primera unidad de codificación (12, 32, 52) respectiva asociada a las unidades (1, 2, 3, 4, 5), que está conectada entre el bus (6) y la unidad asociada (1, 2, 3, 4, 5) y comprende un medio (10, 50) para la preparación de una clave y un elemento de enlace lógico (11, 51), que está conectado entre el bus (6) y la unidad asociada (1, 2, 3, 5), siendo la clave igual para las unidades y siendo variable, caracterizada por
-
una segunda unidad de codificación (53) asociada a la unidad de memoria, (5) que comprende un medio (54) para la preparación de otra clave así como un elemento de enlace lógico (55), que está conectado entre el medio (54) para la preparación de la clave de la primera unidad de codificación (50) asociada y el elemento de enlace lógico (51) de la primera unidad de codificación asociada (52).
2. Disposición de microprocesadores según la reivindicación 1, caracterizada porque está previsto un generador (61) para una clave y porque los medios (10, 50) para el acondicionamiento de la clave de las primeras unidades de codificación (12, 32, 52) comprenden, respectivamente, un registro (10, 50), que está conectado, en el lado de entrada, con el elemento de enlace lógico (11, 51) respectivo y, en el lado de salida, con el generador (61) para la clave.
3. Disposición de microprocesadores según la reivindicación 1 ó 2, caracterizada porque el generador (61) es un generador de números aleatorios, a través del cual se pueden generar de forma aleatoria números binarios.
4. Disposición de microprocesadores según la reivindicación 2, caracterizada porque los registros (10, 50) son controlables por un generador de pulsos de reloj (62) común.
5. Disposición de microprocesadores según una de las reivindicaciones 2 ó 4, caracterizada porque los medios (54) para el acondicionamiento de la segunda clave de la segunda unidad de codificación (53) comprenden un registro (54), que está conectado, en el lado de entrada, con un segundo generador (63) para una clave, y porque el elemento de enlace lógico (55) de la segunda unidad de enlace lógico (53) está conectado en el lado de entrada con la salida del registro (54) de la segunda unidad de codificación y con el registro (50) de la primera unidad de codificación (52) asociada y, en el lado de salida, con una entrada de la unidad de enlace lógico (51) de la primera unidad de enlace (52) asociada.
6. Disposición de microprocesadores según una de las reivindicaciones 1 a 5, caracterizada porque las unidades de enlace lógico (11, 51, 55) son puertas O Exclusiva.
7. Disposición de microprocesadores según una de las reivindicaciones 1 a 6, caracterizada porque la unidad de memoria (5) está configurada como una memoria volátil.
8. Disposición de microprocesadores según la reivindicación 5, caracterizada porque el segundo generador (63) para una clave es controlable de tal forma que a través del mismo se puede generar una clave nueva cuando la unidad de memoria (5) no presenta ningún contenido válido de la memoria.
9. Disposición de microprocesadores según la reivindicación 8, caracterizada porque a través del segundo generador se puede generar la clave, después de que ha sido inicializada la unidad de memoria (5).
10. Disposición de microprocesadores según una de las reivindicaciones 1 a 9, caracterizada porque está prevista otra memoria (2) y porque la unidad de memoria (5) es una memoria Cache, en la que se pueden memorizar temporalmente datos de la otra memoria (2).
ES00990531T 2000-01-18 2000-12-14 Disposicion de microprocesadores con codificacion. Expired - Lifetime ES2207567T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP00100955 2000-01-18
EP00100955 2000-01-18

Publications (1)

Publication Number Publication Date
ES2207567T3 true ES2207567T3 (es) 2004-06-01

Family

ID=8167655

Family Applications (1)

Application Number Title Priority Date Filing Date
ES00990531T Expired - Lifetime ES2207567T3 (es) 2000-01-18 2000-12-14 Disposicion de microprocesadores con codificacion.

Country Status (8)

Country Link
US (1) US7269742B2 (es)
EP (1) EP1249010B1 (es)
JP (1) JP3848573B2 (es)
CN (1) CN1192330C (es)
AT (1) ATE249664T1 (es)
DE (1) DE50003679D1 (es)
ES (1) ES2207567T3 (es)
WO (1) WO2001054083A1 (es)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002328845A (ja) * 2001-05-07 2002-11-15 Fujitsu Ltd 半導体集積回路及びicカードのセキュリティー保護方法
KR100428786B1 (ko) * 2001-08-30 2004-04-30 삼성전자주식회사 내부 버스 입출력 데이터를 보호할 수 있는 집적 회로
DE10201442C1 (de) * 2002-01-16 2003-07-31 Infineon Technologies Ag Vorrichtung und Verfahren zum Multiplizieren oder Dividieren eines ersten Operanden mit bzw. durch einen zweiten Operanden
DE10201443B4 (de) * 2002-01-16 2004-08-12 Infineon Technologies Ag Carry-Save-Multiplizierer für verschlüsselte Daten
DE10201441A1 (de) 2002-01-16 2003-08-14 Infineon Technologies Ag Schiebevorrichtung und Verfahren zum Verschieben
DE10201450B4 (de) * 2002-01-16 2004-09-02 Infineon Technologies Ag Carry-Skip-Addierer für verschlüsselte Daten
DE10201449C1 (de) * 2002-01-16 2003-08-14 Infineon Technologies Ag Rechenwerk, Verfahren zum Ausführen einer Operation mit einem verschlüsselten Operanden, Carry-Select-Addierer und Kryptographieprozessor
DE10205316B4 (de) * 2002-02-08 2008-01-17 Infineon Technologies Ag Schlüsselmanagementeinrichtung und Verfahren zur verschlüsselten Ablage von digitalen Datenwörtern
FR2837944B1 (fr) * 2002-03-26 2004-07-09 Oberthur Card Syst Sa Procede et dispositif de validation automatique d'un programme informatique utilisant des fonctions de cryptographie
FR2853097B1 (fr) * 2003-03-24 2005-07-15 Innova Card Circuit programmable pourvu d'une memoire securisee
FR2855689B1 (fr) * 2003-05-26 2005-09-09 Innova Card Module de controle d'acces a cle de debrouillage securisee
FR2855628B1 (fr) * 2003-05-26 2005-09-09 Innova Card Microcontroleur comportant un acces de transfert securise
FR2857534B1 (fr) * 2003-07-09 2005-10-28 Innova Card Circuit integre comportant un module ordinaire et un module securise raccordes par une liaison protegee
BRPI0318492B1 (pt) * 2003-09-05 2019-12-10 Telecom Italia Spa rede dependente de chave combinatória e método para criptografia/decifração de dados digitais de entrada
FR2862150B1 (fr) * 2003-11-12 2006-08-11 Innova Card Circuit integre a bus de donnees protege par un brouillage
US7904679B2 (en) * 2004-02-04 2011-03-08 Netapp, Inc. Method and apparatus for managing backup data
US20050182910A1 (en) * 2004-02-04 2005-08-18 Alacritus, Inc. Method and system for adding redundancy to a continuous data protection system
US7315965B2 (en) 2004-02-04 2008-01-01 Network Appliance, Inc. Method and system for storing data using a continuous data protection system
US7559088B2 (en) * 2004-02-04 2009-07-07 Netapp, Inc. Method and apparatus for deleting data upon expiration
US7720817B2 (en) 2004-02-04 2010-05-18 Netapp, Inc. Method and system for browsing objects on a protected volume in a continuous data protection system
US7426617B2 (en) * 2004-02-04 2008-09-16 Network Appliance, Inc. Method and system for synchronizing volumes in a continuous data protection system
US7783606B2 (en) * 2004-02-04 2010-08-24 Netapp, Inc. Method and system for remote data recovery
EP1605359A1 (en) * 2004-06-11 2005-12-14 Axalto SA Hiding information transmitted on a data bus
US7822993B2 (en) * 2004-08-27 2010-10-26 Microsoft Corporation System and method for using address bits to affect encryption
US7734926B2 (en) * 2004-08-27 2010-06-08 Microsoft Corporation System and method for applying security to memory reads and writes
US7653802B2 (en) * 2004-08-27 2010-01-26 Microsoft Corporation System and method for using address lines to control memory usage
US8028135B1 (en) 2004-09-01 2011-09-27 Netapp, Inc. Method and apparatus for maintaining compliant storage
US7581118B2 (en) * 2004-12-14 2009-08-25 Netapp, Inc. Disk sanitization using encryption
US7774610B2 (en) * 2004-12-14 2010-08-10 Netapp, Inc. Method and apparatus for verifiably migrating WORM data
US7558839B1 (en) 2004-12-14 2009-07-07 Netapp, Inc. Read-after-write verification for improved write-once-read-many data storage
US7526620B1 (en) 2004-12-14 2009-04-28 Netapp, Inc. Disk sanitization in an active file system
EP1894168A1 (en) * 2005-05-31 2008-03-05 Philips Intellectual Property & Standards GmbH Electronic circuit arrangement and method of operating such electronic circuit arrangement
US20070143459A1 (en) * 2005-12-19 2007-06-21 Lucent Technologies Inc. Protection of privacy-sensitive information through redundancy, encryption and distribution of information
US7752401B2 (en) * 2006-01-25 2010-07-06 Netapp, Inc. Method and apparatus to automatically commit files to WORM status
DE102006006057B4 (de) 2006-02-09 2007-12-27 Infineon Technologies Ag Datenverschlüsselungsvorrichtung und Verfahren zum Verschlüsseln von Daten
JP4795812B2 (ja) * 2006-02-22 2011-10-19 富士通セミコンダクター株式会社 セキュアプロセッサ
JP2007251783A (ja) * 2006-03-17 2007-09-27 Nec Electronics Corp 半導体装置の被処理データのスクランブル/デスクランブル方法、そのプログラム、スクランブル/デスクランブル回路、及びそれらを備える半導体装置
US20080208957A1 (en) * 2007-02-28 2008-08-28 Microsoft Corporation Quarantine Over Remote Desktop Protocol
US8522354B2 (en) * 2008-05-24 2013-08-27 Via Technologies, Inc. Microprocessor apparatus for secure on-die real-time clock
US8402448B2 (en) 2008-09-18 2013-03-19 Infineon Technologies Ag Compiler system and a method of compiling a source code into an encrypted machine language code
CN102582268A (zh) * 2012-01-10 2012-07-18 珠海天威技术开发有限公司 微控制器及其算法保护方法、存储芯片、耗材容器、成像设备
KR102218715B1 (ko) 2014-06-19 2021-02-23 삼성전자주식회사 채널별로 데이터를 보호할 수 있는 반도체 장치
CN104601334B (zh) * 2015-03-01 2018-09-11 河北省科学院应用数学研究所 一种抵抗识别表失窃的rfid双向认证方法
FR3038084B1 (fr) * 2015-06-29 2017-12-29 Centre National De La Recherche Scient (C N R S) Microprocesseur parallele stochastique
US20190140851A1 (en) * 2017-11-09 2019-05-09 iMQ Technology Inc. Secure logic system with physically unclonable function
CN116827536A (zh) * 2023-07-21 2023-09-29 上海壁仞智能科技有限公司 用于处理数据的设备和方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4683968A (en) 1985-09-03 1987-08-04 Burroughs Corporation System for preventing software piracy employing multi-encrypted keys and single decryption circuit modules
GB2203271A (en) * 1987-04-02 1988-10-12 Ibm Personal computer with encrypted programs
US4864615A (en) * 1988-05-27 1989-09-05 General Instrument Corporation Reproduction of secure keys by using distributed key generation data
FR2667715A1 (fr) * 1990-10-09 1992-04-10 Gemplus Card Int Procede et dispositif pour accroitre la protection d'une carte a memoire.
US5404402A (en) * 1993-12-21 1995-04-04 Gi Corporation Clock frequency modulation for secure microprocessors
FR2728980B1 (fr) * 1994-12-30 1997-01-31 Thomson Csf Dispositif de securisation de systemes d'information organises autour de microprocesseurs
US5870468A (en) 1996-03-01 1999-02-09 International Business Machines Corporation Enhanced data privacy for portable computers
FR2745924B1 (fr) * 1996-03-07 1998-12-11 Bull Cp8 Circuit integre perfectionne et procede d'utilisation d'un tel circuit integre
US5748744A (en) * 1996-06-03 1998-05-05 Vlsi Technology, Inc. Secure mass storage system for computers
DE19642560A1 (de) * 1996-10-15 1998-04-16 Siemens Ag Elektronische Datenverarbeitungsschaltung
US5828753A (en) * 1996-10-25 1998-10-27 Intel Corporation Circuit and method for ensuring interconnect security within a multi-chip integrated circuit package
US5959435A (en) * 1996-10-31 1999-09-28 Nec Corporation Method and system for monitoring battery
US6118869A (en) * 1998-03-11 2000-09-12 Xilinx, Inc. System and method for PLD bitstream encryption
JP3713141B2 (ja) * 1998-05-19 2005-11-02 インターナショナル・ビジネス・マシーンズ・コーポレーション プログラムの不正実行防止方法
FR2779849B1 (fr) * 1998-06-15 2000-07-28 Schlumberger Ind Sa Dispositif a circuit integre securise au moyen de lignes complementaires de bus
US6973570B1 (en) * 1999-12-31 2005-12-06 Western Digital Ventures, Inc. Integrated circuit comprising encryption circuitry selectively enabled by verifying a device
US6983366B1 (en) * 2000-02-14 2006-01-03 Safenet, Inc. Packet Processor
US6895506B1 (en) * 2000-05-16 2005-05-17 Loay Abu-Husein Secure storage and execution of processor control programs by encryption and a program loader/decryption mechanism

Also Published As

Publication number Publication date
CN1192330C (zh) 2005-03-09
DE50003679D1 (de) 2003-10-16
EP1249010B1 (de) 2003-09-10
US7269742B2 (en) 2007-09-11
ATE249664T1 (de) 2003-09-15
CN1423801A (zh) 2003-06-11
JP2003521053A (ja) 2003-07-08
JP3848573B2 (ja) 2006-11-22
US20030005313A1 (en) 2003-01-02
EP1249010A1 (de) 2002-10-16
WO2001054083A1 (de) 2001-07-26

Similar Documents

Publication Publication Date Title
ES2207567T3 (es) Disposicion de microprocesadores con codificacion.
US5214697A (en) Program execution apparatus for ensuring security of a program
US8155309B2 (en) Circuit arrangement with non-volatile memory module and method for en-/decrypting data in the non-volatile memory module
ES2223047T3 (es) Procesamiento de datos criptograficos utilizando una cascada de elementos criptograficos en una estructura a contra-reaccion.
US6345359B1 (en) In-line decryption for protecting embedded software
DE69229531D1 (de) Datensicherheitseinrichtungen für programmierbare logische Halbleiterschaltungen
KR100876041B1 (ko) 반도체 장치
UA46142C2 (uk) Електронний пристрій та система для обробки даних
ES2663422T3 (es) Sistema y método de protección de datos
JP2003516071A (ja) 暗号化機能を備えるマイクロプロセッサ装置
CN107566122A (zh) 用于执行物理不可克隆功能的多次注册的方法
KR100974366B1 (ko) 데이터 스트로브 타이밍 보상
JPH08249U (ja) 符号化/復号化回路
US7512813B2 (en) Method for system level protection of field programmable logic devices
JP2003521034A (ja) マイクロプロセッサシステムおよびそれを操作する方法
KR20110128787A (ko) 뱅크형 메모리에서의 선형 메모리를 갖는 마이크로컨트롤러
TW200426596A (en) Scrambler circuit
JP2001237825A (ja) 電子的安全部品
AR026081A2 (es) Un metodo para controlar un procesador de senales digitales en respuesta a instrucciones de longitud variable
US10389530B2 (en) Secure method for processing content stored within a component, and corresponding component
CN114153376B (zh) 安全闪存控制器
CN100373355C (zh) 备有安全外存取的电路
CN101692216B (zh) 动态数据流结构中存储-匹配-转发单元电路
JP4234372B2 (ja) データ暗号化方法,データ復号化方法および集積回路
KR100269598B1 (ko) 반도체 메모리