AEGIS · Fase 8 completa

El cifrado oculta lo que dijiste. Esto oculta que hablaste.

El cifrado mantiene privado el contenido de un mensaje. No oculta que el mensaje ocurrió. Quien observa la red sigue viendo quién habla con quién, cuándo y cuántos kilobytes (KB) se movieron — lo que en entornos sensibles puede importar tanto como las palabras. AEGIS mantiene el tráfico entre los miembros de un grupo cerrado fluyendo a tasa constante haya algo que enviar o no, así que los tiempos y el volumen no llevan ninguna señal.

LenguajeRust
AdversarioPasivo global
Pruebas del workspace195 pasan
Fuzzing1,17 M+ ejecuciones
Último envíohace poco
La única regla

“Nada está hecho hasta que una simulación de ataque lo confirma.”

La intuición sobre el análisis de tráfico falló una y otra vez durante el desarrollo. Solo el banco de simulación resultó fiable, así que se convirtió en el control. El banco en Python de sim/ es el libro de pruebas que hay detrás de cada afirmación cuantitativa de la especificación — no un añadido posterior que valida un diseño ya publicado.

En lenguaje llano

Qué es esto, en un minuto

El problema

Quien puede observar la red no necesita romper el cifrado. Ve que un extremo envió 14 KB a las 09:41:03 y que otro recibió 14 KB tres segundos después, y que lo mismo pasa dos veces al día durante once semanas. Repetido lo suficiente, eso es un mapa de quién trabaja con quién, dibujado sin leer un solo mensaje.

La solución

AEGIS hace que el cable tenga el mismo aspecto en todo momento. El tráfico sale a tasa constante haya algo que enviar o no, y lo que llega se rellena hasta un tamaño fijo, así que no hay una ráfaga en un extremo que emparejar con una ráfaga en el otro. Cuesta ancho de banda y añade retardo; la demostración de abajo enseña la protección y el precio uno al lado del otro.

Para quién es

Redacciones y cualquiera que proteja una fuente, donde lo que expone a una persona es la hora y el tamaño de un contacto. Bancos, aseguradoras y asociaciones sectoriales que compiten entre sí y aun así tienen que intercambiar datos. Organizaciones que comparten avisos sobre ataques, donde que te vean compartir puede ser ya la parte sensible.

Ocultar el contenido es la mitad fácil. Ocultar el patrón es la parte que necesita la ingeniería de abajo: la amenaza al completo, un ataque que puedes ejecutar tú mismo contra las dos configuraciones, las cifras de las pruebas y dónde se acaban las garantías.
La amenaza

Los metadatos son la parte que te identifica

Un adversario pasivo global no puede leer tus mensajes. No le hace falta. Observa todos los enlaces a la vez y correlaciona: este extremo transmitió 14 KB a las 09:41:03, aquel extremo recibió 14 KB a las 09:41:06, y el patrón se repite dos veces al día durante once semanas.

El volumen y los tiempos bastan para reconstruir el grafo de relaciones de una organización entera sin romper ni un solo cifrado. Para un consorcio — bancos que liquidan entre sí, hospitales que comparten historiales, redacciones con fuentes — el grafo es la información sensible.

AEGIS convierte el cable en un muro plano e invariable. Tasa constante pase lo que pase por debajo, así que el volumen y los tiempos no llevan ninguna señal. La demostración de abajo te deja ejecutar el ataque contra las dos configuraciones y ver la diferencia.

Modo 1

Mixnet conformada

Datos pequeños y a ráfagas, más todo el tráfico de control. Paquetes Sphinx emitidos a tasa constante, con relleno de tope duro en el receptor para que el volumen entrante de un receptor también quede fijo.

Modo 2

Plano masivo

Transferencia de archivos grandes con un nivel de seguridad ajustable — en crudo, por cubos o en lotes uniformes. Tú eliges dónde te sitúas en la curva de coste; no se oculta nada sobre el precio.

Interactivo

Sé el adversario pasivo global

Cinco emisores hablan cada uno con exactamente uno de cinco receptores. Solo ves el volumen de tráfico de cada enlace — nunca el contenido, nunca el enrutado. Correlaciona las series e intenta recuperar el emparejamiento. Luego enciende la defensa de tasa constante y vuelve a intentarlo.

Dos perfiles de cable comparados: el tráfico sin conformar muestra ráfagas rastreables y el adversario recupera el grafo de relaciones; el tráfico conformado a tasa constante es plano y la recuperación baja al nivel del azar
desplaza para ver el diagrama completo →
Lo que el adversario ve en realidad. Ejecuta tú mismo el ataque aquí abajo — los números de esta imagen son los que produce la demo.

banco de análisis de tráfico

Enlace del emisor Enlace del receptor Correlación, alta Correlación, baja

Conclusión del adversario

Correlacionando…
 
Pares recuperados
—
Correlación máxima
—

Coste de la defensa

Ancho de banda
1.0×
Latencia añadida
0 ms

El azar es el 20% — un par de cada cinco recuperado adivinando. Cualquier cosa claramente por encima de eso es el adversario ganando. Las cifras de coste son la otra mitad honesta: el conformado a tasa constante no es gratis, y AEGIS no finge que lo sea.

Una ilustración de un solo salto escrita para esta página. El sistema real apila enrutado Sphinx, filtrado de nodos guardianes, balizas de aleatoriedad distribuida y pruebas de reputación de conocimiento cero encima del conformado que se muestra aquí.
Pruebas

Ocho fases, cada una detrás de un control de red team

La implementación está completa hasta la Fase 8, el endurecimiento. Estas son las cifras que reporta el repositorio: el fuzzing se ejecutó bajo el Subsistema de Windows para Linux (WSL), y la testnet se ejecutó sobre sockets reales de Protocolo de Control de Transmisión (TCP).

36/36
Vectores de prueba criptográficos
195
Pruebas del workspace que pasan
1.17M+
Ejecuciones de fuzzing, cero caídas
41/41
Pruebas de topología
ÁreaResultadoNotas
Vectores criptográficos36 / 36 
Enrutado de relés14 / 14 
Topología41 / 41 
Negociador / correlación masiva25 / 25 
Pruebas del workspace195Todas pasan
Fuzzing de seguridad1.17M+libFuzzer vía WSL, cero caídas
TestnetTCP realEnrutado de paquetes Sphinx sobre sockets reales
Análisis de trazasBenigno vs maliciosoComparación con trazas reales
Para quién es

Oculta quién habla, no solo lo que se dijo

Revolver un mensaje es un problema resuelto. Lo que no oculta es que enviaste uno, a quién, cuándo y cuánto. Ese patrón por sí solo basta muchas veces para identificar a las personas.

01

Redacciones y cualquiera que proteja una fuente

Nadie necesita leer el mensaje si puede ver que una persona concreta contactó con un periodista concreto a las dos de la madrugada. Lo que deja expuesta a la gente es el momento y el tamaño.

02

Empresas rivales que aun así tienen que compartir datos

Bancos, aseguradoras y asociaciones sectoriales intercambian información mientras compiten. Con quién empiezas a hablar de repente, y con qué frecuencia, delata en qué estás trabajando.

03

Organizaciones que se intercambian avisos sobre ataques

Compartir información sobre amenazas es útil, pero que te vean compartirla puede ser en sí mismo la parte sensible. Esto mantiene privado el hecho de la conversación, no solo su contenido.

¿Reconoces aquí tu situación? Esto está abierto a pruebas beta ahora, y las personas para las que está hecho son aquellas cuyos comentarios de verdad lo cambian. Hazte probador beta →
Defensas

Lo que va encima del conformado

  • Handshakes con secreto hacia adelante. Que se comprometan las claves de largo plazo no expone sesiones de forma retroactiva.
  • Selección de rutas consciente de la reputación. Las rutas prefieren relés con comportamiento establecido.
  • Balizas de aleatoriedad distribuida. Ninguna parte controla por sí sola la entropía de la selección de rutas.
  • Pruebas de reputación de conocimiento cero. Un relé demuestra que supera un umbral de reputación sin revelar su puntuación.
  • Filtrado de nodos guardianes. Resistencia a Sybil en el punto donde más importa.
Límites honestos

Dónde se acaban las garantías

  • Solo tráfico interno. Las garantías fuertes valen dentro del consorcio. La salida a la red abierta es más débil y no se afirma lo contrario.
  • Empírico, no demostrado. Los resultados son cotas empíricas bajo el modelo de adversario declarado. No son demostraciones matemáticas.
  • La latencia es inherente. Una latencia de varios segundos es una propiedad del diseño, no un problema de ajuste que se vaya a optimizar hasta desaparecer.
  • Herramienta equivocada para dos partes. AEGIS sirve para ocultar el grafo de relaciones entre muchos extremos. Para un enlace de dos partes, las defensas de capa de enlace lo hacen mejor.
  • Queda investigación abierta. docs/ops/RESEARCH_AGENDA.md es la lista honesta de lo que no está terminado.
Higiene del repositorio: Integración continua (CI) en GitHub Actions, cargo deny para auditar dependencias, y una política en todo el workspace que prohíbe el código unsafe. Para una pila de red en Rust que procesa entrada adversarial, #![forbid(unsafe_code)] en todo el workspace es la línea que más peso soporta de todo el proyecto.