¿Las implementaciones criptográficas de "rollo" son realmente una preocupación para el almacenamiento fuera de línea?

2

Esta es una situación ficticia y no pretendo usar una implementación criptográfica personalizada en nada serio.

Entiendo por qué el código criptográfico mal escrito puede ser vulnerable a muchos ataques. Hasta ahora, los ejemplos que he leído sobre todos requieren que el atacante pruebe diferentes entradas y use datos, como el tiempo que lleva encriptar para romper la clave.

La salida del cifrado será la misma en las implementaciones buenas y malas de dicho cifrado si se implementa correctamente. Suponiendo que el cifrado fuera de línea y el almacenamiento en frío, donde el atacante solo obtendrá una copia de los datos cifrados más tarde, ¿son estos ataques realmente una preocupación?     

pregunta Arno 28.03.2017 - 23:29
fuente

1 respuesta

6

Sí. Sin duda, pero lo que estás describiendo es un ataque de cifrado de solo texto . Absolutamente y sin duda todavía es posible.

Quiero dividir tu pregunta en dos casos:

1) Usted escribe su propia implementación de un cifrado estandarizado.

Claro, en este caso estoy de acuerdo con usted: si ha implementado un algoritmo que sea fiel a la especificación, entonces el texto cifrado por sí mismo no será más fácil de romper que el texto cifrado de cualquier otra implementación compatible.

Yo diría que en realidad no estás "enrollando los tuyos".

Ser resistente a los ataques de canal lateral es realmente más de "endurecimiento" que de "rodar los tuyos"; Cada implementación en cualquier lugar podría necesitar más endurecimiento. Siempre.

2) Inventas tu propio cifrado o algoritmo

Aquí es donde suceden las cosas malas. Generalmente, el ataque es el análisis de frecuencia; por ejemplo, si sé que sus textos están escritos en inglés, entonces puedo comenzar a analizar sus textos cifrados buscando patrones que coincidan con la distribución de letras en inglés. Si sus textos están en formato XML, entonces puedo buscar la estructura general de los bloques XML anidados, etc.

Nunca subestimes la astucia de los criptoanalistas profesionales. Además, nunca olvide Ley de Schneier :

  

Cualquier persona, desde el aficionado más despistado al mejor criptógrafo, puede crear un algoritmo que él mismo no puede romper.

Solo porque no puedes romperlo, no significa que nadie pueda hacerlo.

    
respondido por el Mike Ounsworth 28.03.2017 - 23:39
fuente

Lea otras preguntas en las etiquetas