¿Cómo funciona Radar COVID?

¿Qué es Radar COVID?

Radar COVID es la aplicación oficial del Gobierno de España, que está orientada a controlar los contagios de coronavirus mediante el rastreo de manera anónima de los casos.

La aplicación estuvo en fase de pruebas en la isla de La Gomera, al darse unos buenos resultados con una pequeña muestra de la población, se ha decidido desplegarla al resto de España, pudiendo así ayudar de cara a esta segunda oleada a avisar a aquellos expuestos al COVID y por lo tanto identificar a nuevos posibles contagios. Para que esta aplicación tenga sentido, por lo menos un 65% de la población debería tenerla activa en sus dispositivos móviles, y con el bluetooth activado.

¿Qué es lo que se pretende?

La idea de esta aplicación, es ir un paso por delante del virus, y aquellos que hayan sido expuestos al virus que se pongan en cuarentena para poder frenar la expansión del COVID. En la siguiente ilustración se puede observar el concepto:

Cuestiones sobre la privacidad

Lo cierto, es que el Gobierno español no ha desarrollado la aplicación desde cero, sino que ha utilizado una librería diseñada especificamente para el rastreo manteniendo la privacidad tanto de la persona que ha dado positivo, como aquellos que han sido expuestos. La librería en concreto es la DP^3T (Distributed privacy-preserving proximity contact tracing). Hay que añadir, que la aplicación no solicita ninguna información del usuario, ni permisos de geolocalización, de ser así, comprobad si instalasteis la aplicación oficial y no algún clon con posible malware.

Ahora veremos cómo funciona y cómo consigue mantener la privacidad de los usuarios.

¿Cómo funciona?

EphIDs

Las Ephemeral IDs o IDs efímeros son unos IDs son unos identificadores que se renuevan de manera periodica y que se transmiten en los beacons através de BLE (Bluetooth Low Energy). Cuando algún dispositivo móvil observa estos beacons, almacena el EphmID con una indicación temporal (timestamp), así como otras mediciones de la exposición como la atenuación de la señal. Estas mediciones son importantes porque se utilizaran para calcular el cómo de expuesto estuvo el usuario.


Los EphID se generan con una seed, los dispositivos móviles generan una seed aleatoria en el momento de la instalación, \( SK_{t} \) siendo \( t \) el día actual.

Cada día la seed \( SK_{t} \) va rotando, calculandose de la siguiente manera:

\[ SK_{t} = H\left( SK_{t-1} \right) \]

\( H \) es una función criptográfica hash.

Para evitar el tracking de estos EphIDs y poder potencialmente descubirir a que persona o dispositivo va asociado un EphID, es vital que los EphIDs cambien cada poco tiempo, a este tiempo de generación de nuevo EphID se le llama epoch \( L \) que en principio suelen ser unos minutos, este valor estaría predefinido, en este caso, por el Gobierno de España. Durante al día se genera una lista de EphIDs:

\[ n = \frac{24\cdot 60}{L} \]

Y cada EphID:

\[ EphID_{n} = PRG(PRF(SK_{t}, Public Key)) \]

Siendo \( PRF \) una función pseudo-aleatoria como puede ser HMAC-SHA256. \( PRG \) es un generador pseudo-aleatorio como AES (Galois/Counter mode). Public Key es la clave pública.

Rastreo

Cuando un usuario ha dado positivo, puede comunicarlo a la aplicación introduciendo el código de diagnóstico:


De esa manera, el EphID y la indicación temporal del usuario positivo en COVID es enviado al backend. De manera periódica, la aplicación irá descargando información del backend y comprobará si has estado en contacto o cerca del usuario con \( \left( SK_{t}, t \right) \):


Hay tres diferentes protocolos para la transmisión de los EphIDs, si te interesa más sobre estas implementaciones, puedes acceder al repositorio de DP^3T y descagar toda la información sobre las implementaciones, protocolos, riesgos y más.

Si estuvistes expuesto al COVID, te aparecerá la siguiente pantalla pero en vez de salir “Exposición baja”, te saldrá “Exposición alta”:


En caso de que hayas dado positivo, ponte en contacto con los responsables de tu Comunidad Autónoma. En el caso de la Comunidad de Madrid, el teléfono de asistencia para el COVID es el 900 102 112.

Dicho esto, no seas cafre y sé responsable. Todas las cosas se pueden hacer si se hacen bien y con las medidas de prevención adecuadas.

Para más información sobre que información y host se utilizan, recomiendo la siguiente lectura: https://www.scss.tcd.ie/Doug.Leith/pubs/contact_tracing_app_traffic.pdf

Referencias:

Toda la información expuesta en este post, ha sido obtenida de: