sttsのソースコードMemoブログ

色々やってみた結果のMemo

GnuPG

ファイルの暗号化をしたくてGnuPGを試してみた時のメモです。

Linuxでgpg

http://www.nina.jp/server/windows/gpg/commands.htmlを参考にしました。

初めに秘密鍵と公開鍵を生成します。

$ gpg --gen-key

乱数が足りないとか表示された場合、マウスとキーボードなどを適当に動かします。

暗号化するときは

gpg -e hoge.txt

復号化するときは

gpg -d hoge.txt.gpg > hoge2.txt

します。

ユーザIDの入力やパスフレーズの入力しない

ユーザIDの入力やパスフレーズの入力が必要になるとシェルスクリプトから実行しにくいので、シェルスクリプトから暗号化するときは、

$ gpg -r userid -e hoge.txt

復号化するときは

$ gpg --passphrase yourpassp -d hoge.txt.gpg > hoge2.txt
もしくは
$ eval `gpg-agent --daemon`
$ gpg -d hoge.txt.gpg > hoge3.txt

します。
gpg-agentは、パスフレーズを記憶するツールです。初めの1回だけパスフレーズを聞いてきます。
gpg-agentを止めるときは、killします。

Windowsでgpg

http://www.gnupt.de/wp/
http://www.gnupt.de/wp/?p=3
からGnuPTをダウンロード、インストールしました。

Linuxで秘密鍵をexportし

gpg -o secret.key --export-secret-keys

WinPTの「Key Manger」のメニューで
「Key」->「Import」を行いインポートしました。
WinPTのファイルマネージャで暗号化、複合化できるのを確認しました。