Los protocolos de límite de distancia son protocolos de autenticación criptográficos basados en la determinación de la distancia entre las entidades que interactúan . El protocolo fue desarrollado por primera vez por Stefan Brands y David Chaum en 1993 [1] .
La idea principal es la confiabilidad del conocimiento del participante que prueba ("Prover"), al verificar la autenticidad de este conocimiento por parte del participante verificador ("Verificador") y la necesidad de que el participante que prueba esté a una distancia del verificador, no más que cierto [2] .
Estos protocolos permiten prevenir este tipo de ataques criptográficos a los sistemas RFID como: ataques de intermediarios ; un engaño llevado a cabo por la Mafia ; engaño realizado por terroristas; fraude a distancia [3] .
La idea del protocolo Brandson-Chaum de distancia limitada [1] se basa en el principio de “ llamada-respuesta ” . Que haya dos participantes: - la parte que prueba, que prueba su conocimiento del secreto. - la parte que confía que verifica la autenticidad de este secreto. Antes de intercambiar mensajes, las partes y generan una secuencia aleatoria de -bits, y respectivamente. El parámetro es un parámetro de protocolo secreto. Este protocolo se divide en dos partes:
Este protocolo evita que la mafia haga trampas con probabilidad . [cuatro]
Versión modificada del protocolo Brandson-ChaumAl implementar el protocolo Brandson-Chaum, en el caso de que la parte sepa cuánto tiempo llegará el siguiente bit, el bit de respuesta se puede enviar a la parte por adelantado, cometiendo así un fraude con la distancia entre los participantes [1] .
Una forma de evitar esta trampa es cambiar accidentalmente la hora en que la parte envió el bit .
Otra opción es una versión modificada del protocolo Brandson-Chaum que previene dos tipos de fraude a la vez. Como en la versión principal, ambos lados generan una secuencia aleatoria de bits. En los intercambios de bits instantáneos, el lado envía un bit al lado , a su vez, el lado envía un bit al lado . Después del intercambio, la parte debe enviar los bits con la clave secreta a la parte a través de un protocolo seguro. La parte verifica la igualdad y luego usa el protocolo de autenticación para validar el secreto.
La desventaja del protocolo es que no maneja los errores asociados con la pérdida de un bit durante el intercambio. [5]
En 2005, Gerhard P. Hancke y Markus G. Kuhn [2] propusieron su propia versión del protocolo de distancia limitada, ampliamente utilizado en los sistemas RFID [6] .
Que haya dos partes: ("lector de RFID") y ("ficha de RFID"). La parte genera aleatoriamente una clave de un solo uso y la envía a la parte . Mediante una función pseudoaleatoria ( MAC o función hash criptográfica ) ambas partes generan una secuencia de bits: , donde , a es una clave secreta conocida por ambas partes.
Después de eso, comienza una serie de intercambios de bits instantáneos entre las dos partes: un bit generado aleatoriamente por el lado ("respuesta") se envía al lado , mientras que si es un bit , entonces el lado devuelve un bit , de lo contrario, un bit . El lado verifica que el bit recibido sea igual a su bit , y también para cada uno calcula la distancia entre y , y verifica que , donde , es el tiempo entre intercambios de bits, es la velocidad de la luz, es un valor fijo.
Si la parte cumple con las condiciones, entonces el intercambio se considera exitoso.
La probabilidad de un ataque por parte de una mafia realizada y un engaño a distancia al usar este protocolo es igual a . [cuatro]
Además, sobre la base de este protocolo, se creó el protocolo Tu-Piramuthu ( ing. Tu-Piramuthu ), que reduce la probabilidad de un ataque exitoso a (para el intercambio de un bit). [7]
La desventaja del protocolo es la pérdida de rendimiento al transmitir un mensaje firmado, ya que debido a la posibilidad de pérdida de bits debido al ruido, el mensaje no puede enviarse a través de un canal de intercambio de bits rápido. [5]
Para reducir la probabilidad de fraude, basándose en el protocolo Hanke-Kun, en 2008 Ortiz Munilla y Peinado [ 8] crearon su propia versión del protocolo de distancia limitada . La característica principal del protocolo es la capacidad de detectar un ataque durante el intercambio de bits [9] . El intercambio de bits se divide en dos categorías:
Las partes y acuerdan de antemano en qué iteración se producirá una respuesta vacía. Si, durante una respuesta vacía, la parte recibe el bit o , entonces concluye que el protocolo no es confiable.
Antes del comienzo de la fase lenta, las partes comparten un secreto , obtienen una clave de protocolo secreta y una función pseudoaleatoria que produce una secuencia aleatoria de bits de tamaño y establecen un umbral de tiempo para un intercambio de un solo bit .
Además, en la fase lenta, las partes y después de generar claves de un solo uso y , respectivamente, intercambian estas claves para calcular . La secuencia resultante de bits se divide en una secuencia de tamaños de bits y un bit cada uno. El bit establece qué respuesta durante la fase rápida estará vacía o llena: si , o , entonces - una respuesta vacía, de lo contrario - una respuesta completa, donde .
Posteriormente, en la fase rápida, se produce un intercambio de bits similar, utilizando las secuencias y , como en el protocolo Hanke-Kun. En última instancia, si la parte considera que el protocolo es confiable, envía el archivo .
La probabilidad de un criptoataque exitoso es . [ocho]
La desventaja del protocolo es la implementación compleja de los tres estados (físicos) del protocolo. [diez]
En 2010, Pedro Peris-Lopez ( español : Pedro Peris-Lopez ), Julio Hernandez-Castro ( español : Julio C. Hernandez-Castro ) y otros crearon el protocolo Hitomi basado en el protocolo Swiss Knife [11] . El protocolo proporciona autenticación entre el lector y el transmisor y garantiza la confidencialidad [12] .
El protocolo se divide en 3 partes: dos fases lentas - preparatoria y final; y la fase rápida: un intercambio rápido de bits entre el lector (también conocido como ) y el transmisor (también conocido como ).
Durante la fase preparatoria , elige un número aleatorio y envenénalo a un lado . Después de eso, genera 3 números aleatorios , y calcula las claves temporales y , donde es una función pseudoaleatoria que depende de la clave secreta , y y dos parámetros constantes. Además, la clave secreta permanente se divide en dos registros y . Y al final de la fase, envía los números , , al lado .
Luego viene la fase de intercambios de bits rápidos: en la iteración, genera un bit aleatorio y envenena , mientras fija el tiempo . La parte recibe bit , que puede no ser igual a bit , debido a errores en el canal de comunicación o interferencia de terceros. En respuesta, envía bit , e inmediatamente después de recibir bit , que no tiene por qué ser igual a , la parte fija el tiempo y calcula el tiempo .
En la fase final, envía un mensaje al lado también , donde está el identificador único del transmisor. En última instancia, desglosa los errores en tres tipos:
Si el número total de errores satisface las condiciones iniciales del lado y, si se requiere autenticación, el lado satisface el número recibido de , entonces el protocolo es confiable para el intercambio.
La probabilidad de un criptoataque realizado por una mafia o fraude a distancia . [cuatro]