W informatyce protokół Post Office Protocol wersja 3 (POP3) jest standardowym protokołem internetowym warstwy aplikacji używanym przez lokalne klienty poczty elektronicznej do pobierania poczty elektronicznej ze zdalnego serwera pocztowego za pośrednictwem połączenia TCP/IP. POP3 i IMAP4 (Internet Message Access Protocol) to dwa najbardziej rozpowszechnione standardowe protokoły internetowe służące do pobierania poczty elektronicznej. Prawie wszystkie nowoczesne klienty i serwery poczty elektronicznej obsługują oba te protokoły.

Krótka historia i specyfikacja

POP3 został zdefiniowany jako prosty protokół do pobierania wiadomości z serwera na maszynę kliencką; jedną z oficjalnych specyfikacji jest RFC 1939. Jego głównym celem było umożliwienie pracy offline — klient łączy się, pobiera wiadomości, a następnie może je usuwać z serwera lub pozostawić kopię. W porównaniu z IMAP, POP3 ma prostszą strukturę i mniejszą liczbę funkcji synchronizacji.

Jak działa POP3 (przebieg sesji)

Po nawiązaniu połączenia TCP klient i serwer wymieniają krótkie polecenia tekstowe i odpowiedzi. Standardowa sesja POP3 przebiega zwykle w trzech fazach:

  • Autoryzacja — klient loguje się do serwera (np. poleceniami USER i PASS, lub metodami bezpieczniejszymi jak APOP/SASL).
  • Transakcja — klient żąda listy wiadomości, pobiera je (RETR), może przeglądać nagłówki (TOP), oznaczać do usunięcia (DELE) itp.
  • Aktualizacja — po zakończeniu sesji klient wysyła QUIT, a serwer wykonuje wszystkie zaznaczone operacje (np. usuwa wiadomości oznaczone do usunięcia).

Porty i szyfrowanie

  • Port 110 — domyślny port POP3 bez szyfrowania; połączenie przesyła dane (w tym hasła) w postaci czytelnej, jeśli nie użyto dodatkowych mechanizmów.
  • Port 995 (POP3S) — POP3 przez SSL/TLS (implicit TLS) — połączenie szyfrowane od początku sesji.
  • STARTTLS — tryb negocjacji szyfrowania w czasie sesji (podobnie jak w SMTP), który pozwala na rozpoczęcie komunikacji wprost na porcie 110, a następnie przejście na TLS.

Najważniejsze polecenia protokołu

Do najczęściej występujących poleceń POP3 należą m.in.:

  • USER, PASS — logowanie prostym hasłem (plain);
  • APOP — uwierzytelnianie challenge–response (MD5), zaprojektowane, by nie wysyłać jawnego hasła;
  • STAT — liczba wiadomości i ogólny rozmiar skrzynki;
  • LIST — lista wiadomości z rozmiarami;
  • UIDL — identyfikatory unikalne wiadomości, używane do rozpoznawania już pobranych pozycji;
  • RETR — pobranie pełnej wiadomości;
  • TOP — pobranie nagłówka i określonej liczby pierwszych linii ciała (do szybkiego podglądu);
  • DELE — oznaczenie wiadomości do usunięcia;
  • RSET — wycofanie wszystkich oznaczeń do usunięcia w trakcie sesji;
  • QUIT — zakończenie sesji i wykonanie operacji aktualizacji na serwerze.

Uwierzytelnianie i bezpieczeństwo

Wiele implementacji POP3 wspiera różne mechanizmy uwierzytelniania, w tym SASL, APOP oraz przesyłanie danych przez zaszyfrowane połączenia TLS/SSL. Bez szyfrowania (np. na porcie 110 bez STARTTLS) nazwa użytkownika i hasło mogą być przechwycone sieciowo, dlatego dzisiaj zaleca się używanie TLS (POP3S lub STARTTLS). Dodatkowo protokół jako taki nie zapewnia szyfrowania treści wiadomości — jedynie kanału transportowego, jeśli jest zastosowany TLS.

Porównanie z IMAP

Główne różnice między POP3 a IMAP:

  • POP3 — prosty model: pobierz i ewentualnie usuń; działa dobrze, gdy skrzynka ma być synchronizowana lokalnie (offline); ograniczone możliwości zarządzania folderami i flagami.
  • IMAP — synchronizacja po stronie serwera: foldery, flagi (przeczytane/nieprzeczytane), dostęp z wielu urządzeń, praca z wiadomościami bez konieczności pobierania całości. Lepszy w środowiskach wielourządzeniowych.

Zalety i wady POP3

  • Zalety:
    • Prostota implementacji i niewielkie wymagania zasobów.
    • Szybkie pobieranie pełnych wiadomości (przy dobrym łączu).
    • Umożliwia łatwą pracę offline po pobraniu maili.
  • Wady:
    • Pogorszone wsparcie dla pracy z wieloma urządzeniami — łatwość rozbieżności stanu skrzynki.
    • Brak natywnego zarządzania folderami i zaawansowanych flag wiadomości.
    • Potencjalne ryzyko bezpieczeństwa, jeśli nie używa się szyfrowania.

Rozszerzenia i przyszłość (POP4)

Wiele lat temu przedstawiono propozycję specyfikacji POP4, wraz z działającą implementacją serwera. Proponowane rozszerzenie POP4 dodaje podstawowe zarządzanie folderami, obsługę wiadomości wieloczęściowych, jak również zarządzanie flagami wiadomości, pozwalając na lekki protokół, który obsługuje niektóre popularne funkcje IMAP, których brakuje POP3. Od 2003 r. w specyfikacji POP4 nie odnotowano żadnych postępów.

Podsumowanie

POP3 pozostaje prostym i szeroko obsługiwanym protokołem do pobierania poczty, odpowiednim tam, gdzie wystarczy model „pobierz i przechowuj lokalnie”. W środowiskach wymagających synchronizacji między wieloma urządzeniami i zaawansowanego zarządzania pocztą lepszym wyborem bywa IMAP. Niezależnie od wyboru protokołu, zaleca się korzystanie z szyfrowanych połączeń (TLS/SSL) oraz aktualnych mechanizmów uwierzytelniania w celu zwiększenia bezpieczeństwa.