Post Office Protocol (POP) について
Post Office Protocol(POP)は、
電子メールで使用される
通信プロトコルの一つで、ユーザーがメールサーバーから自分のメールを受信する際に利用されます。特に、POP3(POP Version 3)が広く使われています。
POPの役割
電子メールは、送信者がいつ誰に送るかを予測できません。そのため、ユーザーが自分のコンピュータを常にインターネットに接続し、メールを受信し続ける必要はありません。メールサーバーが代わりにメールを受信し、ユーザーが都合の良い時にメールを取り出す仕組みが一般的です。このメール取得に使われるプロトコルがPOPです。
この仕組みは、郵便局(メールサーバー)に届けられた手紙をユーザーが取りに行く様子に似ています。POPを利用すれば、メールサーバーにメールが届いているかを確認することも可能です。
また、POPのユーザー認証機能をメール送信時の送信者認証に使用することがあり、これをPOP before SMTPと呼びます。
ポート番号
一般的に使用されるTCPポート番号は、POP2では109番、POP3では110番です。
ユーザー認証
最も一般的な認証方式は、平文でユーザー名とパスワードを送信するUSER/PASS認証です。しかし、より安全な認証方式も存在します。
APOP: RFC 1460で追加されたオプションコマンドで、認証情報を暗号化できます。
SASL: 拡張機能で、AUTHコマンドを用いて認証を暗号化します。
これらの暗号化は認証部分のみで、メールヘッダや本文は平文のままです。そのため、TLS(
Transport Layer Security)を用いて全体を暗号化することが推奨されています。
APOPの脆弱性と対策
電気通信大学の研究グループにより、APOPの暗号化を解析する手法が発見されました。これは、APOPが
MD5ハッシュ方式を不適切に使用していることに起因するプロトコル上の問題であり、根本的な対策は存在しません。
したがって、メールの内容を保護するためには、STARTTLSやPOP over SSL(ポート番号995番)を用いて、SSLで通信経路全体を暗号化することが不可欠です。
また、
MD5自体がアメリカ合衆国政府や日本のCRYPTRECで推奨されていないため、APOPの利用は推奨されません。
暗号化通信
POP3で暗号化通信を行う方法として、以下の二つが規定されています。
POP3S (Implicit TLS): ポート番号995番を使用します。
STARTTLS: 既存の接続をTLSで暗号化します。
RFC
POPに関するRFC(Request for Comments)は多数存在し、以下のようなものがあります。
RFC 5034: The Post Office Protocol (POP3) Simple Authentication and Security Layer (SASL) Authentication Mechanism
RFC 3206: SYS and AUTH POP Response Codes
RFC 2595: Using TLS with IMAP, POP3 and ACAP
RFC 2449: POP3 Extension Mechanism
RFC 2384: POP URL Scheme
RFC 2195: IMAP/POP AUTHorize Extension for Simple Challenge/Response
RFC 1957: Some Observations on Implementations of POP3
RFC 1939: Post Office Protocol - Version 3
RFC 1734: POP3 AUTHentication command (RFC 5034で改訂)
RFC 1725: Post Office Protocol - Version 3 (RFC 1939で改訂)
RFC 1460: Post Office Protocol - Version 3 (RFC 1725で改訂)
RFC 1225: Post Office Protocol - Version 3 (RFC 1460で改訂)
RFC 1081: Post Office Protocol - Version 3 (RFC 1225で改訂)
RFC 937: POST OFFICE PROTOCOL - VERSION 2
RFC 918: POST OFFICE PROTOCOL (RFC 937で改訂)
関連技術
POPに関連する技術には、以下のようなものがあります。
SMTP: メール送信プロトコル
IMAP: メール受信プロトコル(POPと異なり、サーバーにメールを残す)
S/MIME & POP3: メール暗号化技術
* メールサーバー
まとめ
POPは
電子メールの受信に不可欠なプロトコルであり、そのセキュリティ対策は非常に重要です。平文認証の使用を避け、TLSによる暗号化通信を徹底することが推奨されます。