¿Hay ataques conocidos que intenten usar modelos estadísticos de esta manera para romper el cifrado?
Sí. Como señaló Gowenfawr, por lo general son efectivos contra una clase anterior de algoritmos de encriptación llamados cifrados monoalfabéticos de sustitución. En estas cifras, una letra del alfabeto se intercambia con un símbolo. La misma letra siempre se sustituye con el mismo símbolo. Por ejemplo, reemplace cada a con i y reemplace cada b con l y así sucesivamente. Esta simple sustitución preserva la naturaleza estadística de cada letra. Para atacar un cifrado de sustitución monoalfabética, solo necesita saber el idioma original utilizado y la frecuencia estadística de cada letra. Encuentre el símbolo más común en el texto cifrado y reemplácelo con la letra más común en el idioma original. Para el inglés la letra más común es e.
La siguiente progresión de la sustitución monoalfabética es la sustitución poliababética. Este tipo de cifrado utiliza una tabla de alfabetos para elegir un símbolo para sustituir una letra de texto sin formato. Esto puede mitigar efectivamente un ataque estadístico (si la clave es lo suficientemente larga) al hacer que la sustitución sea una función de la clave y la letra en lugar de solo la letra original.
Los algoritmos más modernos hacen que el cifrado de cada letra sea una función de muchas entradas, lo que hace que la detección de un patrón estadístico sea mucho más difícil. Una de las entradas es una clave que suele ser un fragmento de datos aleatorios. El uso de la aleatoriedad como entrada frena la capacidad de un criptoanalista para detectar un patrón.
Sin embargo, el análisis estadístico todavía puede desempeñar un papel en el análisis de datos encriptados. Esto generalmente viene en la forma de lo que se llama un ataque de canal lateral. Un canal lateral es una transmisión de datos que es un efecto secundario de la transmisión de los datos cifrados. Un artículo reciente "Descubriendo frases habladas en conversaciones VoIP cifradas" describe cómo la codificación de tasa de bits variable produjo un canal lateral para los datos de voz encriptados.
Codificación de velocidad de bits variable
Cuando el sonido se convierte en datos, se convierte en bits de información. No todas las palabras y sonidos requieren la misma cantidad de datos para representarlos. Una forma de transmitir los datos de voz es la tasa de bits constante. FEl codificador de voz (no el encriptador) traduce los sonidos en datos que luego se encriptan y transmiten. Para una tasa de bits constante, cada segundo de sonido produce la misma cantidad de datos. Si los sonidos que se producen durante ese segundo producen menos bits de los que necesitan transmitirse, entonces el codificador llena los bits restantes con silencio. Por lo tanto, la tasa de bits constante tiene una gran cantidad de datos sin sentido. La velocidad de bits variable permite que el codificador envíe tantos bits como fueron generados por el sonido por el tamaño de cada muestra / cuadro de sonidos que debe ser indicado por los datos. Algunos algoritmos de cifrado producen datos cifrados que tienen exactamente el mismo tamaño que los datos de texto sin formato. Si usa un algoritmo de cifrado de preservación de longitud con codificación de tasa de bits variable, entonces un atacante puede ver la longitud de cada muestra de sonido y las longitudes de muestra sucesivas y usar estadísticas sobre la forma en que las personas hablan para elegir algunas frases.
¿Son eficaces? ¿Cuáles son sus defectos?
Las estadísticas pueden ser efectivas en casos especiales. La clasificación de las estadísticas es que tienden a estar limitadas al discurso y al texto plano, que son un componente más pequeño de las comunicaciones en la actualidad, como solían ser.