Я перехожу с дистрибутива на основе Debian на CentOS 7. У меня есть файлы, зашифрованные с помощью blowfish, которые я прозрачно редактирую в VIM с помощью этого параметра в ~/.vimrc
:
:set cryptmethod=blowfish2
Это ошибка, которую я получаю:
E474: недопустимый аргумент: cryptmethod = blowfish2
Однако я не могу найти подходящий пакет в CentOS. Я установил следующие пакеты, но все равно получаю сообщение об ошибке:
$ sudo yum install bcrypt cryptsetup-python libcryptui py-bcrypt
Вот все пакеты, которые кажутся актуальными:
$ yum search bcrypt
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.nonstop.co.il
* epel: mirror.nonstop.co.il
* extras: mirror.nonstop.co.il
* updates: mirror.nonstop.co.il
============================= N/S matched: bcrypt ==============================
libcryptui-devel.i686 : Header files required to develop with libcryptui
libcryptui-devel.x86_64 : Header files required to develop with libcryptui
rubygem-bcrypt.x86_64 : Wrapper around bcrypt() password hashing algorithm
rubygem-bcrypt-doc.x86_64 : Documentation for rubygem-bcrypt
bcrypt.x86_64 : File encryption utility
cryptsetup-python.x86_64 : Python bindings for libcryptsetup
libcryptui.i686 : Interface components for OpenPGP
libcryptui.x86_64 : Interface components for OpenPGP
py-bcrypt.x86_64 : Python bindings for OpenBSD's Blowfish password hashing code
Name and summary matches only, use "search all" for everything.
$ yum search blowfish
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.nonstop.co.il
* epel: mirror.nonstop.co.il
* extras: mirror.nonstop.co.il
* updates: mirror.nonstop.co.il
============================ N/S matched: blowfish =============================
perl-Crypt-Eksblowfish.x86_64 : Eksblowfish block cipher
php-horde-Horde-Crypt-Blowfish.noarch : Blowfish Encryption Library
php-pear-Crypt-Blowfish.noarch : Quick two-way blowfish encryption
php-phpseclib-crypt-blowfish.noarch : Pure-PHP implementation of Blowfish
py-bcrypt.x86_64 : Python bindings for OpenBSD's Blowfish password hashing code
Name and summary matches only, use "search all" for everything
CentOS 7 поставляется с vim 7.4.160. Однако cryptmethod = blowfish2 требует vim 7.4.401 или новее.
И в любом случае вам, вероятно, следует использовать полное шифрование диска и более тщательно проверять криптографию, такую как OpenPGP. Причина, по которой cryptmethod = blowfish2 существует с самого начала, заключается в том, что cryptmethod = blowfish был ужасно сломан. И это ни с чем не совместимо.
Проблема заключалась в том, что CentOS 7 поставляется с VIM 7.4.160, поскольку Майкл Хэмптон указывает, что нам нужно 7.4.401. В комментарии я упоминаю, как установить более позднюю версию VIM, вот полные инструкции для тех, кто может пойти по моим стопам. Вся заслуга Майкла в выявлении проблемы и этот Gist для правильной configure
линия:
git clone https://github.com/vim/vim.git
cd vim/
./configure --prefix=/usr --with-features=huge --enable-rubyinterp --enable-pythoninterp
make
sudo make install