¿Por qué se sigue utilizando el modo de cifrado CBC en lugar del modo CTR aunque el modo CBC ha demostrado ser vulnerable (por ejemplo, ataque de caniche)?

¿Por qué se sigue utilizando el modo de cifrado CBC en lugar del modo CTR aunque el modo CBC ha demostrado ser vulnerable (por ejemplo, ataque de caniche)?

En tres palabras: inercia , ignorancia y robustez .


Inercia : la mayoría de las personas reaccionan a los oscuros ataques criptográficos como POODLE con un gran “meh” gordo.

O responderán con una pregunta que necesita respuesta: ¿Cuántos de nuestros clientes quedarán desconectados si dejamos de brindar soporte para esta cosita “CBC”?

O se despertará con una llamada de medianoche: Hola, nuestro mejor cliente se quejó de que están recibiendo un mensaje “No seguro” de nuestro sitio web. WTF hiciste esta mañana?!?! (Y puede explicarle a dicho cliente: F usted, no somos nosotros, es usted. Estamos haciendo lo correcto aquí. ¡ACTUALIZA TU NAVEGADOR YA! )

O está tratando con un dispositivo IoT sin ruta de actualización de firmware, en el que CBC es la menor de sus preocupaciones de seguridad.

Resumir de forma resumida el apoyo de CBC podría ir a la perfección, o podría ser una gran pesadilla de apoyo. La mayoría de la gente prefiere dormir por la noche.


Ignorancia : la mayoría de las personas configuran sus servidores web para TLS con plantillas de sitios confiables como este. Tenga en cuenta que solo habilita explícitamente un algoritmo basado en CBC (DES-CBC3-SHA), por lo que podría pensar “Estoy bastante seguro de que nuestros clientes ya no usan 3DES, así que deshabilitemos eso y estamos en casa gratis” .

No de acuerdo con la Prueba del servidor SSL (Desarrollado por Qualys SSL Labs):

Ups


Robustez: esto se aplica principalmente al uso de CBC para el cifrado en reposo (es decir, sus archivos) en lugar del cifrado en vuelo (es decir, su tráfico de datos).

Una ventaja distintiva de CBC sobre todos los modos CTR en los que puedo pensar es la reacción menos catastrófica de la primera a la corrupción de datos, algo que debería ser una preocupación ya que la corrupción silenciosa de datos es una cosa. Debido a que CBC usa el texto criptográfico del bloque anterior como un modificador del texto plano del siguiente bloque:

cualquier error de bit en un bloque de texto cifrado dañará el descifrado de solo dos bloques. Si se dañó el IV (y que a menudo se almacena como el primer “bloque de texto cifrado”), el daño se limita solo al primer bloque de texto sin formato. Si se trata de información textual, este nivel de pérdida de datos a menudo se puede mitigar simplemente leyendo el resto del texto sin formato y deduciendo el contenido de los bloques de 16 bytes corruptos.

Los modos CTR tienen una falla diferente, bueno, modo:

Si se producen errores de bit en los bloques de texto cifrado, solo el bloque de texto sin formato correspondiente se corrompe, lo que le da una ventaja sobre CBC. Sin embargo, si el bloque nonce (también conocido como “IV”) se corrompe, todo el archivo se descifrará incorrectamente.

Para fines de archivo, ser capaz de recuperar de manera confiable el 99% de los datos importantes generalmente supera el riesgo de perder todo.

(Crédito de diagramas: modo de operación de cifrado de bloque – Wikipedia)