/rootКарма сёрфинг→ Немного о шифровании

9 июля, 2010

Немного о шифровании

Шифрование

Если нужно зашифровать отдельный файл (к примеру архив или документ) — можно воспользоваться утилитой openssl.
Шифрование файла file будет выглядеть так:

$ openssl enc -e -aes-256-cbc -k ПАРОЛЬ -in ./file -out ./file.encoded

или так:

$ cat ./file | openssl enc -e -aes-256-cbc -k ПАРОЛЬ > file.encoded

Параметр -k и пароль можно не указывать, тогда он будет запрошен во время выполнения команды.

вот ещё варианты:

$ openssl aes-128-cbc -salt -in file -out file.aes
$ openssl aes-128-cbc -d -salt -in file.aes -out file

Дешифрование

Расшифровать обратно файл можно будет командой:

<span style="font-family: monospace;">$ </span>openssl enc -d -aes-256-cbc -k ПАРОЛЬ -in ./file -out ./file.encoded

(параметр -e меняется на -d) ну или соответственно:

$ cat ./file.encoded | openssl enc -d -aes-256-cbc -k ПАРОЛЬ &gt; ./file

Параметр -k и пароль можно не указывать, тогда он будет запрошен во время выполнения команды.

Комбинирование (Создание шифрованого архива, разбиение на тома)

Естественно команды можно комбинировать, и к примеру создание архива директории dir со сжатием gzip и шифрованием openssl aes будет выглядеть так:

$ tar -czf - ./dir | openssl enc -e -aes-256-cbc -k ПАРОЛЬ > archive.tar.gz.encoded

Рашифровываем (в обратном порядке):

$ openssl enc -d -aes-256-cbc -in ./archive.tar.gz.encoded | tar -xz

Плюс если шифрованный архив надо разбить на куски — добавляем split, все ограничивается только вашей фантазией :)

$ tar -czf - ./dir | openssl enc -e -aes-256-cbc -k ПАРОЛЬ | split -db 4M - arc

Склеиваем, дешифруем, разжимаем, разворачиваем:

$ cat arc* | openssl enc -d -aes-256-cbc | tar -xzf - 

Шифрование GPG

GnuPG очень известный способ шифрования и подписи электронных писем или других данных, кроме того gpg предоставляет расширенную систему управления ключами. В данных примерах рассматривается только шифрование файлов
Самым простым является симметричный шифр. В этом случае файл шифруется с помощью пароля, соответственно расшифровать его може тот, кто знает этот пароль, никаких ключей не требуется. Gpg добавляет расширение «*.gpg» к имени зашифрованного файла.

$ gpg -c file                        # Зашифровать файл по паролю
$ gpg file.gpg                       # Расшифровать файл ( -o другой файл) 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *