tipos sencillos mensajes encriptar encriptados encriptado ejemplos codigo cifrados celulares axcrypt encryption compression

encryption - sencillos - encriptar iphone 7



¿Es mejor encriptar un mensaje y luego comprimirlo o al revés? ¿Qué proporciona más seguridad? (8)

Advertencia: si un atacante controla parte del texto plano que se comprime y puede observar el tamaño del texto cifrado resultante, puede deducir el resto del texto sin formato, ajustando la parte que controla hasta la longitud del texto cifrado. disminuye (lo que implica que hubo cierta repetición entre la parte del texto sin formato que controlan y la parte secreta del texto sin formato).

Ver https://en.wikipedia.org/wiki/CRIME por ejemplo.

Tengo la suposición de que no hay protección adicional en absoluto.


Debes comprimir antes de encriptar.

El cifrado convierte sus datos en datos de alta entropía, generalmente indistinguibles de un flujo aleatorio. La compresión depende de patrones para ganar cualquier reducción de tamaño. Como el cifrado destruye dichos patrones, el algoritmo de compresión no podría darle mucha (si la hubiera) reducción de tamaño si lo aplica a datos cifrados. Si el cifrado se realiza correctamente, el resultado es básicamente datos aleatorios. La mayoría de los esquemas de compresión funcionan al encontrar patrones en sus datos que pueden ser de alguna manera factorizados.

La compresión antes del cifrado también aumenta ligeramente su resistencia práctica contra el criptoanálisis diferencial (y ciertos otros ataques) si el atacante solo puede controlar el texto plano sin comprimir, ya que la salida resultante puede ser difícil de deducir.


El cifrado funciona mejor en mensajes cortos, con una distribución uniforme de símbolos. La compresión reemplaza un mensaje con una distribución no uniforme de símbolos por otra secuencia más corta de símbolos que están distribuidos de manera más uniforme.

Por lo tanto, es matemáticamente más seguro comprimir antes del cifrado. La compresión después del cifrado no afecta el cifrado, que permanece relativamente débil debido a la distribución no uniforme de texto sin formato.

Por supuesto, si usas algo como AES256, y la NSA no está detrás de ti, esto es toda teoría.



No hay diferencia en la seguridad proporcionada.


No hay diferencia en la seguridad provista, pero debido a la forma en que funcionan los algoritmos de compresión, es probable que obtenga una mejor compresión si primero comprime y luego encripta.

Los algoritmos de compresión explotan las redundancias estadísticas (como las que existen en lenguaje natural o en muchos formatos de archivo) en los datos que deberían eliminarse al cifrarlo, por lo tanto, un mensaje cifrado no debería poder comprimirse demasiado bien.

Del artículo de wikipedia :

Sin embargo, los algoritmos de compresión de datos sin pérdida siempre fallarán al comprimir algunos archivos; de hecho, cualquier algoritmo de compresión necesariamente no podrá comprimir ningún dato que no contenga ningún patrón discernible. Por lo general, los intentos de comprimir datos que ya se han comprimido generarán una expansión, al igual que los intentos de comprimir todos los datos, excepto los más triviales.


No hay seguridad adicional (ya que la compresión no es un mecanismo de seguridad), pero un mensaje correctamente encriptado no debe ser fácilmente compresible (es decir, una regla de oro: si puede comprimir significativamente un mensaje encriptado, algo está mal).

Por lo tanto, comprima y encripte.


Sí, no debería haber diferencia en la seguridad provista.