2. La solución

Primero, alguna información teórica relevante sobre criptografía:

  1. Los datos cifrados se distribuyen uniformemente, es decir, tienen una entropía máxima por símbolo;

  2. Los datos sin procesar y sin comprimir suelen ser redundantes, es decir, tienen una entropía submáxima.

Suponga que usted pudiera medir la entropía de los datos que van hacia -y desde- su interfaz de red. Entonces podría ver la diferencia entre los datos no cifrados y los cifrados. Esto sería verdad incluso si algunos de los datos en modo cifrado no lo estuvieran---ya que el encabezado IP más externo debe estarlo para que el paquete sea enrutable.

2.1. MUST

El Universal Statistical Test for Random Bit Generators (MUST) de Ueli Maurer mide rápidamente la entropía de una muestra. Utiliza un algoritmo de compresión. El código se proporciona a continuación para una variante que mide partes sucesivas (~cuarto de megabyte) de un archivo

2.2. Tcpdump

También necesitamos una forma de capturar los datos de red sin procesar. Un programa llamado tcpdump(1) le permite hacerlo, si tiene habilitada la interfaz de Berkeley Packet Filter en el archivo de configuración de su kernel.

El comando:

tcpdump -c 4000 -s 10000 -w dumpfile.bin

capturará 4000 paquetes sin procesar en el fichero dumpfile.bin. En este ejemplo se capturarán hasta 10.000 bytes por paquete.

Puede descargar éste y muchos otros documentos desde ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/

Si tiene dudas sobre FreeBSD consulte la documentación antes de escribir a la lista <questions@FreeBSD.org>.

Envíe sus preguntas sobre la documentación a <doc@FreeBSD.org>.