テキストファイルを暗号化および復号化できる(そして何らかのパスワードを提供できる)組み込みのコマンドラインツールはありますか?.
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)を使用します。これは、現在のところほぼ安全です。
そのためのシェルスクリプトを作成しました。 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ファイルのテキストファイルに保存するだけで、実行可能になります。その後、。/ filename --helpを使用して情報を取得します。
Mac OS Xには、暗号化されたコンテナーファイルを作成する機能があり(Truecryptなどと同様)、そこに置かれるデータの量に応じてオプションで拡張できます。これを行うにはDisk Utilityを使用します。
Disk Utilityで、-sparseイメージ形式のいずれかを指定して、File"New"Blank Disk Image…を選択します。暗号化としてAES-128またはAES-256を選択します。
コマンドラインから、hdiutil
プログラムを介して同じ機能を利用できます。