PGP
――暗号メールと電子署名

[cover photo]
  • 1996年04月 発行
  • 432ページ
  • ISBN4-90090-002-8
  • フォーマット
  • 原書: PGP: Pretty Good Privacy

この商品は品切れ再入荷未定です

インターネットが広く一般に普及するとともに、電子メールやデータの安全性がいっそう必要とされるようになってきました。今後さらにインターネットが人々の生活に浸透するにしたがって、この分野の技術は必要不可欠になるでしょう。PGPはインターネット・コミュニティで広く支持されているプライバシー保護のための暗号技術です。本書は、開発者Phil Zimmermannによる開発の過程と発展、そして暗号技術を取り巻く論争や最近の動向など、様々な角度から話題のPGPを捉えた一冊です。また、PGPの実用的ガイドでもあります。我が国のPGPの第1人者である監訳者が、原著者と緊密な連絡を取り合い不足箇所や更新情報を補い、また日本の環境で使用する際の注意点などを盛り込み、付加価値の高い日本語翻訳版となっています。

?.PGPの概要

1章 PGPの基礎
       1.1 なぜPGPなのか(暗号の実態)
            1.1.1 メールの誤配信
            1.1.2 プライバシーの保護
       1.2 PGP誕生の経緯
       1.3 PGPの基本用語
            1.3.1 公開鍵、秘密鍵、セッション鍵
            1.3.2 鍵証明書
            1.3.3 鍵ホルダー
       1.4 パスフレーズ
            1.4.1 電子署名
            1.4.2 鍵証明書の署名
       1.5 PGPの実行
            1.5.1 コマンド行インターフェイス
            1.5.2 ヘルプを表示する(−hオプション)
            1.5.3 引数を指定する
       1.6 「ASCII形式」を使用する(−aオプション)
            1.6.1 電子メールの暗号化と署名(−eオプションと−sオプション)
       1.7 PGPのファイル拡張子
       1.8 PGPの環境変数
       1.9 PGPの内部変数
     1.10 言語ファイル
     1.11 PGPと競合するシステム
            1.11.1 PGPによる鍵証明

2章 暗号の基礎
       2.1 単純な暗号の動作
            2.1.1 コード
            2.1.2 暗号
            2.1.3 使い捨てパッド
            2.1.4 鍵と鍵長
            2.1.5 暗号解読
       2.2 共有鍵暗号
            2.2.1 共有鍵暗号のアルゴリズム
            2.2.2 共有鍵暗号の例
            2.2.3 共有鍵暗号の問題点
            2.2.4 鍵配布局
            2.2.5 共有鍵暗号の前途

       2.3 公開鍵暗号
            2.3.1 公開鍵暗号システム
            2.3.2 公開鍵暗号の利点
            2.3.3 電子署名
            2.3.4 共有鍵暗号と公開鍵暗号の連動
       2.4 暗号の強度
            2.4.1 強い暗号と弱い暗号
            2.4.2 弱い暗号を使用してもよいケース
            2.4.3 暗号にできないこと
       2.5 暗号使用に関するアメリカ国内での制限
            2.5.1 暗号とアメリカの特許制度
            2.5.2 暗号と輸出期制


?.暗号の歴史と政策

3章 PGP以前の暗号
       3.1 時代を超えてきた暗号
       3.2 国家の安全とNSA
       3.3 LuciferとDES
            3.3.1 規格基準局
            3.3.2 DESのセキュリティ
            3.3.3 DES破り
            3.3.4 DESの代替品
       3.4 公開鍵暗号
            3.4.1 Ralph Merkleのパズル
            3.4.2 Diffie-Hellmanのマルチユーザ暗号方式
            3.4.3 Diffie-Hellmanの鍵交換方式
            3.4.4 RSAの誕生
            3.4.5 ナップサック暗号の台頭と衰退
       3.5 公開鍵暗号の商用化

4章 PGPの歴史
       4.1 Phil Zimmermann:PGPへの道
            4.1.1 Metamorphic Systems
            4.1.2 Charlie Merritt
       4.2 Zimmermannと公開鍵の出会い
            4.2.1 Jim Bidzosとの出会い
            4.2.2 RSA Data Security社の台頭
            4.2.3 Jimの手腕
            4.2.4 プログラムの完成
            4.2.5 犯罪防止法案S.266
       4.3 PGPの誕生−バージョン1.0
       4.4 PGPの発展
            4.4.1 Bass-O-Matic
            4.4.2 PGPバージョン2.0
            4.4.3 サイファーパンク
            4.4.4 PEM、RSAREF、RIPEM
            4.4.5 ViaCrypt
            4.4.6 MITの参加
            4.4.7 PGPの流出
            4.4.8 Zimmermannに対する取り調べ
            4.4.9 PGPの今後
       4.5 RSA-129が解けた

5章 プライバシーと公共政策
       5.1 盗聴とアメリカ政府
       5.2 FBIのデジタルテレフォニ計画
            5.2.1 テジタルテレフォニの知れれざるコスト
            5.2.2 デジタルテレフォニの復活
            5.2.3 FBIの真の目的は
            5.2.4 情報スーパーハイウェイでの音声通信
       5.3 NSAのクリッパーチップ
            5.3.1 クリッパーの内部
            5.3.2 誰が鍵を取得するのか
            5.3.3 クリッパーと寄託暗号化標準をめぐる争い
            5.3.4 クリッパーの問題点

6章 暗号の特許と輸出規制
       6.1 特許と政策
       6.2 輸出許可;40ビットでは不十分
       6.3 電子署名標準
            6.3.1 DSSをめぐる争い
            6.3.2 DSSと特許
       6.4 PKP崩壊か
            6.4.1 Cylink訴訟
            6.4.2 Schlafly訴訟


?.PGPの使用法

7章 ファイルの保護
       7.1 ファイルの暗号化と復号化
            7.1.1 ファイルを暗号化する
            7.1.2 入力ミスをしたとき
            7.1.3 元ファイルの痕跡を消す(−wオプション)
            7.1.4 暗号ファイル復号化する(デフォルト)
       7.2 パスフレーズ
            7.2.1 パスフレーズはファイルごとに変えるべきか?
            7.2.2 パスフレーズの選択方法
            7.2.3 よいパスフレーズ
            7.2.4 長いパスフレーズを使う理由

8章 PGP鍵の作成
       8.1 公開鍵暗号を使う
       8.2 鍵RSAを支える理論(−kgオプション)
       8.3 PGPを使用して鍵を作成する(−kgオプション)
            8.3.1 公開鍵の長さを選択する
            8.3.2 ユーザIDを入力する
            8.3.3 パスフレームを入力する
            8.3.4 乱数を生成する
            8.3.5 鍵が生成されないときは
       8.4 鍵ホルダー:鍵の格納場所

9章 PGP鍵の管理
       9.1 公開鍵と秘密鍵の鍵ホルダー
       9.2 鍵を表示する(−kvオプション)
            9.2.1 公開鍵ホルダーの中身を表示する
            9.2.2 秘密鍵ホルダーの中身を表示する
            9.2.3 その他の鍵ホルダーの中身を表示する
            9.2.4 鍵に関する詳細な情報を取得する(−kvcオプション)
       9.3 鍵証明書の内容を変更する(−keオプション)
            9.3.1 パスフレーズを変更する
            9.3.2 ユーザIDを変更する(−keオプション)
            9.3.3 オプションによる編集
            9.3.4 ユーザIDを変更する(−keおよび−krオプション)
       9.4 公開鍵を渡す
            9.4.1 公開鍵ホルダーをコピーする
            9.4.2 公開鍵を取り出す(−kxオプション)
            9.4.3 ASCII形式の印刷可能な鍵を取り出す(−kxaオプション)
            9.4.4 フィルターモードを使用する(−fオプション)
            9.4.5 複数の鍵を1つのASCII形式ファイルに取り出す
       9.5 鍵ホルダーに鍵を取り付ける(−kaオプション)
            9.5.1 自分の公開鍵ホルダーに誰かの鍵を取りつける(追加する)
            9.5.2 指定した鍵ホルダーに鍵を取り付ける
            9.5.3 重複は許されない

       9.6 鍵ホルダーから鍵を取り外す(−krオプション)
            9.6.1 自分の公開鍵ホルダーから鍵を取り外す
            9.6.2 指定した鍵ホルダーから鍵を取り外す
       9.7 PGPに添付されている公開鍵

10章 電子メールの暗号化
       10.1 暗号メールを送信する
            10.1.1 手順1:メッセージを制作する
            10.1.2 手順2:受信者の公開鍵を取得する
            10.1.3 手順3:メッセージを暗号化する(−eオプション)
            10.1.4 手順4:メッセージを送信する
       10.2 全部1度に行う(−fオプション)
            10.2.1 メッセージの暗号化と送信を1度に行う
            10.2.2 入力、暗号化、送信を1度に行う
       10.3 暗号メールを受け取る
            10.3.1 メールを復号化する
            10.3.2 出力ファイルを変更する(−oオプション)
            10.3.3 復号化したファイルを表示する(−mオプション)
            10.3.4 ユーザ
       10.4 大きな文書を送受信する
            10.4.1 ASCII形式のファイルサイズを変更する
       10.5 受信者リストを指定して送信する
            10.5.1 暗号ファイルを複数の人に送る
            10.5.2 自分自身を受信者リストに追加する
            10.5.3 自分自身を常に受信者リストに追加する

11章 電子署名の使用法
       11.1 電子署名の仕組み
            11.1.1 MD5メッセージ要約関数
            11.1.2 メッセージ要約と公開鍵
            11.1.3 RSA電子署名
       11.2 PGPの電子署名
            11.2.1 メッセージに署名する(−sオプション)
            11.2.2 電子署名を検証する
            11.2.3 複数の秘密鍵から選択する(−uオプション)
            11.2.4 メッセージに署名して暗号化する(−seオプション)
            11.2.5 署名付きメールを受け取る
            11.2.6 クリア電子署名(監訳者補足)
            11.2.7 分離署名を作成する(−sbオプション)

12章 鍵の証明と配布
       12.1 偽装鍵
       12.2 信用の輪
       12.3 鍵を追加する(−kaオプション)
            12.3.1 Phil's Pretty Good Pizaaの鍵を追加する
            12.3.2 Terry Talbot弁護士の鍵を追加する
            12.3.3 Sam Spadeの鍵を追加する
       12.4 署名を表示する
            12.4.1 自分の鍵と署名をチェックする(−kcオプション)
            12.4.2 鍵と署名をチェックする(−kvvオプション)
            12.4.3 すべての鍵の指紋をチェックする(−kvcオプション)
       12.5 個人の信用情報を変更する(−keオプション)
            12.5.1 信用度を変更する理由
            12.5.2 異なる鍵ホルダーを指定する
       12.6 鍵に署名する(−ksオプション)
            12.6.1 異なる秘密鍵で署名する(−uオプション)
       12.7 署名を削除する(−krsオプション)
       12.8 未知の署名者
       12.9 keys.ascの中の鍵を証明する(バージョン2.6.1)
      12.10 有効性の意味(監訳者補足)
            12.10.1 有効性の決定規則

13章 鍵の削除、利用の停止、鍵の寄託
       13.1 公開鍵を削除する
            13.1.1 鍵削除証明書とは
            13.1.2 鍵削除証明書を作成する(−kdオプション)
            13.1.3 鍵の削除に関する質問
       13.2 公開鍵を利用の停止にする(−kdオプション)
       13.3 自作の鍵の寄託(escrow)システム
            13.3.1 単純な鍵の寄託
            13.3.2 分割鍵の寄託

14章 設定ファイル
       14.1 設定ファイルとは
       14.2 設定ファイルの存在場所 
       14.3 設定ファイルを編集する
       14.4 コマンド行で変数を指定する
       14.5 設定ファイルの中身
       14.6 変数一覧

15章 インターネット鍵サーバ
       15.1 鍵サーバとの通信
       15.2 鍵サーバで使えるコマンド
            15.2.1 ヘルプ情報を取得する
            15.2.2 サーバに登録されている鍵を調べる
            15.2.3 サーバに自分の鍵を追加する
            15.2.4 サーバから公開鍵を取得する
            15.2.5 複数の公開鍵を取得する
            15.2.6 新しく追加された鍵を取得する
       15.3 インターネット鍵サーバー覧


?.付録

付録A PGPの入手方法
      A.1 MITからPGPを入手する
            A .1.1 実際の取得作業
      A.2 その他の入手方法
            A .2.1 ハンブルク大学:暗号関連ファイルの宝庫
            A .2.2 カリフォルニア大学バークレー校:サイファーパンク
            A .2.3 PGPのFAQおよびその他の情報
            A .2.4 電子フロンティア協会
            A .2.5 その他の入手先

付録B PCへのインストール
      B.1 インストール先ディレクトリを選択する
      B.2 PGPを解凍する
      B.3 取得したPGPを検証する
      B.4 PGPの環境変数を設定する
            B .4.1 PGPPATH環境変数
            B .4.2 TZ環境変数
            B .4.3 autoexec.batファイルの例
      B.5 秘密鍵−公開鍵の組を作成する

付録C UNIXシステムへのインストール
      C.1 UNIX上でPGPを解凍する
            C .1.1 Cコンパイラを入手する
            C .1.2 RSAREFライブラリを作成する
            C .1.3 PGPを作成する
      C.2 PGPを検証する
      C.3 インストールを完了する
      C.4 PGPをマルチユーザ環境で使用する際の注意点

付録D Macintoshへのインストール
      D.1 MacPGPを入手する
      D.2 MacPGPをインストールする
            D .2.1 ファイルをコピーする
            D .2.2 ファイルを解凍する
            D .2.3 設定用フォルダを作成する
            D .2.4 PGPフォルダ作成する
            D .2.5 MacPGPを起動する
            D .2.6 鍵を作成する
            D .2.7 鍵ホルダーに鍵を追加する
            D .2.8 配布パッケージをMacバイナリ形式に変換する
            D .2.9 取得したMacPGPを検証する

付録E PGPのバージョン

付録F 暗号の数学
      F.1 Diffie-Hellman鍵交換方式の動作方式
      F.2 RSAの動作方法
            F .2.1 RSAの安全性
            F .2.2 「非常に大きい」とはどのくらいか
            F .2.3 乱数の乱数性
      F.3 素因数分解の困難さに関するRon Rivest教授の論文
            F .3.1 概要
            F .3.2 素因数分解のアルゴリズム
            F .3.3 計算コスト
            F .3.4 結果
            F .3.5 結論
      F.4 PGPの素数生成法

付録G PGPにおける日本語の問題(監訳者補足)
      G.1 漢字コードの基礎知識
      G.2 PGPのメッセージの日本語化
      G.3 メッセージの正規化とPGP

用語集
参考文献
索引

ここで紹介する正誤表には、書籍発行後に気づいた誤植や更新された情報を掲載しています。以下のリストに記載の年月は、正誤表を作成し、増刷書籍を印刷した月です。お手持ちの書籍では、すでに修正が施されている場合がありますので、書籍最終ページの奥付でお手持ちの書籍の刷版、刷り年月日をご確認の上、ご利用ください。

p
xii枠l.19PGPのような暗号プログラムの使用を禁止PGPのような暗号プログラムを使用することを禁止
xiv24第II部「PGPの使い方」第III部「PGPの使用法」
289章「鍵の管理」9章「PGP 鍵の管理」
315
219
224
1455
51PGP基本用語PGPの基本用語
9152章「暗号の基本」2章「暗号の基礎」
337暗号化を取り巻く暗号を取り巻く
5426という事実から保護することはという事実を隠すことは
593説明する説明する。
6229奇襲攻撃の後議会奇襲攻撃の後、議会
137枠l.6公開キー式公開鍵式
14548章「鍵の作成」8章「PGP 鍵の作成」
164枠l.4大きな素数の方がよりRSAの鍵に大きな素数の方がより強力なRSAの鍵に
16813従来型の暗号方式を慣用暗号方式
1829ASCIIarmorASCII armor
2121それが誰であるかはそれが誰のために暗号化されたのか
215脚注注1訳注
22011RSA暗号化はRSA暗号は
23522自分で証明した鍵を追加する鍵を追加した後で署名する
2369pgp -ka a:phil.pgpunix% pgp -ka a:phil.pop

Feedback

皆さんのご意見をお聞かせください。ご購入いただいた書籍やオライリー・ジャパンへのご感想やご意見、ご提案などをお聞かせください。より良い書籍づくりやサービス改良のための参考にさせていただきます。
[feedbackページへ]