1. gnupgについて
1.1 gnupgとは何か?
gnupg (GNU Privacy Guard)とは、PGPコンパチの暗号化ソフトウェアです。 gnupgは、DESなどの暗号アルゴリズムを用いて秘密鍵・公開鍵のペアを作成します。 RPMなどのパッケージを配布するときにgnupgを使ってサインすることで、パッケージがオリジナルのパッケージと同じかどうかであることを確認できるようになります。
1.2 gnupgを手に入れる
VineLinuxではrpmパッケージでgnupgが提供されています。
aptが使える場合は、すでにインストールされています。新たにインストールする必要はありません。
2. gnupgを使う
2.1 gnupgのセットアップ
最初にgnupgを起動します。 コマンドラインで次のように入力します。
[atsushifx@agartha tmp]$ gpg
gpg: 警告: 剣呑なメモリーを使用しています!
gpg: 詳細はhttp://www.gnupg.org/faq.htmlをご覧ください
gpg: 鍵輪「/home/atsushifx/.gnupg/secring.gpg」ができました
gpg: 鍵輪「/home/atsushifx/.gnupg/pubring.gpg」ができました
gpg: 開始します。メッセージをタイプしてください ...
Ctrl+Cキーを押してgpgを止めてください。
2.2 キーを作成する
次の手順で暗号キーを作成します。
- gpg --gen-key
gpg (GnuPG) 1.2.4; Copyright (C) 2003 Free Software Foundation, Inc. This program comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. See the file COPYING for details. gpg: 警告: 剣呑なメモリーを使用しています! gpg: 詳細はhttp://www.gnupg.org/faq.htmlをご覧ください すきな鍵の種類を選択してください: (1) DSAとElGamal (既定) (2) DSA (署名のみ) (4) RSA (署名のみ) どれにしますか? DSA鍵対は1024ビットになります。 新しいELG-E鍵対を生成します。 最小の鍵長は 768 ビット 既定の鍵長は 1024 ビット 最大の推奨鍵長は 2048 ビット どの鍵長にしますか? (1024) 2048 要求された鍵長は2048ビット 鍵の有効期限を決めてください。 0 = 無期限 <n> = 有効期限 n 日間 <n>w = 有効期限 n 週間 <n>m = 有効期限 n か月間 <n>y = 有効期限 n 年間 鍵の有効期間は? (0) Keyは無期限です これでいいですか (y/n)? y あなたの鍵を同定するためにユーザーIDが必要です。 このソフトは本名、コメント、電子メール・アドレスから 次の書式でユーザーIDを構成します: "Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>" 本名: Furukawa Atsushi 電子メール・アドレス: atsushifx@aglabo.com コメント: atsushifx 次のユーザーIDを選択しました: "Furukawa Atsushi (atsushifx) <atsushifx@aglabo.com>" 名前(N)、コメント(C)、電子メール(E)の変更、またはOK(O)か終了(Q)? o パスフレーズを入力: ******** パスフレーズを再入力: ******** 今から長い乱数を生成します。キーボードを打つとか、マウスを動かす とか、ディスクにアクセスするとかの他のことをすると、乱数生成子で 乱雑さの大きないい乱数を生成しやすくなるので、お勧めします。 +++++..+++++++++++++++++++++++++...+++++++++++++++.++++++++++++++++++++.++++++++++++++++++++++++++++++++++++++++..+++++++++++++++...++++++++++..+++++>+++++.......................f.j.kl.a.j.kl.d...j.f.ad..f.j.a.f...f.j...............................e......oj.o.e..j.i..rj.ioe..rj..iqr.i.ow....0....q2u.34.9..5. .....j.o.f ..ewq9.. .5.9q.....fa..f.j.. ad.k.s..- ..q...4t...e.........a09.e..f+ e+q++er+.++++++++++.++++++++++++++++++++.+++++..++++++++++.+ +++++++++q+++++++++++++++r++++++++++++++++++++.+++++++++e+.9.+++++.+++++++++++++++.++++++++++++++++++++.+++++>++++++++++.>+++++<+++++>+++++<...+++++...........<.+++++..a.fsa. df.d.fd.>..+++++.aefe.e..jlkj.90.j.i.as.das.e.e.rf.....>+++++..........<+++++.+++++^^^ a gpg: /home/atsushifx/.gnupg/trustdb.gpg: 信用データベースができました 公開鍵と秘密鍵を作り、署名しました。 絶対的に信用した鍵として記録しました。 pub 1024D/D3E6AA61 2004-06-12 Furukawa Atsushi (atsushifx) <atsushifx@aglabo.com> 指紋 = C4A8 FF73 A300 7F20 77D2 9F46 1C6B 87A7 D3E6 AA61 sub 2048g/39544C71 2004-06-12
2.3 署名を作成する
次の手順で、署名を作成します。
- gpg -o atsushifx.pub -a --export atsushifx
gpg: 警告: 剣呑なメモリーを使用しています!
gpg: 詳細はhttp://www.gnupg.org/faq.htmlをご覧ください
これで署名ファイルatsushifx.pubができます。 署名は次のようになります。
-----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1.2.4 (GNU/Linux) mQGiBEDKoLYRBAChrbZd9lU1Zda0O6cAhP4u3lgmWJrsmopzYz2rBdSJ5qNGF2At bw3EHYQ/VxO9azdqkeNukNvGHRwd6pCngCD4F+k1CU7wLcKdQ8k05OA1NUJwGPem /MKJ7XEgttlxArpu/1bcxziOKT+3U8jJLZITxsI8kej45nhWt+yv6wIq8wCg+Jl8 vzV/QW9Ib2oLtmqFw6gKuJkD/jtOZNQ8n4hvZqy4W4kOji1g4A8NQ+PiLORDyswt VJzl/KbYkV8h2MxcO5oPE+9kipSQ1W4KnmUph/YYysO9Q0yuEwpD/IFHHbkICZ0J D2L9oBEUEZYBJKzYHPCfMOhs/T2VsKvxLrhoaicggjNtNiQA4ZrtjDMRgucfw7tv 3BcLA/98aJHatteKR+XLWQzg2UCGkJ2YSrXDjUZ2i5ukC9RXmSSJrcurx0S1I8hk OMpaGPsFTSXPFMnNA5ldzCAYOei/9F0XHh4UGh65VGoO60DNoi29tsM4NC/M/cUx DL4zNWIqDsbBgzvu1tPnBIacARKDv9AJcKokfTRRsDuF+gWy7bQzRnVydWthd2Eg QXRzdXNoaSAoYXRzdXNoaWZ4KSA8YXRzdXNoaWZ4QGFnbGFiby5jb20+iF4EExEC AB4FAkDKoLYCGwMGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQHGuHp9PmqmGV8ACg uX//Zx8kkFOEFu5/s0fbQttH2eQAn22nuPvxFLmtvXqbdO49PfAqfX1WuQINBEDK oM0QCADrM7nzBDfQWj1BAT/Ony6t9BcO7mmh/YXgp2sV64QXf8huwXkqpi6xjcEV emGoCMvJVFsJBXAgdtM3dexOFaDuF1oKUt+4AlQTNEboQ+MCcc33yk0i1iofHezt nwf1Q4Z0iIHKIawSEFTJ20higMI9NA0BmAEdvcRVKlPe8OQeGlgjeV5GD/oYIY3p pLP4VGBLfSm3VN51s0zjUGAEnu8ObsWc7u8hRtWcSoEoJN5hvI0wxiHPytwjv3JG qXVlgYQxuRQhWpyEiuFU95Px91YrGS6q2trZI313/x9iqTFLN3CDmY8sHvFkLheR SF210NDCPRgLSM8m7gTFgMnLDzWXAAMFB/sHQH92nK119gghshRI4EWpPgGGwbWt BWQ+mlnb43kLg78EuXrv57tf6WEsQnO+5EqMwUVVxlecjpOKkOPhfTeeGQjcIOyt yItNw/caz9aZfM3kqZEkwrW6go3xBZWeDpGRFg7O6HlzSM7F9M3wu0mas88zmvC5 lcC/hjSWOFdsnAEZNj+Gh7ylMjsSguBrgOFBwj1cxIeWePXLVoJ+mcKvgEiS86oc MZUrCkTD0rQViAEhhiwmZw9gyeagfMxAy2bSbaeo7jbSQUe54GJZ+3bL+L4wFKs7 +1vSqgw0DXVVdadXS2FN+GtGW1dFNatB7O8wzseP1v3J0aiUPJfk+G2BiEkEGBEC AAkFAkDKoM0CGwwACgkQHGuHp9PmqmG1pACdEkrR604QU0NscQxMQgsC0SRrCuwA oIIg+0PXJOaIUUIyWPSoQaIcy+/D =x1U9 -----END PGP PUBLIC KEY BLOCK-----
以上で署名の作成は終了です。
なおFingerPrintはつぎのようになります。
pub 1024D/D3E6AA61 2004-06-12 Furukawa Atsushi (atsushifx) <atsushifx@aglabo.com> 指紋 = C4A8 FF73 A300 7F20 77D2 9F46 1C6B 87A7 D3E6 AA61 sub 2048g/39544C71 2004-06-12
3. 参考資料
3.1 Webサイト
以下のサイトが参考になります。
- gnupg公式Webサイト
- gnupgの公式Webサイト。最新版がダウンロードできます。
- GNU Privacy Guard講座
- gnupgについて日本語で説明しているサイト。