SSL、https、SSL証明書

SSL、https、SSL証明書とは、ホームページの通信を暗号化したい時の基礎知識です。

■SSL、httpsの概要
   SSLはサーバー、PC間の通信を暗号化する技術です。
サーバーでSSLの設定を行うとSSLで通信(暗号化)することが出来ます。
また、当該サーバーの使用者の証明書(SSL証明書)があります。

サーバーでSSLを設定すれば、SSL証明書が無くてもSSLは使用可能ですが、ブラウザで閲覧した際にSSL証明書が無い旨の警告メッセージが表示されます。



■クッキーのSECURE(クロスサイトスクリプティングの脆弱性)
CGI等のWEBソフトでは会員のID、パスワードをクッキー(閲覧者のPC)に保存しています。
クッキーに保存することで、CGI外の写真や外部のホームページに移動しても、ショッピング情報(カゴの中)やログイン状態を保つことが出来るようになっています。

通常のクッキーは、クッキーを書き込んだサーバー(ホームページ)のドメインがと閲覧した時のサーバーが一致していると自動的にクッキー情報を出力します。
そのため、SSL(https)で書き込んだ後、SSLの外(http)でアクセスするとWEB上にクッキー情報が暗号化されずに出力されてしまいます。
この状態ではセキュリティに問題があります(クロスサイトスクリプティングの脆弱性)ので、クッキー情報が漏洩しないようにする必要があります。

クッキーを保存する際に「SECURE」で書き込めば、SSL(https)でアクセスした時のみクッキー情報が出力されるようになります。
暗号化されていないクッキー情報はWEB上に出力されないようになりますので、当該CGIはSSLに対応しているものと考えられます。


■SSL証明書
SSLを使用するためには、サーバーでSSLの設定を行い、SSL証明書を購入する必要があります。
レンタルサーバー会社のドメインでSSL証明書を購入し、サーバーの共有者がSSL証明書も共有できるレンタルサーバーもあります。
独自ドメインの場合は、当該ドメインのSSL証明書は購入しなければなりません。

SSL証明書につきましては、発行機関によってブラウザへの対応状況や情報が漏洩した際の保険の金額などが異なります。
保険の無い安価なものから保険付きの証明書まで、5000円〜15万円までさまざまな証明書があります。

どのような証明書を購入するのか、ご予算に問題無ければ高額な保険が付いたものが良いと思いますが、入力内容によっては安価なものでも良いかもしれません。
個人情報を大量に取り扱うなど漏洩した場合の被害が甚大な場合は、費用はかかっても保険の付いたものが良いと思います。

参考)SSL証明書発行機関
日本ベリサイン
セコムトラストシステムズ(SECOM)
ラピッドSSL
オンラインSSL


■警告メッセージ
SSL証明書が確認出来ない場合にはブラウザに警告メッセージが表示されます。

その他、SSLで通信したホームページやCGIの出力画面に当該サーバー以外の情報を表示しようとすると警告メッセージが出力されます。
具体的には<IMG src="http・・・">などの絶対パスで画像等を指定すると、同じドメインであっても警告メッセージが出力されます。
このように画像やフレームなどを表示する際は「相対パス」で指定しなければなりません。






© Copy Right 2001 Chama.ne.jp