Liberación código fuente

La principal finalidad del desarrollo de la aplicación móvil RadarCOVID es trabajar con el máximo rigor sobre aspectos como la facilidad de descarga, la usabilidad, la accesibilidad o la seguridad. Para responder a estas necesidades, el código ha sido diseñado para ser práctico y efectivo. La aplicación se ha desarrollado siguiendo estándares de programación y metodología reconocidos a nivel internacional y utilizada en otros países como Alemania, Italia, con el objetivo de crear una aplicación basada en el protocolo DP3-T. Asimismo, ha sido sometida a vigilancia y seguridad en los máximos estándares posibles.

El código publicado es una versión en preproducción que se lanzó el 15 de septiembre. Se trata de una versión más avanzada y mejorada que la utilizada anteriormente, incorporando mejoras detectadas durante la fase de testeo:

Algunos ejemplos de dichas mejoras son:

  • Adaptaciones funcionales y técnicas para poder soportar las lenguas cooficiales, que en la versión del piloto no se había implementado.
  • Reposición del estado a “Sin riesgo detectado” una vez transcurridos los días indicados por el equipo epidemiológico que colabora con el equipo de desarrollo de la aplicación.

A esto se suma la voluntad de realizar un ejercicio de transparencia publicando el código antes de que se suba a producción, siguiendo la filosofía del código abierto, con el objetivo de que se puedan identificar bugs antes de que los usuarios instalen esa versión. Tras la implementación de esta reléase del 15 de septiembre y que corresponde con el código de preproducción actual, se fuerza una actualización de la aplicación a los usuarios que la tengan ya instalada con la intención de que todo el parque de aplicaciones tengan la misma versión del código.

Se estableció un sistema para notificar/forzar a todas las personas que tuviesen ya la aplicación instalada en sus dispositivos móviles que actualicen con la última versión disponible. También se comunicó a través de todos los canales disponibles la necesidad de dicha actualización de la aplicación a la versión que se lanzó el 15 de septiembre.

Existe un compromiso de transparencia por lo que antes de subir una nueva versión a producción, se publicará el código. En otro orden, el equipo ha realizado aportaciones procurando contribuir a la mejora del código abierto DP3-T que ha servido como base a los desarrollos de esta aplicación.

Algunos ejemplos:

  • Se realizó una PR en el repo del sdk de Android para la extensión e inicialización de los parámetros de configuración utilizados API de Apple.
  • Se reportó una incidencia en el repo del sdk de Android relacionada con el establecimiento de los umbrales de atenuación en los parámetros de configuración del algoritmo de cálculo de exposición que el equipo de DP-3T corrigió a posteriori.
  • Se reportaron en el repo del sdk de Android mejoras relativas a la gestión del historial de contactos de riesgo, que aún no han sido evaluadas por el equipo de DP-3T.
  • Se realizó una PR en el repo de backend incorporando actualizaciones de librerías para las cuales se identificó por parte de SIA en sus auditorías que su uso podría suponer un problema de seguridad, así como mejora de Docker y cambios en la forma de procesar los ficheros de protocol buffer.

Los aspectos relativos a la seguridad que se han trabajado para RadarCOVID están en línea con las aplicaciones de otros países, e incluso con estándares superiores y que está sometida a constantes auditorías internas y externas, por parte de la SIA y el Centro Criptográfico Nacional. Es importante tener en cuenta que al ser una aplicación que no recoge los datos de los usuarios, son completamente anónimos.

Siguiendo los principios de transparencia, toda la documentación relativa a la privacidad y a la seguridad de la aplicación será publicada en los plazos establecidos.

En cuanto a la seguridad en el proceso de certificación de los códigos positivos, las Comunidades Autónomas son las responsables de la custodia de los códigos.

La principal razón ha sido la de esperar a que todas las CCAA que la han solicitado la tuvieran integrada en sus sistemas antes de abrirlo. Esta decisión fue tomada basándonos siempre en preservar el bien común de la población frente a la situación de contexto que estamos viviendo, nunca por falta de transparencia.

La crisis de la COVID-19 ha afectado a todos los países de manera distinta y todos tienen sus diferentes sistemas sanitarios. En un contexto como el de España, con las dif erentes CCAA teniendo que adaptar la aplicación para su uso y con un verano en el que los rebrotes se han activado, se decidió publicar el código una vez ya estuviera adaptada en todas las regiones y permitir así facilitar el proceso.

En la Radar COVID intervenimos tres partes: DP3-T, API Google y Apple y el código desarrollado por SEDIA (App y Backend). Queremos hacer aportaciones en todas ellas y también recibirlas por parte de la comunidad.