Cuatro capas, y la última es una negativa.
Cada una es una cosa distinta que puede fallar, y cada fallo cierra la sesión en lugar de continuarla en una forma más débil. Todo el diseño cabe en esa frase.
- El transporte
Texto cifrado en el cable
El flujo va sellado con XSalsa20-Poly1305 bajo una clave acordada solo para esa sesión. Un relay reenvía bytes que no sabe leer y no guarda ninguna clave que los abra.
XSalsa20-Poly1305 - La prueba
Una identidad firmada
El servidor de rendezvous firma la identidad de cada extremo con una clave Ed25519. El cliente comprueba esa firma con la clave pública compilada dentro de él, y luego comprueba que la identidad que contiene es el dispositivo que marcaste.
Ed25519 - El acuerdo
Una clave por sesión
Solo después de que la prueba se sostenga los dos extremos establecen la clave simétrica. Antes de ese punto no pasa un píxel, una tecla ni un archivo.
1 clave · 1 sesión - La negativa
Y ninguna rama que siga
Clave equivocada, identidad equivocada, tipo de mensaje equivocado, ninguna respuesta: el cliente aborta. No hay camino que caiga al texto plano — que es justo el camino al que apuntaría un atacante.
La sesión se rechaza
