2通りの方法にて暗号化と復号を 行って来ました
まず 出力ファイルを指定した場合
$ gpg --encrypt --output file001-org.asc --armor --recipient USER_ID file1-org $ gpg --output sym-file1_org.asc --armor --symmetric file1_org
ちなみに再度再現
$ gpg --encrypt --output file001-org.asc --armor --recipient fdopstm file1_org $ ls -l | sed 1d -rw-r--r-- 1 fdopstm users 928 9月 4日 22:33 file001-org.asc -rw-r--r-- 1 fdopstm users 13 9月 4日 13:50 file1_org
上記は ”パスフレーズを入力” を要求されませんが 暗号化ファイル” file001-org.asc”が 作成されます 一方 以下の場合は
$ gpg --output sym-file1_org.asc --armor --symmetric file1_org パスフレーズを入力: /* パスフレーズ 新規新しいもの PP-New-one */ パスフレーズを再入力: /* パスフレーズ 新規新しいもの PP-New-one */ $ ls -l | sed 1d -rw-r--r-- 1 fdopstm users 928 9月 4日 22:33 file001-org.asc -rw-r--r-- 1 fdopstm users 13 9月 4日 13:50 file1_org -rw-r--r-- 1 fdopstm users 181 9月 4日 22:36 sym-file1_org.asc
”パスフレーズを入力” を 要求されますが これは 任意の新しい パスフレー ズを使用する事が可能です
これらを 復号してみましょう 今回は ファイルに納めないで画面に出力の形と します
”file001-org.asc”の ファイルを復号する
$ gpg --decrypt file001-org.asc 次のユーザーの秘密鍵のロックを解除するには パスフレーズがいります:“fdopstm (Here is fake) <fdopstm@catland.kigdm>” 2048ビットELG-E鍵, ID C8C2853F作成日付は2007-09-01 (主鍵ID CABF456E) パスフレーズを入力: /* パスフレーズ 鍵作成時のもの PP-gen-key */ gpg: 2048-ビットELG-E鍵, ID C8C2853F, 日付2007-09-01に暗号化されました “fdopstm (Here is fake) <fdopstm@catland.kigdm>” ご機嫌よう!
では ”sym-file1_org.asc”を 復号する時は
$ gpg --decrypt sym-file1_org.asc gpg: CAST5暗号化済みデータ パスフレーズを入力: /* パスフレーズ 新規新しいもの PP-New-one */ gpg: 1 個のパスフレーズで暗号化 ご機嫌よう! gpg: 警告: メッセージの完全性は保護されていません
まずこれらをみると 復号時は パスフレーズの 問い合わせの回数は異なる。 ということになります。
出力ファイルを指定し無かった場合も 見ておきましょう。現在のファイルを 退避させます。
$ mkdir data $ mv *.asc data/ $ ls -l | sed 1d drwxr-xr-x 2 fdopstm users 4096 9月 4日 23:02 data/ -rw-r--r-- 1 fdopstm users 13 9月 4日 13:50 file1_org $ cat file1_org ご機嫌よう!
ではまずこれから あえて 復号まで処理します。
$ gpg --encrypt --armor --recipient fdopstm file1_org $ ls -l | sed 1d drwxr-xr-x 2 fdopstm users 4096 9月 4日 23:02 data/ -rw-r--r-- 1 fdopstm users 13 9月 4日 13:50 file1_org -rw-r--r-- 1 fdopstm users 928 9月 4日 23:03 file1_org.asc $ gpg --decrypt file1_org.asc 次のユーザーの秘密鍵のロックを解除するには パスフレーズがいります:“fdopstm (Here is fake) <fdopstm@catland.kigdm>” 2048ビットELG-E鍵, ID C8C2853F作成日付は2007-09-01 (主鍵ID CABF456E) パスフレーズを入力: /* パスフレーズ 鍵作成時のもの PP-gen-key */ gpg: 2048-ビットELG-E鍵, ID C8C2853F, 日付2007-09-01に暗号化されました “fdopstm (Here is fake) <fdopstm@catland.kigdm>” ご機嫌よう! $ ls -l | sed 1d drwxr-xr-x 2 fdopstm users 4096 9月 4日 23:02 data/ -rw-r--r-- 1 fdopstm users 13 9月 4日 13:50 file1_org -rw-r--r-- 1 fdopstm users 928 9月 4日 23:03 file1_org.asc
なぜ 復号までしてしまうのかは 次の 処理をまず見てみましょう。暗号化を次 の方法で行います。今回も復号までの処理を 行います。
$ gpg --armor --symmetric file1_org パスフレーズを入力: /* パスフレーズ 新規新しいもの PP-New-one */ パスフレーズを再入力: /* パスフレーズ 鍵作成時のもの PP-gen-key */ ファイル「file1_org.asc」は既に存在します。上書きしますか? (y/N) ファイル「file1_org.asc」は既に存在します。上書きしますか? (y/N) y $ ls -l | sed 1d drwxr-xr-x 2 fdopstm users 4096 9月 4日 23:02 data/ -rw-r--r-- 1 fdopstm users 13 9月 4日 13:50 file1_org -rw-r--r-- 1 fdopstm users 181 9月 4日 23:09 file1_org.asc $ gpg --decrypt file1_org.asc gpg: CAST5暗号化済みデータ パスフレーズを入力: /* パスフレーズ 鍵作成時のもの PP-gen-key */ gpg: 1 個のパスフレーズで暗号化 ご機嫌よう! gpg: 警告: メッセージの完全性は保護されていません
一応上書き確認は有るようです。設定がたまたまそうなっているのかは存じ ませんが?要するに 出力ファイルの名前を指定しない場合は 出力されるファイ ルの名前は決まっているということです。但し、どちらで 暗号化されているか はこのままではなーんも わからない 今わかるのは ファイルの大きさは異なっ ている様ですが?退避させたファイルをみると。
$ ls -l data/ | sed 1d -rw-r--r-- 1 fdopstm users 928 9月 4日 22:33 file001-org.asc -rw-r--r-- 1 fdopstm users 181 9月 4日 22:36 sym-file1_org.asc
たまたまかどうかは不明ですが大きさは今回は、同じになってるようです?
暗号化といっても 二種類あるので 名前をつけておかないとわからなくなり -ます。help の抜粋をみても
-e, --encrypt データを暗号化 -c, --symmetric 暗号化には対称暗号法のみを使用
もう一つという感じです 用語的に 以下のようなものが考えられなくも無い のですが”公開鍵暗号化 対称暗号化”とか ”対称鍵暗号 公開鍵暗号”これも 正鵠では無いようです やはり help の抜粋が いいようです??残念ながら
”--encrypt” の 方は 対称暗号法 と 公開鍵暗号 の 両方を使用するよう ですし、 又今回までの パスフレーズに関して 鍵作成時の パスフレーズしか 使 用できないというような ニュアンスで書いていますが そうでも 無いようです が 今回はこの 限定された 状態での事と考えておく方が よろしいかと思います。
いずれにせよ これらの使用方法は 自分自身の使用方法ということでありま す。”暗号化には対称暗号法のみを使用”に 対してはまあ パスフレーズを 共 有しておられる方には 復号出来るということであるが、このパスフレーズの送 る方法が中々面倒ということなのです、(隣に居ればということでは ありませ ん)しかしながら、これらを使う事は 可能です。見てきた通りの方法で処理で きます。次からは 二名の ユーザーを作成してデーターのやりとりをする場合を 見て行く事にします。
にゃんたろう 拝!
2007年 9月 5日 (水) 21:21:27 JST 作成