HTTPS

HTTPS (Hypertext Transfer Protocol over Secure Socket Layer) は、URIスキームのひとつであり、HTTPによる通信について安全性(セキュリティ)を向上させる目的で幅広く利用されている。httpsスキームにおける通信プロトコルには、HTTP over SSLや、HTTP over TLSが用いられる。

ネットスケープコミュニケーションズによって、認証や暗号通信のために開発され、World Wide Web上の個人情報の送信や電子決済など、セキュリティが重要な通信に広く用いられている。
HTTP over SSL/TLSは、メッセージを平文のままで送受信するHTTPと異なり、SSL (Secure Sockets Layer) あるいはTLS (Transport Layer Security) のどちらかを用いて、サーバ認証・クライアント認証やメッセージの暗号化、セッション管理を行うことによって、盗聴やなりすましによる攻撃からの保護を行う。標準のポート番号は443。
HTTP over SSL/TLSによるセキュリティ保護の強度は、Webサーバやブラウザで用いられるSSL/TLSの実装の正確性や、使用する暗号アルゴリズムに依存する(SSLを参照)。
なお、RFC 2660 が規定するS-HTTP(Secure HTTP: Secure HyperText Transfer Protocol)は、httpsスキームで用いられるHTTP over SSL/TLSとは別のプロトコルである。S-HTTPに対応するURIスキームはshttpである。

HTTPSを用いた保護に関するよくある誤解に、「HTTPSによる通信は入力した情報にかかわる全ての処理を完全に保護する」というものがある。実際にはHTTPSはWebブラウザとWebサーバの間の通信を暗号化して、盗聴を防いでいるに過ぎない。
情報を受け取ったサイトは、送信された情報のうち必要最小限のデータのみを安全に保管することが期待されるが、重要な個人情報がサイトのデータベースに格納されない保証はなく、さらにデータベースはしばしば外部からの攻撃の標的にされる。また、こうした情報が人為的に不当に流用されたり、事故によって漏洩する可能性もある。
このように通信が完全に保護されていたとしても、利用者が期待する安全性が確保されているとは言えない場合がある。現在のインターネットでは、通信の盗聴よりむしろこれらの脅威が情報の保護の面で重要なファクターとなっている。