Linux Tips

ファイル暗号化用の公開鍵を作成するには

北浦訓行
2005/9/22

 ファイルの暗号化/復号を行うには、GnuPGhttp://www.gnupg.org/)を利用する。

 公開鍵暗号方式では、ファイルを復号する人が公開している「公開鍵」をファイル暗号化時に使用する。そして、復号には秘密鍵を使用する。

 鍵を生成するには、--gen-keyオプションを付けてgpgコマンドを実行する。

$ gpg --gen-key
gpg (GnuPG) 1.4.1; Copyright (C) 2005 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.

ご希望の鍵の種類を選択してください:
   (1) DSAとElgamal (既定)
   (2) DSA (署名のみ)
   (5) RSA (署名のみ)
選択は? 1 ←「1」を入力して[Enter]キー
DSA keypair will have 1024 bits.
ELG-E keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048) ←[Enter]キー
要求された鍵長は2048ビット
鍵の有効期限を指定してください。
         0 = 鍵は無期限
      <n>  = 鍵は n 日間で満了
      <n>w = 鍵は n 週間で満了
      <n>m = 鍵は n か月間で満了
      <n>y = 鍵は n 年間で満了
鍵の有効期間は? (0) ←[Enter]キー
Key does not expire at all
これで正しいですか? (y/N) y ←「y」を入力して[Enter]キー

あなたの鍵を同定するためにユーザーIDが必要です。
このソフトは本名、コメント、電子メール・アドレスから
次の書式でユーザーIDを構成します:
    "Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>"

本名: Noriyuki Kitaura ←名前を入力して[Enter]キー
電子メール・アドレス: nori@example.jp ←メールアドレスを入力して[Enter]キー
コメント: foobar ←コメントを入力して[Enter]キー
次のユーザーIDを選択しました:
    “Noriyuki Kitaura (foobar) <nori@example.jp>”

名前(N)、コメント(C)、電子メール(E)の変更、またはOK(O)か終了(Q)? O ←「O」を入力して[Enter]キー
秘密鍵を保護するためにパスフレーズがいります。

パスフレーズを入力: ←パスフレーズを入力して[Enter]キー
パスフレーズを再入力: ←もう一度パスフレーズを入力して[Enter]キー

今から長い乱数を生成します。キーボードを打つとか、マウスを動かす
とか、ディスクにアクセスするとかの他のことをすると、乱数生成子で
乱雑さの大きないい乱数を生成しやすくなるので、お勧めいたします。
(省略)

 鍵の生成が終了したら、--list-keysオプションで登録されている鍵の一覧を表示してみる。いま作成した鍵が表示されるはずだ。

$ gpg --list-keys
/home/nori/.gnupg/pubring.gpg
-----------------------------
pub   1024D/71CF37EF 2005-09-05
uid                  Noriyuki Kitaura (foobar) <nori@example.jp>
sub   2048g/A248D086 2005-09-05

 続いて、公開鍵のエクスポートを行う。前述したとおり、公開鍵暗号方式では公開鍵を使ってファイルを暗号化する。そのため、公開鍵をエクスポートしてファイルを暗号化する人に渡さなければならない。

 公開鍵のエクスポートには、--exportオプションを使用する。また、-aオプションを付けて公開鍵をASCII形式にすれば、電子メールの本文の形で送信きるし、Webサイトで表示することも可能だ。

$ gpg -o nori.pub -a --export nori@example.jp
$ cat nori.pub
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.1 (GNU/Linux)

mQGiBEMcbuMRBAC6/osLTmT+FBepIhlRvM7ogd+CYjzpPvUmiQvwmx/MK5M1RztG
(省略)
-----END PGP PUBLIC KEY BLOCK-----

Linux Tips Index



 Linux Squareフォーラム Linux Tipsカテゴリ別インデックス
インストール/RPM ブート/ブートローダ
ファイル操作 環境設定
ユーザー管理 コンソール/ターミナル
X Window System セキュリティ
トラブルシューティング 他OS関係
ネットワーク ハードウェア
Webサーバ Samba
GNOME KDE
OpenOffice.org エミュレータ
ソフトウェア そのほか/FAQ
全Tips公開順インデックス Linux Tips月間ランキング
Linux Squareフォーラム全記事インデックス

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間