暗号化キーインフラ
古典共有キー暗号システムを使用するためには、をバインドすることはできませんカードをキーを押します。
公開鍵暗号システムを使用する2つのキーは、 1つには、すべてができるようになりました。 同協会の間で暗号化キーと、校長は重要なので、使用するかを決定し、公開鍵暗号化するための秘密のメッセージです。 誤った場合、結合は、意図する以外のメッセージの受信者が読めます。
このディスカッションの目的のために、私たちが識別されると仮定して、校長の名前を並べ替えて受け入れてきたいくつかのエンティティを認証して暗号化キーを生成します。 この質問は、どのようにいくつかの主要な(おそらく異なる)に公開鍵をバインドすることができ、アイデンティティを表現します。
明白なアイデアはオリジネータに署名するための公開鍵と秘密鍵の彼女が、この問題を単に押し、別のレベルでは、知っているだけで希望しているため、受信者の公開鍵を生成してくれる人は誰も署名しています。 個人情報が存在しませんします。
メッセージを作成する表現を含む個人情報が、対応する公開鍵と、タイムスタンプ、および信頼できる権限を持つログインしてください。
calice = ( ealice | |アリス| | t ) dcathy
このタイプの構造は、証明書と呼ばれます。
証明書は、トークンにバインドして、個人情報を暗号化キーを押します。
彼は知っていると仮定してキャシーの公開鍵で、彼は、証明書では、解読します。 彼は最初のtを参照してくださいタイムスタンプをチェックしたときに、証明書発行されます。 (これより、彼かどうかを決めることができ証明書が古すぎる信頼される;下記を参照してください。 )エンティティの観点から見ると彼の件名(アリスは、誰に証明書の発行だった)します。 公開鍵の証明書の件名に属しているので、ボブになりましたアリスの公開鍵です。 彼は知っているが、その証明書に署名したキャシーキャシーはvouchingをある程度して公開鍵の国のアリスに属しています。 もし彼がそのような決定を行う信託キャシー、彼として有効な公開鍵を承認したとの国のアリスに属しています。
当面の問題は、 1つのボブキャシーの公開鍵を知っている必要があり、証明書を検証します。 この問題に対処する2つのアプローチします。 最初は、マークルされ、キャシーの署名を排除する; 2番目の証明書に署名鎖構造をします。
証明書の署名チェーン
通常の形式では、証明書の発行を暗号化するのは、ハッシュの身元の件名(担当者の証明書が発行さ)は、公開鍵、および時間などの情報を発行または満了発行者の秘密鍵を使用しています。 証明書を検証して、ユーザーが使用して発行者の公開鍵を解読してハッシュされたデータの証明書を確認しています。 ユーザーの証明書を検証しようと、発行者の公開鍵を取得する必要があります。 その場合には、証明書の発行者は、ユーザーがキーを取得してからの証明書を発行します。 押して、この問題を別のレベル:どうすれば、発行の証明書を検証?
この問題を解決するには2つのアプローチを建設するための木のような階層で、公開鍵は、既知のルート帯のうち、または任意の配置を許可するのcertifiersと、各個人の知識に頼っているのcertifiersます。 第一に、私たちを調べる進んでx.509 、証明書と認証全般を記述します。 それから私たちを見て、 pgpの構造を認定します。
証明書の署名チェーン
x.509theディレクトリには、認証の枠組みのための基礎を他の多くのプロトコルです。 認証証明書のフォーマットと定義して検証するコンテキスト総称します。 すぐ後に、元の問題は1988年にi'ansonとミッチェルの両方に問題が見つかりましたプロトコルおよび証明書の構造を持ちます。 これらの問題が修正するには、 1993年のバージョンでは、と呼ばれるx.509v3ます。
このx.509v3証明書には、次のコンポーネントを示します。
バージョン。 逐次各バージョンのx.509証明書が新しい分野に追加しました。 もしフィールド8 、 9 、 10 (以下を参照)が存在する場合、このフィールドにしなければならない3 ;フィールドの8と9が存在する場合、このフィールドはどちらかの2つまたは3 ;がない場合は、フィールドの8 、 9 、および10が存在するは、バージョン番号が1 、 2 、または3です。
シリアル番号です。 この証明書を発行しなければならない固有のうち、この発行されます。 言い換えると、ペア(発行者の識別名、シリアル番号)しなければならないユニークです。
署名アルゴリズム識別子です。 このアルゴリズムを識別して、すべてのパラメータは、使用された証明書に署名した。
発行者の識別名です。 これは、発行者の名前を識別します。
間隔の妥当性をします。 これにより、どの時代の有効期限が切れると、証明書が有効にします。
件名の識別名です。 これは、名前を識別して、証明書の対象となる者は、発行されます。
件名の情報を公開鍵します。 このアルゴリズムを識別し、そのパラメータ、および件名の公共のキーを押します。
発行体の固有の識別子(バージョン2と3の証明書のみ)します。 ある状況下で、発行者名の著名なリサイクルかもしれない(たとえば、識別名を指しているときに役割を果たす、またはときに会社を閉じて、 2つ目の会社と同じ識別名を開きます) 。 このフィールドを使用すると、エンティティ間の発行をdisambiguateと同じ名前を発行します。
件名の固有の識別子(バージョン2と3の証明書のみ)します。 このフィールドは、のようなフィールド8 、しかし、服従します。
拡張機能(バージョン3証明書のみ)します。 x.509v3を定義する特定の拡張子の分野における重要な政策や情報については、証明書パスの制約、および件名や情報を発行します。 たとえば、発行する場合には複数の認証キーである"認証局鍵識別"を使用すると、どのキーなければならないことを示す証明書を使用している。 "基本的な制約"の拡張子かどうかを示す証明書所有者の証明書を発行できます。
署名します。 このフィールドを識別するアルゴリズムおよびパラメータを使用された証明書に署名し、その後、署名(暗号化するハッシュのフィールドに1から10まで)そのものです。
証明書を検証すると、ユーザーの公開鍵を取得し、発行は、特定の署名アルゴリズム(フィールド3 )およびdeciphersの署名(フィールド11 )です。 それから彼女の情報を使用しての署名欄(フィールド11 )を再計算してから、他のハッシュ値を入力します。 署名を解読することにマッチした場合には、署名が有効な場合、発行者の公開鍵は正しいです。 次に、ユーザーの有効期限をチェックして(フィールド5 )には、現在の証明書を確認しています。
認証局( ca )では、エンティティの証明書を発行しています。
すべての場合に共通の証明書の発行がある場合、発行者の公開鍵を配布することができないバンドなんだ。 ただし、これは実行不可能です。 たとえば、それは非常に低いが、米国とフランスが同意して、 1つの発行者団体'と市民の証明書です。 この提案に複数の発行は、検証プロセスを複雑にしています。
アリスは、彼女の仮定から証明書をローカルのキャシーです。 彼女はボブとコミュニケーションを望んで、その地元のcaは、ダンします。 この問題は、アリスとボブはお互いの証明書を検証します。
と仮定して× < <y> >を表し×生成して、証明書の件名yに変更( xは、カリフォルニア州が発行した証明書)します。 ボブの証明書がダン< <bob> >ました。 キャシー証明書を発行した場合は、ダン、ダンには、証明書のキャシー< <dan> > ;同様に、証明書を発行した場合は、ダンキャシー、キャシー証明書には、ダン< <cathy> >ました。 この場合は、ダンとキャシーは、クロス認定されると述べた。
キャスには2つのクロス認定証明書を発行した場合には、各他のです。
キャシーのための国のアリスは(信頼された)公開鍵で、彼女を得ることができるとキャシー< <dan> >フォームの署名チェーン
ダンキャシー< <dan> > < <bob> >
アリスはダンの証明書を検証することができたため、彼女を使用して、その証明書の公開鍵の証明書を検証するボブます。 同様に、手に入れることができボブダン< <cathy> >とアリスの証明書を検証します。
ダンキャシー< <cathy> > < <alice> >
チェーン署名することができ、任意の長されます。 唯一の条件は、各証明書を検証することができ、 1つの鎖を前にしています。 (進んでx.509提案キャス組織の階層を最小限に抑えることを証明書の署名の鎖の長さが、この要件ではありません。 )
証明書を取り消されることができ、またはキャンセルされます。 証明書のリストを使用すると、このようなユーザーを検出し、拒否すると、証明書を無効にします。
pgpの証明書の署名チェーン
pgpの暗号化は、広く使われてプログラムを提供し、インターネットを通じて電子メールのプライバシー保護のため、デジタルファイルに署名した。 これでは、証明書ベースの鍵の管理のためのインフラ、ユーザーの公開鍵です。 その証明書とキーの管理体制が異なるから進んでx.509 ' sはいくつかの方法があります。 ここでは、私たちの構造を記述するopenpgpの;しかし、この議論の多くは他のバージョンのpgpのにも適用されます。
openpgpの証明書を構成するパケットのです。 パケットを記録するには、その目的を記述するタグです。 公開鍵証明書が含まれパケットゼロ以上の署名パケット続いています。 openpgpの公開鍵パケットするには、次の構造を持ちます。
バージョン。 これはどちらかの3桁または4します。 バージョン3では互換性があり、 pgpのすべてのバージョンの;古いバージョン4と互換性がない(バージョン2.6 )のバージョンのpgpのです。
時間に作成できます。 この証明書を作成しましたときに指定します。
有効期間(バージョン3のみ)します。 これにより、数日後、その証明書が有効である。 の場合は0 、証明書の有効期限はありませんします。
公開鍵アルゴリズムとパラメータです。 このアルゴリズムを識別するために使用されるパラメータの暗号と明記して使用されます。 バージョン3パケットrsaの係数が含まれます。 バージョン4パケットに含まれるパラメータに適した暗号システムを使用しています。
公共のキーを押します。 これにより、国民のキーを押します。 バージョン3のパケットを含むrsaの指数をします。 バージョン4パケットに含まれる公開鍵暗号システムを識別されるフィールド4 。
openpgpの署名の情報は、パケットが異なる2つのバージョンがあります。 バージョン3には、以下のとおりです。
署名を入力します。 これは、特定の目的を説明し、署名の信頼レベルにエンコードします。 たとえば、署名の種類0x11によると、署名者の公開鍵を確認していないに属しているという名前に服従します。
時間を創出します。 このフィールドを指定し、次の時間を示したハッシュします。
の署名鍵識別します。 このキーを指定し、署名の生成に使用されます。
公開鍵アルゴリズムです。 このアルゴリズムを識別し、署名の生成に使用されます。
ハッシュアルゴリズムです。 この識別に使用されるアルゴリズムハッシュ署名をする前に署名しています。
団体名ハッシュ値を登録します。 ハッシュ後のデータは、フィールド2は、与えられた時間を示したハッシュ値を計算し、そのフィールドが追加され、前のハッシュのハッシュとします。 最初の2つのバイトは、このフィールドに配置されます。 このアイデアはすぐにして署名を拒否することができた場合、最初の2バイトハッシュ検証していない時にこのフィールドにマッチします。
署名します。 これには、暗号化、ハッシュ署名の秘密鍵を使用しています。
バージョン4の署名パケットがかなりもっと複雑ではなく、バージョン3の署名パケットには、それにバインドする識別子やデータの署名をします。 興味のある読者は、 openpgpの仕様を紹介しています。
pgpの証明書と異なるx.509証明書はいくつかの重要な方法があります。 とは違って進んでx.509 、複数の可能性があり、 1つの鍵で署名します。 (すべてのバージョン4 pgpキーの所有者は、署名され;これは自己署名と呼ばれます)またとは違って進んでx.509 、概念の"信託"の各署名が埋め込まれており、署名のための鍵が異なる場合があり、 1つのレベルの信頼します。 ユーザーの証明書のレベルを決めることができ、各信託の署名があり、それに応じて行動します。
例:仮定の国のアリスのニーズとコミュニケーションをボブ。 彼女はボブの公開鍵を取得し、 pgpの証明書を、エレン、フレッド、ジゼル、ボブ< <bob> > (どこに進んでx.509表記は、明らかな方法は、拡張)します。 署名なしの国のアリス知っているので、彼女のジゼル、 pgpの証明書を取得する、ヘンリー、アイリーン、ジゼル< <giselle> >は、サーバーからの証明書です。 彼女は知っているヘンリー漠然とので、彼女は彼の証明書を取得し、エレン、ヘンリー< <henry> > "とジゼルの証明書を検証します。 ヘンリー注意して彼女の署名は"カジュアル"の信頼レベルでは、顔を決断したので彼女は別の場所を確認してください。 彼女はエレンの証明書を取得し、ジャック、エレン< <ellen> > "とすぐに、彼女の夫ジャックを認識します。 彼女は彼が使用している証明書とエレンの証明書を検証します。 彼女は、彼のコメントは、署名は"肯定的な"信頼水準ので、彼女を受け入れるとエレンの証明書として使用することを検証する有効なボブのだ。 彼女は注意してエレンに署名した証明書を"肯定的"にも信頼するので、彼女は結論して、証明書、および公開鍵が含まれても安心します。 |
上記の例では、 2つの国のアリスに続い署名チェーン:
ヘンリーヘンリー< <henry> > < <giselle> >ジゼル< <bob> >
と
ジャックエレン< <ellen> > < <bob> >
(ここでのチェックボックスをオフに署名を落としてきた)します。 レベルの信頼をどのように影響を受けたアリスは、証明書をチェックします。
ここに微妙な違いが生じたの間に進んでx.509とpgp証明書です。 x.509証明書を含める要素の信頼、信託ではありませんが、証明書に示されています。 pgpの証明書を示すレベルでの信頼が、同じレベルの信頼を別の署名の意味が異なる場合があります。
概要
公開鍵の配備と管理が複雑なため、さまざまな要件、さまざまなプロトコルです。 ほとんどのプロトコルを使用してx.509v3証明書を何らかの形で、今回の拡張機能によって異なります。 インフラを管理する認証局の公開鍵とは、公開鍵インフラと呼ばれます。 このようなインフラが所定の位置にいくつかのように、 pgpのサーバー証明書と証明書発行のための商業のワールドワイドウェブブラウザします。
これは、記事を追加した法案kuriko 免責事項:弊社のウェブサイト上に含まれる情報は、責任を負いませんこの記事されました。 この記事ではない方法での意見を反映して、ご意見、思想や信条の記事ディレクトリのスタッフします。
翻訳注意:記事の"暗号鍵インフラ"だった翻訳する自動翻訳サービスを使っています。 すべてのお客様にご迷惑を翻訳してエラーが発生しました。 理解していただきありがとうございました。