Sistema de comunicaciones seguras en una red ad-hoc vehicular espontánea y autogestionada.
La presente invención se refiere a un sistema de comunicaciones seguras en una red ad-hoc vehicular (o V ANET) espontánea y auto gestionada.
La invención es aplicable en el campo de las telecomunicaciones, especialmente en comunicaciones móviles e inalámbricas entre vehículos
Antecedentes de la invención La presente invención está relacionada con la seguridad de las comunicaciones en las redes ad-hoc vehiculares o VANETs (Vehicular Ad-hoc NETworks) . Dicha seguridad representa actualmente un reto a resolver ya que se prevé que esas redes supondrán en un futuro no muy lejano una importante revolución para la seguridad y el confort del transporte por carretera.
En las V ANETs los mensajes intercambiados entre los vehículos influirán en el comportamiento de sus conductores pues éstos por ejemplo, reducirán la velocidad y/o escogerán rutas alternativas en función de la información recibida. Cualquier usuario malintencionado podría intentar explotar esta situación, llevando a cabo alguno de los siguientes ataques:
-Inyección de información falsa, modificada o repetida, difundiendo datos erróneos que puedan afectar al resto de vehículos, bien en beneficio del atacante por ejemplo al conseguir liberar una vía, o simplemente por mala intención por ejemplo para producir un atasco.
-Falsificación de identidad (haciéndose pasar por ejemplo por un vehículo de emergencia) o manipulación de la información enviada (alterando datos como posición, dirección, velocidad, etc.) por ejemplo para intentar escapar de responsabilidades al haber provocado un accidente.
-Seguimiento de conductores y/o vehículos, amenazando su privacidad y anonimato. -Denegación de servicio, provocando la pérdida de la conectividad de la red.
Por tanto, la seguridad de las comunicaciones es un factor imprescindible a la hora de impedir dichas amenazas y posibilitar el despliegue de las V ANETs.
Existen diversas iniciativas tanto desde la industria como desde el entorno académico destinadas a hacer posible la futura explotación de las V ANETs. Sin embargo, todas las propuestas existentes tienen en común la hipotética existencia previa de una infraestructura en la carretera o RSU (Road-Side Unit) y/o el uso de telefonía r.1óvil, y/o Internet y/o dispositivos a bordo de los vehículos u OBUs (On-Board Units) .
Por ejemplo el borrador de estándar de comunicaciones para V ANETs, IEEE 802.11 p W A VE (Wireless Access for Vehicular Environments, http://grouper.ieee.org/groups/802/II/Reports) que está siendo desarrollado por el consorcio Car-2-Car (http://www.car-to-car.org) presupone que las VANETs combinarán varias tecnologías inalámbricas como Celular, Satélite, WiMAX (Worldwide Interoperabi;ity for Microwave ACCess, http://www.ieee802.org/l6) y comunicaciones DSR (Dedicated Short Range) .
De igual forma, la arquitectura CALM (Communications, Air interface, Long and Medium range, http://www.isotc204wg16.org/concept) , también en proceso de estandarización por la organización ISO (International Organization for Standardization) , pretende dar soporte a comunicaciones en entornos móviles y en particular en ITSs (Intelligent Transportation Systems) , mediante el uso combinado de varias tecnologías inalámbricas como WAVE, UMTS (Universal Mobile Telecommunications System, http://www.30PP.org) , WiMAX o RFID (Radio Frequency IDentification) , y la aplicación de diversos estándares internacionales, interfaces y medios, como IEEE 802.11, 802.11p, 802.15, 802.16e, 802.20, telefonía móvil 20/30/40, e ITSs nacionales.
En ambos estándares, la seguridad de las comunicaciones se basa en la combinación de las tecnologías mencionadas, en general suponiendo el uso de infraestructuras de clave pública con certificación basada en autoridades centralizadas, lo que implica la necesidad de implementación previa de RSUs en carreteras y OBUs en vehículos.
Por otra parte, las soluciones propuestas en diversos proyectos de investigación se basan en la disponibilidad de OBUs en los vehículos, y/o de RSUs en la carretera, lo que implicaría un gran desembolso inicial por el Estado y/o por los usuarios. De hecho, la mayor parte de los esfuerzos investigadores en este campo se está haciendo desde las compañías automovilísticas, de forma que en las propuestas normalmente se supone que en las OBUs integradas en los vehículos hay una caja negra, una identidad certificada, sensores para detectar obstáculos, una interface humano-máquina, y un dispositivo a prueba de falsificaciones para hacer los cálculos, además de un receptor de un Sistema Global de Navegación por Satélite y un dispositivo Wi-Fi.
Entre las publicaciones científicas relacionadas con la seguridad en las V ANETs, destacan las siguientes:
-[Philippe Golle, Dan Greene and Jessica Staddon, "Detecting and correcting malicious data in VANETs ", 1st ACM international workshop on Vehicular ad hoc networks pp. 29-37. 2004}. Propone el uso de sensores para detectar información incorrecta.
-[Maxim Raya and Jean-Pierre Hubaux, "The security 01 vehicular ad hoc networks ", 3rd ACM workshop on Security 01 ad hoc and sensor networks pp. 11-21. 2005}. Asume la existencia de autoridades de certificación para emitir los certificados a los vehículos, proponiendo que sean las autoridades gubernamentales o los fabricantes de vehículos.
-[Florian Dotzer, "Privacy Issues in Vehicular Ad Hoc Networks ", Lecture Notes in Computer Science 3856 pp. 197-209. 2006}. Supone la participación de los fabricantes de vehículos ya que durante la producción de cada vehículo se debe establecer una conexión segura con una autoridad certificadora que valide la OBo.
Entre las patentes destacan los siguientes documentos relacionados con las V ANETs.
-US2008002635 Y US2008002574 proponen un método para gestionar el tráfico de comunicaciones, midiendo niveles locales y definiendo una microutilidad de los datos a transmitir para seleccionar el medio de transmisión.
-US20080279141 describe un método de asignación de canales a las comunicaciones
multihop entre un nodo y otro, para el envío de información mediante enrutamiento. -W02008092475 propone la diseminación de información mediante unicast. -W02008104673 plantea la estimación de la densidad de nodos mediante la división en celdas geográficas en las que el nodo más cercano al centro es el encargado de agregar y retransmitir la información. -W02008119948 se basa en el uso de telefonía móvil para definir un algoritmo de enrutamiento de información entre dos nodos. -W02009024945 describe un método para sincronizar dispositivos comunicados por radio mediante beacons periódicos que incluyen señales de reloj.
-W02009053657 propone que en las intersecciones de carreteras el broadcast de información se realice a través de un nodo elegido dentro de un grupo en función del tiempo estimado para alcanzar la intersección. W02010020260 presenta un método para el envío de información desde un nodo origen hasta un nodo destino mediante enrutamiento a través de nodos intermedios.
-W020 1 0040372 presupone el uso de una infraestructura en la carretera para controlar la carga de comunicaciones del canal inalámbrico, definiendo prioridades sobre los mensajes para establecer sus características de envío.
Sin embargo, no se ha encontrado ningún precedente que describa una solución segura y más económica que las propuestas hasta ahora.
Descripción de la invención A partir de lo descrito anteriormente, es un objetivo de la presente invención proporcionar un sistema de comunicaciones seguras en una red ad-hoc vehicular (o V ANET) espontánea y auto gestionada.
Dicho objetivo se consigue mediante un sistema de comunicaciones seguras en una red ad
hoc vehicular espontánea y autogestionada que comprende: un módulo de generación de claves de identidad y de firma digital. un módulo que contenga arquitectura cliente/servidor con posibilidad de conexión a múltiples usuarios a la vez.
un módulo de envío multicast y recepción inalámbrica de beacons con seudónimos variables un módulo para autenticación mutua de nodos, con intercambio de claves públicas fijas, claves secretas temporales, y almacenes de claves públicas basado en un esquema interactivo de reto-respuesta. un módulo de actualización de los almacenes de claves públicas. un módulo de reputación de nodos, que borra de los almacenes a los nodos deshonestos, mediante el borrado de su clave pública de los almacenes de certificados. un módulo de intercambio cifrado de datos sobre elementos estáticos y dinámicos de la carretera, mediante la utilización de una clave secreta temporal del emisor un módulo de autenticación de datos mediante la comprobación de coincidencias con otros mensajes recibidos mediante agregación de datos En este sentido nuestra invención evita la necesidad de instalar ningún tipo de infraestructura ni en el vehículo ni en la carretera, lo que implica un ahorro en inversión económica y en tiempo de espera para el desarrollo de las múltiples aplicaciones de las redes vehiculares, permitiendo poner en marcha las VANETs sin ninguna inversión de gobiernos, compañías automovilísticas ni empresas de telefonía.
Se presenta aquí un sistema de comumcaCIOnes seguras en una red ad-hoc vehicular espontánea y auto gestionada, sin infraestructuras ni en carretera ni en vehículos, utilizando solamente dispositivos móviles con receptor de un sistema global de navegación por satélite, y capacidad de comunicación inalámbrica y de computación, tales como teléfonos móviles, PDAs y ordenadores portátiles.
El modo de funcionamiento previsto en la invención es totalmente distribuido y descentralizado, y tiene en cuenta la protección de la privacidad de los conductores y la defensa ante posibles ataques. Ambas cuestiones implican la posibilidad de despliegue progresivo con funcionalidad efectiva y seguridad desde el primer momento.
Los factores clave del diseño propuesto son: escalabilidad y economía, autenticación de nodos e información, privacidad, fomento de la cooperación, y bajo retardo y estabilidad de las comUnICaCiOnes.
Se propone un sistema que puede integrarse en dispositivos móviles específicos, o bien implementarse en dispositivos ya existentes como teléfonos móviles con software adecuado.
El primer elemento fundamental de la presente invención es un método de autenticación auto gestionada, que no requiere de intervención de autoridades de certificación ya que son los propios nodos los que certifican la validez de las claves públicas de los nodos en quienes confían, emitiéndoles los correspondientes certificados, que son guardados en almacenes locales y actualizados mediante un algoritmo aquí descrito. Además, la propuesta de autenticación de nodos incluye un protocolo criptográfico, que permite que cada nodo convenza a otro nodo de la posesión de cierto secreto sin que la información transmitida permita descubrir nada sobre dicho secreto, impidiendo posibles ataques de suplantación.
Un segundo elemento fundamental de esta invención es un algoritmo de cifrado simétrico utilizado en diferentes fases. Para su diseño se contemplaron todos aquellos parámetros conocidos que garantizan la seguridad de los filtrados no lineales en cifrados en flujo. Cifrado y descifrado se realizan con una XOR entre la secuencia cifrante generada y la información.
Por último la presente invención contempla también como tercer elemento fundamental un esquema de agregación de datos que incluye la generación de paquetes agregados a partir de grupos creados ad-hoc para ello, y la verificación de las firmas digitales de forma probabilística, impidiendo posibles ataques de distribución de contenidos falsos y evitando la saturación de la red debido al envío de mensajes con el mismo contenido.
Se asume que cada nodo de la red está caracterizado por los siguientes parámetros: ID, (KUro, KRro) , {IDi, KUroi, Cert (KUro¡) } roi E Almacén incluyendo:
-un IDentificador único (denotado ID) , obtenido mediante la aplicación de una función unidireccional sobre un valor único. Por ejemplo, si el dispositivo usado es un teléfono
móvil se puede usar el número, mientras que en otros casos se puede usar una dirección de correo electrónico. La función unidireccional podría ser una función hash, como por ejemplo MD5.
-un par fijo de claves pública/privada (denotadas (KU, KR) y llamadas claves de
identidad para usar en un criptosistema asimétrico, como por ejemplo RSA. -un almacén conteniendo varios IDs, y correspondientes claves públicas KUs y certificados, que el nodo mantiene en todo momento actualizado, de la forma:
IDI KUID1, Cert (KUID1 ) ID2 KUID2, Cert (KU1D2) ID3 KUID3, Cert (KUID3)
IDlím KUIDlím, Cert (KUIDlím)
De acuerdo con una realización preferida de la invención, el sistema de comunicaciones puede utilizarse para la reducción de atascos en carretera en el que: el módulo de generación de claves de identidad y de firma digital, se basa en la generación del valor decimal de la representación binaria correspondiente a la submatriz triangular superior de la matriz simétrica de adyacencia que contiene los elementos correspondientes a un circuito hamiltoniano en un grafo; el módulo de envío multicast y recepción inalámbrica de beacons con seudónimos variables se basa en el hash del listado de IDs de los nodos presente~ en su almacén de claves públicas en ese momento; el módulo para autenticación mutua de nodos se basa en que un nodo B que desee establecer contacto con un nodo A en primer lugar le solicite el listado de IDs de su almacén en ese momento, compruebe coincidencia de su hash con el seudónimo enviado por A en su beacon, y le responda indicando una clave X presente en la intersección de ambos almacenes. Luego, se realiza una demostración de conocimiento nulo mutua sobre la clave pública X de manera que cada nodo construye a partir de dicha clave, considerándola como circuito hamiltoniano, un grafo G en el que X sea solución al problema difícil del circuito hamiltoniano, y lo envía al otro nodo. Después se realizan al menos dos iteraciones de la demostración de forma que en un primer paso cada nodo envía al otro como testigo de compromiso un grafo isomorfo GI al grafo previamente enviado. A continuación cada nodo envía al otro un reto aleatorio indicando si desea recibir del otro nodo el isomorfismo entre ambos grafos o bien un circuito hamiltoniano en el grafo isomorfo. Al finalizar la demostración de conocimiento nulo, ambos nodos saben que comparten la clave pública X, que usan para cifrar mediante el cifrado simétrico descrito más adelante, y enviar al otro nodo su propia clave pública de identidad. Después se intercambian sus claves secretas temporales cifradas con la clave pública del otro nodo y finalmente cada uno usa su propia clave secreta temporal para cifrar con el cifrado simétrico descrito a continuación, y enviar cifrado su almacén de claves, que es contrastado contra el seudónimo remitido en el beacon y el listado de IDs enviado en el primer paso de la autenticación; el módulo de actualización de los almacenes de claves públicas se basa en utilizar un algoritmo en el que cada nodo escoge para guardar en su almacén aquellos certificados de claves públicas de los nodos que más certificados válidos han emitido o recibido. Los certificados y nodos del almacén se tratan en dicho algoritmo respectivamente como aristas y vértices de un grafo. el módulo de reputación de nodos se basa en reflejar la conducta de un nodo deshonesto asignando en el almacén un peso negativo a las aristas correspondientes a certificados emitidos o recibidos por él, de forma que al recibir dichos certificados un peso negativo, el vértice dejará progresivamente de estar presente en los almacenes actualizados. Este esquema se combina en el algoritmo de actualización de almacenes con una asignación de pesos a aristas en el almacén, según el siguiente criterio: 2 para certificados emitidos o recibidos directamente por el nodo, 1 para el resto de certificados, -2 para certificados denunciados directamente por el nodo, y -1 para certificados denunciados por otros nodos. el módulo de intercambio cifrado de datos se basa en un cifrado en flujo binario usando como generador de secuencia cifrante un filtrado no lineal decimado y con buffer, de un registro de desplazamiento con polinomio de realimentación primitivo sobre GF (2) de grado L igual a la longitud de la clave usada en cada momento, alimentado con la semilla formada por dicha clave, y con polinomio de realimentación dado por el polinomio primitivo de menores coeficientes no nulos y número de dichos coeficientes dado por el menor número posible mayor que 0, 01 *L. La función no lineal del filtrado tiene como orden el número primo p más cercano y menor que Ll2, incluye un término lineal correspondiente a su orden, además de un número de términos de cada orden i=2, ... , p dado por la parte entera de Lli, obtenidos multiplicando etapas sucesivas y disjuntas. La salida de dicho filtrado no lineal se de cima irregularmente de manera que la salida del registro determina en cada momento si la correspondiente salida del filtrado se utiliza o se descarta, introduciéndose en el primer caso en un buffer de tamaño 4; el módulo de autenticación de datos se basa en un esquema de agregación de datos basado en grupos reactivos en los que cada líder se encarga de construir el paquete y agregar las firmas de todos los vehículos de su grupo, y donde la verificación se realiza según un protocolo probabilístico que depende de la zona geográfica en la que se encuentre cada vehículo; se añade un módulo de detección automática de condiciones anómalas para el cálculo de velocidad, basado en la información recibida de un receptor de un sistema global de navegación por satélite.
Breve descripción de las figuras Para mayor comprensión de cuanto se ha expuesto, se acompaña de unos dibujos en los cuales, esquemáticamente sólo a título de ejemplo no limitativo, se representa un caso práctico de realización.
A continuación se describen brevemente las figuras.
La figura 1 muestra un esquema conceptual del sistema de comunicaciones de acuerdo con la invención incluyendo sus 8 módulos básicos de Generación de claves y firma (el) , Arquitectura cliente/servidor (e2) , Envío y recepción de beacons (e3) , Autenticación de nodos (e4) , Actualización de almacenes (eS) , Esquema de reputación (e6) , Intercambio cifrado (e7) y Autenticación de datos (e8) . La ejecución de dichos módulos no es necesariamente secuencial, ya que es y e6 no requieren interacción entre nodos, mientras que C7 y C8 sí, de forma que CS y C6 pueden ejecutarse en paralelo con C7 y C8. De hecho, en la propuesta de realización descrita se proponen dos modos tales que en uno de ellos no se requiere la ejecución de los módulos C7 y C8. La figura 2 muestra un esquema que representa la arquitectura cliente/servidor con conexión a múltiples usuarios a la vez, y también el envío multicast y recepción inalámbrica de los beacons. La figura 3 muestra un esquema de autenticación mutua basada en una demostración interactiva de conocimiento nulo entre un par de nodos A y B. En el paso de envío de beacons B se compromete frente al nodo A con el objeto a demostrar enviándole un testigo (DI) . Si A desea establecer contacto con B, le envía un reto aleatorio (D2) . Finalmente B devuelve la respuesta (D3) correspondiente al reto y al testigo. La figura 4 muestra un esquema que representa la propiedad de los seis grados de separación en el entorno de la certificación de claves públicas entre vehículos. La figura S muestra un esquema que muestra la propuesta de realización de la invención utilizando el teléfono móvil asociado en primer lugar al dispositivo manos libres de un vehículo, de forma que antes de poner en marcha el vehículo el usuario introduce su destino y preferencia de ruta, y cuando el móvil recibe información sobre velocidades anormales de sus vecinos, recalcula la ruta recomendada y se la sugiere al conductor. La figura 6 muestra una ejemplificación de la generación propuesta de la clave pública de identidad KUID a partir de un grafo y su matriz de adyacencia, usando los elementos de la submatriz triangular superior correspondientes a un circuito hamiltoniano en el grafo. La figura 7 muestra un esquema que representa todas las interacciones entre dos nodos A y B. Primero A envía a B el hash{VDIDEAlmacénA} (PI) , en el paso (P2) B solicita al nodo A el listado de IDs de su almacén, luego A envía a B el conjunto{VIDEAlmacénA} (P3) , B comprueba si hay una clave XE {AlmacénAílAlmacénB} yen ese caso se la envía al nodo A, (P4) . Entonces A construye y envía a B un grafo GA (X) (PS) . Después se realizan al menos dos iteraciones de tres pasos en los que primero A envía a B un grafo GIA (X) (P6) isomorfo al grafo GA (X) , luego B envía al nodo A un reto binario aleatorio (P7) , y según su valor A devuelve a B el isomorfismo entre ambos grafos o un circuito hamiltoniano en GIA (X) (P8) . Al finalizar, A usa X para cifrar su clave KU A y enviar a B el resultado Ex (KU A) (P9) , luego B usa la clave KU A para cifrar su clave KB y enviar al nodo A el resultado KU A (KB) (P 10) .
Por último, A usa su clave KA para cifrar su almacén y enviar a B el cifrado EKA (AlmacénA) (P 11) .
La figura 8 muestra un generador de secuencia cifrante basado en un registro de desplazamiento con polinomio de realimentación primitivo de coeficientes (CL, CL-l, ... , Cl) de menores valores no nulos, tales que el peso de dicho vector de coeficiente es el menor valor mayor que O, 07*L. Incluye una función de filtrado f de orden igual al número primo p más cercano a L/2, término lineal correspondiente a p, y número de términos de cada orden i=1, 2, ... , p igual a [L/i]. La salida de dicho filtrado se decima según la salida del registro, y la salida decimada se introduce en un buffer de tamaño 4. La figura 9 muestra una formación de grupo reactivo generado ad-hoc a partir de la detección de un atasco. La figura 10 muestra un esquema representando las tres zonas geográficas definidas para la autenticación de datos llamadas zona de peligro (Z 1) , zona de incertidumbre (Z2) y zona de seguridad (Z3) . La figura 11 muestra un representación gráfica de uso del cálculo de la velocidad a partir de la distancia s recorrida en un tiempo t por un nodo, permitiendo que el dispositivo recalcule automáticamente el tiempo te estimado para la ruta inicialmente recomendada y lo compare con el tiempo th inicialmente estimado para esa ruta, de forma que si te»th, Y existe una ruta alternativa con tiempo estimado ta«te, el dispositivo recomienda esta ruta al conductor.
Descripción de una realización preferida de la invención Aunque el planteamiento general de la invención puede ser usado en diferentes aplicaciones de las V ANETs, los análisis llevados a cabo y la realización concreta descrita como modo de realización están centrados en el objetivo de la reducción de atascos en la carretera.
En este caso se utilizan teléfonos móviles como dispositivos móviles, de forma que el nodo que representa al vehículo dentro de la red vehicular en cada momento es el teléfono móvil del pasajero asociado en primer lugar al dispositivo manos libres del vehículo. Esta última suposición evita la posibilidad de que en un vehículo sean varios los dispositivos de sus pasajeros que puedan estar figurando en la V ANET, ya que esto conduciría a conclusiones erróneas sobre densidad de vehículos en la carretera. Además, en el momento de sincronización del teléfono móvil como primer aparato asociado al dispositivo manos libres, el teléfono móvil modifica automáticamente de 'modo peatón' a 'modo vehículo'. En 'modo peatón' el teléfono móvil únicamente tiene activos los componentes C2, C3, C4, CS y C6, que le permiten actualizar su almacén de claves.
Para usar esta invención el usuario no tiene que realizar ninguna acción específica mientras conduce. Antes de poner en marcha el vehículo, introduce en el dispositivo su destino y preferencia de ruta. Nuestra propuesta implica que el dispositivo recibe y envía información automáticamente, usando únicamente la red vehicular y sin necesidad de requerir la colaboración del conductor en ningún momento (ver Figura 5) . Cuando el dispositivo detecta que el vehículo está circulando a una velocidad anormal con respecto a la vía, genera un aviso Y lo envía a todos sus vecinos vía broadcast. Con las informaciones recibidas, el dispositivo recalcula automáticamente la ruta recomendada y se la sugiere al conductor.
La figura 1 muestra una realización prefeerida del sistema de comUnICaCIOnes seguras de acuerdo con la invención. En esta realización preferida, el sistema de comunicaciones seguras en una red ad-hoc vehicular espontánea y auto gestionada comprende los siguientes módulos:
C l. Generación de claves de identidad y de firma digital Constituye parte del primer elemento fundamental de la invención. Dicha generación es necesaria ya que la autenticación de nodos propuesta en esta invención se basa en criptografía de clave pública auto gestionada sin requerir en ningún momento autoridades de certificación. En su lugar, cada nodo es responsable de generar sus propios pares de claves públicaJprivada, que son imprescindibles para los procesos de autenticación, y de firma digital de los mensajes que envíe una vez autenticado. Cada nodo cuenta con un par fijo de claves públicaJprivada (claves de identidad) cuya validez es certificada de forma auto gestionada mediante los almacenes de claves públicas de los propios nodos.
C2. Arquitectura cliente/servidor con posibilidad de conexión a múltiples usuarios a la vez Es necesaria para el primer elemento fundamental de la invención. Consiste en que cada nodo (cliente) realiza peticiones a otro nodo (servidor) , que le responde (ver Figura 2) . Esta idea es muy útil en sistemas multiusuarios distribuidos tales como la red vehicular objeto de esta invención porque así la capacidad de proceso se reparte entre los clientes y los servidores. En particular en esta invención este componente es necesario para la interconexión de los nodos ya que permite enviar y recibir mensajes de muchos clientes y hacia muchos servidores a la vez pues cada usuario es a la vez cliente y servidor.
e3. Envío multicast y recepción inalámbrica de beacons con seudónimos variables Es parte del primer elemento fundamental de la invención. El envío/recepción de mensajes beacons conteniendo seudónimos variables de los nodos emisores es necesario para el proceso de descubrimiento de nodos activos, y evitar posibles seguimientos (ver Figura 2) .
e4. Autenticación mutua de nodos, con intercambio de claves públicas fijas, claves secretas temporales, y almacenes de claves públicas Es la base del primer elemento fundamental de la invención. El intercambio de mensajes entre pares de nodos tiene como objeto que cada uno demuestre al otro que conoce un secreto sin revelarle nada sobre él. El esquema propuesto se basa en un esquema interactivo de reto-respuesta, según se muestra en la Figura 3. En el paso de envío de beacons cada nodo se compromete frente a sus vecinos con lo que pretende demostrar, enviándoles un testigo (DI) . Si un nodo A desea establecer contacto con otro nodo B, le envía un reto aleatorio (D2) . Entonces B devuelve la respuesta (D3) correspondiente al reto y al testigo. Tras dichos pasos, ambos nodos comparten una clave que usan para cifrar y enviar al otro su clave pública de identidad. A continuación se intercambian sus claves secretas temporales cifradas con la clave pública del otro nodo. Finalmente cada uno usa su propia clave secreta para cifrar y enviar cifrado el almacén de claves. Este módulo permite garantizar a cada nodo la autenticidad del otro, así como intercambiar las claves secretas que se usan en el módulo e7, y actualizar los almacenes de claves públicas necesarios para la posterior comprobación de la validez de las claves públicas de identidad usadas para la firma de mensajes.
e5. Actualización óptima de los almacenes de claves públicas Es una parte importante del primer elemento fundamental de la invención. Permite limitar el número de claves almacenadas a un valor denotado lím, de manera que dicho valor sea en general inferior al número de usuarios que forman la red vehicular, e igual al mínimo número que permita, aprovechando la propiedad de los seis grados de separación consistente en que cualquier nodo puede conectarse a cualquier otro a través de una cadena con no más de seis enlaces (ver Figura 4) , almacenar sólo las claves necesarias para poder autenticar a cualquier otro nodo con una alta probabilidad.
C6. Esquema de reputación de nodos, que borra de los almacenes a los nodos deshonestos Forma parte del primer elemento fundamental de la invención. Permite aislar a aquellos nodos para los que se hayan detectado comportamientos incorrectos o corruptos, mediante el borrado de su clave pública de los almacenes de certificados.
C7. Intercambio cifrado de datos sobre elementos estáticos y dinámicos de la carretera Este módulo constituye el segundo elemento fundamental de la invención. El intercambio cifrado de la información obtenida sobre la carretera y el tráfico, que tengan almacenada en ese momento los nodos es necesario para evitar comportamientos pasivos de usuarios que pretendan aprovecharse de la V ANET sin cooperar para su funcionamiento. El uso de un criptosistema de clave secreta es recomendable dada la dimensión del fichero de datos. Nuestra invención propone para ello usar una clave secreta temporal del emisor.
C8. Autenticación de datos El tercer elemento fundamental de la invención es parte de este módulo. Para el buen funcionamiento de la red es imprescindible la verificación de integridad y origen de los datos recibidos mediante firma digital, evaluación de características verificables (frescura, localización, relevancia, corrección, etc.) y comprobación de coincidencias con agregación, ya que se debe comprobar en todo momento que la información retransmitida es auténtica, actual y válida. En esta invención auto gestionada esto es sólo posible combinando técnicas de verificación de integridad y origen, evaluación de características verificables, y comprobación de coincidencias con otros mensajes recibidos mediante agregación de datos.
A continuación se describen vanos conceptos y algoritmos propuestos como realización preferida de la invención, con el objetivo concreto mencionado.
Para el módulo C 1 se propone como realización particular, que la clave pública de identidad se genere como valor decimal de la representación binaria correspondiente a la submatriz triangular superior de la matriz simétrica de adyacencia que contiene los elementos correspondientes a un circuito hamiltoniano en un grafo (ver Figura 6) .
En el módulo C3 proponemos en esta realización específica, que el seudónimo variable de cada nodo sea el hash del listado de IDs de los nodos presentes en su almacén de claves públicas en ese momento. Dado que dicho almacén va variando, el seudónimo también varía. Además así se puede realizar la comprobación de que los IDs enviados en el primer paso de la autenticación se corresponden con el hash enviado en el beacon correspondiente.
En el módulo C4 proponemos para esta realización concreta, según se muestra en la Figura 7, que un nodo B que desee establecer contacto con un nodo A en primer lugar le solicite el listado de IDs de su almacén en ese momento, compruebe coincidencia de su hash con el seudónimo enviado por A en su beacon, y le responda indicando una clave X presente en la intersección de ambos almacenes. Luego, la demostración de conocimiento nulo mutua se realiza sobre la clave pública X de manera que cada nodo construye a partir de dicha clave, considerándola como circuito hamiltoniano, un grafo G en el que X sea solución al problema difícil del circuito hamiltoniano, y lo envía al otro nodo. Después se realizan al menos dos iteraciones de la demostración de forma que en un primer paso cada nodo envía al otro como testigo de compromiso un grafo isomorfo GI al grafo previamente enviado. A continuación cada nodo envía al otro un reto aleatorio indicando si desea recibir del otro nodo el isomorfismo entre ambos grafos o bien un circuito hamiltoniano en el grafo isomorfo. Al finalizar la demostración de conocimiento nulo, ambos nodos saben que comparten la clave pública X, que usan para cifrar mediante el cifrado simétrico descrito más adelante, y enviar al otro nodo su propia clave pública de identidad. Después se intercambian sus claves secretas temporales cifradas con la clave pública del otro nodo y finalmente cada uno usa su propia clave secreta temporal para cifrar con el cifrado simétrico descrito a continuación, y enviar cifrado su almacén de claves, que es contrastado contra el seudónimo remitido en el beacon y el listado de IDs enviado en el primer paso de la autenticación.
Para la implementación del módulo CS proponemos que se utilice el algoritmo de actualización de almacén descrito a continuación. En él cada nodo escoge para guardar en su almacén aquellos certificados de claves públicas de los nodos que más certificados válidos han emitido o recibido, ya que con ello maximizan la probabilidad de intersección entre almacenes, necesaria en el módulo C4. Los certificados y nodos del almacén se tratan en dicho algoritmo respectivamente como aristas y vértices de un grafo.
.
Función Actualización _AlmacénO
Inicializar las estructuras de datos;
u:=B;
Para cada (u, ID) E AlmacénAuAlmacénB
Si gradoyonderado (lD»máximo (gradoyonderado (AlmacénA u AlmacénB)
Si cardinal (AlmacénB) <lím ó
gradoyonderado (lD»máximo (gradoyonderado (AlmacénB»
Añadir (u, ID) a AlmacénB;
u:=ID;
Fin si Fin si Fin para Finfunción Para la implementación del módulo C6 proponemos que al nodo deshonesto, en lugar de borrar directamente su clave pública del almacén tras un comportamiento indebido, se refleje su conducta asignando en el almacén un peso negativo a las aristas correspondientes a certificados emitidos o recibidos por él, de forma que al recibir dichos certificados un peso negativo, el vértice dejará progresivamente de estar presente en los almacenes actualizados. Este esquema se combina en el algoritmo de actualización de almacenes con una asignación de pesos a aristas en el almacén, según el siguiente criterio: 2 para certificados emitidos o recibidos directamente por el nodo, 1 para el resto de certificados, -2 para certificados denunciados directamente por el nodo, y -1 para certificados denunciados por otros nodos.
Para su uso en el módulo C7, así como para el cifrado de clave secreta contemplado en el módulo C4 proponemos un cifrado simétrico eficiente. Dicha eficiencia es imprescindible ya que en su primer uso en el módulo C4 la longitud de la clave usada, al tratarse de una clave pública, es en general superior a la establecida como segura para los cifrados simétricos, mientras que en su segundo uso en C4, el almacén de claves en general es un fichero muy grande. También en el propio módulo C7 el fichero a cifrar conteniendo los datos de tráfico y carretera será en general muy grande. Así pues, proponemos como cifrado simétrico el cifrado en flujo binario usando como generador de secuencia cifrante el descrito en la Figura 8, que está basado en un registro de desplazamiento con polinomio de realimentación primitivo sobre GF (2) , 1 + c¡x+ C2X2+.+ CLX\ de grado L igual a la longitud de la clave usada en cada momento, y alimentado con la semilla formada por dicha clave. El polinomio de realimentación del registro viene dado por el polinomio primitivo de menores coeficientes no nulos y número de dichos coeficientes dado por el menor número posible mayor que 0, 01 *L, para mejorar la eficiencia. El orden de la función de filtrado es el número primo p más cercano y menor que Ll2, para garantizar complejidad lineal grande. Dicha función incluye un término lineal correspondiente a su orden, además de un número de términos de cada orden i=2, ... , p dado por la parte entera de Lli, obtenidos multiplicando etapas sucesivas disjuntas, para lograr seudoaleatoriedad y confusión. Para evitar ataques por correlación, la salida de dicho filtrado no lineal se decima irregularmente de manera que la salida del registro determina en cada momento si la correspondiente salida del filtrado se utiliza o se descarta. Finalmente, con objeto de garantizar una salida estable, se incluye un buffer de tamaño 4.
Como propuesta específica para la implementación del módulo C8 proponemos que la comprobación de coincidencias mediante agregación de datos se realice según un protocolo probabilístico basado en grupos reactivos, es decir, generados ad-hoc para producir un paquete agregado (ver Figura 9) . Se distinguen para ello tres situaciones en las que se pueden encontrar los vehículos respecto a un incidente: Vehículos que son capaces de detectar un obstáculo o incidente en la carretera y se encargan de generar los correspondientes mensajes de advertencia; Vehículos que reciben los mensajes de advertencias y pueden confirmar que la información es cierta porque tienen contacto directo con el incidente; y Vehículos que reciben los mensajes de advertencia pero no son capaces de confirmar o desmentir dicha información dado que están fuera de rango. Por otra parte, dado que en la mayoría de casos la información generada en un determinado punto nos es de interés fuera de cierto radio de distancia respecto a dicho punto, se consideran tres zonas geográficas respecto a un incidente (ver Figura 10) : Zona de Peligro (Zl) o zona central del área donde el peligro puede ser detectado directamente por el vehículo; Zona de incertidumbre (Z2) que rodea la zona de peligro y donde no es posible confirmar la información directamente pero donde la toma de decisiones debe ser rápida y eficaz porque en un corto periodo de tiempo el vehículo entrará en la zona de peligro; y Zona de Seguridad (Z3) , donde los nodos se comportan siguiendo el paradigma de store-and-carr y reuniendo evidencias acerca de un mismo peligro obtenidas mediante diferentes paquetes. Asimismo proponemos el establecimiento de grupos reactivos cuando se detecta un peligro, de manera que los vehículos cooperen formando grupos dentro de su ~_~ _~~~ ~~
rango, en la misma celda geográfica y generando información agregada evitando colisiones,
retardos, sobrecargas en la red y repeticiones de información. Con la utilización de grupos
pretendemos evitar que el número de paquetes generados en una zona de peligro para advertir
de un problema crezca infinitamente, además de permitir la reducción del número de firmas
5 contenidas en un paquete. El centro del área geográfica se corresponde con la localización del
peligro existente y a partir de éste se generan los diferentes grupos. En cada grupo existe un
líder encargado de construir el paquete y agregar las firmas de todos los vehículos de su
grupo. La verificación de un mensaje de agregación solo se realiza en aquellos vehículos que
son incapaces de verificar directamente la información, es decir, cuando un vehículo recibe un
lO mensaje de advertencia sobre un incidente que está fuera de la cobertura de su antena y quiere
confirmar la autenticidad del mensaje recibido. La verificación que realizan los vehículos
depende del sentido de la marcha y de la zona geográfica en la que se encuentre. En la zona
de incertidumbre, si un vehículo recibe un mensaje de agregación conteniendo n firmas, usa el
registro de desplazamiento de longitud n definido en el módulo C7 alimentado con el primer
15 bit de cada una de las firmas para generar n bits y verificar sólo las firmas indicadas por dicha
salida. En la zona de seguridad, los vehículos comprueban una serie de firmas contenidas en
el paquete tal como se describió en el caso anterior, pero además los vehículos podrán realizar
otras verificaciones que les proporcionen mayor nivel de fiabilidad sobre la información
recibida. Así, estando en esta zona, es posible recibir varios paquetes agregados
20 correspondientes a un mismo peligro pero provenientes de diferentes grupos.
A los 8 módulos básicos del sistema descritos se añade para la realización concreta, un último
módulo que posibilita la detección automática de condiciones anómalas de la carretera con el
objeto de avisar con antelación a los conductores para evitar o reducir los atascos.
25
C9. Cálculo de velocidad, condiciones anómalas de tráfico y rutas alternativas
Este módulo usa la información recibida de un receptor de un sistema global de navegación
por satélite. Es necesario para poder usar la red con objeto de ayudar a la conducción sin tener
que instalar ningún tipo de infraestructura ni en el vehículo ni en la carretera (ver Figura 11) .
30
A pesar de que se ha descrito y representado una realización concreta de la presente
invención, es evidente que el experto en la materia podrá introducir variantes y
modificaciones, o sustituir los detalles por otros técnicamente equivalentes, sin apartarse del ámbito de protección definido por las reivindicaciones adjuntas.