ES2263635T3 - Proceso para acceder a un medio de tratamiento de datos. - Google Patents

Proceso para acceder a un medio de tratamiento de datos.

Info

Publication number
ES2263635T3
ES2263635T3 ES01947559T ES01947559T ES2263635T3 ES 2263635 T3 ES2263635 T3 ES 2263635T3 ES 01947559 T ES01947559 T ES 01947559T ES 01947559 T ES01947559 T ES 01947559T ES 2263635 T3 ES2263635 T3 ES 2263635T3
Authority
ES
Spain
Prior art keywords
code
transformed
secret
cst
transformation
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
ES01947559T
Other languages
English (en)
Inventor
Christophe Bidan
Pierre Girard
Pascal Guterman
David Naccache
Ludovic Rousseau
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.)
Gemplus SA
Original Assignee
Gemplus Card International SA
Gemplus 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 Gemplus Card International SA, Gemplus SA filed Critical Gemplus Card International SA
Application granted granted Critical
Publication of ES2263635T3 publication Critical patent/ES2263635T3/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
    • 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
    • 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
    • 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/1025Identification of user by a PIN code

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

Proceso para acceder a un medio de tratamiento de datos (CA) asociado a un código confidencial secreto (CS) y accesible aplicándole un código confidencial presentado (CP) por un medio de acogida (TE), caracterizado por comprender las siguientes etapas: - previamente, implementación (E1) de una función de transformación del código (FT) en el medio de tratamiento (CA); y seguidamente transformación (E2) del código secreto (CS) en un código secreto transformado (CST) según la función de transformación (FT) y memorización (E3) del código secreto transformado (CST) en el medio de tratamiento; y - en cada utilización del medio de tratamiento (CA), transformación (E6) del código presentado (CP) en un código presentado transformado (CPT) por la función de transformación implementada en el medio de tratamiento, y comparación en el medio de tratamiento (E7) del código secreto transformado con el código presentado transformado.

Description

Proceso para acceder a un medio de tratamiento de datos.
El presente invento concierne de manera general cualquier medio electrónico de tratamiento de datos cuyas funcionalidades, o servicios vinculados, son accesibles por un código confidencial, llamado igualmente contraseña o código secreto, el cual recibe generalmente el medio de tratamiento, tras haber entrado en el teclado el medio de acogida para acceder a dicho medio de tratamiento.
Por ejemplo, el medio de tratamiento de datos es una tarjeta con microcontrolador, llamada igualmente tarjeta con circuito integrado o tarjeta con chip (Smart Card), como por ejemplo una tarjeta de crédito para Terminal bancario o una tarjeta de monedero electrónico para Terminal de punto de venta, o por cualquier otro Terminal, como es el caso de un Terminal radiotelefónico móvil dotado de un lector de tarjeta adicional, así como un documento de identidad SIM (Subscriber Identity Mobile) en un terminal radiotelefónico móvil.
En particular, el invento se refiere a la seguridad del control de acceso a las funcionalidades de la tarjeta con chip por un código confidencial que ésta hubiese recibido con objeto de compararlo con un código confidencial secreto asociado a la tarjeta con chip y actualmente prememorizado en dicha tarjeta.
Un agresor, una persona malintencionada que desease conocer el código confidencial secreto de una tarjeta con chip puede proceder a un análisis de consumo eléctrico (en inglés, Single Power Análisis SPA) conectando un aparato de medida de tensión a la interfaz eléctrica entre la tarjeta con chip y su Terminal de acogida.
En una tarjeta con chip según la técnica anterior, el código confidencial secreto prememorizado en una memoria no volátil de la tarjeta con chip se manipula durante la verificación de todos los códigos confidenciales presentados con vistas a autentificar el verdadero poseedor de la tarjeta con chip. En particular, el procesador en la tarjeta lee el código secreto en la memoria no volátil y lo compara con el código recibido escrito temporalmente en la memoria RAM de la tarjeta con chip.
De este modo, las tarjetas con chip actuales presentan posibilidades de extracción de datos que proceden del registro de las características de consumo energético de la tarjeta con chip.
Ya se conoce, principalmente, por el documento EP-00984955-5, un dispositivo y un proceso en el que una tarjeta comprende una función de codificación unidireccional utilizada para facilitar una clave a partir de datos recibidos por la tarjeta de su inicialización. Esta clave servirá a continuación para descifrar los datos que reciba la tarjeta.
Por otra parte, ya se conoce por el documento EP-A-1004980 que se compara en un Terminal un código confidencial secreto de identificación almenado en una memoria de una tarjeta con chip, después de haber sido sometido a una transformación con un código confidencial secreto de identificación que se entró en el teclado del Terminal y que había sido sometido a la misma función de transformación.
Esta solución presenta el inconveniente de necesitar un enlace codificado establecido entre la tarjeta y el Terminal con objeto de evitar la intercepción de los códigos confidenciales secretos.
Además, este tipo de solución no permite de precaverse contra un agresor que lograse identificar un código
confidencial secreto transformado y que pudiese de ese modo usurpar la identidad del titular de la tarjeta con
chip.
El presente invento pone la mira en incrementar la seguridad del control del código confidencial recibido por un medio de tratamiento de datos, tal como la tarjeta con chip, y evitar cualquier manipulación del código secreto en el medio de tratamiento de datos.
Con este fin, un proceso para acceder a un medio de tratamiento de datos asociado a un código confidencial secreto y accesible aplicándole un código confidencial presentado por un medio de acogida, se caracteriza por comprender las siguientes etapas:
- previamente, implementación de una función de transformación del código en el medio de tratamiento; y seguidamente transformación del código secreto en un código secreto transformado según la función de transformación y memorización del código secreto transformado en el medio de tratamiento; y
- en cada utilización del medio de tratamiento, transformación del código presentado en un código presentado transformado por la función de transformación implementada en el medio de tratamiento, y comparación en el medio de tratamiento del código secreto transformado con el código presentado transformado.
De este modo, en el transcurso de la utilización del medio de tratamiento, como por ejemplo la tarjeta con chip, el código secreto no se memoriza en ella y por lo tanto no se manipula en la tarjeta cuando se presenta el código confidencial.
Como lo veremos en detalle a continuación, la función de transformación puede ser irreversible, un troceado, vinculado a un número aleatorio fijado en el momento de la creación de la tarjeta, o bien dependiente de un segundo número aleatorio variable en cada presentación del código presentado, aplicado reiteradamente en función del número de presentaciones anteriores del código presentado, una permutación predeterminada de partes de código, o una función homomórfica. Algunas de estas características de función de transformación pueden combinarse entre sí.
Otras características y ventajas del presente invento aparecerán de manera más claras cuando se lea la siguiente descripción de varias realizaciones preferidas del invento en referencia a los dibujos anexos correspondientes en los que:
- la figura 1 es un bloque diagrama esquemático que muestra un sistema de aplicación del proceso de control de acceso según el invento en el contexto de una tarjeta con chip; y
- la figura 2 es un algoritmo de las etapas principales del proceso de control de acceso según varias realizaciones del invento.
Según la realización ilustrada en la figura 1, un medio de tratamiento de datos electrónico está constituido por una tarjeta con chip CA cuyo "chip" está compuesto de un microprocesador. Esquemáticamente, el microcontrolador comprende una unidad de tratamiento central CPU formada por un microprocesador PR, una memoria MO de tipo ROM que incluye un sistema de explotación OS de la tarjeta y principalmente algoritmos de aplicación de comunicación y de autentificación específicos, una memoria no volátil MNV de tipo programable y que se puede borrar, como una memoria EEPROM, que contiene datos ligados principalmente al poseedor de la tarjeta y al proveedor de la tarjeta, y una memoria MA de tipo RAM destinada a recibir principalmente datos de un terminal de acogida TE de la tarjeta. Todos los componentes PR, MO, MNV y MA están conectados entre sí por un bus interno BU.
El Terminal de acogida TE, como por ejemplo un Terminal bancario o un Terminal telefónico, está equipado de un teclado TL para componer, en particular, un código confidencial CL, denominado igualmente código sometido, que se presentará a la tarjeta. En un lector LE del Terminal TE sed introduce una parte de la tarjeta CA que contiene el microcontrolador y que soporta típicamente ocho contactos eléctricos de una conexión eléctrica LI entre el lector LE y el bus BU interno de la tarjeta CA cuando la tarjeta es del tipo con contacto.
Refiriéndonos ahora a la figura 2, el proceso de control de acceso según una realización preferida del invento para la tarjeta con chip CA que se muestra en la figura 1 comprende esencialmente siete etapas E1 a E7.
Las primeras etapas E1 a E3 se realizan previamente en el establecimiento del proveedor de dicha tarjeta, durante la fabricación de la tarjeta y después durante la adquisición de la tarjeta CA, por ejemplo en el momento del abono a un servicio accesible por las funcionalidades de la tarjeta.
Durante la fabricación de la tarjeta, está implementada una función de transformación de código confidencial predeterminada FT para transformar ulteriormente el código confidencial presentado CP, como se verá en el resto del documento, en la memoria MO de la tarjeta.
La tarjeta CA se entrega con la función de transformación implementada FT por el fabricante de la tarjeta al proveedor de tarjeta. En función de datos del fabricante de tarjeta principalmente, el proveedor de tarjeta atribuye un código confidencial secreto CS de preferencia cifrado, por ejemplo de cuatro cifras, a la tarjeta CA, que se descifra en la etapa E1.
Inmediatamente, el procesador PR de la tarjeta transforma el código confidencial secreto CS en un código secreto transformado CST=FT (CS) según la función de transformación predeterminada FT, de los que varios ejemplos se describirán en detalle en el resto de la descripción. En la etapa E3, el código secreto transformado CST está escrito en la memoria no volátil MNV de la tarjeta CA. De este modo, el código secreto no está conservado en claro en la
tarjeta.
Así pues, la transformación del código confidencial secreto, el cual estaba constantemente contendido en memoria no volátil en las tarjetas con chip de la técnica anterior, en el código secreto transformado CST se ejecuta antes de cualquier presentación del código presentado CP a la tarjeta, y el código secreto transformado CST, y no el código secreto, se conserva en memoria no volátil MNV.
Las etapas E4 a E7 se efectúan después de haber introducido la tarjeta CA en el lector LE del Terminal de acogida TE, que de este modo está conectado por la conexión eléctrica LI y el bus interno BU al microcontrolador de la tarjeta CA.
Durante cada utilización de la tarjeta, un código presentado CP, que debe ser normalmente idéntico al código secreto, se entra en el teclado TL del terminal TE en la etapa E4 con objeto de verificar el código presentado en la tarjeta CA. Ya sea a medida de que se vayan entrando las cifras del código presentado, por ejemplo en número de cuatro, ya sea en bloque, el Terminal TE transmite el código presentado CP a la tarjeta CA a través de la conexión LI y el bus BU con el fin de que se escriba en la memoria RAM MA, en la etapa E5.
En la siguiente etapa E6, el procesador PR transforma el código presentado CP inscrito en la memoria MA en un código presentado transformado CPT según la función de transformación FT implementada en la tarjeta CA.
Finalmente, el procesador PR lee el código secreto transformado CST en la memoria MNV y lo compara con el código presentado transformado CPT que acaba de determinarse, en la etapa E7. Si los códigos comparados CST y CPT son idénticos, las funcionalidades de la tarjeta CA son accesibles, por ejemplo para acceder a un servicio, tal como un servicio de pago o un servicio telefónico. En caso contrario, cuando los códigos comparados CST y CPT son diferentes, pueden efectuarse otros intentos de composición de otro código presentado en número limitado.
Según una primera realización, la función de transformación del código FT es un troceado T. Por ejemplo, la palabra de cuatro bits de cada una de las cuatro cifras, o más generalmente del octeto de uno de los caracteres, del código confidencial CS, CP se transforma por troceado en varios octetos, típicamente algunas decenas de octetos, y el código transformado CST, CPT, comprende cuatro ejemplos de algunas decenas de octetos.
Además, la función de troceado T no comprende una función recíproca, es decir es irreversible. Esta función se denomina igualmente "función con dirección única" que es una función relativamente fácil de calcular pero considerablemente más difícil de invertir. En otros términos, no existe ninguna función H^{-1}, en la que resulte muy difícil encontrar una función H^{-1} tal como:
CF = H^{-1} [H (CF)],
en donde CF representa un código confidencial cualesquiera.
El carácter con dirección única de la función de troceado prohíbe de este modo descifrar el código transformado cst = H (CS) memorizado en la tarjeta CA para descubrir el código secreto de origen CS.
El troceado permite liberarse principalmente de la búsqueda de un código confidencial en cada carácter, es decir en cada octeto. El conocimiento de un carácter troceado no permite deducir las otras características del código secreto.
Según una segunda realización, la función de transformación del código FT se aplica en el código confidencial CS, CP y un número aleatorio NA. La función de transformación es por ejemplo una función lógica, tal como la función O-Exclusivo (XOR). El código transformado CST, CPT resulta de la aplicación del código confidencial respectivo CS, CP y de un número aleatorio NA de la función de transformación FT. El número aleatorio NA se produce por un generador aleatorio asociado al procesador PR, una vez por todas para la creación de la tarjeta CA, durante la atribución y la escritura del código secreto CS en la etapa E1. El procesador PR transforma el código secreto CS en un código secreto transformado CST = FT (CS, NA) en la etapa E2 para memorizarlo con el número aleatorio NA en la memoria MNV.
Por ejemplo, la función de transformación FT puede ser una combinación del código confidencial CS, CP y del número aleatorio NA. El número aleatorio NA puede ser un elemento de diversificación del código secreto CS.
En la etapa E6, el procesador PR lee no solamente el código presentado CP en la memoria MA pero asimismo el número aleatorio NA en la memoria MNV de forma a producir el código presentado transformado CPT = FT (CP, NA).
Según esta segunda realización, dos tarjetas con chip asociadas a códigos confidenciales secretos idénticos están asociadas con números aleatorios diferentes. Los números aleatorios son a priori diferentes en las dos tarjetas, los efectos de la manipulación de estos números aleatorios no pueden servir a caracterizar las tarjetas. En efecto, el análisis del consumo eléctrico de la tarjeta con chip no es representativo del código secreto en claro, pero es representativo del código secreto transformado según una transformación conocida por el agresor. A partir del código secreto transformado CST no puede deducirse la información sobre el código secreto CS porque el agresor desconoce el elemento de diversificación NA.
Preferentemente, a cada código secreto CS corresponde un número aleatorio respectivo NA. De este modo, ventajosamente, cuando se modifica el código secreto asociado a una tarjeta, el número aleatorio NA también se modifica. Por ejemplo, si se invierten dos cifras de un código secreto, los dos números aleatorios correspondientes a estas dos versiones de código secreto son diferentes. Esta variante permite evitar reconocer un número aleatorio en una primera tarjeta gracias a la manipulación del número aleatorio en otra tarjeta asociada a un código confidencial común con la primera tarjeta.
Según una tercera realización, el número NA se genera inicialmente y el generador aleatorio produce un segundo número aleatorio NA' asociado al procesador PR en la tarjeta CA, antes de la transformación del código presentado CP, en cada verificación del código presentado CP. Las etapas E6 y E7 se remplazan entonces por etapas E6a y E7a que también se muestran en la figura 2. Por una parte, la función de transformación se aplica al código secreto transformado CST memorizado previamente y al segundo código secreto transformado CST'= FT (CST, NA'). Por otra parte, la función de transformación se aplica una primera vez al código presentado recibido CP y al primer número aleatorio producido previamente NA para producir un código presentado transformado intermedio CPT'= FT (CP, NA), luego se aplica una segunda vez al código presentado transformado intermedio CPT y al segundo número aleatorio NA' para producir el código presentado transformado CPT' = FT (FT (CP, NA), NA') = FT (CPT, NA'). Después los códigos CST' y CPT' se comparan con la etapa E7a.
La tercera realización del proceso según el invento garantiza que en el seno de la tarjeta con chip, no haya nunca el mismo valor de código confidencial transformado CST', y por lo tanto que la verificación del código confidencial presentado CP no se ejecute nunca de la misma manera en la tarjeta con chip CA.
Por ejemplo, la función de transformación FT es un operador aritmético simple, tal como la adición, es decir:
CST'= CST + NA'
\;
con
\;
CST= CS + NA y NA
\;
en memoria
\;
MNV,
\;
y
\;
CPT = (CP + NA) + NA'.
Una cuarta realización próxima de la última variante expuesta anteriormente consiste después de la primera verificación del código presentado CP resultante de la comparación del código secreto transformado CST= FT (CS) y del código presentado transformado CPT= FT (CP), en memorizar el código secreto transformado CST y en aplicar para cada presentación del código presentado, la función de transformación de código FT al código secreto transformado anteriormente memorizado. Así pues, para una segunda presentación, el procesador PR compara los códigos transformados CST_{2}= FT (CST), el cual se memoriza, y CPT_{2}= FT (CPT), luego mediante una tercera presentación que sucede a una segunda verificación positiva compara los códigos transformados CST_{3}= FT (CST_{2}), el cual se memoriza, y CPT_{3}= FT (CPT_{2}) = FT (FT(CPT)= FT(FT(FT(CP))),y así sucesivamente en cada presentación del código presentado, el código secreto transformado CST, se memoriza y se compara con el código presentado transformado CPT_{i} = FT^{i} (CP) que resulta de las aplicaciones anteriores. Después de cada verificación, el valor del código secreto transformado que está memorizado en la memoria MNV es diferente de aquel que se memorizó en al verificación anterior.
En la cuarta realización, como se demuestra en las etapas E6b y E7b que reemplazan las etapas E6 y E7 en la figura 2 a partir de la segunda presentación, el procesador PR de la i^{e} presentación del código CP en la tarjeta CA aplica i veces la función FT al código presentado CP lo cual puede ser relativamente largo; por ejemplo la función FT es una función módulo de un número primero P.
Con el fin de reducir el tiempo de cálculo de la función FT^{i}, la función FT puede ser la función exponente módulo del número entero predeterminado P. De este modo, en cada presentación del código presentado, se reemplazan las aplicaciones precedentes de la función de transformación al código presentado CP en el procesador PR por una aplicación de la función de transformación del último código presentado CPT_{i-1} y del código presentado CP con el fin de producir el código presentado transformado CPT_{i} = FT(CPT_{i-1}, CP) = FT [ (CPT)^{i-1}, CP] módulo P, en vez de aplicar i veces la función FT al código presentado CP. Luego cuando al final de la comparación (etapa E7b) los códigos transformados comparados CST_{i} y CPT_{i} son idénticos, estos se memorizan en la memoria MNV en vez de los códigos precedentes CST_{i-1} y CPT_{i-1}.
Según otro ejemplo, la función de transformación de código FT puede ser una función aritmética simple, tal como la adición CPT_{i} = (CP + CPT_{i-1}) módulo P.
Como variante, en vez de memorizar el código presentado transformado CPT_{i}, las aplicaciones de la función de transformación al código presentado CP se reemplazan por una aplicación de una función de transformación equivalente a la i^{e} iteración FT_{i} de la función de transformación con objeto de producir un código presentado transformado CPT{i}. Esta variante concierne así pues una función FT_{i} dependiente directamente del índice i y del código presentado. Por ejemplo, la función FT es la adición de un número aleatorio NA, ya sea CST_{i} = CST_{i-1} + NA, y CPT_{i} = CP + i. NA.
Al final de estas dos transformaciones, el número i de iteraciones se memoriza con el código secreto transformado CPT_{i} resultante de la aplicación anterior en la memoria MNV, y el código presentado transformado CPT_{i} se compara con el código secreto transformado memorizado CST_{i}.
Al igual que para la producción de un número aleatorio a cada presentación del código CP, la determinación de los códigos transformados CPT_{i} y CST_{i} de manera diferente a la de los códigos transformados CPT_{i-1} y CST_{i-1} de la presentación precedente anula toda deducción del código transformado a partir del código transformado anterior que depende del número de presentaciones del código presentado. De este modo, a cada presentación, el código secreto transformado memorizado es diferente de aquel memorizado en la presentación anterior.
Según una quinta realización, cada código se considera como compartido en varias partes, tal como cuatro octetos de cifras por ejemplo. Al principio del proceso, el código secreto CS se transforma aplicándole una función de transformación de código FT de manera a cambiar el orden sucesivo de sus octetos, ya sea por ejemplo el código secreto transformado CST resultante de la permutación predeterminada siguiente: CST= FT[CS(OS1,OS2, OS3, OS4)]= (OS2, OS4, OS1, OS3).
Durante la primera presentación del código presentado CP, la misma permutación se aplica al código CP modificando el orden de sus octetos OP1 a OP4: CPT= FT[CP(OP1, OP2, OP3, OP4)]= (OP2, OP4, OP1, OP3).
En el transcurso de la primera comparación de la etapa E7, se comparan los segundos octetos OS2 y OP2, luego se comparan los cuartos octetos OS4 y OP4, los primeros octetos OS1 y OP1 se comparan y por último los terceros octetos OS3 y OP3 se comparan. Si una de las cuatro comparaciones de octetos es negativa, se rechazará el acceso al servicio de la tarjeta.
En el momento de la segunda verificación del código presentado que sucede a una primera utilización de la tarjeta, la función de transformación FT modifica de nuevo la orden de los octetos transformados comenzando por los cuartos octetos OS4. De este modo el código secreto transformado durante esta segunda presentación pasa a ser el siguiente: CST = FT[CP(OS2, OS4, OS1, OS3)] = (OS4, OS3, OS2, OS1).
El código presentado está sometido entonces a dos permutaciones para obtener el código presentado transformado siguiente: CPT = FT[CP(OP1, OP2, OP3, OP4)] = (OP4, OP3, OP2, OP1).
De este modo, a cada presentación del código presentado CP, se aplica la permutación al código secreto transformado CST resultante de la última presentación, y la permutación se aplica igualmente al código presentado CP, pero un número de veces igual al número de permutaciones/presentaciones precedentes del código presentado. Las partes correspondientes de los códigos secreto y presentado permutados CST, CPT se comparan dos por dos y el código secreto permutado CST se memoriza en la tarjeta CA cuando los códigos comparados CST y CPT son idénticos.
De este modo, los octetos OS1 a OS4 del código secreto no se manipulan nunca en el mismo orden durante las dos verificaciones sucesivas del código presentado.
Con el fin de aumentar la seguridad, la función de transformación FT a la que se aplica el código secreto CS en la etapa E2 o CST en la etapa E6a, o bien a la que se aplica cualquier otro código secreto transformado CST_{i-1} de la etapa E6b según las realizaciones anteriores, es homomórfico de la función FT, anotada a continuación FT', a la que se aplica el código presentado CP de la etapa E6 o de la etapa E6a, o CPT_{i-1} de la etapa E6b.
Cada proveedor de tarjeta puede elegir su propia función de transformación FR homomórfica de una función predeterminada FT', o bien un par de funciones [ET, ET'] lo que le protege contra las agresiones.
Según un primer ejemplo, las funciones FT y FT' son elevaciones al cuadrado de la suma de un código confidencial y de un número aleatorio NA. Durante la puesta en servicio de la tarjeta de la etapa E2 o E62, o durante un cambio del código secreto asociado a la tarjeta, el código secreto CS está sometido a la siguiente transformación FT:
CST = FT \ (CS, \ NA) = CS^{2} + 2 \ CS.NA + NA^{2},
Es decir, el código secreto transformado CST resulta de los cálculos sucesivos siguientes: cálculo de CS al cuadrado, cálculo del doble producto 2 CS.NA, cálculo de NA al cuadrado, y adición de los tres productos anteriores.
La función FT' aplicada al código presentado CP es igualmente una elevación al cuadrado de la suma de este código con el número aleatorio NA. No obstante, el cálculo del código presentado transformado CPT sigue un proceso diferente del cálculo del código secreto por la transformación FT. De este modo, el código presentado CP se calcula según la fórmula:
CPT= FT' \ (CP, \ NA) = (CP + NA)^{2},
Comenzando a calcular la suma CP + NA, y luego multiplicando esta suma por sí misma para obtener el código presentado CPT.
Así el proceso de cálculo del código presentado CPT de la etapa E6 es diferente del código secreto CST de la etapa E2 y por consiguiente de las olas pequeñas correspondientes a esas dos transformaciones son diferentes.
Según un segundo ejemplo, la función FT aplicada en el código secreto CS es tal que CST= NB^{CS} x NB^{NA}, es decir se aplica calculando el producto del número NB por sí mismo CS veces y el producto de NB por sí mismo NA veces, y multiplicando los dos productos anteriores. El código presentado transformado CPT se calcula según la fórmula CPT= FT' (CP, NA) = NB^{CP+NA}, es decir calculando el producto de NB por sí mismo CP+NA veces. NB designa un número cualesquiera que se transmite con el código secreto CS y el número aleatorio NA de la tarjeta CA para que se escriba en la memoria MNV, de la etapa E3.
En la descripción anterior, se comprenderá que la tarjeta con chip cubre todos los tipos conocidos de tarjeta con chip, dichos igualmente tarjetas con microcontrolador, como las tarjetas con contacto o sin contacto enunciadas a continuación a título de ejemplo no limitativo: tarjetas de crédito (Tarjeta Azul), tarjetas de pago, tarjetas telefónicas, tarjetas SIM, tarjetas "adicionales", tarjetas de central de compra, tarjetas de juego, etc. Generalmente, el invento concierne no solamente las tarjetas con chip sino asimismo otros objetos electrónicos portátiles designados indiferentemente por medios de tratamiento de datos electrónicos, tales como asistentes u organizadores electrónicos, monederos electrónicos, fichas, calculadoras, etc.
El Terminal de acogida del medio de tratamiento de datos electrónicos puede ser por ejemplo del tipo Terminal informático, ordenador personal, principalmente portátil, Terminal bancario, Terminal de punto de venta, Terminal radiotelefónico, dispositivo de control de acceso a un local o a una caja de caudales, etc. El medio de acogida puede estar alejado del medio de tratamiento de datos, estos están conectados por cualquier otro medio de transmisión de datos.
El código confidencial según el invento se designa igualmente en ciertos contextos como contraseña (password), o código secreto, o bien número de identidad personal PIN (Personal Identification Number) o CHV (Card Holder Verification) o identificador PTI (Personal Telecomunication Identifier) principalmente para tarjetas SIM de Terminal radiotelefónico.
El código confidencial recibido es por lo general un código alfanumérico. Puede aplicarse al medio de tratamiento de datos, tarjeta con chip u objeto electrónico portátil, por cualquier otro medio de entrada de datos conocido, otro que un teclado con teclas, por ejemplo por la voz o reconocimiento vocal, o bien por reconocimiento de una firma biométrica, por ejemplo como menos una huella digital.

Claims (11)

1. Proceso para acceder a un medio de tratamiento de datos (CA) asociado a un código confidencial secreto (CS) y accesible aplicándole un código confidencial presentado (CP) por un medio de acogida (TE), caracterizado por comprender las siguientes etapas:
- previamente, implementación (E1) de una función de transformación del código (FT) en el medio de tratamiento (CA); y seguidamente transformación (E2) del código secreto (CS) en un código secreto transformado (CST) según la función de transformación (FT) y memorización (E3) del código secreto transformado (CST) en el medio de tratamiento; y
- en cada utilización del medio de tratamiento (CA), transformación (E6) del código presentado (CP) en un código presentado transformado (CPT) por la función de transformación implementada en el medio de tratamiento, y comparación en el medio de tratamiento (E7) del código secreto transformado con el código presentado trans-
formado.
2. Proceso conforme a la reivindicación 1, según la cual la función de transformación es irreversible.
3. Proceso conforme a la reivindicación 1 ó 2, según la cual la función de transformación es un troceado.
4. Proceso conforme a cualquiera de las reivindicaciones 1 a 3, según el cual cada código transformado (CST, CPT) resulta de la aplicación del código confidencial respectivo (CS, CP) y de un número aleatorio (NA) a la función de transformación (FT), el número aleatorio (NA) se prememoriza con el código secreto transformado (CST) en el medio de tratamiento (CA).
5. Proceso conforme a la reivindicación 4, según el cual dos medios de tratamiento de datos (CA) asociados a códigos confidenciales secretos (CS) idénticos son asociados a números aleatorios diferentes (NA).
6. Proceso conforme a la reivindicación 4 ó 5, según el cual el número aleatorio (NA) se modifica cuando el código secreto (CS) asociado al medio de tratamiento (CA) está modificado.
7. Proceso conforme a cualquiera de las reivindicaciones 1 a 3, según el cual el código secreto transformado (CST) memorizado previamente resulta de la aplicación del código secreto (CS) y de un primer número aleatorio (NA) de la función de transformación (FT), un segundo número aleatorio (NA') se produce (E6a) en el medio de tratamiento (CA) antes de cada transformación del código presentado, luego se determina un segundo código secreto transformado (CST') aplicando el código secreto transformado memorizado (CST) y el segundo número aleatorio (NA') de la función de transformación, y el código presentado transformado (CPT') se determina aplicando el código presentado (CP) y el primer número aleatorio (NA) de la función de transformación para producir un código presentado transformado intermedio (CPT) y aplicando el código presentado transformado intermedio (CPT) y el segundo número aleatorio de la función de transformación, el segundo código secreto transformado (CST') se compara con el código presentado transformado (CPT').
8. Proceso conforme a cualquiera de las reivindicaciones 1 a 6, según el cual para cada presentación del código presentado, se ejecutan las siguientes etapas:
- aplicación (E6b) de la función de transformación (FT) al código secreto transformado precedentemente memorizado (CST_{i-1}),
- aplicaciones (E6b) de la función de transformación (FT) al código presentado (CP) tantas veces como el número de presentaciones anteriores del código presentado,
- comparación (E7b) del código secreto transformado (CST_{i} y del código presentado transformado (CPT_{i}) resultante de las aflicciones anteriores, y
- memorización del código secreto transformado (CST_{i}) en el medio de tratamiento (CA).
9. Proceso conforme a la reivindicación 8, según el cual las aplicaciones de la función de transformación al código presentado (CP) se reemplazan por una aplicación de una función de transformación equivalente a la i^{e} iteración de la función de transformación (FT) con el fin de producir un código presentado transformado CPT_{i} para comparar (E7b) con el código secreto transformado (CST_{i}), y el número i de iteraciones se memoriza con el código secreto transformado (CPT_{i}) resultante de la aplicación precedente en el medio de tratamiento (CA).
10. Proceso conforme a cualquiera de las reivindicaciones 1 a 3, según la cual la función de transformación (FT) consiste en repartir cada código (CS, CP) en varias partes y en aplicar una permutación predeterminada en partes del código, y según la cual a cada presentación del código presentado (CP), la permutación se aplica al código secreto transformado (CST) resultante de la última presentación, la permutación se aplica al código presentado un número de veces igual al número de permutaciones anteriores del código presentado, las partes correspondientes de los códigos secreto y presentado permutados (CST, CPT) se comparan dos por dos, y el código secreto permutado (CST) se memoriza en el medio de tratamiento (CA).
11. Proceso conforme a cualquiera de las reivindicaciones 1 a 10, según el cual la función de transformación (FT) a la que se aplica el código secreto (CS) es homomórfica de la función de transformación (FT') a la que se aplica el código presentado (CP).
ES01947559T 2000-06-20 2001-06-20 Proceso para acceder a un medio de tratamiento de datos. Expired - Lifetime ES2263635T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0007886 2000-06-20
FR0007886A FR2810481B1 (fr) 2000-06-20 2000-06-20 Controle d'acces a un moyen de traitement de donnees

Publications (1)

Publication Number Publication Date
ES2263635T3 true ES2263635T3 (es) 2006-12-16

Family

ID=8851469

Family Applications (1)

Application Number Title Priority Date Filing Date
ES01947559T Expired - Lifetime ES2263635T3 (es) 2000-06-20 2001-06-20 Proceso para acceder a un medio de tratamiento de datos.

Country Status (8)

Country Link
US (1) US8583934B2 (es)
EP (1) EP1297501B1 (es)
CN (1) CN1279497C (es)
AU (1) AU2001269218A1 (es)
DE (1) DE60119111T2 (es)
ES (1) ES2263635T3 (es)
FR (1) FR2810481B1 (es)
WO (1) WO2001099064A1 (es)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2790844B1 (fr) * 1999-03-09 2001-05-25 Gemplus Card Int Procede et dispositif de surveillance du deroulement d'un programme, dispositif programme permettant la surveillance de son programme
US20040230489A1 (en) * 2002-07-26 2004-11-18 Scott Goldthwaite System and method for mobile payment and fulfillment of digital goods
US7336973B2 (en) * 2002-10-30 2008-02-26 Way Systems, Inc Mobile communication device equipped with a magnetic stripe reader
US20040127256A1 (en) * 2002-07-30 2004-07-01 Scott Goldthwaite Mobile device equipped with a contactless smart card reader/writer
JP2007514361A (ja) * 2003-12-15 2007-05-31 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ セキュリティ関連のアプリケーションのための使用認証装置
DE102004008179A1 (de) * 2004-02-19 2005-09-01 Giesecke & Devrient Gmbh Verfahren zum sicheren Betrieb eines tragbaren Datenträgers
SE525104C2 (sv) * 2004-02-24 2004-11-30 Tagmaster Ab Förfarande för behörighetsgivande
US20060048236A1 (en) * 2004-09-01 2006-03-02 Microsoft Corporation Licensing the use of software to a particular user
US7552341B2 (en) * 2004-09-01 2009-06-23 Microsoft Corporation Licensing the use of software on a particular CPU
US20110071949A1 (en) * 2004-09-20 2011-03-24 Andrew Petrov Secure pin entry device for mobile phones
US20060064391A1 (en) * 2004-09-20 2006-03-23 Andrew Petrov System and method for a secure transaction module
FR2926912B1 (fr) * 2008-01-30 2010-03-05 Sagem Securite Procede de verification d'un code
US20150052616A1 (en) * 2013-08-14 2015-02-19 L-3 Communications Corporation Protected mode for securing computing devices

Family Cites Families (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2496294B1 (fr) * 1980-12-15 1987-01-02 Thomson Csf Dispositif protege d'authentification des utilisateurs d'un terminal de transmission de messages et systeme de transactions comportant de tels dispositifs
FR2601476B1 (fr) * 1986-07-11 1988-10-21 Bull Cp8 Procede pour authentifier une donnee d'habilitation externe par un objet portatif tel qu'une carte a memoire
EP0281058B1 (de) * 1987-03-04 1993-02-03 Siemens Nixdorf Informationssysteme Aktiengesellschaft Datenaustauschsystem
CH675169A5 (es) * 1988-02-22 1990-08-31 Asea Brown Boveri
FR2700430B1 (fr) * 1992-12-30 1995-02-10 Jacques Stern Procédé d'authentification d'au moins un dispositif d'identification par un dispositif de vérification et dispositif pour sa mise en Óoeuvre.
US5394471A (en) * 1993-09-17 1995-02-28 Bell Atlantic Network Services, Inc. Method and system for proactive password validation
US5590199A (en) * 1993-10-12 1996-12-31 The Mitre Corporation Electronic information network user authentication and authorization system
FR2714780B1 (fr) * 1993-12-30 1996-01-26 Stern Jacques Procédé d'authentification d'au moins un dispositif d'identification par un dispositif de vérification.
US5475756A (en) * 1994-02-17 1995-12-12 At&T Corp. Method of authenticating a terminal in a transaction execution system
US5778071A (en) * 1994-07-12 1998-07-07 Information Resource Engineering, Inc. Pocket encrypting and authenticating communications device
US5629981A (en) * 1994-07-29 1997-05-13 Texas Instruments Incorporated Information management and security system
US5588056A (en) * 1994-10-25 1996-12-24 Bell Atlantic Network Services, Inc. Method and system for generating pronounceable security passwords
US5604801A (en) * 1995-02-03 1997-02-18 International Business Machines Corporation Public key data communications system under control of a portable security device
US5664016A (en) * 1995-06-27 1997-09-02 Northern Telecom Limited Method of building fast MACS from hash functions
US5623545A (en) * 1995-08-31 1997-04-22 National Semiconductor Corporation Automatic data generation for self-test of cryptographic hash algorithms in personal security devices
US5796832A (en) * 1995-11-13 1998-08-18 Transaction Technology, Inc. Wireless transaction and information system
US5608801A (en) * 1995-11-16 1997-03-04 Bell Communications Research, Inc. Efficient cryptographic hash functions and methods for amplifying the security of hash functions and pseudo-random functions
US6038551A (en) * 1996-03-11 2000-03-14 Microsoft Corporation System and method for configuring and managing resources on a multi-purpose integrated circuit card using a personal computer
US5778069A (en) * 1996-04-10 1998-07-07 Microsoft Corporation Non-biased pseudo random number generator
US6088450A (en) * 1996-04-17 2000-07-11 Intel Corporation Authentication system based on periodic challenge/response protocol
US5751812A (en) * 1996-08-27 1998-05-12 Bell Communications Research, Inc. Re-initialization of an iterated hash function secure password system over an insecure network connection
US6148094A (en) * 1996-09-30 2000-11-14 David J. Kinsella Pointing device with biometric sensor
KR100213188B1 (ko) * 1996-10-05 1999-08-02 윤종용 사용자 인증 장치 및 방법
US5796827A (en) * 1996-11-14 1998-08-18 International Business Machines Corporation System and method for near-field human-body coupling for encrypted communication with identification cards
US5887131A (en) * 1996-12-31 1999-03-23 Compaq Computer Corporation Method for controlling access to a computer system by utilizing an external device containing a hash value representation of a user password
US6021201A (en) * 1997-01-07 2000-02-01 Intel Corporation Method and apparatus for integrated ciphering and hashing
JP3712834B2 (ja) * 1997-06-24 2005-11-02 アルプス電気株式会社 キーレスエントリー装置
US6240184B1 (en) * 1997-09-05 2001-05-29 Rsa Security Inc. Password synchronization
US6061449A (en) * 1997-10-10 2000-05-09 General Instrument Corporation Secure processor with external memory using block chaining and block re-ordering
US6453416B1 (en) * 1997-12-19 2002-09-17 Koninklijke Philips Electronics N.V. Secure proxy signing device and method of use
ATE325478T1 (de) * 1998-01-02 2006-06-15 Cryptography Res Inc Leckresistentes kryptographisches verfahren und vorrichtung
US8346663B2 (en) * 1998-01-30 2013-01-01 Citicorp Development Center, Inc. Method and system of contactless interfacing for smart card banking
US6370649B1 (en) * 1998-03-02 2002-04-09 Compaq Computer Corporation Computer access via a single-use password
US6470454B1 (en) * 1998-03-31 2002-10-22 International Business Machines Corporation Method and apparatus for establishing computer configuration protection passwords for protecting computer configurations
US6195542B1 (en) * 1998-07-31 2001-02-27 Avaya Technology Corp. Identification by a central computer of a wireless telephone functioning as a transaction device
US6970183B1 (en) * 2000-06-14 2005-11-29 E-Watch, Inc. Multimedia surveillance and monitoring system including network configuration
US6460138B1 (en) * 1998-10-05 2002-10-01 Flashpoint Technology, Inc. User authentication for portable electronic devices using asymmetrical cryptography
DE19850665A1 (de) * 1998-11-03 2000-05-04 Siemens Ag Verfahren und Anordnung zur Authentifikation von einer ersten Instanz und einer zweiten Instanz
US6257486B1 (en) * 1998-11-23 2001-07-10 Cardis Research & Development Ltd. Smart card pin system, card, and reader
AU7346800A (en) * 1999-09-02 2001-03-26 Automated Business Companies Communication and proximity authorization systems
US6980566B2 (en) * 2000-03-10 2005-12-27 Lightwaves Systems, Inc. Method for routing data packets using an IP address based in GEO position
EP1120724A1 (de) * 2000-01-24 2001-08-01 Scheidt & Bachmann Gmbh Verfahren zur automatisierten Abwicklung von Zuordnungsvorgängen in bezug auf Waren- und/oder Dienstleistungsangebote
ATE311063T1 (de) * 2000-02-08 2005-12-15 Swisscom Mobile Ag Vereinter einloggungsprozess
US7089595B1 (en) * 2000-03-31 2006-08-08 Intel Corporation Device and method for disabling an override hardware pin assertion
US6937732B2 (en) * 2000-04-07 2005-08-30 Mazda Motor Corporation Audio system and its contents reproduction method, audio apparatus for a vehicle and its contents reproduction method, portable audio apparatus, computer program product and computer-readable storage medium
US7031945B1 (en) * 2000-07-24 2006-04-18 Donner Irah H System and method for reallocating and/or upgrading and/or rewarding tickets, other event admittance means, goods and/or services
JP2002117377A (ja) * 2000-10-04 2002-04-19 Nec Corp 位置情報を用いた、個人認証システム、カードによる認証システム及び暗証番号によるドアロックシステム
EP1364494B1 (en) * 2001-01-30 2009-12-02 Broadcom Corporation Method for adding a new device to a wireless network
US20020123325A1 (en) * 2001-03-01 2002-09-05 Cooper Gerald M. Method and apparatus for increasing the security of wireless data services
US20020143634A1 (en) * 2001-03-30 2002-10-03 Kumar K. Anand Wireless payment system
US6774796B2 (en) * 2001-08-01 2004-08-10 Motorola, Inc. Master authenticator
US20030115142A1 (en) * 2001-12-12 2003-06-19 Intel Corporation Identity authentication portfolio system

Also Published As

Publication number Publication date
DE60119111D1 (de) 2006-06-01
EP1297501B1 (fr) 2006-04-26
US8583934B2 (en) 2013-11-12
CN1437739A (zh) 2003-08-20
FR2810481B1 (fr) 2003-04-04
FR2810481A1 (fr) 2001-12-21
WO2001099064A1 (fr) 2001-12-27
EP1297501A1 (fr) 2003-04-02
CN1279497C (zh) 2006-10-11
AU2001269218A1 (en) 2002-01-02
US20030188170A1 (en) 2003-10-02
DE60119111T2 (de) 2007-01-11

Similar Documents

Publication Publication Date Title
ES2263635T3 (es) Proceso para acceder a un medio de tratamiento de datos.
CN106452777B (zh) 用于生成随机且唯一的代码的电子设备和方法
ES2202344T3 (es) Procedimiento de carga de una zona de memoria protegida de un dispositivo de tratamiento de la informacion y dispositivo asociado.
CN1344396B (zh) 便携式电子的付费与授权装置及其方法
US9129270B2 (en) Portable E-wallet and universal card
TW384593B (en) Method and apparatus for user authentication
CN1758594B (zh) 生物测量认证装置和终端
MX2007013218A (es) Tarjeta de credito/debito con contrasena de una sola vez.
US10503936B2 (en) Systems and methods for utilizing magnetic fingerprints obtained using magnetic stripe card readers to derive transaction tokens
ES2336543T3 (es) Tratamiento de datos con una clave.
CN103336977A (zh) 车辆电子信息卡安全保护系统及方法
CN114743033A (zh) 一种身份核验方法、装置及设备
ES2240766T3 (es) Procedimiento criptografico para la proteccion de un chip electronico contra el fraude.
ES2231516T3 (es) Seguridad del acceso por codigo secreto a un medio de tratamiento de datos.
KR101606540B1 (ko) 오티피 스마트 카드 장치
ES2772686T3 (es) Procedimiento y dispositivo para el almacenamiento seguro de documentos de identificación electrónicos en un terminal móvil
ES2673187T3 (es) Procedimiento de detección de tarjetas no auténticas con microprocesador, tarjeta con microprocesador, terminal lector de tarjetas y programas correspondientes
Ratha et al. Smartcard based authentication
JP2008527488A (ja) Pinコードを入力する入力要素をもつカード及びpinコードを入力する方法
ES2631002A2 (es) Dispositivo para facilitar transacciones financieras, procedimiento e instalación correspondientes
JPS63136296A (ja) 個人認証用カ−ド
CN101179373A (zh) 可视智能密码钥匙
KR102196347B1 (ko) 전자 결제 시스템 및 그 동작 방법
CN106062800A (zh) 用于交易、访问控制等的认证的系统、设备以及方法
ES2792986T3 (es) Método y sistema para comunicación de un terminal con un elemento seguro