¿Qué tan seguro es cifrar archivos con blowfish?

16

Sé que usar no:set cryptmethod=zip es seguro, pero ¿qué tan seguro es usar ?:set cryptmethod=blowfish

En wikipedia leí que el cifrado blowfish, como tal, debería ser seguro, pero esto no dice nada sobre la seguridad de la implementación de Vim .

¿Y qué pasa con los archivos de intercambio, los archivos de copia de seguridad, los archivos sin archivar y otras formas posibles de evitar el cifrado blowfish? ¿Qué tan seguro es Vim allí?

Martin Tournoij
fuente
1
¿No será realmente mejor en Seguridad de la información , dado que ya ha identificado los algoritmos que se utilizan?
Muru
Hmm Los documentos son un poco confusos aquí. :h encryptiondice que los archivos de deshacer e intercambiar están encriptados tanto en 7.3 como en 7.4 , pero :h cryptmethoden 7.4 solo se hace mención explícita del undoarchivo blowfish2.
muru
2
@muru Se trata de la implementación de Vim del cifrado basado en blowfish, no del algoritmo de blowfish en sí. Esta pregunta también sería sobre el tema de Seguridad de la información , pero eso no lo hace fuera de tema aquí. La respuesta es, de hecho, que el pez globo en sí es seguro (incluso si no es la mejor opción), pero que la implementación de Vim es malo.
Gilles 'SO- deja de ser malvado'

Respuestas:

19

Se no seguro. David Leadbeater publicó el código POC para la fuerza bruta de hasta 64 bytes en un artículo titulado, algo irónicamente, encriptación Vim blowfish ... o por qué no debería lanzar su propia criptografía . La documentación de Vim ahora recomienda :

- The implementation of 'cryptmethod' "blowfish" has a flaw.  It is possible
  to crack the first 64 bytes of a file and in some circumstances more of the
  file. Use of it is not recommended, but it's still the strongest method
  supported by Vim 7.3 and 7.4.  The "zip" method is even weaker.

Y, anteriormente:

The text in the swap file and the undo file is also encrypted.  E843
However, this is done block-by-block and may reduce the time needed to crack a
password.  You can disable the swap file, but then a crash will cause you to
lose your work.  The undo file can be disabled without much disadvantage. 
        :set noundofile
        :noswapfile edit secrets

Note: The text in memory is not encrypted.  A system administrator may be able
to see your text while you are editing it.  When filtering text with
":!filter" or using ":w !command" the text is also not encrypted, this may
reveal it to others.  The 'viminfo' file is not encrypted.

Resumen:

  • Si le preocupa la seguridad, blowfishno debe usarse. Usar en su blowfish2lugar.
  • Si bien swapy undoarchivos están encriptados, viminfono lo es.

Consejo no solicitado:

  • Si le importa la seguridad, no utilice su propio cifrado . Y eso significa la blowfish2implementación también. Usa algo más, como GPG. El gnupg.vimcomplemento puede ser útil. Parece que se mantiene . Se deshabilita viminfoy el archivo de intercambio.
muru
fuente
1
El reclamo de David Leadbeater en ( dgl.cx/2014/10/vim-blowfish ) el último párrafo está usando un diccionario para el ataque de fuerza bruta. Luego agrega "contraseñas pequeñas" que serían débiles. Sus argumentos teóricos son correctos pero no prácticos. Las buenas contraseñas aleatorias de 64 bits o más son indescifrables.
mosh