security - gpg - ¿Hay algún beneficio en encriptar dos veces usando pgp?
gpg linux (8)
Lo estoy preguntando desde una perspectiva "más segura". Puedo imaginar un escenario con dos claves privadas necesarias para los escenarios de descifrado que pueden hacer que este sea un modelo atractivo. Creo que no agrega ningún tipo de seguridad adicional aparte de tener que poner en peligro dos claves privadas diferentes. Creo que si fuera más seguro que encriptarlo un millón de veces sería la mejor forma de asegurar la información.
Actualización un par de años después: como señala Rasmus Faber, se agregó el cifrado 3DES para extender la vida del cifrado DES, que tuvo una amplia adopción. Encriptar dos veces usando la misma clave sufre de Meet in the Middle Attack, mientras que encriptar una tercera vez, de hecho, ofrece una mayor seguridad
Depende de la situación
Para aquellos que dieron una comparación pobre como "cerraduras en las puertas", piensen dos veces antes de escribir algo. Ese ejemplo está lejos de la realidad del cifrado. El mío es mucho mejor =)
Cuando envuelve algo, puede envolverlo con dos cosas diferentes, y se vuelve más seguro desde el exterior ... cierto. Imagine que para llegar a su interruptor de cuerda envuelto, en lugar de desenvolver, corta el material de envoltura. Doble envoltura ahora no tiene sentido, ¿lo entiendes?
El cifrado con múltiples claves es más seguro que el cifrado con una sola clave, es de sentido común.
Mi voto es que no agrega ninguna seguridad adicional
No.
además de tener que comprometer dos claves privadas diferentes.
Sí, pero ves, si encriptas algo con dos cifras, cada una usando una clave diferente, y una de las cifras se encuentra débil y se puede descifrar, la segunda cifra también debe ser débil para que el atacante recupere algo.
El doble cifrado no aumenta la seguridad.
Hay dos modos de utilizar PGP: asimétrico (clave pública, con una clave privada para descifrar) y simétrico (con una frase de contraseña). Con cualquiera de los modos, el mensaje se cifra con una clave de sesión, que generalmente es un número de 128 bits generado aleatoriamente. La clave de sesión luego se cifra con la contraseña o con la clave pública.
Hay dos formas de descifrar el mensaje. Uno es si la clave de sesión puede ser descifrada. Esto va a ser un ataque de fuerza bruta contra la frase de contraseña o un adversario que tiene tu clave privada. La segunda forma es una debilidad algorítmica.
Si el adversario puede obtener su clave privada, entonces si tiene dos llaves privadas, el adversario obtendrá ambas.
Si el adversario puede usar la fuerza bruta de su contraseña o atraparla con un registrador de pulsaciones de teclas, entonces es probable que el adversario pueda obtener ambas.
Si hay una debilidad algorítmica, entonces puede explotarse dos veces.
Entonces, aunque parezca que el cifrado doble ayuda, en la práctica no ayuda contra ninguna amenaza realista.
Entiendo que es más seguro siempre que use diferentes claves . Pero no tome mi palabra para eso. No soy un criptoanalista. Ni siquiera toco uno en la televisión.
El motivo por el que entiendo que es más seguro es que está utilizando información adicional para la codificación (tanto claves múltiples como un número desconocido de claves (a menos que publique el hecho de que hay dos)).
El doble cifrado con la misma clave hace que muchos códigos sean más fáciles de descifrar. He escuchado esto para algunos códigos, pero sé que es cierto para ROT13 :-)
Creo que el esquema de seguridad utilizado por Kerberos es mejor que el simple cifrado doble.
En realidad, tienen una clave maestra cuyo único propósito es encriptar la clave de sesión y para eso se usa toda la clave maestra. La clave de sesión es lo que se utiliza para encriptar el tráfico real y tiene una vida útil limitada. Esto tiene dos ventajas.
- Los malvados no tienen tiempo para descifrar la clave de sesión ya que, cuando lograron hacerlo, esas claves de sesión ya no están en uso.
- Esos mismos tipos malvados no tienen la oportunidad de descifrar la llave maestra simplemente porque es muy poco utilizada (necesitarían una gran cantidad de paquetes encriptados para descifrar la clave).
Pero, como dije, tome eso con un gran grano de sal. No trabajo para la NSA. Pero luego tendría que decírtelo, incluso si trabajaba para la NSA. Oh, no, no me vas a romper tan fácilmente, mi bonita.
Fragmento semi-útil: Kerberos (o Cerberus, dependiendo de tu linaje) es el perro mitológico de tres cabezas que guarda las puertas del infierno, una mascota bien elegida para ese protocolo de seguridad. Ese mismo perro se llama Fluffy en el mundo de Harry Potter (una vez tuve una novia cuyo enorme perro pastor alemán se llamaba Sugar, una bestia igualmente mal llamada).
Es más seguro, pero no mucho. La analogía con los bloqueos físicos es bastante buena. Al colocar dos cerraduras físicas del mismo tipo en una puerta, se asegura de que un ladrón que puede abrir una cerradura en cinco minutos ahora necesite pasar diez minutos. Pero podría ser mucho mejor comprar un candado que era el doble de caro, que el ladrón no podía elegir en absoluto.
En la criptografía funciona de la misma manera: en el caso general, no puede asegurarse de que el cifrado dos veces hace que sea más del doble de difícil de descifrar el cifrado. Entonces, si la NSA normalmente puede descifrar su mensaje en cinco minutos, con doble cifrado, necesitan diez minutos. Probablemente estarás mucho mejor duplicando la longitud de la clave, lo que podría hacer que necesiten 100 años para romper la encriptación.
En algunos casos, tiene sentido repetir el cifrado, pero es necesario que trabaje con el algoritmo específico para demostrarlo. Por ejemplo, Triple-DES es básicamente DES repetido tres veces con tres claves diferentes (excepto que cifras-descifras-encriptas, en lugar de solo encriptar tres veces). Pero esto también muestra lo poco intuitivo que esto funciona, porque aunque Triple-DES triplica el número de encriptaciones, solo tiene el doble de la longitud efectiva de la clave del algoritmo DES.
La respuesta, como la mayoría de las cosas, es "depende". En este caso, depende de cómo se implemente el esquema de cifrado.
En general, el uso de cifrado doble con claves diferentes mejora la seguridad, pero no cuadra la seguridad, debido al ataque meet-in-the-middle .
Básicamente, el atacante NO TIENE que romper todas las combinaciones posibles de la primera clave y la segunda clave (seguridad cuadrada). Pueden romper cada llave por turno (doble seguridad). Esto se puede hacer en el doble del tiempo de romper la clave individual.
Sin embargo, duplicar el tiempo que lleva no es una mejora significativa, como otros han notado. Si pueden romper 1 en 10 minutos, pueden romper dos en 20 minutos, lo que todavía es totalmente posible. Lo que realmente desea es aumentar la seguridad en órdenes de magnitud, de modo que en lugar de demorar 10 minutos, demore 1000 años. Esto se hace eligiendo un mejor método de encriptación, no realizando el mismo dos veces.
El artículo de wikipedia hace un buen trabajo al explicarlo.
Usando la fuerza bruta para romper el cifrado, la única forma en que saben que obtuvieron la clave es cuando el documento que han descifrado tiene sentido. Cuando el documento está doblemente encriptado, todavía se ve como basura, incluso si tiene la clave correcta, por lo que no sabe que tiene la clave correcta.
¿Es esto demasiado obvio o me estoy perdiendo algo?
WinRAR es MUY seguro. Hay un caso en el que el gobierno no pudo entrar a los archivos en una computadora portátil que un tipo cargaba desde Canadá. Él usó WinRAR. Intentaron obligarlo a darles la contraseña, y él tomó la quinta. Estuvo en apelación por 2 años, y los tribunales finalmente dijeron que no tenía que hablar (cada corte dijo eso durante este proceso). No podía creer que alguien pensara que no podría tomar la quinta. El gobierno abandonó el caso cuando perdieron su apelación, porque aún no habían descifrado los archivos.