•'"fr
DISPOSITIVO I>E CODIFICACIÓN CAMPO DE LA INVENCIÓN La presente invención se reíiere a un dispositivo de codificación, y especialmente a n 5 dispositivo de codificación para la realización de una codificación y/o autorización de acceso criptográfica. ANTECEDENTES DE LA INVENCIÓN La mayoría de los sistemas criptográficos, necesitan un tratamiento seguro de la clave utilizada en 10- el procesamiento criptográfico, en los sistemas de seguridad con las llamadas claves públicas (public- ey) , deben protegerse las claves privadas correspondientes (private-keys) de tal manera, que posibles agresores no puedan en ningún caso leer o descifrar las claves, puesto £5 ' que entonces por ejemplo, las firmas digitales pueden falsificarse, modificarse los datos y descifrarse las informaciones secretas. 1 En lo esencial, se diferencia aqui entre algoritmos o protocolos criptográficos simétricos y 20 asimétricos con cuya ayuda se puede tener un acceso de datos indeseable con datos de confianza o secretos. Por ejemplo, los dispositivos de codifica iórt s. criptográficos, para la realización de una codificación y/o una autorización de acceso, deben proteger por si 25 mismos su clave secreta, cuando se encuentran en un
f s ?AX-.
ambiente susceptible. Tales dispositivos de codificación criptográfica, son por ejemplo las llamadas tarjetas chip, tarjetas inteligentes o módulos de seguridad relevantes, que por ejemplo permiten en cajeros automáticos, en accesos KFZ, etc. una autorización de acceso o una codificación segura de los datos. La figura 5, muestra una representación esquemática de un dispositivo de codificación de ese tipo, para realizar una codificación criptográfica y/o autorización de acceso, que en lo esencial consiste de una unidad de procesamiento de datos criptográfica 1 y una entrada de datos con utilización de una clave secreta PK (private-key) que se elabora criptográficamente. Los datos asi procesados se dan a continuación a una salida con lo cual, se realiza la codificación o una autorización de acceso criptográfica. El estado automático ZA representado en la figura 5, se realiza por ejemplo como tarjeta chip, tarjeta inteligente, unidad microprocesadora segura o similares. A continuación la clave secreta PK utiliza el dispositivo de codificación criptográfico ZA para el procesamiento de las informaciones introducidas y para expedir o generar informaciones, donde los algoritmos o protocolos criptográficos usualmente se emiten de tal modo qu e se protege de un acceso a los datos codificados o secretos en la posición de entrada o de salida. Sin embargo, se ha determinado que se pueden realizar ataques totalmente efectivos sobre los dispositivos de codificación criptográficos o los procedimientos de codificación y sus claves secretas, también por medio de las llamadas informaciones de fuga o filtrado. Según la figura 5, son estas por ejemplo, un gasto de corriente, una radiación electromagnética o similares en la cual, en el procesamiento de datos criptográficos se permiten conexiones de retroalimentación a través de las claves secretas utilizadas o de los procedimientos criptográficos aplicados. La presente invención, se refiere especialmente a un acceso a través de los llamados análisis de perfil de corriente. En el análisis de un perfil de corriente del estado automático ZA se utiliza aqui el estado, de que el circuito integrado consiste de una multiplicidad de transistores individuales, los cuales en lo esencial trabajan como un circuito controlado por voltaje. Aqui fluye la corriente a través de un substrato de transistor, tan pronto como se aplican o se retiran cargas a una compuerta. Esta corriente produce a su vez cargas en la compuerta de otros transistores, con lo cual de nuevo se conectan otras secciones o cargas del alambrado. Tal comportamiento de conmutación que especialmente 5 se realiza en el procesamiento de los algoritmos criptográficos pueda medirse a través de la alimentación de corriente de los estados automáticos ZA y permite a los atacantes, por > f ejemplo la lectura de las claves secretas PK. f
10 Los análisis del perfil de corriente más conocidos, son aquí los análisis de perfil dé corriente sencillos (simple power analysis, SPA), los análisis de perfil de corriente diferenciales (differential power analysis DPA) y los análisis da 15 perfil de corriente diferenciales de un orden mas elevado (high-order differential power analysis, HO-DPA) . Mientras que el análisis de comente sencillo SPA, considera en lo esencial u g diferencia visual de las oscilaciones en el consunto 20 de corriente, los ataques utilizan para la extracción de informaciones, el análisis de perfil de corriente diferencial DPA, y procedimientos de análisis estadísticos, asi como procedimientos de corrección de fallas, que están correlacionados con 25 las claves secretas. Los análisis de perfil -de
& corriente diferenciales de un orden mas elevado, mejoran las posibilidades de un ataque para extraer las claves secretas por medio de un consumo de corriente que puede medirse, donde sin embargo, el 5 , análisis de perfil de corriente diferencial es suficiente en la mayoría de los casos. Para impedir tales ataques a los dispositivos de codificación criptográfica, se conoce por el escrito de patente W099/35 782, un
10 procedimiento criptográfico y un dispositivo criptográfico, por medio de los cuales se hacen ineficaces los llamados análisis de perfil de corriente. En lo esencial se describe aqui un procedimiento y un dispositivo en el cual por medio
15 de una variación continua de los accesos esenciales en el procesamiento de datos criptográficos, se evita para que un atacante lea informaciones de fuga, pues estos "se curan por si mismos". De esta manera, se impiden de manera
20 especial evaluaciones estadísticas y el ataque, a través del consumo de corriente de un estado automático o por medio de la radiación electromagnética . Es desventajoso en la misma realización de
25 ese tipo, de una protección de ataque, el hecho de
X 4- * * *• ?A 1 . r-que deben realizarse acciones difíciles o molestas en el software criptográfico del sistema, o del estado automático. Dicho de manera mas exacta, tal protección solamente puede llevarse a cabo con el conocimiento de los correspondientes algoritmos o protocolos criptográficos, que correspondientemente son modificados y en caso dado, varian por si mismos. Tales acciones en el software directo de la procesamiento de datos criptográfica, exige sin embargo, requisitos extraordinariamente elevados y por lo tanto puede ser únicamente realizado por expertos y, frecuentemente no es deseado por los usuarios normales (clientes) . SUMARIO DE LA INVENCIÓN La invención se propone la tarea de crear un dispositivo de codificación, para la realización de una codificación y/o de una autorización de acceso criptográfica, sin modificación del curso de estado criptográfico especialmente que impida de manera satisfactoria un análisis de perfil de corriente . Esta tarea se resuelve, de acuerdo con la invención, con las características de la reivindicación 1.
Especialmente, por la aplicación de una unidad generadora de perfil de corriente para generar un perfil de corriente perturbador, que cubra un perfil de corriente del estado automático, con lo cual se hace imposible un análisis del perfil de corriente para extraer una clave secreta o datos secretos. Preferentemente la unidad generadora de perfil de corriente posee una unidad secundaria de suministro de pulsos para la generación de una señal de pulsos secundaria, para controlar un generador de perfil de corriente, que para la generación del perfil de corriente perturbadora, está conectado a una multiplicidad de cargas. Para esto el generador de perfil de corriente perturbadora, es hecho funcionar con una señal de pulsos secundaria independiente de la señal de pulsos principal, con lo cual se pueden impedir especialmente un análisis de perfil de corriente de un orden más elevado. Además, la unidad generadora de perfil de corriente puede presentar un generador de números aleatorios que varié tanto la señal de pulsos secundaria como también la señal de pulsos principal de un modo independiente entre si y suficiente un análisis de perfil de corriente estadístico (dif rencial). Además, la unidad generadora de perfil de corriente, puede presentar un circuito de sincronización para la generación de una señal de pulsos - generador de perfil de corriente, en la posición base de la señal principal y secundaria, con lo cual se hace posible un des^coplamiento
10 posterior de las señales generadas alßat oriomente principal y secundaria. Especialmente por la utilización de un circuito de sincronización que impide una correlación en la zona de tiempo y frecuencia entre la señal de pulsos principal y la
15 señal de pulsos del generador de perfil de corriente, se excluye todo tipo de análisis de perfil de corriente de un orden más elevado, puesto que no se puede hacer una conexión retroactiva sobre los procesos de procesamiento de datds
20 criptográficos propios. Además, al proveer, un circuito de sincronización que impida en Las posiciones de corte de alimentación de corriente una pulsación visible de las señales principal y secundaria, se puede crear un dispositivo de
¿r* O codificación criptográfico, que sea inmune a los
perfil de corriente hasta ahora
s, la unidad generadora del perfil de puede conformarse d;e manera 5 desconectable, donde una desconexión de ese i o se realiza preferentemente en operaciones que no exijan gran seguridad. De esta manera, el consumé de corriente del dispositivo de codificación puiéde disminuirse considerablemente. 10 En las otras reivindicaciones dependientes, se caracterizan otras .modalidades ventajosas de la invención. DESCRIPCIÓN DE LOS DIBUJOS A continuación, la invención se describirá 15 mas detalladamente por medio de un ejemplo de realización en referencia a los dibujos. Donde: La figura 1 muestra un diagrama de bloques ;simplificado de un dispositivo de codificación • criptográfico, de acuerdo a la presente invención*; 20 La figura 2 muestra una representación simplificada del generador de perfil de corriente representado en la figura 1 ; La figura 3 muestra una representación *;,:" simplificada en el tiempo de los perfiles de
í v*.*;
corriente que salen del dispositivo de codificación, según la figura 1; La figura 4 muestra una representación simplificada del circuito de sincronización representado en la figura 1; La figura 5 muestra una representación esquemática para hacer visible un ataque a través de un análisis de perfil de corriente, de acuerdo al estado de la técnica actual. DESCRIPCIÓN DE LA INVENCIÓN. La figura 1 muestra un diagrama a bloques simplificado de un dispositivo de codificación para la realización de una codificación y/o una autorización de acceso criptográfica, como por ejemplo se realiza en una llamada tarjeta chip o tarjeta inteligente. Las unidades lógicas de esta tarjeta inteligente o tarjeta chip, se forman aqui preferentemente en una base constructiva semiconductora y se componen en un estado automático ZA. El estado automático ZA o los componentes lógicos de la base constructiva semiconductora, poseen una posición de corte ent rada/ sal ida l/O para introducir o emitir los datos necesarios de codificación. Una posición de corte de suministro de corriente SV, sirve para el suministro de corriente al automático ZA o al dispositivo de codificación y representa, para decirlo asi, la posición débil en una ataque por medio del análisis 5 de perfil de corriente. La posición de corte del suministro de corriente SV, alimenta en lo esencial a todos los componentes del ZA automático, donde para la simplificación de la representación, únicamente se ha representado una unión con una 0 unidad de procesamiento de datos 1 , 1 ' , y con un generador de perfil de corriente 4. La unidad de procesamiento de datos consiste usualmente de una unidad central 1, (CPU, Central processing unit) , para el procesamiento de 5 los datos, asi como opcionalmente una unidad coprocesadora adicional 1', que realiza especialmente operaciones de codificación simétricas o asimétricas. Tales operaciones criptográficas, pueden sin embargo, también 0 llevarse a cabo únicamente en la unidad central 1 sin la unidad coprocesadora 1 ' . Los procedimientos o protocolos criptográficos realizados por la unidad central 1 o la unidad coprocesadora adicional 1 ' , pueden por 5 ejemplo presentar una autentificación simétrica, una; información de clave exponencial Diffie- Hellmann, Criptografía EiGamal, con clave publi'ca, firmas estándares digitales, RSA y otros' algoritmos de codificación. Tales procedimientos o protocolos de codificación son en lo general conocidos, por lo cual se prescinde aqui de hacer a continuación uspí descripción detallada. Para la presente invención es esencial la utilización del generador de perfil de corriente 4, ! *? en ZA automático, el cual en lo esencial genera un perfil de corriente de trastorno SPZ y con el ciiaí el análisis de perfil de corriente cubre propiamente perfiles de corriente utilizables S'Pl,, de la unidad central 1 y SPI' de la unidad coprocesadora 1' . Por medio de esta cobertura ; Q adición, se impide una obtención o ganancia de las claves secretas o de los datos de confianza por medio de un perfil de corriente SP3 accesib'le externamente, como se describirá mas detalladamente 20 a continuación, haciendo referencia de las figuras 2 y 3. La figura 2 muestra un diagrama a bloque simplificado del generador de perfil de corriente 4, como el que por ejemplo, se puede utilizar. El 25 generador de perfil de corriente 4, consiste aq- i
XX7-Í-I en lo esencial de una multiplicidad de cargas Rl, Cl, a Rn, Cn, que por ejemplo pueden conectarse por medio de los circuitos Sl, S2 hasta Sn. Los conmutadores Sl hasta Sn son controlados preferentemente por una unidad de control SE. La unidad de control SE puede por ejemplo, estar controlada por medio de una señal de pulsos generador de perfil de corriente CLK2* y/o un valor de número aleatorio RND3 donde sin embargo, también pueden considerarse todos los otros controles. Es esencial para el control del generador de perfil de corriente 4, únicamente el hecho de que 'la multiplicidad de cargas se conecten en forma de resistencias de carga Rl hasta Rn o en forma dß capacidades de carga Cl hasta Cn, de tal modo que se conecten de manera no previsible, produciendo un gasto de corriente adicional o un perfil de corriente perturbadora SP2. La Figura 3, muestra una representación sencilla para dar una comprensión intuitiva del principio de impedir un análisis de perfil de corriente. De acuerdo a la Fig. 3, la unidad central 1, genera el perfil de corriente SPI, simultáneamente el generador de perfil de corrie?yte 4, genera el perfil de corriente SP2, el cual se
pone arriba de la posición de corte de suministro de corriente SV. De esta manera se produce en la posición de corte de suministro de corriente SV, o en la salida del suministro de voltaje que usualmente es utilizada por un atacante para el análisis de perfil de corriente, un perfil de corriente SP3, que se compone del perfil de corriente SPI, de la unidad central 1, y del perfil de corriente SP2, del generador de perfil de corriente 4. En razón de esta cobertura ya no se puede analizar propiamente y obtener la clave secreta por retroalimentación o un procedimiento criptográfico en el perfil de corriente mantenido SPI (SP1' ) , o únicamente puede filtrarse o volverse a obtener bajo grandes dificultades. Preferentemente, el generador de perfil de corriente 4, genera aqui un perfil de corriente trastornante SP2, el cual presenta picos máximos como un perfil de corriente SPI, de la unidad central 1, o un perfil de corriente SP', de la unidad coprocesadora SPI' . Para mejorar la protección, con respecto al análisis de perfil de corriente de un dispositivo de codificación criptográfico de ese tipo, puede el estado ZA automático, de acuerdo con la Fig. 1, presentar además un generador de números aleatorio 6. El generador de número aleatorio ß, genera aqui valores numéricos aleatorios o pseudoaleat orios RND3, que por ejemplo se pueden agregar a la unidad de control SE, del generador de perfil de corriente 4, y ocasionan una generación seudo aleatorio del perfil de corriente trastornante SP2. Además, valores numéricos aleatorios RND1, de una unidad de suministro de accionamiento principal 3, pueden agregarse con lo cual se ajusta de manera variable una señal de pulsos principal CLK1, del ZA automático. Preferentemente consiste la unidad principal de suministro de pulsos 3, de un oscilador programable (PLL, phase locked loop), el cual por ejemplo, oscila en una frecuencia promedio de 4 MHz, y puede ajustarse por medio del valor numérico aleatorio RND1, en una zona de 3 a 7 MHz. Se comprende por si mismo que también pueden considerarse otros osciladores programables que la unidad principal de suministro de pulsos 3, donde también la frecuencia de accionamiento se puede seleccionar en dependencia de los tipos de procesador correspondientes.
-
Para el acoplamiento o desacoplamiento de la posición de corte de datos externa 1/0, de una posición de corte de datos interna IB, se utiliza una unidad de desacoplamiento 2, hasta ahora usual. Tales unidades de desacopla iento 2, se conocen como UARTS, y representan tanto una parte emisora como una parte receptora, la cual está en posición de ajustar dos posiciones de corte diferentes, esto es, la posición de corte de datos externa 1/0, y la posición de corte de datos interna 1/0, sus señales de pulsos diferentes entre si. Tales unidades de acoplamiento se conocen en lo general por lo cual se prescinde de una descripción detallada de las mismas . 15 A base de los cambios pseudo-aleatorios aqui introducidas en la señal de pulsos principal CLK1, se hace más dificil un análisis de perfil de corriente en las posiciones de corte de suministro de corriente SV, con lo cual se mejora ampliamente
20 la seguridad del ZA automático, en contra de ataques por medio de análisis de perfil de corriente . Un arreglo especialmente seguro contra ataques por medio del análisis de perfil de corriente, se produce especialmente cuando de
acuerdo con la Fig. 1, se utiliza adicíonalmente a la unidad principal de suministro de pulsos 3, otra unidad secundaria de suministro de pulsos 7, en combinación con un circuito de sincronización 5. 5 De acuerdo a la Fig. 1, aqui la unidad secundaria de suministro de pulsos 7, se controla igualmente de tal modo por medio de un valor numérico aleatorio RND2, desde el generador de números aleatorios 6, que se genera una señal de pulsos
10 secundaria pseudo-aleatona CLK2. Preferentemente, consiste la unidad secundaria de suministro de pulsos 7, de un oscilador (PLL, phase locked loop), programable similar a la unidad principal de suministro de pulsos principal 3, donde sin embargo
15 preferentemente se diferencian entre si las frecuencias promedio. De igual manera se diferencian también la zona de frecuencia de la unidad secundaria de suministro de pulsos 7, de aquella de la unidad principal de suministro de
20 pulsos 3, donde sin embargo, pueden presentar también una frecuencia promedio igual y un rango de frecuencias igual. En razón de los valores numéricos aleatorios diferentes RND1, y RND2, generan la unidad principal de suministro de pulsos
25 3, y la unidad secundaria de suministro de pulsos
fA Di - 1 * 7, básicamente diferentes señales de accionamiento CLK1, y CLK2, que se conducen al circuito de sincronización 5. El circuito de sincronización 5, sirve en lo esencial para impedir un efecto en donde en el perfil de corriente SP3, de las posiciones de corte de suministro de corriente SV, puede hacer visible una pulsación de los dos osciladores. Además impide el circuito de sincronización 5, que se produzca una co-relación en la zona de tiempo y frecuencia entre la señal de pulsos principal CLK1, y una de las señales de accionamiento CLK2, del generador de perfil de corriente que se produce por el circuito de sincronización, lo cual sirve preferentemente para el control del generador de perfil de corriente 4, o su unidad de control SE. La Fig. 4, muestra una representación esquemática de una construcción preferida para el circuito de sincronización 5. El circuito de sincronización 5, de acuerdo con la Fig. 4, representa en lo esencial una compuerta Y, activada con un retardo de tiempo muerto. Para retrasar la señal de pulsos principal SLKl, en un tiempo muerto t, el circuito de sincronización 5 posee para ello un miembro de tiempo muerto 51. Además
posee el circuito de sincronización 5, para la generación de la señal de pulsos de generador de perfil de corriente CLK2, una compuerta Y 52, accionada al conmutar la señal de pulsos secundaria CLK2. Dicho más exactamente, el circuito de sincronización 5, conecta entonces únicamente la señal de pulsos secundaria CLK2 proveniente de la unidad secundaria de suministro de pulsos 7, al generador de perfil de corriente 4, en forma de la señal CLK2* correspondiente al generador de perfil de corriente, esto es siempre y cuando en ese preciso momento no se esté generando una nueva señal de pulsos CLK1 en la unidad principal de suministro de pulsos 3. El circuito de sincronización 5, consecuentemente es accionado por medio de la señal de pulsos principal CLK1 de la unidad principal de suministro de pulsos 3, y la señal de pulsos secundaria CLK2 deja la unidad secundaria de suministro de pulsos 7 solamente después de un tiempo muerto t, que se selecciona dependiendo de la tecnología o de otros parámetros, o también puede ser ajustable. Preferentemente, el tiempo muerto t generado desde el miembro de tiempo muerto 51, es configurable o ajustable.
operaciones no críticas en referencia a la seguridad . Especialmente en la aplicación de la unidad secundaria de suministro de pulsos 7, en 5 unión con el circuito de sincronización 5, pueden rechazarse suficientemente ataques por medio de análisis estadísticos y/o evaluación del perfil de corriente en la zona del tiempo y/o en la zona espectral . 10 La invención ha sido descrita en relación de un sistema automático en una tarjeta chip o inteligente. Sin embargo no está limitada a ello y abarca todos los estados automáticos por ejemplo, se puedan utilizar en unidades microprocesadoras de
15 seguridad importante y otros módulos de seguridad. De igual manera la presente invención puede aplicarse no únicamente a procedimientos de codificación (criptografía), asimétricos sino a todos los demás y especialmente a procedimientos
20 simétricos .
•?t- íé •7 'i