Post Office Protocol

Post Office Protocol（ポスト オフィス プロトコル、POP（ポップ））は、電子メールで使われる通信プロトコル（通信規約）のひとつ。ユーザがメールサーバから自分のメールを取り出す時に使用する、メール受信用プロトコル。現在は、改良されたPOP3 (POP Version 3) （ポップスリー）が使用されている。

概要 
電子メールは、いつ・誰から送られてくるか分からない。しかし、ユーザが自分のコンピュータを常にインターネットに接続してメールを受信できるように待機させておく必要はない。これは、インターネットサービスプロバイダ (ISP) や企業ネットワーク内にメールを配達・受信するためのメールサーバが設置されており、メールサーバが常にメールを受信できるように待機しているからである。メールサーバにメールが届いた後に、ユーザがメールサーバからメールを取り出して、自分のコンピュータに取り込めばよい。この時に使われるプロトコルがPOPである。この作業は、郵便局（メールサーバ）に届けられた手紙をユーザーが郵便局へ取りに行く作業に似ている。メールサーバにメールが届いているかどうかもPOPで確かめることができる。

POPのユーザ認証機能をメール送信時の送信者認証に使用することがあり、これをPOP before SMTPと言う。

通常使用するTCPポート番号は、POP2では109番、POP3では110番を使用する。

ユーザの認証方法 
認証方法として、平文のUSER/PASS 認証が広く用いられているが、サーバ/クライアント双方が対応していれば、オプションコマンドである APOP（から追加）や拡張機能である SASLメカニズムを利用したAUTHコマンドなどを用いて認証を暗号化し、パスワード漏洩を防止することができる。

ただし、それらを用いても認証の部分のみを暗号化したものであって、その他のメールのヘッダや本文などの内容は平文のままである。このため、TLSを用いてすべてを暗号化することが推奨されている。

IPAの勧告 
APOPで暗号化された中身の解析については電気通信大学(情報理工学部・大学院情報理工学研究科)の太田和夫教授の研究グループが解析を成功させた。この脆弱性はMD5ハッシュ方式をAPOPにおいて不適切に用いていることによるプロトコル（通信手順）上の問題であり、現時点で根本的な対策方法は存在しない。そのため、内容を漏洩させないためにはSTARTTLSやPOP over SSL（ポート番号は995番）などを利用してSSLで通信し、ネットワーク経路を暗号化する必要がある。

なお、MD5そのものについても、アメリカ合衆国政府（NIST（アメリカ国立標準技術研究所））及び日本のCRYPTREC（暗号技術評価プロジェクト）では推奨から外されており、その点でもAPOPの利用は勧められない。

暗号化 
Transport Layer Security (TLS)で暗号化して通信する方式として、POP3S (Implicit TLS)とSTARTTLSが規定されている。POP3Sではポート995番を用いる。

RFC 
  - The Post Office Protocol (POP3) Simple Authentication and Security Layer (SASL) Authentication Mechanism
  - SYS and AUTH POP Response Codes
  - Using TLS with IMAP, POP3 and ACAP
  - POP3 Extension Mechanism
  - POP URL Scheme
  - IMAP/POP AUTHorize Extension for Simple Challenge/Response
  - Some Observations on Implementations of POP3 
  - Post Office Protocol - Version 3
  - POP3 AUTHentication command （で改訂）
  - Post Office Protocol - Version 3 （で改訂）
  - Post Office Protocol - Version 3 （で改訂）
  - Post Office Protocol - Version 3 （で改訂）
  - Post Office Protocol - Version 3 （で改訂）
  - POST OFFICE PROTOCOL - VERSION 2
  - POST OFFICE PROTOCOL （で改訂）

脚注

関連項目 
 SMTP
 IMAP
 S/MIME & POP3
 メールサーバ

アプリケーション層プロトコル
電子メールのプロトコル
0918