Создание зашифрованных архивов
Неважно зачем и почему, но иногда бывает нужно зашифровать архив от посторонних глаз. Многие графические утилиты делают это на раз, но я не большой любитель ставить их, когда я всё могу сделать с помощью старой, доброй консоли. К тому же, к примеру самый распространённый архиватор tar, сам не умеет зашифровавыать архив. Да и графические утилиты разве что могут "запаролить" zip, или rar архив, что на мой взгляд не самый лучший вариант..
Итак. Проще всего с паролем сделать zip архив:
zip -e -r test.zip test/
После ввода этой команды, zip дважды спросит пароль для архива, и запакует директорию или нужный файл. Вот и всё. Чтобы распаковать запароленный архив можно использовать unzip:
unzip -P testpass test.zip
Если не указывать пароль, то unzip спросит его интерактивно.
К сожалению zip лишь просто будет требовать пароль. Никакого шифрования от него ждать не стоит. Поэтому лучше использовать gpg или openssl.
Создание запороленного zip архива пожалуй самое простое. С остальными утилитами, и в частности с tar дело обстоит не так хорошо. Эти программы придерживаются идеологии "делать одну вещь, но делать её хорошо", и у них нет никаких встроенных средств для шифрования, или для "запароливания" архива.. Поэтому для того, чтобы получить архив с паролем, надо прибегать к помощи сторонних утилит таких как gpg или openssl, которые ещё и зашифруют содержимое архива.
Чтобы зашифровать архив с помощью gpg:
gpg -c test.tar
Gpg спросит пароль, и подтверждение пароля. На выходе получим файл - test.tar.gpg. Чтобы распаковать содержимое никакой ключ к gpg не требуется:
gpg test.tar.gpg
Кроме того, таким образом не обязательно запаковывать именно архив. Можно просто зашифровать какой либо файл.
И способ с использованием openssl:
openssl des3 -salt -in test.tar -out test.tar.des3
enter des-ede3-cbc encryption password:
Verifying - enter des-ede3-cbc encryption password:
Чтобы расшифровать:
openssl des3 -d -salt -in test.tar.des3 -out test.tar
enter des-ede3-cbc decryption password:
Если использовать для шифрования gpg или openssl, то могут возникнуть трудности с расшифрованием этих архивов в WIndows. Однако теоретически всё должно прекрасно работать в cygwin.