ES2624298T3 - Procedimiento para operar un sistema de comunicaciones - Google Patents

Procedimiento para operar un sistema de comunicaciones Download PDF

Info

Publication number
ES2624298T3
ES2624298T3 ES13801984.9T ES13801984T ES2624298T3 ES 2624298 T3 ES2624298 T3 ES 2624298T3 ES 13801984 T ES13801984 T ES 13801984T ES 2624298 T3 ES2624298 T3 ES 2624298T3
Authority
ES
Spain
Prior art keywords
transponder
reading device
time period
icc
command
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
ES13801984.9T
Other languages
English (en)
Inventor
Dirk Wacker
Ullrich Martini
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.)
Giesecke and Devrient GmbH
Original Assignee
Giesecke and Devrient GmbH
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 Giesecke and Devrient GmbH filed Critical Giesecke and Devrient GmbH
Application granted granted Critical
Publication of ES2624298T3 publication Critical patent/ES2624298T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/10009Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves
    • G06K7/10257Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves arrangements for protecting the interrogation against piracy attacks
    • G06K7/10267Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation sensing by radiation using wavelengths larger than 0.1 mm, e.g. radio-waves or microwaves arrangements for protecting the interrogation against piracy attacks the arrangement comprising a circuit inside of the interrogation device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/0008General problems related to the reading of electronic memory record carriers, independent of its reading method, e.g. power transfer
    • 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
    • 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)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Toxicology (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Electromagnetism (AREA)
  • Computer Hardware Design (AREA)
  • Lock And Its Accessories (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Procedimiento para operar un sistema de comunicaciones que comprende un transpondedor (12), con al menos una antena, en particular en la forma de un soporte de datos portátil, así como un dispositivo de lectura (10), con al menos una antena, en el que el dispositivo de lectura (10) está configurado para intercambiar datos con el transpondedor (12), en el que un intercambio de datos entre el transpondedor (12) y el dispositivo de lectura (10) es posible dentro de un radio de alcance predeterminado, comprendiendo las siguientes etapas de procedimiento: - enviar un comando (30) desde el dispositivo de lectura (10) al transpondedor (12); - procesar el comando (30) en el transpondedor (12), generando una respuesta (34) al comando (30) por el transpondedor (12); - recibir la respuesta (34) del transpondedor (12) en el dispositivo de lectura (10); - medir el periodo de tiempo (T') entre la etapa de enviar y la etapa de recibir en el dispositivo de lectura (10), en el que la etapa de procesar se efectúa en un periodo de tiempo específico de tarjeta (T_icc) y el periodo de tiempo específico de tarjeta (T_icc) especifica cuánto tiempo utiliza el transpondedor (12) en recibir y procesar un comando (30) recibido desde el dispositivo de lectura (10) así como en enviar una respuesta correspondiente (34); caracterizado por que: el periodo de tiempo específico de tarjeta (T_icc) es transmitido en la respuesta (34) del transpondedor (12) al dispositivo de lectura (10) y - el periodo de tiempo medido (T') es evaluado en el dispositivo de lectura (10), en el que para evaluar el tiempo medido (T') se utiliza el periodo de tiempo específico de tarjeta (T_icc).

Description

5
10
15
20
25
30
35
40
45
50
55
60
DESCRIPCION
Procedimiento para operar un sistema de comunicaciones
La invencion se refiere a un procedimiento para operar un sistema de comunicaciones. El sistema de comunicaciones comprende un transpondedor con al menos una antena. El transpondedor puede estar disenado en particular en la forma de un soporte de datos portatil con forma de tarjeta. Ademas, el sistema de comunicaciones comprende un dispositivo de lectura con al menos una antena, en el que el dispositivo de lectura esta configurado para intercambiar datos con el transpondedor. Dentro de un rango predeterminado es posible un intercambio de datos entre el transpondedor y el dispositivo de lectura. Para asegurar la comunicacion ante un ataque de transmision (“rely-attack”) se efectua una medicion y evaluacion por el dispositivo de lectura del tiempo de transmision de un comando desde el dispositivo de lectura al transpondedor y de recepcion de una respuesta correspondiente del transpondedor.
Para evitar un ataque de transmision puede llevarse a cabo una medicion del tiempo de propagacion de senal. El tiempo total de propagacion se compone del tiempo de propagacion de una senal (trayecto de transmision de un comando y trayecto de recepcion de una respuesta) junto con el tiempo para procesar y recibir el comando y para emitir la respuesta. El tiempo total de propagacion no puede exceder por tanto un determinado valor maximo.
Para la verificacion, se conoce tambien a traves del denominado protocolo de limitacion de distancia (“distance bounding protocol”) verificar un llmite maximo de la distancia flsica entre una unidad de verificacion (verificador V) y una unidad de prueba (probador P). El procedimiento se basa en la evaluacion del tiempo de retardo entre la emision de una prueba (“challenge”) y la recepcion de una respuesta correspondiente a la misma. El tiempo de retardo permite a la unidad de verificacion calcular un llmite maximo de la distancia de comunicacion. El procedimiento se basa en el hecho de que las ondas electromagneticas se propagan casi a la velocidad de la luz, pero nunca mas rapido.
En una variante de este protocolo, la unidad de verificacion, por ejemplo un dispositivo de lectura, y la unidad de verificacion, por ejemplo un transpondedor, pueden compartir un secreto conjunto para una autentificacion de tipo prueba-respuesta. En este caso, el transpondedor no envla la respuesta al dispositivo de lectura. En lugar de ello, el dispositivo de lectura pregunta por una o varias partes de la respuesta de forma aleatoria, a las cuales el transpondedor debe responder dentro de un intervalo de tiempo. Este proceso puede repetirse para incrementar la seguridad. Esta variante se trata en principio de un protocolo criptografico, en el que unos resultados se deben presentar dentro de intervalos de tiempo especlficos. Esto hace que sea mas diflcil para un atacante llevar a cabo un denominado ataque de transmision, ya que el atacante no puede proporcionar los resultados de la prueba en el intervalo de tiempo especificado. En este caso se superan forzosamente los intervalos de tiempo especlficos.
En soportes de datos portatiles sin contacto de acuerdo con la norma ISO/IEC 14443 no es posible ejecutar el protocolo de limitacion de distancia descrito anteriormente, de manera que un sistema de comunicaciones de un soporte de datos y un dispositivo de lectura portatiles no puede llevar a cabo un reconocimiento de si los dos participates en la comunicacion estan realmente dispuestos dentro del rango de comunicacion de aproximadamente 10 cm o si, debido a un ataque de transmision, una comunicacion del soporte de datos tiene lugar con un dispositivo de lectura remoto, sin contacto, lo que no es deseable para el propietario del soporte de datos. Una realizacion del protocolo de limitacion de distancia resultarla en una extension de la ISO/IEC 14443 para ser capaz de implementar los requerimientos de tiempo tan precisos del comportamiento de la respuesta del soporte de datos.
La presente invencion plantea el objetivo de especificar un procedimiento para operar un sistema de comunicaciones con el que un ataque de transmision puede reconocerse de forma fiable o bien ser rechazado inmediatamente. En particular, este procedimiento debe estar previsto para que un dispositivo de lectura pueda valorar el procedimiento de tiempo de respuesta de un transpondedor. En este caso, no se requerirla en particular ningun cambio en la norma existente ISO/IEC 14443. Un objetivo adicional consiste en especificar un sistema de comunicaciones correspondiente.
A partir del documento US 2012/249296 A1 se deriva un procedimiento para asegurar una comunicacion NFC frente a ataques en el que un intercambio de informacion entre un dispositivo de lectura y una tarjeta sin contacto tiene lugar con una duracion determinada. De acuerdo con el procedimiento, una senal de retroalimentacion es encriptada por medio de un pseudoalgoritmo.
Este objetivo se logra mediante un procedimiento de acuerdo con las caracterlsticas de la reivindicacion 1 as! como con un sistema de comunicaciones de acuerdo con las caracterlsticas de la reivindicacion 13. A partir de las respectivas reivindicaciones dependientes se desprenden unas realizaciones ventajosas.
La invencion sugiere un metodo para operar un sistema de comunicaciones que comprende un transpondedor con al menos una antena, en particular en la forma de un soporte de datos portatil, as! como un dispositivo de lectura con al
5
10
15
20
25
30
35
40
45
50
55
60
menos una antena. El dispositivo de lectura esta configurado para intercambiar datos con el transpondedor. Un intercambio de datos entre el transpondedor y el dispositivo de lectura es posible con un alcance predeterminado. Se efectua una medicion y evaluacion del periodo de tiempo de un comando transmitido desde el dispositivo de lectura al transpondedor y de recepcion de una respuesta correspondiente del transpondedor por el dispositivo de lectura. De este modo, se consigue un procesamiento de un periodo de tiempo especlfico de tarjeta, en el que el periodo de tiempo especlfico de tarjeta especifica cuanto tiempo utiliza el transpondedor en recibir y procesar un comando recibido desde el dispositivo de lectura as! como en enviar una respuesta correspondiente. El periodo de tiempo medido es evaluado en el dispositivo de lectura utilizado el periodo de tiempo especlfico de tarjeta.
El procedimiento sugerido hace posible reconocer ataques de transmision. De este modo, no es necesario efectuar modificaciones en un transpondedor configurado segun la norma ISO/IEC 14443. El unico condicionante para llevar a cabo el procedimiento es que el dispositivo de lectura pueda efectuar una medicion del periodo de tiempo. El procedimiento permite obtener una precision elevada en el reconocimiento de un ataque de transmision.
De acuerdo con la invencion, el periodo de tiempo especlfico de tarjeta se transmite con la respuesta del transpondedor al dispositivo de lectura para ser evaluado. La evaluacion del periodo de tiempo especlfico de tarjeta permite al dispositivo de lectura decidir si un ataque de transmision esta llevandose a cabo o no.
De acuerdo con una realizacion adicional, el dispositivo de lectura mide el periodo de tiempo entre el envlo del comando y la recepcion de la respuesta del transpondedor, pudiendo inferirse un ataque de transmision por medio de la diferencia entre el periodo de tiempo medido y el periodo de tiempo especlfico de tarjeta. Cuando la diferencia es mayor que un valor llmite predeterminado entonces puede inferirse un ataque. De acuerdo con esta realizacion, el periodo de tiempo neto de la senal menos el tiempo de procesamiento en el transpondedor se utiliza en el procedimiento para decidir si un ataque de transmision tiene lugar o no.
De acuerdo con una realizacion apropiada adicional, el periodo de tiempo especlfico de tarjeta se transmite de forma segura desde el transpondedor al dispositivo de lectura. De este modo, es posible una transmision veraz del periodo de tiempo especlfico de tarjeta al dispositivo de lectura. La transmision segura puede tener lugar por medio de un mecanismo de encriptacion clasico como por ejemplo claves de sesion (“sesion keys”) o un procedimiento de intercambio de clave de tipo Diffie-Hellman o cualquier tipo de autentificacion segura. De este modo, un atacante de transmision no puede simplemente obtener el periodo de tiempo especlfico de tarjeta y emplearlo para eludir un procedimiento seguro.
En una realizacion adicional, el comando es una prueba (“challenge”) en el contexto de una autentificacion de tipo prueba-respuesta. El periodo de tiempo especlfico de tarjeta es transmitido entonces al dispositivo de lectura junto con la respuesta como contestacion.
Alternativa o adicionalmente, la prueba puede resultar en un cambio en el periodo de tiempo determinado por el dispositivo de lectura. De este modo, se consigue ventajosamente que el tiempo de ejecucion en el transpondedor pueda ser influenciado de forma controlada por la prueba transmitida. Para ello, se utilizan valores de datos como prueba. De este modo, los ataques de transmision pueden ser repelidos de forma muy efectiva en el caso de que un canal encriptado no pueda rechazar este tipo de ataque.
En una realizacion alternativa de la invencion, el procedimiento es realizado varias veces. El periodo de tiempo entre la etapa de envlo y la etapa de recepcion se determina respectivamente y se compara con un periodo de tiempo predeterminado como valor llmite. Este periodo de tiempo normalmente es el mlnimo periodo de tiempo especlfico de tarjeta para la orden, mas el tiempo requerido para la comunicacion. Alternativamente, en vez del periodo de tiempo mlnimo, se determina un valor medio de periodos de tiempo medidos y se emplea como periodo de tiempo predeterminado. Como valor medio es adecuado en particular tomar el numero medio o la media aritmetica o geometrica de los periodos de tiempo medidos.
El periodo de tiempo ideal es en este caso un valor que se obtiene bajo condiciones de ensayo o ideales. El mlnimo periodo de tiempo es en cambio el periodo de tiempo medido para el sistema de comunicaciones real, que coherentemente es mayor que el periodo de tiempo ideal.
Mediante la repeticion del procedimiento y la comparacion con el periodo de tiempo mlnimo o el periodo de tiempo predeterminado, el ruido de la senal desaparece o al menos es reducido considerablemente. Retrasos excepcionales durante la transmision y/o influencias ambientales excepcionales que llevan a un incremento del periodo de tiempo medido, no estando en principio provocadas por un ataque de transmision, pueden filtrarse tomando el valor medio entre los periodos de tiempo ya medidos. En otras palabras, el ruido de la senal se reduce al tomar el valor medio. Por tanto, es posible asumir tolerancias de tiempo mas pequenas, cuya superacion conlleve el reconocimiento de un ataque de
5
10
15
20
25
30
35
40
45
50
55
60
transmision. Mediante esta repeticion multiple se hace mucho mas diflcii llevar a cabo un ataque de transmision y el procedimiento de comunicacion se mejora en gran medida.
El numero de repeticiones no esta limitado, para reducir significativamente el ruido son adecuadas mil o mas repeticiones. Tambien esta previsto interrumpir la repeticion del procedimiento y reinicializarlo. Esto es razonable cuando los periodos de tiempo actualmente medidos en las repeticiones individuales difieren entre si considerablemente, por ejemplo se diferencian en un 30% o mas.
De acuerdo con la invencion, esta previsto adicionalmente que el periodo de tiempo medido dependa de la longitud del comando y que, el periodo de tiempo ideal, periodo de tiempo mlnimo y/o medio o promedio de los periodos de tiempo medidos este almacenado en el dispositivo de lectura como valor de referencia. Grandes desviaciones respecto de este valor de referencia indican consecuentemente ataques de transmision desde un primer momento y aseguran adicionalmente el sistema de comunicaciones.
En una realizacion de la invencion, el procedimiento tiene dos fases, estableciendose en una primera fase un canal seguro entre el dispositivo de lectura y el transpondedor, y efectuandose en una segunda fase la medicion del periodo de tiempo y la evaluacion del periodo de tiempo por medio de las etapas de procedimiento descritas anteriormente. Mediante el establecimiento de un canal seguro, el comando de dispositivo de lectura y la respuesta de transpondedor pueden ser transmitidas muy rapido y se evitan desviaciones debidas a autentificaciones que deban anteponerse. De este modo, el procedimiento se hace mas seguro en relacion con el reconocimiento de ataques de transmision.
En una realizacion preferida del procedimiento, rutinas de software (tambien conocidas como “Applets”) se configuran en el transpondedor para procesar el comando de manera que el tiempo de procesamiento del comando de la misma longitud de datos es siempre constante. De este modo se garantiza que el periodo de tiempo especlfico de tarjeta es constante.
Adicionalmente, el transpondedor puede realizar una o varias mediciones durante el procesamiento del comando recibido desde el dispositivo de lectura y/o monitorizar uno o varios sensores para determinar si el tiempo de ejecucion actual del procesamiento se desvla del periodo de tiempo especlfico de tarjeta. Para ello puede efectuarse por ejemplo una evaluacion por temporizadores, registradores o sensores en el reloj interno, un reloj externo o voltaje, teniendo lugar consecuentemente una comparacion de valores objetivo.
Adicionalmente, puede estar previsto que el o los valores se transmitan en la respuesta al dispositivo de lectura adicionalmente al periodo de tiempo especlfico de tarjeta. Alternativa o adicionalmente, el o los valores medidos pueden incorporarse en el periodo de tiempo especlfico de tarjeta.
El comando transmitido desde el dispositivo de lectura al transpondedor puede ser un comando APDU, con el que el periodo de tiempo especlfico de tarjeta es solicitado de forma especlfica por el dispositivo de lectura. Dicho comando representa entonces un comando de verificacion de ataque de transmision especial. Puede aplicarse de forma flexible a diferentes transpondedores y esta estandarizado.
Alternativamente, el comando transmitido desde el dispositivo de lectura al transpondedor puede ser un APDU arbitrario. La utilizacion de un comando arbitrario hace posible enmascarar una verificacion de transmision. En esta variante, es ventajoso que el dispositivo de lectura y el transpondedor acuerden de antemano en reaccion a que comando APDU el periodo de tiempo especlfico de tarjeta es transmitido en la respuesta al dispositivo de lectura.
El periodo de tiempo especlfico de tarjeta puede ser medido o calculado por el transpondedor. Esta medicion o calculo puede llevarse a cabo de una sola vez. El resultado de la medicion o el calculo puede estar guardado entonces en una memoria del transpondedor. Se entiende que la medicion o el calculo del periodo de tiempo especlfico de tarjeta debe efectuarse de forma segura para poder evitar en el futuro un ataque de transmision de forma fiable.
Alternativamente, el periodo de tiempo especlfico de tarjeta puede ser conocido y estar guardado en una memoria del transpondedor. El periodo de tiempo especlfico de tarjeta puede por ejemplo determinarse en el contexto de una personalizacion e integrarse de forma segura en el transpondedor. Ademas, el periodo de tiempo se puede determinar en una fase de prueba durante la fabricacion del transpondedor y ser integrado en el modulo de memoria.
La invencion sugiere adicionalmente un sistema de comunicaciones que comprende un transpondedor con al menos una antena, en particular en la forma de un soporte de datos portatil, as! como un dispositivo de lectura con al menos una antena, en el que el dispositivo de lectura esta configurado para intercambiar datos con el transpondedor de manera que sea posible un intercambio de datos entre el transpondedor y el dispositivo de lectura dentro de un alcance predeterminado. Para ello, el dispositivo de lectura esta configurado para efectuar una medicion y evaluacion del tiempo
5
10
15
20
25
30
35
40
45
50
55
60
de transmision de un comando desde el dispositivo de lectura al transpondedor y de recepcion de una respuesta correspondiente del transpondedor. Para ello, el dispositivo de lectura esta configurado adicionalmente para procesar un periodo de tiempo especlfico de tarjeta, especificando el periodo de tiempo especlfico de tarjeta cuanto tiempo utiliza el transpondedor en recibir y procesar un comando recibido desde el dispositivo de lectura as! como en enviar una respuesta correspondiente.
El sistema de comunicaciones de acuerdo con la invencion tiene las mismas ventajas que se han descrito anteriormente en relacion con el procedimiento de acuerdo con la invencion.
El sistema de comunicaciones puede ser configurado adicionalmente para llevar a cabo las etapas del procedimiento descritas anteriormente.
A continuacion, se explicara con mayor detalle la invencion, con referencia a un ejemplo de realizacion mostrado en los dibujos. Los dibujos muestran:
la figura 1 una representacion esquematica de un sistema de comunicaciones de acuerdo con la invencion, que comprende un transpondedor en la forma de un soporte de datos portatil as! como un dispositivo de lectura, cada uno de los cuales comprende una antena,
la figura 2 un diagrama de flujo que ilustra el procedimiento basico para operar el sistema de comunicaciones de la figura 1,
la tabla 1 un extracto de periodos de tiempo promedios, periodos de tiempo especlficos de tarjeta y desviaciones en funcion de la longitud de datos.
La figura 1 muestra una representacion esquematica de un sistema de comunicaciones de acuerdo con la invencion. El sistema de comunicaciones comprende un dispositivo de lectura -10- as! como un transpondedor -12-, preferiblemente en la forma de un soporte de datos portatil con forma de tarjeta. Tal transpondedor puede estar presente por ejemplo como tarjeta inteligente (“smartcard”) sin contacto. Tanto el dispositivo de lectura -10- como el transpondedor -12- comprenden cada uno al menos una antena no representada en detalle. El dispositivo de lectura -10- y el transpondedor -12- estan configurados preferiblemente de acuerdo con la norma ISO/IEC 14443. Cuando el transpondedor -12- y el dispositivo de lectura -10- estan dispuestos dentro de un determinado alcance, puede efectuarse un intercambio de datos entre estos dos componentes. En el caso de la denominada comunicacion de campo cercano (“Near Field Communication” - NFC) un alcance tlpico es de aproximadamente 10 cm.
Mediante el procedimiento descrito con mayor detalle a continuacion, el dispositivo de lectura -10- y el transpondedor -12- hacen posible evaluar un comportamiento de tiempo de respuesta en el contexto de una comunicacion y con ello llevar a cabo la conocida limitacion de distancia. El procedimiento puede llevarse a cabo sin realizar cambios en el dispositivo de lectura -10- y/o en el transpondedor -12- y que conduzcan a una variacion en la realizacion de acuerdo con la ISO/EIEC 14443.
En el contexto de este procedimiento, que esta representado en su forma basica en la figura 2, se efectua una medicion y evaluacion del tiempo de un comando -10- (en general: un mensaje) transmitido desde el dispositivo de lectura -10- al transpondedor -12- y de recepcion de una respuesta -34- correspondiente del transpondedor -12- por el dispositivo de lectura -10-. Para la transmision del comando -10- desde el dispositivo de lectura -10- al transpondedor -12- se requiere un tiempo T_s1, para la transmision de la respuesta -34- desde el transpondedor -12- al dispositivo de lectura -10- se requiere un tiempo T_s2. Para la recepcion del comando, su procesamiento y la emision de la respuesta correspondiente en el transpondedor -12- (numero de referencia -32-) se requiere un periodo de tiempo especlfico de tarjeta T_icc.
El periodo de tiempo especlfico de tarjeta T_icc por tanto indica el tiempo que puede utilizar el transpondedor -12- entre la recepcion, el procesamiento y el envlo del comando -30-. La determinacion del periodo de tiempo especlfico de tarjeta T_icc representa una primera etapa S20 del procedimiento de acuerdo con la invencion.
El periodo de tiempo especlfico de tarjeta T_icc puede integrarse con seguridad en el transpondedor -12-, por ejemplo en el contexto de una personalizacion del mismo. Asimismo, el periodo de tiempo especlfico de tarjeta T_icc puede determinarse por si mismo de forma segura en el transpondedor -12-. La determinacion puede efectuarse por ejemplo mediante una medicion. La determinacion del periodo de tiempo especlfico de tarjeta T_icc se efectua preferiblemente solamente una vez de acuerdo con condicionantes de la norma. El periodo de tiempo especlfico de tarjeta T_icc se incorpora entonces por ejemplo en una memoria interna del transpondedor no representada en detalle.
5
10
15
20
25
30
35
40
45
50
55
60
El periodo de tiempo especifico de tarjeta T_icc se transmite (etapa S22) de forma veraz, es decir sin ser alterado, al dispositivo de lectura -10- en la respuesta -34- del transpondedor -12-. Simultaneamente al envlo del comando -30-, el dispositivo de lectura -10- mide un periodo de tiempo T_IFD entre el envlo del comando -30- y la recepcion de la respuesta -34- (etapa S24). El periodo de tiempo T_IFD en este caso se compone de la suma de T_s1, T_s2 y T_icc. Mediante el calculo de la diferencia entre el periodo de tiempo T_IFD y el periodo de tiempo especifico de tarjeta T_icc, el dispositivo de lectura -10- o la aplicacion software contenida en el mismo, la cual procesa los datos de la respuesta -34-, puede deducir si el transpondedor -12- se comunica directamente con el dispositivo de lectura -10- o si se esta presentando un ataque de transmision.
Para ello, se efectua una comparacion de la diferencia con un valor llmite SW predeterminado (etapa S26). Si la diferencia es mayor que el valor llmite SW (“si”), entonces la comunicacion con el transpondedor -12- sin contacto es interrumpida por el dispositivo de lectura -10-. En este caso, esta teniendo lugar un ataque de transmision (etapa S28). Si la diferencia es menor que el valor llmite SW (“no”), la comunicacion con el transpondedor -12- sin contacto es mantenida por el dispositivo de lectura -10-, puesto que no esta teniendo lugar ningun ataque de transmision (etapa S30).
Para la transmision veraz del periodo de tiempo especifico de tarjeta T_icc se elige preferiblemente una transmision segura. Para ello puede utilizarse por ejemplo el denominado canal de mensajerla seguro del transpondedor. En el caso de que la transmision segura este asegurada por la transmision (“rely-secure’), el transpondedor solo necesita transmitir de forma segura el periodo de tiempo especifico de tarjeta T_icc en su respuesta al dispositivo de lectura -10-.
Para solicitar el periodo de tiempo especifico de tarjeta en el transpondedor -12-, puede transmitirse un comando especial de verificacion de ataque de transmision como comando -30- por el dispositivo de lectura -10- al transpondedor -12-. Alternativamente, puede utilizarse un comando APDU convencional en el contexto de una solicitud clasica o normalizada al transpondedor para enmascarar la verificacion de transmision. En este ultimo caso, puede utilizarse para ello una seleccion aleatoria de cualquier comando APDU arbitrario.
El comando APDU arbitrario es acordado por ejemplo tanto por el transpondedor -12- como por el dispositivo de lectura -10- en las etapas anteriores, de manera que el transpondedor -12- reconoce el comando de verificacion de transmision y transmite el periodo de tiempo especifico de tarjeta T_icc en su respuesta -34- al dispositivo de lectura -10-. Alternativamente, el comando APDU arbitrario no es acordado de antemano, sino que las estructuras de datos transferidas en el comando APDU o en la respuesta APDU indican que en el comando APDU el periodo de tiempo T_icc es requerido o bien transferido. Para ello, se utiliza por ejemplo un valor de longitud tipo (“Type Length Value") especial, abreviadamente un objeto TLV.
Opcionalmente, mediante el comando -30- puede ser transmitida una prueba al transpondedor -12- que por ejemplo es transmitida de vuelta en la respuesta -34- junto con el periodo de tiempo especifico de tarjeta T_icc al dispositivo de lectura -10-. Asimismo, la prueba puede provocar un comportamiento de tiempo definido y alterado del comando -30-.
Una variante adicional del procedimiento consiste en que, durante el procesamiento del comando -30-, el transpondedor -12- efectua una o varias mediciones y/o monitoriza uno o varios sensores del transpondedor para determinar si el tiempo de ejecucion se desvia significativamente del tiempo normalizado, es decir del periodo de tiempo especifico de tarjeta. Esto puede efectuarse por ejemplo mediante la evaluacion de temporizadores/registradores/sensores en el reloj interno, ciclo externo, voltaje, etc., y su comparacion con respectivos valores objetivo. Opcionalmente, el o los valores medidos pueden ser tenidos en cuenta en el calculo del periodo de tiempo especifico de tarjeta T_icc y/o ser devueltos en la respuesta -34- al dispositivo de lectura -10- adicionalmente al periodo de tiempo especifico de tarjeta.
En una segunda realizacion (no representada en las figuras), el procedimiento de las figuras 1 y 2 se repite varias veces. Un numero de repeticiones razonable es mil, para poder filtrar errores extraordinarios e influencias ambientales que introducen desviaciones en la medicion de tiempo. De este modo, el procedimiento se divide en dos fases, estableciendose un canal seguro en la primera fase. Al establecer el canal seguro, las respuestas del transpondedor -12- pueden efectuarse muy rapido. En particular, el tiempo T' medido puede predecirse muy bien. Para establecer el canal, se pueden aplicar procedimientos normalizados tales como mensajerla segura (“Secure Messaging') o autentificaciones de Diffie-Hellman. El establecimiento del canal seguro puede omitirse cuando se garantice que el procedimiento no sea manipulado por un tercero.
En la segunda fase del procedimiento la medicion de tiempo real T' se efectua para reconocer el ataque de transmision de acuerdo con los procedimientos descritos en las figuras 1 y 2. De este modo, las mediciones se repiten varias veces y el conjunto de las mediciones resulta en la segunda fase. Se aplica lo siguiente: Si el periodo de tiempo promedio T puede ser predicho con una cierta desviacion estandar o, entonces se cumple, con una probabilidad p(e), que el periodo de tiempo medido actualmente T' es:
5
10
15
20
25
30
35
40
45
50
55
imagen1
siendo el periodo de tiempo ideal T0 la suma de T_icc, T_s1 y T_s2. Para ello, T0 o bien se determina por medio de la combinacion actual de transpondedor - dispositivo de lectura bajo condiciones de ensayo o bien esta contenido en el dispositivo de lectura -20- como un valor de referencia tlpico.
El dispositivo de lectura -10- captura el periodo de tiempo actual T' en cada repeticion. Cuando el periodo de tiempo ideal T0 se utiliza como valor de referencia, se verifica si cada periodo de tiempo actual T' se desvla del periodo de tiempo ideal T0 en una desviacion e, por ejemplo un 10%. En caso contrario, se asume que hay un ataque de transmision y la comunicacion se interrumpe. En una realizacion alternativa, no es el periodo de tiempo ideal T0 el que se usa como referencia, sino el periodo de tiempo mlnimo T. Cuando el periodo de tiempo mlnimo T es un 10% menor que el periodo de tiempo medido realmente T', entonces el procedimiento es igualmente interrumpido y se asume que hay un ataque de transmision. El periodo de tiempo mlnimo T es reemplazado por el periodo de tiempo medido actualmente T' y es adoptado como el nuevo periodo de tiempo mlnimo T, si el periodo de tiempo medido actualmente T' es menor que el periodo de tiempo mlnimo T utilizado hasta el momento.
En vez del periodo de tiempo mlnimo T tambien puede determinarse un valor promedio T, por ejemplo un promedio, de entre todos los periodos de tiempo T' capturados hasta el momento y este valor promedio T puede adoptarse como referencia. Este valor promedio puede ser aplicado despues de completar todas las repeticiones del procedimiento.
De todo lo anterior se desprende que todas las actuaciones adicionales del atacante de transmision deben ser efectuadas dentro de la desviacion e, en particular grandes distancias espaciales y equipos adicionales para retransmitir la senal implican una superacion de la desviacion e. Debido a las fuertes restricciones temporales se hace imposible un ataque de transmision en el sistema de comunicaciones.
En la tabla 1 se especifica el resultado de una serie de ensayos. Para ello, un dispositivo portatil (“notebook”) que tiene un sistema operativo y un lector de tarjeta -10- conectado al mismo, as! como una tarjeta sin contacto como transpondedor -12-, fue analizado con relacion a los periodos de tiempo T, T' y e. De este modo, se variaron las longitudes de datos L de los comandos -30-. El periodo de tiempo especlfico de tarjeta T_icc fue tomado como constante en esta serie de ensayos. El comando -30- de la respectiva longitud de datos L fue enviado respectivamente 1000 veces y respondido por el transpondedor -12-.
Una implementacion del procedimiento en un sistema de comunicaciones preve que el dispositivo de lectura -10- envle comandos -30- a la tarjeta hasta que la desviacion e este dentro de un rango definido. Cuando esto se produce, puede intercambiarse informacion confidencial ya que se garantiza que la via de comunicacion no esta redireccionada y/o intervenida.
De este modo, un ataque de transmision puede considerarse como reconocido cuando un numero de repeticiones predefinido del procedimiento de acuerdo con la invencion se mantienen infructuosas. Cuanto mayor sea el numero de repeticiones tanto menor puede ser el rango definido de la desviacion e. El rango definido de la desviacion e en los periodos de tiempo representados de acuerdo con la tabla 1 es de 0,1 milisegundos, por ejemplo, donde la distancia entre el dispositivo de lectura y el transpondedor puede limitarse a de 1 km a 10 km.
El procedimiento puede ser mejorado significativamente si se utilizan pequenos sistemas operativos en tiempo real.
En una realizacion alternativa del procedimiento (tampoco representada en las figuras), un comando es enviado al transpondedor -12-, siendo procesado por el transpondedor. El comando, tambien denominado como comando de inicio, precisa al transpondedor -12- a iniciar el procesamiento de una cadena de caracteres sinfln. Simultaneamente al comando de inicio, el dispositivo de lectura -20- inicia igualmente el procesamiento de la cadena de caracteres sinfln en el dispositivo de lectura -20-. En un momento arbitrario posterior al inicio de la cadena de caracteres sinfln, el dispositivo de lectura -20- interrumpe la cadena de caracteres sinfln. Simultaneamente a la interrupcion de la cadena de caracteres sinfln, el dispositivo de lectura -20- envla un segundo comando al transpondedor -12-, tambien denominado como comando de interrupcion. Despues de recibir el comando de interrupcion, el transpondedor interrumpe igualmente el procesamiento de la cadena de caracteres sinfln y envla una respuesta al dispositivo de lectura con el valor actual calculado como el ultimo valor en la cadena de caracteres sinfln o un parametro equiparable que especifique el cronologicamente ultimo estado de procesamiento de la cadena de caracteres. Este parametro es evaluado en el dispositivo de lectura y comparado con un parametro de comparacion en el dispositivo de lectura -20-. En el caso de que el parametro/valor se encuentre dentro de ciertos llmites se garantiza que no esta teniendo lugar un ataque de
5
10
15
20
25
30
35
transmision. La cadena de caracteres sinfln es una adicion constante de un numero aleatorio a si mismo, por ejemplo. Alternativamente, pueden concebirse cadenas de caracteres sinfln complejas cuya interrupcion proporcione un resultado en el momento de la interrupcion.
Para detectar un ataque de transmision, el procedimiento de acuerdo con la invencion utiliza por tanto el tiempo de propagacion neto de una senal enviada y recibida de nuevo por el dispositivo de lectura -10- menos un tiempo de calculo conocido del transpondedor.
El procedimiento sugerido puede ser implementado de una manera muy simple. Permite que dispositivos de lectura reconozcan de forma fiable y con gran exactitud ataques de transmision mediante terminales con capacidad NFC. Para ello, no se requieren modificaciones en la ISO/IEC 14443. El hecho de que el dispositivo de lectura sin contacto deba ser capaz de efectuar una medicion de tiempo es solamente un condicionante.
Lista de numeros de referencia
10 Dispositivo de lectura
12 Transpondedor
30 Comando
32 Recepcion, procesamiento y envlo de una respuesta
34 Respuesta
S20 Etapa de procedimiento
S22 Etapa de procedimiento
S24 Etapa de procedimiento
S26 Etapa de procedimiento
S28 Etapa de procedimiento
S30 Etapa de procedimiento
T_icc Periodo de tiempo especlfico de tarjeta
T_s1 Tiempo para el procesamiento y transmision del mensaje -30-
T_s2 Tiempo para la transmision y evaluacion de la respuesta -34-
T' Periodo de tiempo medido actualmente
T Periodo de tiempo promedio y/o mlnimo
T0 Periodo de tiempo ideal
e Diferencia temporal entre T' y T0
L Longitud de datos del comando

Claims (14)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    55
    60
    REIVINDICACIONES
    1. Procedimiento para operar un sistema de comunicaciones que comprende un transpondedor (12), con al menos una antena, en particular en la forma de un soporte de datos portatil, as! como un dispositivo de lectura (10), con al menos una antena, en el que el dispositivo de lectura (10) esta configurado para intercambiar datos con el transpondedor (12), en el que un intercambio de datos entre el transpondedor (12) y el dispositivo de lectura (10) es posible dentro de un radio de alcance predeterminado, comprendiendo las siguientes etapas de procedimiento:
    - enviar un comando (30) desde el dispositivo de lectura (10) al transpondedor (12);
    - procesar el comando (30) en el transpondedor (12), generando una respuesta (34) al comando (30) por el transpondedor (12);
    - recibir la respuesta (34) del transpondedor (12) en el dispositivo de lectura (10);
    - medir el periodo de tiempo (T') entre la etapa de enviar y la etapa de recibir en el dispositivo de lectura (10), en el que la etapa de procesar se efectua en un periodo de tiempo especlfico de tarjeta (T_icc) y el periodo de tiempo especlfico de tarjeta (T_icc) especifica cuanto tiempo utiliza el transpondedor (12) en recibir y procesar un comando (30) recibido desde el dispositivo de lectura (10) as! como en enviar una respuesta correspondiente (34);
    caracterizado por que:
    el periodo de tiempo especlfico de tarjeta (T_icc) es transmitido en la respuesta (34) del transpondedor (12) al dispositivo de lectura (10) y
    - el periodo de tiempo medido (T') es evaluado en el dispositivo de lectura (10), en el que para evaluar el tiempo medido (T') se utiliza el periodo de tiempo especlfico de tarjeta (T_icc).
  2. 2. Procedimiento segun la reivindicacion 1, en el que un ataque de transmision puede inferirse por medio de la diferencia (e) entre el periodo de tiempo medido (T') y el periodo de tiempo especlfico de tarjeta (T_icc).
  3. 3. Procedimiento segun la reivindicacion 1 o 2, en el que el periodo de tiempo especlfico de tarjeta (T_icc) es transmitido de forma segura desde el transpondedor (12) al dispositivo de lectura (10).
  4. 4. Procedimiento segun una de las reivindicaciones anteriores, en el que el comando (30) es una prueba y el periodo de tiempo especlfico de tarjeta (T_icc) es transmitido al dispositivo de lectura (10) junto con la respuesta como contestacion (20).
  5. 5. Procedimiento segun la reivindicacion 4, en el que la prueba resulta en una modificacion del periodo de tiempo determinado por el dispositivo de lectura (10).
  6. 6. Procedimiento segun una de las reivindicaciones anteriores, en el que el procedimiento es realizado varias veces y el periodo de tiempo actualmente medido (T') es comparado con un periodo de tiempo predeterminado (T), en particular un periodo de tiempo mlnimo, como valor llmite.
  7. 7. Procedimiento segun una de las reivindicaciones anteriores, en el que el periodo de tiempo medido (T') depende de la longitud de datos (L) del comando (30), y el periodo de tiempo predeterminado (T) para la longitud del comando (30), en particular un periodo de tiempo mlnimo (T), es guardado en el dispositivo de lectura (10) como un valor de referencia.
  8. 8. Procedimiento segun una de las reivindicaciones anteriores, en el que el transpondedor (12) efectua una o varias mediciones durante el procesamiento del comando (30) recibido desde el dispositivo de lectura (10) y/o monitoriza uno o varios sensores del transpondedor (12) para determinar si el tiempo de ejecucion del procesamiento se desvla del periodo de tiempo especlfico de tarjeta (T_icc).
  9. 9. Procedimiento segun la reivindicacion 8, en el que el o los valores medidos se transmiten al dispositivo de lectura (10) en la respuesta (34) adicionalmente al periodo de tiempo especlfico de tarjeta (T_icc).
  10. 10. Procedimiento segun la reivindicacion 8 o 9, en el que el o los valores medidos se incorporan en el periodo de tiempo especlfico de tarjeta (T_icc).
    10
    15
    20
  11. 11. Procedimiento segun una de las reivindicaciones 1 a 10, en el que el transpondedor (12) mide o calcula el periodo de tiempo especifico de tarjeta (T_icc).
  12. 12. Procedimiento segun una de las reivindicaciones 1 a 10, en el que el periodo de tiempo especifico de tarjeta (T_icc) es conocido y guardado en una memoria del transpondedor (12).
  13. 13. Sistema de comunicaciones que comprende un transpondedor (12) con al menos una antena, en particular en la forma de un soporte de datos portatil, asi como un dispositivo de lectura (10), con al menos una antena, en el que el dispositivo de lectura (10) esta configurado para intercambiar datos con el transpondedor (12) de manera que un intercambio de datos entre el transpondedor (12) y el dispositivo de lectura (10) es posible dentro de un radio de alcance predeterminado, en el que el dispositivo de lectura (10) esta configurado para
    - efectuar una medicion y evaluacion del tiempo de un comando (30) transmitido desde el dispositivo de lectura (10) al transpondedor (12) y el envio de una respuesta correspondiente (34) del transpondedor (12), caracterizado por que el periodo de tiempo especifico de tarjeta (T_icc) es transmitido en la respuesta (34) del transpondedor (12) al dispositivo de lectura (10) para ser evaluado
    - y el periodo de tiempo especifico de tarjeta (T_icc) es procesado especificando el periodo de tiempo especifico de tarjeta (T_icc) cuanto tiempo utiliza el transpondedor (12) en recibir y procesar un comando (30) recibido desde el dispositivo de lectura (10) asi como en enviar una respuesta correspondiente (34).
  14. 14. Sistema de comunicaciones segun la reivindicacion 13, que esta configurado adicionalmente para ejecutar las etapas del procedimiento segun una de las reivindicaciones 2 a 12.
ES13801984.9T 2012-11-21 2013-11-19 Procedimiento para operar un sistema de comunicaciones Active ES2624298T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102012022735.3A DE102012022735A1 (de) 2012-11-21 2012-11-21 Verfahren zum Betreiben eines Kommunikationssystems
DE102012022735 2012-11-21
PCT/EP2013/003493 WO2014079561A1 (de) 2012-11-21 2013-11-19 Verfahren zum betreiben eines kommunikationssystems

Publications (1)

Publication Number Publication Date
ES2624298T3 true ES2624298T3 (es) 2017-07-13

Family

ID=49725090

Family Applications (1)

Application Number Title Priority Date Filing Date
ES13801984.9T Active ES2624298T3 (es) 2012-11-21 2013-11-19 Procedimiento para operar un sistema de comunicaciones

Country Status (5)

Country Link
US (1) US9400901B2 (es)
EP (1) EP2923299B1 (es)
DE (1) DE102012022735A1 (es)
ES (1) ES2624298T3 (es)
WO (1) WO2014079561A1 (es)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015004314A1 (de) * 2015-04-01 2016-10-06 Giesecke & Devrient Gmbh Laufzeitmessung
DE102015207745A1 (de) * 2015-04-28 2016-11-03 Bundesdruckerei Gmbh Verfahren zur Prüfung einer integrierten Schaltung, Dokument, Prüfsystem und Personalisierungsvorrichtung
US10690762B2 (en) 2015-05-29 2020-06-23 Qualcomm Incorporated Systems and methods for determining an upper bound on the distance between devices
US20160352605A1 (en) * 2015-05-29 2016-12-01 Qualcomm Incorporated Systems and methods for distance bounding to an authenticated device
US20170127225A1 (en) * 2015-10-29 2017-05-04 Qualcomm Incorporated Systems and methods for distance bounding using near field communication
US11432155B2 (en) 2017-03-15 2022-08-30 Visa International Service Association Method and system for relay attack detection
US11449691B2 (en) * 2020-08-20 2022-09-20 Assa Abloy Ab Relay attack detection for interfaces using command-response pair

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0700671D0 (en) * 2006-12-15 2007-02-21 Innovision Res & Tech Plc Nfc communicator and method of data communication
US8620260B2 (en) * 2007-04-27 2013-12-31 American Express Travel Related Services Company, Inc. Payment application download to mobile phone and phone personalization
US7917446B2 (en) * 2007-10-31 2011-03-29 American Express Travel Related Services Company, Inc. Latency locator
FR2954550A1 (fr) * 2009-12-23 2011-06-24 Commissariat Energie Atomique Procede de protection dans une communication radiofrequence sans contact.

Also Published As

Publication number Publication date
EP2923299B1 (de) 2017-02-22
US9400901B2 (en) 2016-07-26
US20150302230A1 (en) 2015-10-22
EP2923299A1 (de) 2015-09-30
WO2014079561A1 (de) 2014-05-30
DE102012022735A1 (de) 2014-05-22

Similar Documents

Publication Publication Date Title
ES2624298T3 (es) Procedimiento para operar un sistema de comunicaciones
US10587600B2 (en) Systems, methods and apparatuses for determining proximity of communication device
Abu-Mahfouz et al. Distance bounding: A practical security solution for real-time location systems
US10581601B2 (en) Secure wireless communication device and method
EP2291947B1 (en) Decoupling of measuring the response time of a transponder and its authentication
WO2018024241A1 (zh) 一种数据通信方法及系统
Francis et al. A practical generic relay attack on contactless transactions by using NFC mobile phones
CN107690144B (zh) 一种数据通信方法及系统
ES2766749T3 (es) Dispositivo de seguridad de un contador de energía frente a un acceso no autorizado
CN107690133B (zh) 一种数据通信方法及系统
WO2018170576A1 (en) Secure wireless communication device and method
US11646889B2 (en) Dongles and method for providing a digital signature
EP2974203B1 (en) Ensuring the proximity of a communication device to its partner device
CN107689946A (zh) 一种数据通讯方法及数据通讯系统
CN107026817A (zh) 一种密码自动输入的系统
CN107690143B (zh) 一种数据通信方法及系统
Plank et al. OptiSec3D-A new Paradigm in Secure Communication and Authentication featuring Time-of-Flight.
CN107690141B (zh) 一种数据通信方法及系统
EP3496441B1 (en) Data communication method and system
Xu et al. Novel implementation of defence strategy of relay attack based on cloud in RFID systems
CN107690142B (zh) 一种数据通信方法及系统
Zheng Secure Distance Bounding
Kuhn Distance-bounding protocols
CN107688761A (zh) 一种数据通讯方法及数据通讯系统
CN107690145A (zh) 一种安全通信方法和系统