Discord ha introducido el protocolo DAVE, un protocolo de cifrado de extremo a extremo personalizado (E2EE) diseñado para proteger las llamadas de audio y video en la plataforma contra interceptaciones no autorizadas.
DAVE fue creado con la ayuda de expertos en ciberseguridad de Trail of Bits, quienes comprobado el código y la implementación del sistema E2EE.
El nuevo sistema cubrirá llamadas de audio y video individuales entre usuarios en canales privados, llamadas de audio y video en chats de grupos pequeños, canales de voz basados en servidores utilizados para conversaciones de grupos más grandes y transmisión en tiempo real.
«Hoy comenzaremos a migrar voz y video en mensajes directos, mensajes directos grupales, canales de voz y transmisiones en vivo para usar E2EE». lee el anuncio de Discord.
“Podrá confirmar cuándo las llamadas están cifradas de extremo a extremo y realizar la verificación de otros miembros de esas llamadas. »
Discord, originalmente diseñado para permitir a los jugadores comunicarse durante el juego, ahora se ha convertido en una de las plataformas de comunicación más populares del mundo, atendiendo a grupos con intereses comunes, creadores, empresas y diversas comunidades.
La introducción de DAVE es un importante paso adelante para mejorar la seguridad y privacidad de los datos en la plataforma, utilizada por más de 200 millones de personas.
Lo más importante es que Discord decidió hacer que el protocolo y sus bibliotecas de soporte fueran de código abierto, lo que permitió a los investigadores de seguridad examinarlos. También se ha publicado un documento técnico con información técnica completa, lo que garantiza la transparencia para la comunidad.
Presentación técnica de DAVE.
DAVE utiliza la API de transformación codificada WebRTC, que permite cifrar fotogramas multimedia (audio y vídeo) después de codificarlos y antes de empaquetarlos para su transmisión. El extremo receptor descifra las tramas y luego las decodifica.
Sólo los metadatos de códecs especiales, como encabezados y secuencias reservadas, no están cifrados.
Para la gestión de claves, se utiliza el protocolo Messaging Layer Security (MLS) para intercambios de claves de grupo seguros y escalables, mientras que cada participante tiene una clave de cifrado de medios simétrica por remitente. El algoritmo de firma digital de curva elíptica (ECDSA) se utiliza para generar pares de claves de identidad.
Cuando un grupo cambia su composición (un miembro se va o se une un nuevo miembro), comienza una nueva «época» y el estado de cifrado del grupo pasa a esta nueva época generando nuevas claves. Este proceso debe llevarse a cabo sin perturbaciones significativas para los participantes.
Discord dice que MLS agrega algo de latencia para los intercambios de claves, pero DAVE está diseñado para mantener esa demora por debajo del umbral de unos pocos cientos de milisegundos, incluso durante llamadas de grupos grandes.
Finalmente, cuando se trata de verificación de usuarios, existen métodos fuera de banda, como una comparación de códigos de verificación llamados «códigos de privacidad de voz», derivados del estado de época MLS del grupo.
La resistencia al seguimiento persistente se logra mediante el uso de claves de identidad efímeras, ya que a los usuarios se les asigna una nueva clave para cada llamada.
Despliegue por etapas
Discord ha comenzado el proceso de migración de todos los canales elegibles a DAVE y los usuarios podrán confirmar si sus llamadas están cifradas de extremo a extremo marcando el indicador correspondiente en la interfaz.
Probablemente pasará algún tiempo antes de que todos los usuarios tengan acceso completo al nuevo sistema E2EE en todos los dispositivos y canales.
Los usuarios no necesitan hacer nada más que actualizar a la última aplicación cliente, ya que los clientes obsoletos se limitarán únicamente al cifrado de transporte.
El lanzamiento inicial cubrirá las aplicaciones móviles y de escritorio de Discord, y los clientes web seguirán en el futuro.