日和見暗号化とは
日和見暗号化(Opportunistic Encryption, OE)は、通信の際に暗号化を試みるシステムであり、暗号化が不可能な場合は平文通信に切り替えるという特徴を持ちます。この方式の最大の利点は、通信相手との事前の取り決めを一切必要としない点です。つまり、暗号化に対応しているかどうかを気にせずに、可能な限りセキュアな通信を試みることが可能です。
メリットと限界
日和見暗号化は、受動的な盗聴、つまり通信内容の傍受を防ぐのに有効です。しかし、能動的な盗聴、例えば通信に介入して暗号化を妨害するような攻撃には対応できません。攻撃者は暗号化の交渉を邪魔することで、強制的に平文通信にさせることができます。また、日和見暗号化は
認証が困難であり、セキュアな通信を保証するものではないため、高度なセキュリティを求める場面には適していません。しかし、その導入の容易さから、インターネット通信における暗号化を促進する大きな役割を担っています。
RFC 7435
日和見暗号化は、RFC 7435「日和見暗号化:ほぼ常時、ある程度の防御」で定義されています。このRFCでは、日和見暗号化の概念と実装について詳しく説明されています。
日和見暗号化は、
電子メールのような特定の通信にも適用できます。SMTP
STARTTLS拡張はメールのリレーに、IMAP
STARTTLS拡張はメールの閲覧に用いられます。これらの拡張機能は、自己署名証明書を使用できるため、
認証局からの証明書を必ずしも必要としません。多くのシステムでは、まず暗号化のための鍵の取得を試み、失敗した場合は平文で送信するという仕組みで運用されています。PGP、
Hushmail、Ciphireなども、このモードで動作するように設定できます。
ウェブサイトへの応用
ウェブサイトの暗号化には
HTTPSが一般的に用いられますが、これには厳格な暗号化と初期設定・維持コストがかかります。ブラウザは、ウェブサーバの証明書が信頼できる
認証局によって署名され、かつ期限切れでないかを確認します。そのため、サーバ管理者は通常、1~2年ごとに証明書を更新する必要があります。日和見的にウェブサイトを暗号化する最も簡単な方法は、自己署名証明書を使用することですが、この場合、ブラウザは警告を表示します。平文で通信するウェブサイトには警告が出ないため、自己署名証明書はかえって危険とみなされることがあります。
HTTPS Everywhereや
HTTPSfinderなどのブラウザ拡張機能は、可能な限り
HTTPS接続を自動的に試みます。
HTTP/2|HTTP_2では、真の日和見暗号化をシームレスに実現する方法も提案されています。
まとめ
日和見暗号化は、手軽に導入できる暗号化方式として、インターネットのセキュリティ向上に貢献しています。しかし、その限界も理解した上で、状況に応じて適切なセキュリティ対策を講じることが重要です。
関連項目
IPsec
外部リンク
RFC 4322 - Opportunistic Encryption using the Internet Key Exchange (IKE)
* RFC 7258 - Pervasive Monitoring Is an Attack