Существуют ли какие-либо встроенные инструменты командной строки, которые я могу зашифровать и расшифровать в текстовом файле (и предоставить ему какой-то пароль).
Существуют ли какие-либо встроенные инструменты командной строки, которые я могу зашифровать и расшифровать в текстовом файле (и предоставить ему какой-то пароль).
Ответы:
openssl
поставляется предварительно установленным в Mac OS X.
Вы можете использовать следующие команды:
# encrypt file.txt to file.enc using 256-bit AES in CBC mode
openssl enc -aes-256-cbc -salt -in file.txt -out file.enc
# the same, only the output is base64 encoded for, e.g., e-mail
openssl enc -aes-256-cbc -a -salt -in file.txt -out file.enc
# decrypt binary file.enc
openssl enc -d -aes-256-cbc -in file.enc -out file.txt
# decrypt base64-encoded version
openssl enc -d -aes-256-cbc -a -in file.enc -out file.txt
(скопировано из командной строки OpenSSL HOWTO: как мне просто зашифровать файл? )
Эти команды используют 256-битное шифрование AES с Cipher Block Chaining (CBC), что примерно так же безопасно, как и сейчас.
openssl
команд, он попросит вас enter aes-256-cbc encryption password
.
-pass pass:MYSECRETPASSWORD
, хотя пароль тогда, конечно, не скрыт от ps
и т. д.
Я построил сценарий оболочки для этого. Вы можете использовать его на Mac или Linux.
#!/bin/bash
#encrypt files with aes-256-cbc cipher using openssl
#encrypt files
if [ $1 == "-e" ];
then
if [ -f "$2" ];
then
openssl aes-256-cbc -a -e -salt -in "$2" -out "$2.aes"
else
echo "This file does not exist!"
fi
#decrypt files
elif [ $1 == "-d" ];
then
if [ -f "$2" ];
then
openssl aes-256-cbc -a -d -salt -in "$2" -out "$2.decrypt"
else
echo "This file does not exist!"
fi
#show help
elif [ $1 == "--help" ];
then
echo "This software uses openssl for encrypting files with the aes-256-cbc cipher"
echo "Usage for encrypting: ./encrypt -e [file]"
echo "Usage for decrypting: ./encrypt -d [file]"
else
echo "This action does not exist!"
echo "Use ./encrypt --help to show help."
fi
Просто сохраните это в текстовом файле выпуска chmod + x file, чтобы сделать его исполняемым. после этого используйте ./filename --help, чтобы получить информацию.
-a
приведет к раздуванию выходного файла.
Mac OS X имеет возможность создавать зашифрованные контейнерные файлы (аналогично, например, Truecrypt), которые могут увеличиваться в зависимости от объема данных, помещенных в них. Используйте Disk Utility для этого.
В Дисковой утилите выберите Файл »Создать» Пустой образ диска ... с одним из разреженных форматов изображений. Выберите AES-128 или AES-256 в качестве шифрования.
Из командной строки те же функции доступны через hdiutil
программу.