- ベストアンサー
電子証明書について
電子証明書について質問があります。 電子証明書を使って認証を行う場合、信頼できる第三者であるCAの署名をもとに、通信相手の信頼性を判断します。 [質問] (1)認証の際には電子証明書を相手に送信することになると思います。その場合CAの署名データもネットワークに流れますよね?もしそのデータを読み取られてしまった場合はそのCAの署名を使って電子証明書を作成できると思うのですがどうなのでしょうか? (2)署名、署名といいますが実際見てみると意味のわからないデータの羅列です。CAの署名というのはどのように作られるのでしょうか? よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
No.1です。補足します。 1.SSLの場合を例に取ります。 SSLでは途中まで公開鍵暗号方式とデジタル署名を使って(認証証明書)を 厳密に受け渡しますがこれが終わると暗号方式を効率の良い共通鍵方式に 変更してしまいます。 使い捨ての共通鍵は当然公開鍵暗号方式で渡されます。 > CAの署名にはハッシュとCAの秘密鍵で暗号化したハッシュで > 構成されていると考えてよろしいですか? もう少しきちんと言うと原文とハッシュをCAの秘密鍵により暗号化したものの2つです。 普通(当たり前すぎるので)あまり書かれて居ませんが、更に受信者の公開鍵で暗号化します。 受信者は、自分の秘密鍵で復号化したあと、原文をハッシュし、暗号化ハッシュを相手の公開鍵で復号化します。ハッシュ同士が一致すれば証明書は本物、改ざんもされていないことになります。 蛇足ですが1点だけ補足しておきます。 公開鍵と秘密鍵の関係です。 公開鍵でかけると秘密鍵で開く、秘密鍵でかけると公開鍵で開くという風に巧妙に作られているからこんなにうまくいくのです。
その他の回答 (2)
- kfir2001
- ベストアンサー率35% (163/455)
(1) 電子証明書には、認証局の秘密鍵で暗号化した送信者の公開鍵と、送信者の秘密鍵で暗号化した文書のハッシュが、含まれています。 これを盗まれたとしても所定の時間内で、認証局の秘密鍵や送信者の秘密鍵を、割り出すことは不可能とみなされているため、電子証明書を偽造することはできません。 (2) 意味の分からないデータの羅列は、認証局の公開鍵や、送信者の公開鍵で復号化することで、文書のハッシュ値になります。 この説明が分からない場合には、No1さんの回答のとおり、公開鍵、電子証明書などについてのページを見て勉強しましょう。 あなたのPCには、買ったときから、主要な認証局の公開鍵がインストールされています。 その公開鍵を信頼して、SSL通信などが成り立っています。
お礼
どうもありがとうございます。 下のURL拝見させていただきました。 まだ理解できていない点があります。 CAの署名にはハッシュとCAの秘密鍵で暗号化したハッシュで構成されていると考えてよろしいですか? まだ頭の中で不明確になっている点がありましたので質問させていただきました。 もしお時間ありましたらお願いします。
- ymmasayan
- ベストアンサー率30% (2593/8599)
まず、完全に理解するためには公開鍵暗号方式、デジタル署名(電子署名)を 理解する必要があります。参考URLをいくつか紹介します。 1.公開鍵暗号とデジタル署名を使ってやり取りしますので偽造は出来ません。 2.デジタル署名というのは、簡単に言うと元のデータと暗号化したデータを 両方くっつけて更に暗号化して送ります。 受信者は暗号解読を2回行って元のデータが2つ一致すれば相手が本物だと 認識するのです。 このとき使う2つの暗号は自分側の暗号と相手側の暗号ですので A.署名が正しい B.署名が他人に漏れない の2つが同時に満足されます。 詳しくはURLを参照ください。 公開鍵暗号方式 http://www.infonet.co.jp/ueyama/ip/glossary/public_key.html 電子署名と認証の仕組 http://www.jipdec.jp/esac/shikumi.htm 電子証明書と認証局 http://www.atmarkit.co.jp/fnetwork/rensai/pki02/pki01.html
お礼
どうもありがとうございます。 参考URL拝見させていただきました。 まだ理解できていない点があります。 電子証明書を送られた相手はCAの署名を検証すると思いますが、その時のしくみがよくわかりません。 以下の内容は私の現時点の解釈ですが間違ってますか? ----------- 証明書内のCAの署名部分には「ハッシュ」と「そのハッシュをCAの秘密鍵で暗号化したもの」がある(それを更に一時的な鍵で暗号化している?)。 それを送られた相手は自分の証明書内のCAの署名を比較する。そして一致していたら同じCAから発行された証明書であると認識できる。 間違ってますか? もしお時間ありましたらお願いします。
お礼
返信遅くなってすいません。 どうもありがとうございました。 証明書を送る際は相手の公開鍵で証明書そのものを 暗号化して送るんですね。