Open棟梁Project - マイクロソフト系技術情報 Wiki

-[[戻る>暗号化]]

* 目次 [#k18e8d3f]
#contents

*概要 [#e023d9a6]
「デジタル署名」の検証は、「送信側の公開鍵」を拠り所にしていると言えるが、提供される「送信側の公開鍵」の出所が、正規の出所か、検証できない(場合がある)という問題がある。~
このため、この問題を解決するための、「認証局」と呼ばれる、信頼のおける第三者が発行した「デジタル証明書」を使用して「送信側の公開鍵」が信頼できるものであるかを検証する機構がある。

**デジタル証明書 [#d1464251]
この「デジタル証明書」には以下のものがある。

***デジタル証明書の種類 [#ja5c8e1b]
-認証局の自己証明書~
認証局が自身で発行したもの。

-送信側の証明書~
送信側が認証局に依頼して発行してもらったもの。

***デジタル証明書に含まれる情報 [#ubbadfc4]
これらの「デジタル証明書」には、以下の情報が含まれる。

-認証局の自己証明書~
「認証局のメッセージ( + 認証局の公開鍵)」、「認証局によるデジタル署名」

-送信側の証明書~
「送信側のメッセージ( + 送信側の公開鍵)」、「認証局によるデジタル署名」~
※ 証明書におけるメッセージとは、発行者や有効期限などの情報を指し、~
CSR(証明書発行要求:Certificate Signing Request)に格納される。

***デジタル証明書の発行 [#c6a66502]
#ref(CertificateIssuance.png,left,nowrap,デジタル証明書の発行)

-「認証局の自己証明書」は通常、事前にクライアントPCに配布されている。
-このため、「認証局の自己証明書」中の「認証局の公開鍵」を使用して、「送信側の証明書」を検証する。
-これにより、「送信側の証明書」に含まれる「送信側の公開鍵」が「認証局」により、
--信頼できるものであるとされていることが確認でき、
--以降、送信側のメッセージ・署名を(安全に)検証できる。

「デジタル証明書」は、このような方式により成り立っているので、その信頼性は「認証局」の信頼性に依存する。

***デジタル証明書の利用 [#eea7c79b]
#ref(UseOfCertificate.png,left,nowrap,デジタル証明書の利用)

+証明書の検証
++「送信側の証明書」の送付
++「認証局の公開鍵」を使用して「送信側の証明書」を検証する。
+メッセージの検証
+秘密鍵を使用してメッセージに署名を付与
++メッセージ+署名の送付
++送信側の公開鍵を使用して、署名からメッセージを検証する。

***秘密鍵付きの証明書の受け渡し [#cf97dd12]
他者(上記、上記の図の場合、受信側に該当する)に証明書を渡す場合は、秘密鍵は渡されない。~
秘密鍵付きの証明書の受け渡しを行う場合は次の手順に従う。

+送信側は、秘密鍵付きの証明書をパスワードで暗号化してpfxファイルとしてエクスポートする。
+②エクスポートしたpfxファイルを渡す。
+受け取ったpfxファイルをパスワードで復号化してインポートする。

この一連の操作は、Windowsの証明書スナップインなどで確認できる。

***ルートの認証局と中間の認証局 [#s03d489a]
なお、「認証局」が「ルートの認証局」と「中間の認証局」に分かれる場合は、次のようになる。

-「ルートの認証局の自己証明書」:~
「ルートの認証局のメッセージ(+ルート認証局の公開鍵)」、「ルートの認証局によるデジタル署名」

>>>↓ 証明書の発行 & 検証

-「中間の認証局の自己証明書」:~
「中間の認証局のメッセージ(+中間の認証局の公開鍵)」、「ルートの認証局によるデジタル署名」

>>>↓ 証明書の発行 & 検証

-「送信側の証明書」:~
「送信側のメッセージ(+送信側の公開鍵)」、「中間の認証局によるデジタル署名」

*証明書の種類 [#y547ccd7]
「デジタル証明書」の主要な利用例として、

**サーバー証明書 [#ife3996e]
***目的 [#he960173]
サーバーのユーザが、サーバーの提供者の正当性を検証できるよう、~
サーバーに「サーバー証明書」を埋め込む。

***用途 [#i259684a]
以下で利用されている。
-各種Webサービス
--HTTPS
--RDP
--,etc.

***SSL暗号化通信 [#g61fa2d8]
また、SSLは、「[[ハイブリッド・暗号化>暗号化アルゴリズム#z7306cb4]]」を使用しているが、~
このうちの「公開鍵・暗号化方式」で使用する鍵に「SSLサーバ証明書」に同梱されている秘密鍵・公開鍵を使用している。

-ITpro > selfup
--図解で学ぶネットワークの基礎:SSL編~
http://itpro.nikkeibp.co.jp/article/COLUMN/20071002/283518/
--Lesson4 : 相手が信頼できることを確かめる「サーバ証明書」とは?~
http://itpro.nikkeibp.co.jp/article/COLUMN/20071012/284426/

**クライアント証明書 [#c42748a0]
***目的 [#wccd2d31]
ユーザーが別のユーザーの正当性を検証できるよう、~
ユーザのメッセージに「クライアント証明書」を埋め込む。

***用途 [#i259684a]
以下で利用されている。
-電子メールメッセージ
-Webサービス(HTTPS)

**コード サイニング証明書 [#oa4d84a6]
***目的 [#xfcb1c46]
プログラム配布先のユーザが、プログラムの開発元の正当性を検証できるよう、~
開発したソフトウェアの実行モジュールに「コードサイニング証明書」を埋め込む。

***用途 [#u14e42c0]
-ActiveX
-ClickOnce
-デバイスドライバ
-EXE、DLL

*証明書生成の方法 [#eaac5253]

**[[IIS]] [#w27bbd9d]
[[IIS]]を使用して「[[証明書チェーンがない自己署名証明書>#fa5e8e29]]」を生成できる。

**[[証明書サービス (AD CS)]] [#ied27823]
[[証明書サービス (AD CS)]]を使用して「[[証明書チェーンがある自己署名証明書>#w98fecbe]]」を生成できる。

**makecert.exe [#n992aec2]
Windows SDK (旧Platform SDK)に同梱されているツール。

*自己署名証明書 [#t094cf0c]
「SSL等のPKIにおいてクライアント側で検証できない(認証パスを辿れない)サーバ証明書。」

全般のことを言い、正規の認証局から取得していない証明書全般を指す。

-オレオレ証明書とは - はてなキーワード~
http://d.hatena.ne.jp/keyword/%A5%AA%A5%EC%A5%AA%A5%EC%BE%DA%CC%C0%BD%F1

自己署名証明書には以下の様な種類がある。

**証明書チェーンがない自己署名証明書 [#fa5e8e29]
このタイプの自己署名証明書は証明書チェーンが無いため、~
自身の秘密鍵をエクスポートして、クライアントにインポートさせる必要がある。

**証明書チェーンがある自己署名証明書 [#w98fecbe]
企業内で独自認証局を運用しており、~
独自認証局から発行した自己署名証明書は証明書チェーンを持っている。

***タイプ1 [#x031ffa6]
クライアントは独自認証局(ルートCA、中間CA)の証明書の公開鍵をインポートする。

-手動の展開
-[[AD CS>証明書サービス (AD CS)]]の機能を使用して展開
-[[Active Directory]]の[[GPO]]を使用して展開
--AD CS  ポリシー設定~
https://technet.microsoft.com/ja-jp/library/cc725911.aspx

***タイプ2 [#mc51d147]
[[この独自認証局が正規の認証局から、中間認証局の証明書を取得している場合>https://technet.microsoft.com/ja-jp/library/cc772393.aspx#BKMK_BS2]]、~
この中間CA証明書、クロスルート設定用証明書がサーバ側に設定されていれば、~
クライアント側の独自認証局の公開鍵のインポートは不要・・・だと思うが、~
[[AD CS>証明書サービス (AD CS)]]の場合はGPOで配布するのかもしれないので要確認。

-中間CA証明書はなぜ必要なのでしょうか  Symantec~
https://knowledge.symantec.com/jp/support/bms-support/index?page=content&id=SO22877&actp=RSS&viewlocale=ja_JP
-中間CA証明書のインストールについて | Symantec~
-中間CA証明書のインストールについて Symantec~
https://knowledge.symantec.com/jp/support/bms-support/index?page=content&actp=CROSSLINK&id=SO22871

*参考 [#l5552d40]
-PKI基礎講座(1):PKIの基礎を理解しよう! - @IT~
http://www.atmarkit.co.jp/ait/articles/0011/02/news001.html

-[[証明書失効リスト (CRL)]]
-[[証明書サービス (AD CS)]]


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS