ここではよく使われるサーバ認証SSL(HTTPSをイメージ)を前提にします。
目次
SSL証明書の発行手順
SSL証明書の発行手順は
[note]
- 秘密鍵・公開鍵のキーペアを作る
- 公開鍵からCSR(署名要求)を作成する(CSRには上記の公開鍵と必要な申請情報が含まれています)
- CSRをCAに提出
- 審査後、問題なければCSRをCAの秘密鍵で電子署名したものをSSL証明書として発行
[/note]
とったものになります。
自己署名SSL証明書 ( オレオレ証明書 )
SSL証明書の認証局(CA)は、例えばOpenSSLなどを利用すれば誰でも作ることができます。
CAがやるのは技術的には実質、CA自身の秘密鍵で発行要求(CSR)を電子署名する、ということです。
つまり、
[note]
- 秘密鍵・公開鍵のキーペアを作る
- 公開鍵からCSR(署名要求)を作成する
- CSRをはじめに作った秘密鍵で電子署名したものをSSL証明書として利用する
[/note]
とすることで、有効なSSL証明書を作成することができます。
「自己署名SSL証明書」とか「オレオレ証明書」と言われます。
SSL暗号化通信だけを目的とした場合、自己署名SSL証明書でも充分に機能します。
自己署名SSL証明書 ( オレオレ証明書 )の問題点
自己署名SSL証明書はそもそも署名に使われている秘密鍵が信頼できるものなのかが誰にもわからないものであるため、SSLのもう1つの機能「正当性の確認」には利用できません。
「オレオレ証明書」と言っているくらいで、あくまで作成者が「自分が確かに作って署名したものだから信頼して」と言っているだけのものなので。
そのため、多くのブラウザ(のデフォルト状態)では自己署名SSL証明書が設定されているサイトにアクセスした際には警告が表示されます。
ブラウザの設定によってはアクセスできません。