Почему vim жалуется на слабую криптографию при использовании blowfish2?

9

Я открыл документ с 2015 года, который я сохранил, используя встроенную криптографию в vim ( :X). Это было экономно, используя blowfishв то время.

Сообщение, которое я получил сейчас (2017), было таким:

Warning: Using a weak encryption method; see :help 'cm'
Enter encryption key: *********************************************
Enter same key again: *********************************************

Это было странно, подумал я, но я предположил, что это связано с некоторым недостатком, и после прочтения крипто-методов я set cryptomethod=blowfish2. Это работает после его открытия, показывая криптометод как blowfish 2. Проблема в том, что я все еще получаю сообщение об использовании слабого шифрования! Почему? Есть ли остатки старой крипто-подписи blowfish1? Должен ли я экспортировать текст и сохранить его заново, чтобы исправить это?

oligofren
источник
2
Попробуйте снова зашифровать его с помощью blowfish2 (это работает, только если все ваши версии vim достаточно новые)
Кристиан Брабандт

Ответы:

10

Cryptmethod хранится в самом файле и не обновляется автоматически.

Вы можете увидеть это с less:

$ less a
VimCrypt~02!!<C7>\<E1>wZzm
^E^X^Z<92>5<C9>I6<9C>S

VimCrypt~01!есть cm=zip, VimCrypt~02!есть cm=blowfish, и я думаю, что вы можете понять, что VimCrypt~03!означает :-)

Чтобы обновить файл, откройте его, явно установите cm=blowfish2и запишите его:

$ vim a
Need encryption key for "a"
Warning: Using a weak encryption method; see :help 'cm'
Enter encryption key: [enter-key]

:set cm?
  cryptmethod=blowfish
:set cm=blowfish2
:w
"a" [blowfish2] 1L, 3C written
:q

$ less a
VimCrypt~03!O[P<D5>1<D1><DA>^Zis<88>q<AB><99><8C><A6><C4><FB>6
a lines 1-1/1 (END)
Мартин Турной
источник