電子証明書

概要

公開鍵が真正であることを証明するデータ。
以下を証明できる。
・データが改ざんされていないこと。
・データの作成者の信頼性

構成要素

電子証明書は実世界における印鑑証明書に当たる。

印鑑証明書 電子証明書
印鑑の印影 公開鍵
印鑑の持ち主の情報 公開鍵の持ち主の情報
印鑑証明書を発行した自治体名 証明書を発行した認証局の情報
発行元自治体の印 発行元認証局の署名

認証局(CA)

Certification Authority
電子証明書を発行する機関
Root認証局
他の認証局に対して証明書を発行する機関
自らの信頼性は、機関の公開情報、厳しい監査、運用実績、知名度によって自ら構築する
信頼性が揺らぐと過去に発行した証明書の信頼性が全て揺らぐ為に社会的な責任も発生する。

中間認証局
Root認証局以外の認証局。
Root認証局に証明書を発行してもらうことで自らの信頼性を構築する。

証明書の種類

サーバー証明書

=SSLサーバー証明書
情報通信先のサーバのサイト運営組織が実在していることの証明書
WebブラウザとWebサーバ間(またはサーバ同士)でSSL通信が行える。
認証局により発行される電子証明書の一種。

クライアント証明書

端末認証やメール署名・暗号化に使用する個人の証明書
PC・スマートフォン・タブレットなどに格納
クライアントを証明するので証明できない端末からのアクセスを制限できる

コードサイニング証明書

ソフトウェアの配布元を認証。
なりすましや内容の改ざんなどがされていないことを保証する。
WindowsアプリをClickOnceで実行する場合、
自己作成の証明書が自動で作成されるが1年に1回期限を延長する必要がある。
認証局から購入した証明書の場合はその作業が不要になる。

電子証明書の利用方法

WEBブラウザ等、電子証明書を利用するソフトウェアには、Root認証局の証明書が同梱されている。

certification
※InternetExplorerの証明書一覧

電子証明書を要する通信を行うWEBサイトを閲覧する場合、
最初にWEBサイトからサーバー証明書を取得する。
secure_pki1
次にWEBサイトの電子証明書の信頼性を確認する為に、中間認証局の証明書、Root認証局の証明書を順に確認する。
ブラウザにはRoot証明書が最初から同梱されているので、サーバー証明書がRoot認証局の認可を受けていれば、信頼性は確保できる。

secure_pki2

secure_pki3
上から
ルート認証局証明書
中間認証局証明書
サーバー証明書

ファイル

サーバー証明書

CSR

Certificate Signing Request
証明書の申請時に提出するファイル
公開鍵の情報、組織情報等を含む
拡張子:.csr、.txt等。無しでも何でも良い
中身
「––BEGIN CERTIFICATE REQUEST––」

「––END CERTIFICATE REQUEST––」

秘密鍵

拡張子:.key、.txt等。無しでも何でも良い
中身
「––BEGIN RSA PRIVATE KEY––」

「––END RSA PRIVATE KEY––」

公開鍵

=SSL証明書
拡張子:.crt、.cert、.ca、.txt等。無しでも何でも良い
Certificate(=証明書)の略
中身
「––BEGIN CERTIFICATE ––」

「––END CERTIFICATE––」

キーペア

秘密鍵とそれに対応する公開鍵
拡張子:.snk等。無しでも何でも良い

個人情報交換ファイル

PKCS #12
Public Key Cryptography Standard #12
拡張子
.p12等
公開鍵証明書、秘密鍵からなるファイル
作成方法は「個人情報交換ファイル」参照

キーストア

クライアントが参照する鍵と証明書の情報ファイル
このファイルに情報が無い証明書は使用できない
=サイトにアクセスできない
Javaが実行時にデフォルトで使用するキーストア
C:\Program Files\Java\jreX.X.XXX\lib\security\cacerts

トラストストア

サーバが参照する鍵と証明書の情報ファイル