ES2576228T3 - Procedimiento y dispositivo de gestión de una matriz de teclas, con protección contra un dispositivo espía activo, producto programa de ordenador y medio de almacenamiento correspondientes - Google Patents

Procedimiento y dispositivo de gestión de una matriz de teclas, con protección contra un dispositivo espía activo, producto programa de ordenador y medio de almacenamiento correspondientes Download PDF

Info

Publication number
ES2576228T3
ES2576228T3 ES12778351.2T ES12778351T ES2576228T3 ES 2576228 T3 ES2576228 T3 ES 2576228T3 ES 12778351 T ES12778351 T ES 12778351T ES 2576228 T3 ES2576228 T3 ES 2576228T3
Authority
ES
Spain
Prior art keywords
column
logical value
row
protection mechanism
detection time
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.)
Active
Application number
ES12778351.2T
Other languages
English (en)
Inventor
Mohammed BELLAHCENE
Olivier Benoit
Jean-Jacques Delorme
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.)
Worldline MS France
Original Assignee
Ingenico Group SA
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 Ingenico Group SA filed Critical Ingenico Group SA
Application granted granted Critical
Publication of ES2576228T3 publication Critical patent/ES2576228T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/83Protecting input, output or interconnection devices input devices, e.g. keyboards, mice or controllers thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Storage Device Security (AREA)
  • Organic Low-Molecular-Weight Compounds And Preparation Thereof (AREA)
  • Lock And Its Accessories (AREA)

Abstract

Procedimiento de gestión, mediante un dispositivo (10), de una matriz de teclas que comprende al menos una fila (LIG0 a LIG3) y al menos dos columnas (COL0 a COL2), permitiendo cada tecla, cuando es pulsada, cortocircuitar una fila y una columna de dicha matriz, comprendiendo el procedimiento al menos dos iteraciones (Tn, Tn+1 ) de una fase de exploración que comprende las siguientes etapas para cada una de las filas tratadas sucesivamente: * escritura de un valor lógico predeterminado en la fila; y * para cada columna, lectura de un valor lógico en la columna para determinar si la columna está en cortocircuito con la fila, mediante comparación entre el valor lógico leído y el valor lógico predeterminado, caracterizado por que, durante al menos una parte de un margen de tiempo (IT) comprendido entre dos iteraciones sucesivas (Tn, Tn+1) de la fase de exploración, el dispositivo efectúa: * un primer mecanismo de protección (92), consistente en leer un valor lógico en al menos una fila o columna, y detectar un intento de exploración ilícita en función del valor lógico leído; y * un segundo mecanismo de protección (91, 93), consistente en escribir un valor lógico arbitrario, igual a o diferente del valor lógico predeterminado, en al menos una fila o columna, en orden a impedir un intento de exploración ilícita; por que el dispositivo efectúa el segundo mecanismo de protección (91, 93), sobre al menos una fila o columna dada, durante al menos una parte (P1, P3) del margen de tiempo (IT), salvo durante al menos un intervalo de tiempo de detección (P2), por que, durante cada intervalo de tiempo de detección, el dispositivo efectúa el primer mecanismo de protección (92), consistente en leer un valor lógico en dicha al menos una fila o columna dada, y detectar un intento de exploración ilícita si el valor lógico leído es diferente de dicho valor lógico arbitrario escrito por el segundo mecanismo antes de dicho intervalo de tiempo de detección, por que cada fila o columna en la que escribe el dispositivo, antes de dicho intervalo de tiempo de detección, al efectuar el segundo mecanismo de protección, se coloca en un estado de baja impedancia, por que cada fila o columna, en la que lee el dispositivo, durante dicho intervalo de tiempo de detección, al efectuar el primer mecanismo de protección, se coloca en un estado de alta impedancia, y por que, para dicha al menos una fila o columna dada, el comienzo del intervalo de tiempo de detección se corresponde con un paso de dicho estado de baja impedancia a dicho estado de alta impedancia, que conlleva una tensión medible por el dispositivo si en dicha al menos una fila o columna dada hay presencia de una corriente dimanada de un intento de exploración ilícita.

Description

5
10
15
20
25
30
35
40
45
50
DESCRIPCION
Procedimiento y dispositivo de gestion de una matriz de teclas, con proteccion contra un dispositivo esp^a activo, producto programa de ordenador y medio de almacenamiento correspondientes
1. Campo de la invencion
El campo de la invencion es el de los teclados matriciales, es decir, de los teclados que comprenden una matriz de teclas que permite a un usuario introducir caracteres (letras, dfgitos, sfmbolos...).
Mas concretamente, la invencion se refiere a una tecnica de gestion segura de tal matriz de teclas mediante un dispositivo (por ejemplo, un procesador), con el fin de determinar la o las teclas pulsadas por el usuario. Esta tecnica tambien recibe el nombre de “rutina de exploracion del teclado” (o “keyboard scan routine” en ingles).
La invencion es de especial aplicacion, aunque no exclusiva, en el teclado de un terminal punto de venta que permite el pago de compras de bienes y de servicios. El teclado permite, en este caso, la introduccion de los importes de las transacciones por parte del vendedor, asf como la introduccion de los codigos confidenciales (codigos PIN, por “Personal Identity Number” en ingles) por parte de los clientes.
La invencion no queda limitada a un tipo particular de teclado, y es de aplicacion cualesquiera que sean el numero y la indole de las teclas del teclado (teclas numericas, teclas de funcion...).
2. Antecedentes tecnologicos
La figura 1 presenta un ejemplo de teclado numerico que comprende una matriz de teclas unida a un procesador 10. En este ejemplo, la matriz de teclas comprende diez teclas (asociadas a los dfgitos 0 a 9), cuatro filas (referenciadas con LIG0 a LIG3) y tres columnas (referenciadas con COL0 a COL2). Cada tecla, cuando es pulsada, permite cortocircuitar una fila y una columna de la matriz. Por ejemplo, la tecla asociada al dfgito 6, cuando es pulsada, permite cortocircuitar la fila LIG1 y la columna COL1.
La tecnica convencional de gestion de una matriz de teclas consiste, para el procesador 10, en efectuar varias iteraciones sucesivas de una fase de exploracion. La figura 2 ilustra dos iteraciones sucesivas (referenciadas con Tn y Tn+i). Cada iteracion de la fase de exploracion comprende las siguientes etapas, para cada una de las filas LIG0 a LIG3 tratadas sucesivamente:
• escritura de un valor logico predeterminado (nivel logico “0” en el ejemplo de la figura 2) en la fila; y
• para cada columna COL0 a COL2, lectura de un valor logico en la columna para determinar si la columna esta en cortocircuito con la fila, mediante comparacion entre el valor logico lefdo y el valor logico predeterminado.
Dicho de otro modo, el procesador, cuando ejecuta una iteracion de la fase de exploracion, escribe en las filas una por una, y lee en las columnas simultaneamente. Asf, el procesador puede detectar que se ha pulsado una unica tecla, o bien que se han pulsado varias teclas simultaneamente.
En el ejemplo de la figura 2 y mas adelante en la descripcion, la escritura en las filas y la lectura en las columnas se efectuan en un nivel logico “0”, asumiendo que las filas y las columnas se hallan por defecto al valor logico “1”. Sin embargo, esta claro que el principio sigue siendo el mismo si se invierte la utilizacion de los niveles logicos “0” y “1” (es decir, si la escritura en las filas y la lectura en las columnas se efectuan en el nivel logico “1”, asumiendo que las filas y las columnas se hallan por defecto al valor logico “0”).
Se considera que la anterior formulacion, que esta basada en una matriz de teclas (matriz M) y las nociones de escrituras sucesivas en las filas de esta matriz M y de lecturas simultaneas en las columnas de esta matriz M, es generica. En efecto, existe una alternativa consistente en escribir sucesivamente en las columnas de esta matriz M y en leer simultaneamente en las filas de esta matriz M. Pero esta alternativa puede ser tratada segun la anterior formulacion, si se considera una nueva matriz M' en la que las filas se corresponden con las columnas de la matriz M y las columnas se corresponden con las filas de la matriz M.
En el ejemplo de la figura 2, se asume que es pulsada la tecla 6. Por lo tanto, el procesador detecta un cortocircuito entre la fila LIG1 y la columna COL1, por donde deduce que se ha pulsado la tecla 6 situada en la interseccion entre esta fila LG1 y esta columna COL1.
Existe la necesidad de hacer segura la tecnica convencional de gestion de una matriz de teclas (es decir, la rutina convencional de exploracion de teclado).
Se hace alusion a esta problematica en el documento de patente FR 2599525, que indica que existe un riesgo de que personas malintencionadas traten de interceptar un codigo confidencial en el momento en que este pasa del teclado a unos medios a proposito para el analisis matricial del teclado, por fila y columna. Mas adelante en la descripcion, estos medios tambien reciben el nombre de dispositivo de gestion de la matriz de teclas, o tambien, procesador. El documento FR 2599525 puntualiza que el conocimiento de la forma de onda de las senales de
5
10
15
20
25
30
35
40
45
50
55
analisis del teclado permite a un dispositivo esp^a pasivo llegar de inmediato hasta cualquier informacion confidencial ingresada en el teclado. Al dispositivo espfa pasivo, para espiar el teclado, le bastan unos pocos empalmes (mediante sondas) sobre las filas y columnas de la matriz de teclas del teclado. El espionaje de las senales presentes en las filas y las columnas de la matriz se puede efectuar asimismo mediante analisis de las radiaciones electromagneticas (o EMA, por “ElectroMagnetic Analysis” en ingles). Por el contrario, se asume que las senales que circulan en el interior del dispositivo de gestion de la matriz de teclas son relativamente complejas, lo cual dificulta su utilizacion para averiguar la informacion confidencial ingresada en el teclado. De ah que, en el documento FR 2599525, el dispositivo de gestion de la matriz de teclas recibe el nombre de “modulo protegido”.
Con el fin de mejorar la seguridad del teclado, el documento FR 2599525 propone una implementacion, mediante el dispositivo de gestion de la matriz de teclas (“modulo protegido”), de contramedidas orientadas a obstaculizar la posibilidad de interceptacion de cualquier informacion confidencial ingresada en el teclado (codigo confidencial, por ejemplo) mediante espionaje del estado de las filas y columnas de la matriz de teclas del teclado.
Mas concretamente, la tecnica que propone el documento FR 2599525 combina:
• un primer mecanismo de simulacion: el modulo protegido esta dotado de enlaces bidireccionales hacia algunas al menos de las columnas y filas del teclado, y el modulo protegido incluye medios para simular falsos accionamientos de teclas, aplicandose algunos al menos de los impulsos de interrogacion al mismo tiempo a al menos una fila y al menos una columna;
• un mecanismo de verdadero barrido del teclado: el modulo protegido barre el teclado tecla por tecla, sondeando cada vez una fila o una columna llamada “realmente analizada”, que no recibe el impulso de interrogacion (con origen en el modulo protegido). En este barrido verdadero, se propone asimismo una simulacion complementaria cuando el modulo protegido se encuentra en presencia de una no transferencia del comienzo del impulso de interrogacion a la columna o fila analizada (es decir, no accionamiento de una o varias teclas barridas): el modulo protegido responde entonces a esta condicion aplicando a la columna o fila analizada un impulso ficticio que finaliza con el impulso de interrogacion (retrasandose, en cambio, ligeramente su comienzo con relacion al comienzo del impulso de interrogacion, habida cuenta del tiempo de decision necesario para el modulo protegido);
• un segundo mecanismo de simulacion: el modulo protegido no efectua ninguna verdadera interrogacion de una tecla escogida, durante un tiempo predeterminado correspondiente al tiempo normal de accionamiento de una tecla, y, durante el mismo tiempo, origina una falsa respuesta asignable a esa tecla escogida.
Se proponen dos formas de realizacion de estos mecanismos: en la primera, el modulo protegido esta dotado de enlaces bidireccionales hacia todas las columnas del teclado; en la segunda, el modulo protegido esta dotado de enlaces bidireccionales hacia todas las filas y todas las columnas del teclado.
Aunque permita mejorar la seguridad del teclado frente a un dispositivo espfa pasivo, la tecnica del documento FR 2599525 no es optima. Y es que propone contramedidas durante cada iteracion de la fase de exploracion, pero no aborda el refuerzo de la seguridad del teclado durante cada margen de tiempo entre dos iteraciones sucesivas de la fase de exploracion efectuadas por el procesador (este margen de tiempo se denomina “margen de tiempo intermedio” mas adelante en la descripcion).
Ahora bien, en un contexto tal como el representado en la figura 3, existe un riesgo de espionaje del teclado durante el margen de tiempo intermedio (referenciado con IT) si un dispositivo espfa activo 11 se empalma mediante sondas a las filas y columnas de la matriz de teclas del teclado. En efecto, tal como se ilustra en la figura 4, el dispositivo espfa activo 11 puede (a diferencia de un dispositivo espfa pasivo) espiar el teclado, salvando las contramedidas, si el mismo efectua una iteracion de la fase de exploracion (esta iteracion, con escritura en las filas y lectura en las columnas, esta simbolizada por la flecha referenciada con 41 en la figura 4), durante el margen de tiempo intermedio IT (es decir, entre dos iteraciones sucesivas Tn y Tn+1 de la fase de exploracion efectuadas por el procesador 10).
3. Objetivos de la invencion
La invencion tiene como objetivo, en al menos una forma de realizacion, paliar estos diferentes inconvenientes del estado de la tecnica.
Mas concretamente, en al menos una forma de realizacion de la invencion, es un objetivo proporcionar una tecnica de gestion segura, mediante un dispositivo (por ejemplo, un procesador), de una matriz de teclas de un teclado.
Tiene asimismo como objetivo al menos una forma de realizacion de la invencion proporcionar una tecnica de este tipo que permita reducir, cuando no evitar, los riesgos de espionaje por un dispositivo espfa activo capaz de efectuar el mismo una iteracion de la fase de exploracion.
Es otro objetivo de al menos una forma de realizacion de la invencion proporcionar una tecnica de este tipo que sea simple en su puesta en practica y economica.
5
10
15
20
25
30
35
40
45
50
4. Explicacion de la invencion
En una forma particular de realizacion de la invencion, se propone un procedimiento de gestion, mediante un dispositivo, de una matriz de teclas que comprende al menos una fila y al menos dos columnas, permitiendo cada tecla, cuando es pulsada, cortocircuitar una fila y una columna de dicha matriz, comprendiendo el procedimiento al menos dos iteraciones de una fase de exploracion que comprende las siguientes etapas para cada una de las filas tratadas sucesivamente:
• escritura de un valor logico predeterminado en la fila; y
• para cada columna, lectura de un valor logico en la columna para determinar si la columna esta en cortocircuito con la fila, mediante comparacion entre el valor logico lefdo y el valor logico predeterminado, durante al menos una parte de un margen de tiempo comprendido entre dos iteraciones sucesivas de la fase de exploracion, el dispositivo efectua al menos un mecanismo de proteccion perteneciente al grupo que comprende:
• un primer mecanismo de proteccion, consistente en leer un valor logico en al menos una fila o columna, y detectar un intento de exploracion ilfcita en funcion del valor logico lefdo;
• un segundo mecanismo de proteccion, consistente en escribir un valor logico arbitrario, igual a o diferente del valor logico predeterminado, en al menos una fila o columna, en orden a impedir un intento de exploracion ilfcita.
De este modo, el dispositivo de gestion de la matriz de teclas del teclado pone en practica un mecanismo de proteccion (o una combinacion de varios mecanismos de proteccion) que permite hacer seguro el teclado durante el margen de tiempo intermedio, situado entre dos iteraciones sucesivas de la fase de exploracion efectuadas por el dispositivo de gestion. Los mecanismos primero y segundo no son de la misma naturaleza: uno esta orientado a detectar un intento de exploracion ilfcita (de la matriz de teclas del teclado) por un dispositivo espfa activo, en tanto que el otro esta orientado a impedir tal intento de exploracion ilfcita.
Se considera que la anterior formulacion, que esta basada en una matriz de teclas (matriz M) y las nociones de escrituras sucesivas (durante T) en cada una de las filas de esta matriz M y de lecturas (durante T1) y escrituras (durante T2) en cada una de las columnas de esta matriz M, es generica. En efecto, existe una alternativa consistente en escribir sucesivamente (durante T) en cada una de las columnas de esta matriz M y en leer (durante T1) y escribir (durante T2) en cada una de las filas de esta matriz M. Pero esta alternativa puede ser tratada segun la anterior formulacion, si se considera una nueva matriz M' en la que las filas se corresponden con las columnas de la matriz M y las columnas se corresponden con las filas de la matriz M.
De acuerdo con una primera puesta en practica particular, en el primer mecanismo de proteccion, un intento de exploracion ilfcita es detectado si el valor logico lefdo es el valor logico predeterminado.
En esta primera puesta en practica particular, el dispositivo de gestion de la matriz de teclas pretende detectar un intento de exploracion ilfcita por un dispositivo espfa activo que escribe y lee niveles logicos (tfpicamente, una senal posee un nivel logico “0” si su tension es inferior a un primer umbral, y posee un nivel logico “1” si su tension es superior a un segundo umbral).
De acuerdo con una caractenstica particular, el dispositivo efectua el primer mecanismo de proteccion durante todo el referido margen de tiempo.
De este modo, se hace seguro el teclado durante todo el referido margen de tiempo intermedio.
De acuerdo con una caractenstica particular, el dispositivo efectua el primer mecanismo de proteccion sobre todas las filas y columnas.
De esta manera, se mejora aun mas el refuerzo de la seguridad del teclado.
De acuerdo con una segunda puesta en practica particular, el dispositivo efectua el segundo mecanismo de proteccion durante todo el referido margen de tiempo.
En esta segunda puesta en practica particular, el dispositivo de gestion de la matriz de teclas pretende impedir un intento de exploracion ilfcita por un dispositivo espfa activo que escribe y lee senalas analogicas no consideradas como niveles logicos (tfpicamente, una senal analogica no posee un nivel logico “0” si su tension no es inferior a un primer umbral, y no posee un nivel logico “1” si su tension no es superior a un segundo umbral).
De acuerdo con una caractenstica particular, el dispositivo efectua el segundo mecanismo de proteccion sobre todas las filas y columnas.
De esta manera, se mejora aun mas el refuerzo de la seguridad del teclado.
De acuerdo con una caractenstica particular, el segundo mecanismo de proteccion consiste en escribir un valor logico arbitrario que cambia dentro de dicho margen de tiempo y/o de un margen de tiempo intermedio a otro.
5
10
15
20
25
30
35
40
45
50
De este modo, se complica el aprendizaje por parte de un dispositivo esp^a.
De acuerdo con una caractenstica particular, el cambio de valor logico arbitrario, dentro de dicho margen de tiempo y/o de un margen de tiempo intermedio a otro, es aleatorio.
De este modo, se complica el aprendizaje por parte de un dispositivo espfa.
De acuerdo con una tercera puesta en practica particular, el dispositivo efectua el segundo mecanismo de proteccion, sobre al menos una fila o columna dada, durante al menos una parte del margen de tiempo, salvo durante al menos un intervalo de tiempo de deteccion. Adicionalmente, durante cada intervalo de tiempo de deteccion, el dispositivo efectua el primer mecanismo de proteccion, consistente en leer un valor logico en dicha al menos una fila o columna dada, y detectar un intento de exploracion ilfcita si el valor logico lefdo es diferente de dicho valor logico arbitrario escrito por el segundo mecanismo antes de dicho intervalo de tiempo de deteccion, colocandose cada fila o columna, en la que escribe el dispositivo al efectuar el segundo mecanismo de proteccion, en un estado de baja impedancia, y colocandose cada fila o columna, en la que lee el dispositivo al efectuar el primer mecanismo de proteccion, en un estado de alta impedancia.
En esta tercera puesta en practica particular, el dispositivo de gestion de la matriz de teclas pretende:
• durante el margen de tiempo intermedio, exceptuando el o los intervalos de tiempo de deteccion, impedir un intento de exploracion ilfcita por un dispositivo espfa activo que escribe y lee senales analogicas no consideradas como niveles logicos; y
• durante el o los intervalos de tiempo de deteccion, detectar un intento de exploracion ilfcita por un dispositivo espfa activo que inyecta en las filas (de la matriz de teclas) corrientes suficientemente intensas como para generar una tension medible analogicamente.
De acuerdo con una caractenstica particular, el numero y/o la posicion y/o la duracion del o los intervalo(s) de tiempo de deteccion vana(n) aleatoriamente de un margen de tiempo intermedio a otro.
De esta manera, se evita que un atacante sortee, por aprendizaje, el primer mecanismo de proteccion efectuado durante cada intervalo de tiempo de deteccion.
De acuerdo con una caractenstica particular, el segundo mecanismo de proteccion consiste en escribir un valor logico arbitrario que cambia dentro de dicho margen de tiempo y/o de un margen de tiempo intermedio a otro.
De este modo, se complica el aprendizaje por parte de un dispositivo espfa.
De acuerdo con una caractenstica particular, el cambio de valor logico arbitrario, dentro de dicho margen de tiempo y/o de un margen de tiempo intermedio a otro, es aleatorio.
De este modo, se complica el aprendizaje por parte de un dispositivo espfa.
De acuerdo con una caractenstica particular, el dispositivo efectua el segundo mecanismo de proteccion durante todo el referido margen de tiempo, salvo durante dicho al menos un intervalo de tiempo de deteccion, efectuando el dispositivo el primer mecanismo de proteccion durante cada intervalo de tiempo de deteccion.
De este modo, se hace seguro el teclado durante todo el referido margen de tiempo intermedio.
De acuerdo con una caractenstica particular, el dispositivo efectua los mecanismos de proteccion primero y segundo sobre todas las filas y columnas.
De esta manera, se mejora aun mas el refuerzo de la seguridad del teclado.
En otra forma de realizacion de la invencion, se propone un producto programa de ordenador que comprende instrucciones de codigo de programa para la puesta en practica del aludido procedimiento (en una cualquiera de sus diferentes formas de realizacion) cuando dicho programa se ejecuta en un ordenador o un procesador.
En otra forma de realizacion de la invencion, se propone un medio de almacenamiento legible por ordenador y no transitorio, que almacena un programa de ordenador que comprende un juego de instrucciones ejecutables por un ordenador o un procesador para llevar a la practica el aludido procedimiento (en una cualquiera de sus diferentes formas de realizacion).
En otra forma de realizacion de la invencion, se propone un dispositivo de gestion de una matriz de teclas que comprende al menos una fila y al menos dos columnas, permitiendo cada tecla, cuando es pulsada, cortocircuitar una fila y una columna de dicha matriz, comprendiendo el dispositivo unos medios de exploracion adaptados para efectuar al menos dos iteraciones de una fase de exploracion, comprendiendo los medios de exploracion los siguientes medios, activados para cada una de las filas tratadas sucesivamente: medios de escritura de un valor logico predeterminado en la fila; y medios de lectura de un valor logico en cada columna para determinar si la
5
10
15
20
25
30
35
40
45
columna esta en cortocircuito con la fila, mediante comparacion entre el valor logico lefdo y el valor logico predeterminado. El dispositivo comprende, ademas, al menos un medio de proteccion activado durante al menos una parte de un margen de tiempo comprendido entre dos iteraciones sucesivas de la fase de exploracion, perteneciendo dicho al menos un medio de proteccion al grupo que comprende:
• un primer medio de proteccion, que comprende medios de lectura de un valor logico en al menos una fila o columna, y medios de deteccion de un intento de exploracion ilfcita en funcion del valor logico lefdo;
• un segundo medio de proteccion, que comprende medios de escritura de un valor logico arbitrario, igual a o diferente del valor logico predeterminado, en al menos una fila o columna, en orden a impedir un intento de exploracion ilfcita.
Ventajosamente, el dispositivo de gestion de la matriz de teclas comprende medios de puesta en practica de las etapas que efectua en el procedimiento tal como se ha descrito anteriormente, en una cualquiera de sus diferentes formas de realizacion.
5. Lista de figuras
Otras caractensticas y ventajas de la invencion se iran poniendo de manifiesto con la lectura de la descripcion siguiente, dada a tttulo de ejemplo indicativo y no limitativo, y de los dibujos que se acompanan, en los cuales:
la figura 1, ya descrita en relacion con la tecnica anterior, presenta un ejemplo de teclado numerico que comprende una matriz de teclas unida a un procesador;
la figura 2, ya descrita en relacion con la tecnica anterior, ilustra la tecnica convencional de gestion de la matriz de teclas de la figura 1, en el caso en que se aprieta la tecla 6;
la figura 3, ya descrita en relacion con la tecnica anterior, presenta el empalme de un dispositivo espfa activo sobre las filas y columnas de la matriz de teclas del teclado;
la figura 4, ya descrita en relacion con la tecnica anterior, ilustra el riesgo de espionaje del teclado durante el margen de tiempo intermedio por el dispositivo espfa activo de la figura 3;
la figura 5 ilustra una primera forma de realizacion del procedimiento segun la invencion;
la figura 6 ilustra una respuesta defensiva a la primera forma de realizacion de la figura 5;
la figura 7 ilustra una segunda forma de realizacion del procedimiento segun la invencion;
la figura 8 ilustra una respuesta defensiva a la segunda forma de realizacion de la figura 7;
la figura 9 ilustra una tercera forma de realizacion del procedimiento segun la invencion; y
la figura 10 presenta la constitucion de un dispositivo de gestion de una matriz de teclas de un teclado, segun una forma particular de realizacion de la invencion.
6. Descripcion detallada
En interes de la simplificacion, mas adelante en la descripcion se utiliza el ejemplo de teclado de la figura 1, con una matriz de teclas que comprende diez teclas (asociadas a los dfgitos 0 a 9), cuatro filas (referenciadas con LIG0 a LIG3) y tres columnas (referenciadas con COL0 a COL2). Claro esta que la tecnica que a continuacion se presenta, segun diferentes formas de realizacion de la invencion, no queda limitada a este ejemplo de teclado.
Cada una de las figuras 5 a 8 presenta los valores de las senales presentes en las filas LG0 a LG3 y las columnas COL0 a COL2, durante dos iteraciones sucesivas (referenciadas con Tn y Tn+1) de la fase de exploracion, asf como durante el margen de tiempo intermedio (referenciado con IT) situado entre estas dos iteraciones sucesivas. La figura 9 presenta los valores de las senales presentes en las filas LG0 a LG3 y las columnas COL0 a COL2, unicamente durante el margen de tiempo intermedio (referenciado con IT).
Mas adelante en la descripcion, se asume que los impulsos de interrogacion poseen un nivel logico “0”. Sin embargo, esta claro que el principio de la invencion sigue siendo el mismo si se invierte la utilizacion de los niveles logicos “0” y “1”.
En relacion con la figura 5, se pasa a presentar a continuacion una primera forma de realizacion del procedimiento segun la invencion.
Se asume que, al igual que en el ejemplo de la figura 4, el dispositivo espfa activo 11 espfa el teclado efectuando el mismo una iteracion de la fase de exploracion (esta iteracion, con escritura de un nivel logico “0” (impulso de interrogacion) en las filas y lectura en las columnas, esta simbolizada por la flecha referenciada con 41), durante el margen de tiempo intermedio IT (es decir, entre dos iteraciones sucesivas Tn y Tn+1 de la fase de exploracion
5
10
15
20
25
30
35
40
45
50
efectuadas por el procesador 10).
La tecnica que se propone en la primera forma de realizacion de la invencion consiste, durante todo el margen de tiempo intermedio IT, en leer el valor logico presente en cada una de las filas LG0 a LG3 y cada una de las columnas COL0 a COL2, y detectar un intento de exploracion ilfcita si el valor logico lefdo (en al menos una de las filas y columnas) es el valor logico “0” (nivel logico de los impulsos de interrogacion).
En el ejemplo de la figura 5, el procesador 10 detecta el flanco de bajada correspondiente al comienzo de la escritura, por parte del dispositivo espfa activo 11, de un nivel logico “0” (impulso de interrogacion) en la fila LIG0. Esta deteccion esta simbolizada por la flecha referenciada con 51. El procesador 10 deduce la existencia de un intento de exploracion ilfcita del teclado, de modo que se puede(n) poner en practica cual(es)quier(a) accion(ones) oportuna(s) (por ejemplo, aseguramiento del aparato (puesta fuera de servicio), disparo de una alarma (mensaje, pitido, sirena...), borrado de informacion sensible, aviso a un dispositivo de vigilancia a efectos de intervencion, etc.).
Esta primera forma de realizacion utiliza, por ejemplo, las posibilidades de interrupciones del procesador 10: entre dos iteraciones sucesivas Tn y Tn+1 de la fase de exploracion, el conjunto de las filas / columnas del teclado estan colocadas en un “estado de entrada” (es decir, en un estado de lectura por el procesador 10) con interrupcion ante un cambio de estado logico. En caso de exploracion ilfcita por parte de un dispositivo espfa activo 11, el procesador 10 detecta un cambio de nivel logico por intermedio de su sistema de gestion de las interrupciones y memoriza un intento de exploracion ilfcita de teclado. Este mecanismo de proteccion por gestion de interrupcion tan solo es posible en procesadores con entradas / salidas que tienen posibilidades de interrupciones.
En una variante, el procesador 10 explora permanentemente las filas y columnas para detectar un cambio de nivel logico (esta variante es mas consumidora de recursos del procesador).
En otra variante, el mecanismo de proteccion segun la primera forma de realizacion tan solo se efectua durante una parte del margen de tiempo intermedio IT.
En otra variante, el mecanismo de proteccion segun la primera forma de realizacion tan solo se efectua en cierta(s) fila(s) y/o cierta(s) columna(s).
La figura 6 ilustra una respuesta defensiva a la primera forma de realizacion de la figura 5. Esta respuesta defensiva consiste en utilizar un dispositivo espfa activo analogico 11, es decir, un dispositivo espfa activo con entradas analogicas, capaces de trabajar (en escritura y en lectura) con senales analogicas que no disparan interrupciones ni cambios de estado logico (senales analogicas que no se consideran niveles logicos “0”, debido a que permanecen en un nivel de tension superior al umbral definitorio del nivel logico “0”).
En la figura 6, la iteracion de la fase de exploracion efectuada por el dispositivo espfa activo analogico 11 (con escritura en las filas y lectura en las columnas de senales analogicas que no disparan interrupciones ni cambios de estado logico) esta simbolizada por la flecha referenciada con 61.
Se pasa a presentar a continuacion, en relacion con la figura 7, una segunda forma de realizacion del procedimiento segun la invencion, que permite evitar la respuesta defensiva ilustrada en la figura 6.
La tecnica que se propone en la segunda forma de realizacion de la invencion consiste, durante todo el margen de tiempo intermedio IT, en escribir el valor logico “0” en cada una de las filas LG0 a LG3 y cada una de las columnas COL0 a COL2 (nivel logico de los impulsos de interrogacion). Esta escritura en las filas y las columnas esta simbolizada por la flecha referenciada con 71. Dicho de otro modo, el procesador 10 fuerza los niveles de las filas LG0 a LG3 y columnas COL0 a COL2 a un nivel logico “0” (colocandose las filas y las columnas en un “estado de salida”, es decir, en un estado de escritura por el procesador 10). Para ello, el procesador 10 bloquea las filas y las columnas a masa.
En una variante, el procesador 10 fuerza los niveles de las filas LG0 a LG3 y columnas COL0 a COL2 a un nivel logico “1”, durante todo el margen de tiempo intermedio IT.
En otra variante, el procesador 10 fuerza los niveles de las filas LG0 a LG3 y columnas COL0 a COL2 a un nivel logico arbitrario que cambia (“0” o “1”) de un margen de tiempo intermedio IT a otro. Este cambio es preferiblemente aleatorio, con el fin de complicar el aprendizaje por parte de un dispositivo espfa.
En otra variante, el procesador 10 fuerza los niveles de las filas LG0 a LG3 y columnas COL0 a COL2 a un nivel logico arbitrario que cambia (“0” o “1”) dentro del margen de tiempo intermedio IT. Dicho de otro modo, el procesador 10 fuerza al nivel logico “0” durante una o varias primeras porciones del margen de tiempo intermedio IT, y al nivel logico “1” durante una o varias segundas porciones del margen de tiempo intermedio IT.
El cambio arbitrario de nivel logico (de un margen de tiempo intermedio IT a otro y/o dentro del margen de tiempo intermedio IT) puede ser aleatorio, con el fin de complicar el aprendizaje por parte de un dispositivo espfa.
En una variante, el mecanismo de proteccion segun esta segunda forma de realizacion tan solo se efectua durante una parte del margen de tiempo intermedio IT.
5
10
15
20
25
30
35
40
45
50
En otra variante, el mecanismo de proteccion segun esta segunda forma de realizacion tan solo se efectua en cierta(s) fila(s) y/o cierta(s) columna(s).
La figura 8 ilustra una respuesta defensiva a la segunda forma de realizacion de la figura 7.
Esta respuesta defensiva consiste en utilizar un dispositivo espfa activo analogico 11, es dedr, un dispositivo espfa activo con entradas analogicas, capaz de inyectar en las filas LG0 a LG3 corrientes suficientemente intensas como para generar una tension medible analogicamente. En efecto, es necesario inyectar una corriente suficientemente importante en una fila para obtener una tension medible (es decir, en este caso concreto, una tension debil pero no nula), teniendo presente que la impedancia de una fila colocada en un “estado de salida” (es decir, en escritura por el procesador 10) es pequena (< 1 Q).
En la figura 8, la flecha referenciada con 81 simboliza la iteracion de la fase de exploracion efectuada por el dispositivo espfa activo analogico 11, con escritura en las filas (y lectura en las columnas) de senales resultantes de la inyeccion en las filas LG0 a LG3 de corrientes suficientemente intensas.
Se pasa a presentar a continuacion, en relacion con la figura 9, una tercera forma de realizacion del procedimiento segun la invencion, que permite evitar la respuesta defensiva ilustrada en la figura 8.
La tecnica que se propone en la tercera forma de realizacion de la invencion consiste en:
• poner en practica un primer mecanismo durante todo el margen de tiempo intermedio IT, salvo durante al menos un intervalo de tiempo de deteccion. Este primer mecanismo es identico al mecanismo de proteccion segun la segunda forma de realizacion, antes descrito en relacion con la figura 7 (inclusive en las diferentes variantes, antes resenadas, de esta segunda forma de realizacion); y
• poner en practica un segundo mecanismo de proteccion durante cada intervalo de tiempo de deteccion, consistente en: leer el valor logico presente en cada una de las filas LG0 a LG3 y cada una de las columnas COL0 a COL2, y detectar un intento de exploracion ilfcita si el valor logico lefdo (en al menos una de las filas y columnas) es diferente del valor logico arbitrario escrito por el segundo mecanismo antes de este intervalo de tiempo de deteccion. En el ejemplo de la figura 9, se escribe el valor logico arbitrario “0” con el primer mecanismo y se detecta un intento de exploracion ilfcita con el segundo mecanismo si se lee el valor logico “1”. Este segundo mecanismo de proteccion utiliza, por ejemplo, las posibilidades de interrupciones del procesador 10, o bien una deteccion permanente de un cambio de nivel logico).
De este modo, al comienzo de cada intervalo de tiempo de deteccion (es decir, con el paso del primer al segundo mecanismo de proteccion), cada fila o columna pasa de un “estado de salida” de escasa impedancia (estado de escritura de un valor logico arbitrario “0” o “1” por el procesador 10) a un “estado de entrada” de gran impedancia (estado de lectura por el procesador 10). En la practica, el cambio de impedancia es casi instantaneo (una instruccion de procesador). Esta variacion de impedancia es suficientemente grande para que, si en una fila o una columna hay presencia de una intensa corriente, esto conlleva en esa fila o columna una tension medible por el procesador 10. Segun se ha explicado en relacion con la figura 8, en una fila hay presencia de una intensa corriente si un dispositivo espfa activo analogico 11 inyecta en esa fila esa intensa corriente. En una columna, hay presencia de una intensa corriente si esa columna esta en cortocircuito con una fila en la que el dispositivo espfa activo analogico 11 ha inyectado esa intensa corriente.
En el ejemplo de la figura 9, en el que, en interes de la simplificacion, no hay mas que un solo intervalo de tiempo de deteccion (correspondiente a la porcion referenciada con P2 del margen de tiempo intermedio IT), el procesador pone en practica el primer mecanismo (simbolizado por las flechas referenciadas con 91 y 93) durante las porciones referenciadas con P1 y P3 del margen de tiempo intermedio IT, y pone en practica el segundo mecanismo (simbolizado por la flecha referenciada con 92) durante la porcion referenciada con P2.
Con el fin de complicar el aprendizaje por parte del dispositivo espfa, el procesador 10 hacer variar de manera aleatoria, de un margen de tiempo intermedio IT a otro, el numero y/o la posicion y/o la duracion del o los intervalo(s) de tiempo de deteccion.
En una variante, el mecanismo de proteccion segun esta tercera forma de realizacion tan solo se efectua durante una parte del margen de tiempo intermedio IT.
En otra variante, el mecanismo de proteccion segun esta tercera forma de realizacion tan solo se efectua en cierta(s) fila(s) y/o cierta(s) columna(s).
La figura 10 presenta la constitucion de un dispositivo 10 de gestion de una matriz de teclas de un teclado, segun una forma particular de realizacion de la invencion. Este dispositivo pone en practica la tecnica antes presentada (en una cualquiera de las formas de realizacion, presentadas en relacion con las figuras 5 a 9).
En este ejemplo, el dispositivo comprende una memoria RAM 103 (por “Random Access Memory” en ingles), una unidad de proceso 101 (o CPU, por “Central Processing Unit” en ingles), equipada, por ejemplo, con un procesador y
10
15
pilotada por un programa almacenado en una memoria ROM 102 (por “Read Only Memory” en ingles). Con la inicializacion, las instrucciones de codigo del programa se cargan, por ejemplo, en la memoria RAM 103 antes de ser ejecutadas por la unidad de proceso 101. La unidad de proceso l0l administra las senales en las filas y las columnas (LIG0 a LIG3 y COL0 a COL2 en este ejemplo) de la matriz de teclas del teclado, segun las instrucciones del programa 102, con el fin de poner en practica la tecnica antes presentada (en una cualquiera de las formas de realizacion).
Esta figura 10 solo ilustra una manera particular, de entre varias posibles, de realizar la tecnica antes presentada, en relacion con las figuras 5 a 9. En efecto, la tecnica de la invencion se realiza indistintamente:
• en una maquina de calculo reprogramable (un procesador o un microcontrolador, por ejemplo) que ejecuta un programa que comprende una secuencia de instrucciones, o
• en una maquina de calculo especializada (por ejemplo, un conjunto de puertas logicas tal como una FPGA o un ASIC, o cualquier otro modulo de soporte ffsico).
En caso de implantarse la invencion en una maquina de calculo reprogramable, el correspondiente programa (es decir, la secuencia de instrucciones) puede almacenarse en un medio de almacenamiento extrafble (tal como, por ejemplo, un disquete, un CD-ROM o un DVD-ROM) o no, siendo legible este medio de almacenamiento, parcial o totalmente, por un ordenador o un procesador.

Claims (8)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    REIVINDICACIONES
    1. Procedimiento de gestion, mediante un dispositivo (10), de una matriz de teclas que comprende al menos una fila (LIG0 a LIG3) y al menos dos columnas (COL0 a COL2), permitiendo cada tecla, cuando es pulsada, cortocircuitar una fila y una columna de dicha matriz, comprendiendo el procedimiento al menos dos iteraciones (Tn, Tn+i) de una fase de exploracion que comprende las siguientes etapas para cada una de las filas tratadas sucesivamente:
    • escritura de un valor logico predeterminado en la fila; y
    • para cada columna, lectura de un valor logico en la columna para determinar si la columna esta en cortocircuito con la fila, mediante comparacion entre el valor logico lefdo y el valor logico predeterminado,
    caracterizado por que, durante al menos una parte de un margen de tiempo (IT) comprendido entre dos iteraciones sucesivas (Tn, Tn+i) de la fase de exploracion, el dispositivo efectua:
    • un primer mecanismo de proteccion (92), consistente en leer un valor logico en al menos una fila o columna, y detectar un intento de exploracion ilfcita en funcion del valor logico lefdo; y
    • un segundo mecanismo de proteccion (91, 93), consistente en escribir un valor logico arbitrario, igual a o diferente del valor logico predeterminado, en al menos una fila o columna, en orden a impedir un intento de exploracion ilfcita;
    por que el dispositivo efectua el segundo mecanismo de proteccion (91, 93), sobre al menos una fila o columna dada, durante al menos una parte (P1, P3) del margen de tiempo (IT), salvo durante al menos un intervalo de tiempo de deteccion (P2), por que, durante cada intervalo de tiempo de deteccion, el dispositivo efectua el primer mecanismo de proteccion (92), consistente en leer un valor logico en dicha al menos una fila o columna dada, y detectar un intento de exploracion ilfcita si el valor logico lefdo es diferente de dicho valor logico arbitrario escrito por el segundo mecanismo antes de dicho intervalo de tiempo de deteccion,
    por que cada fila o columna en la que escribe el dispositivo, antes de dicho intervalo de tiempo de deteccion, al efectuar el segundo mecanismo de proteccion, se coloca en un estado de baja impedancia,
    por que cada fila o columna, en la que lee el dispositivo, durante dicho intervalo de tiempo de deteccion, al efectuar el primer mecanismo de proteccion, se coloca en un estado de alta impedancia, y por que, para dicha al menos una fila o columna dada, el comienzo del intervalo de tiempo de deteccion se corresponde con un paso de dicho estado de baja impedancia a dicho estado de alta impedancia, que conlleva una tension medible por el dispositivo si en dicha al menos una fila o columna dada hay presencia de una corriente dimanada de un intento de exploracion ilfcita.
  2. 2. Procedimiento segun la reivindicacion 1, caracterizado por que el numero y/o la posicion y/o la duracion del o los intervalo(s) de tiempo de deteccion vana(n) aleatoriamente de un margen de tiempo intermedio a otro.
  3. 3. Procedimiento segun una cualquiera de las reivindicaciones 1 y 2, caracterizado por que el segundo mecanismo de proteccion consiste en escribir un valor logico arbitrario que cambia dentro de dicho margen de tiempo y/o de un margen de tiempo intermedio a otro.
  4. 4. Procedimiento segun la reivindicacion 3, caracterizado por que el cambio arbitrario de valor logico, dentro de dicho margen de tiempo y/o de un margen de tiempo intermedio a otro, es aleatorio.
  5. 5. Procedimiento segun una cualquiera de las reivindicaciones 1 a 4, caracterizado por que el dispositivo efectua el segundo mecanismo de proteccion durante todo el referido margen de tiempo (IT), salvo durante dicho al menos un intervalo de tiempo de deteccion (P2), efectuando el dispositivo el primer mecanismo de proteccion durante cada intervalo de tiempo de deteccion.
  6. 6. Procedimiento segun una cualquiera de las reivindicaciones 1 a 5, caracterizado por que el dispositivo efectua los mecanismos de proteccion primero y segundo sobre todas las filas y columnas.
  7. 7. Producto programa de ordenador, que comprende instrucciones de codigo de programa para la puesta en practica del procedimiento segun al menos una de las reivindicaciones 1 a 6, cuando dicho programa se ejecuta en un ordenador o un procesador.
  8. 8. Medio de almacenamiento legible por ordenador y no transitorio, que almacena un programa de ordenador que comprende un juego de instrucciones ejecutables por un ordenador o un procesador para llevar a la practica el procedimiento segun al menos una de las reivindicaciones 1 a 6.
ES12778351.2T 2011-11-04 2012-10-29 Procedimiento y dispositivo de gestión de una matriz de teclas, con protección contra un dispositivo espía activo, producto programa de ordenador y medio de almacenamiento correspondientes Active ES2576228T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR1160022A FR2982392B1 (fr) 2011-11-04 2011-11-04 Procede et dispositif de gestion d'une matrice de touches, avec protection contre un dispositif espion actif, produit programme d'ordinateur et moyen de stockage correspondants.
FR1160022 2011-11-04
PCT/EP2012/071368 WO2013064453A1 (fr) 2011-11-04 2012-10-29 Procede et dispositif de gestion d'une matrice de touches, avec protection contre un dispositif espion actif, produit programme d'ordinateur et moyen de stockage correspondants

Publications (1)

Publication Number Publication Date
ES2576228T3 true ES2576228T3 (es) 2016-07-06

Family

ID=47076248

Family Applications (1)

Application Number Title Priority Date Filing Date
ES12778351.2T Active ES2576228T3 (es) 2011-11-04 2012-10-29 Procedimiento y dispositivo de gestión de una matriz de teclas, con protección contra un dispositivo espía activo, producto programa de ordenador y medio de almacenamiento correspondientes

Country Status (9)

Country Link
US (1) US9122871B2 (es)
EP (1) EP2774069B1 (es)
BR (1) BR112014010653A2 (es)
CA (1) CA2853301C (es)
ES (1) ES2576228T3 (es)
FR (1) FR2982392B1 (es)
PL (1) PL2774069T3 (es)
PT (1) PT2774069E (es)
WO (1) WO2013064453A1 (es)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2982054B1 (fr) * 2011-10-28 2014-06-20 Ingenico Sa Procede et dispositif de gestion d'une matrice de touches, produit programme d'ordinateur et moyen de stockage correspondants.
US9703937B2 (en) * 2013-04-10 2017-07-11 Dell Products, L.P. Method to prevent operating system digital product key activation failures
US10853525B2 (en) * 2018-04-16 2020-12-01 Dell Products, L.P. Hack-proof security keyboard
TWI678456B (zh) * 2019-06-13 2019-12-01 東隆五金工業股份有限公司 電子鎖與用於電子鎖的按鍵掃描系統
CN111145394B (zh) * 2019-12-20 2021-08-03 上海爱信诺航芯电子科技有限公司 电容触控按键的扫描控制方法与扫描控制装置
TWI783309B (zh) * 2020-11-25 2022-11-11 瑞昱半導體股份有限公司 電路設計方法和相關電路

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE448803B (sv) * 1986-05-22 1987-03-16 Ljungmans Ind Ab Sett att forhindra obehorig atkomst av information
FR2599525B1 (fr) 1986-06-02 1988-07-29 Dassault Electronique Unite a clavier de securite, en particulier pour la composition d'un code confidentiel
FR2692378B1 (fr) * 1992-06-12 1994-07-29 Dassault Automatismes Telecomm Unite a clavier de securite perfectionnee.
TW376499B (en) 1998-12-17 1999-12-11 Xac Automation Corp A method for detecting a keyboard key through two corresponding lines separately belonging to X port and Y port lines when each key is pressed down

Also Published As

Publication number Publication date
US20140259165A1 (en) 2014-09-11
EP2774069A1 (fr) 2014-09-10
US9122871B2 (en) 2015-09-01
BR112014010653A2 (pt) 2017-04-25
EP2774069B1 (fr) 2016-03-16
FR2982392A1 (fr) 2013-05-10
WO2013064453A1 (fr) 2013-05-10
CA2853301A1 (en) 2013-05-10
PL2774069T3 (pl) 2017-01-31
CA2853301C (en) 2019-11-26
FR2982392B1 (fr) 2013-12-20
PT2774069E (pt) 2016-06-17

Similar Documents

Publication Publication Date Title
ES2576228T3 (es) Procedimiento y dispositivo de gestión de una matriz de teclas, con protección contra un dispositivo espía activo, producto programa de ordenador y medio de almacenamiento correspondientes
ES2835793T3 (es) Autenticación de punteros de código para el control de flujo de hardware
Waksman et al. Silencing hardware backdoors
Konstantinou et al. Metamorphic virus: Analysis and detection
KR100966661B1 (ko) 보안 스캔 테스트를 위한 방법 및 장치
Irazoqui et al. MASCAT: Stopping microarchitectural attacks before execution
Obermaier et al. Shedding too much light on a microcontroller's firmware protection
Kayaalp et al. SCRAP: Architecture for signature-based protection from code reuse attacks
Mitra et al. The Trojan-proof chip
Vig et al. Rapid detection of Rowhammer attacks using dynamic skewed hash tree
Kayaalp et al. Efficiently securing systems from code reuse attacks
CN107395189B (zh) 集成电路的保护
US20190197216A1 (en) Method, apparatus, and computer-readable medium for executing a logic on a computing device and protecting the logic against reverse engineering
KR102515381B1 (ko) 반복적인 사이드 채널 공격 대응책
CN106487510B (zh) 模幂计算的保护
US20160203325A1 (en) Method for protecting an integrated circuit against unauthorized access
CN106484365B (zh) 验证执行模幂计算的电子电路的敏感度
Yuce Fault attacks on embedded software: New directions in modeling, design, and mitigation
Santos et al. Designing and implementing a malicious 8051 processor
Derouet Secure smartcard design against laser fault injection
Ehret et al. Hardware Root-of-Trust Support for Operational Technology Cybersecurity in Critical Infrastructures
ES2843098T3 (es) Carga segura de datos secretos de registros de hardware no protegidos
Venkatachalam Detecting undetectable computer viruses
ES2391676T3 (es) Procedimiento de aseguramiento de un microprocesador, programa de ordenador y dispositivo correspondientes
Canpolat et al. Understanding the Security Benefits and Overheads of Emerging Industry Solutions to DRAM Read Disturbance