Насколько безопасно шифрование файлов с помощью blowfish?

16

Я знаю , используя :set cryptmethod=zipэто не безопасно, но , как безопасно использует :set cryptmethod=blowfish?

В википедии я читал, что шифр blowfish, как таковой, должен быть безопасным, но это ничего не говорит о безопасности его реализации Vim .

А как насчет файлов подкачки, файлов резервных копий, файлов недофайлов и других возможных способов обойти шифрование Blowfish? Насколько безопасен Vim?

Мартин Турной
источник
1
Разве это не будет лучше в информационной безопасности , учитывая, что вы уже определили используемый алгоритм (ы)?
Муру
Хм. Документы немного запутывают здесь. :h encryptionговорит, что файлы отмены и свопинга зашифрованы как в 7.3, так и в 7.4 , но :h cryptmethodв 7.4 явно упоминается undoфайл только для blowfish2.
Муру
2
@muru Это вопрос реализации Vim шифрования на основе blowfish, а не самого алгоритма blowfish. Этот вопрос также будет касаться информационной безопасности , но это не делает его неуместным здесь. Ответ, на самом деле, в том, что сам Blowfish безопасен (даже если это не лучший выбор), но реализация Vim это плохо.
Жиль "ТАК ... перестать быть злым"

Ответы:

19

Это не безопасно. Дэвид Лидбитер (David Leadbeater) опубликовал POC-код для перебора до 64 байт в статье под названием, несколько иронично, о шифровании Vim blowfish ... или почему вы не должны использовать свой собственный криптограф . Документация Vim теперь рекомендует :

- 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.

И, ранее:

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.

Резюме:

  • Если вы заботитесь о безопасности, blowfishне следует использовать. Используйте blowfish2вместо этого.
  • Пока swapи undoфайлы зашифрованы, viminfoнет.

Незатребованный совет:

  • Если вы заботитесь о безопасности, не используйте свой собственный метод шифрования . И это также означает blowfish2реализацию. Используйте что-то еще, например, GPG. gnupg.vimПлагин может быть полезным. Вроде бы поддерживается . Это отключает viminfoи файл подкачки.
Мур
источник
1
Заявление Дэвида Лидбитера в ( dgl.cx/2014/10/vim-blowfish ) последнем параграфе использует словарь для атаки грубой силы. Затем он добавляет, что "маленькие пароли" будут слабыми. Его теоретические аргументы верны, но не практичны. Хорошие 64-битные или более случайные пароли не поддаются взлому.
Мош