Jednak, zgodnie z moją najlepszą wiedzą, jeśli chodzi o komunikację między serwerem pocztowym a serwerem pocztowym, większość wiadomości e-mail jest nadal przesyłana zwykłym tekstem i nie jest szyfrowana, co umożliwia każdemu w sieci odczytanie ich treści.
Poprawny. SMTP, podobnie jak HTTP, jest domyślnie zwykłym tekstem.
Obecnie wiele serwerów poczty obsługuje protokół TLS (wcześniej znany jako SSL) dla SMTP. (Dotyczy to Gmaila.) Jednakże, to ma takie same problemy jak w przypadku HTTP [S]: certyfikaty wydane przez znanego CA pieniędzy kosztów i te autopodpisywane są bezwartościowe 1 do ochrony przed atakami MiTM . Jeśli Twój serwer pocztowy dokonuje ścisłej weryfikacji certyfikatu odbiorcy (podobnie jak przeglądarki internetowe), może nie dostarczyć wiadomości do serwerów, które używają certyfikatów z podpisem własnym lub wewnętrznych urzędów certyfikacji. Jeśli nie , to nie ma pewności, że rozmawia z właściwym serwerem, a nie z oszustem .
Ponadto TLS jest stosunkowo nowym dodatkiem do SMTP, więc nawet jeśli serwer poczty odbiorcy obsługuje TLS, nadawca może nie, lub może być domyślnie wyłączony.
1 (O ile serwer wysyłający nie obsługuje DANE (TLSA), a administrator serwera odbierającego chce opublikować rekordy TLSA w DNS. Jest to rzadko wykonywane i nieco żmudne).
Czy są jakieś technologie, które dają użytkownikowi pewne gwarancje, że jego e-maile są wysyłane bezpiecznie od końca do końca?
Dwa najczęstsze standardy bezpieczeństwa poczty e-mail:
OpenPGP , oparty na sieci zaufania i darmowy. Implementacja typu open source to GnuPG ( dla Windows , dla Thunderbirda ), a oryginalny PGP ewoluował w komercyjny pulpit PGP .
Dla internetowych klientów poczty e-mail FireGPG jest możliwością - do cholery
S / MIME , oparty na infrastrukturze X.509. Zaimplementowane przez większość klientów stacjonarnych (w tym Outlook, Thunderbird, Mail.app). Jednak stosunkowo mało popularny ze względu na tę samą strukturę opartą na uprawnieniach jak TLS / SSL: podpisane certyfikaty kosztują pieniądze, a samopodpisanych certyfikatów nie można wiarygodnie zweryfikować.
W obu przypadkach szyfrowanie wymaga, aby odbiorca już korzystał z systemu i wygenerował / uzyskał parę kluczy. (W przypadku podpisania tego, nadawcy jest używany parę kluczy. Normalną praktyką jest zarówno znakiem i szyfrowania wiadomości.)
Dlaczego nie poinformować użytkownika, gdy szyfrowanie nie jest obsługiwane, i pozwolić mu wybrać, czy chce, aby jego poczta nadal była dostarczana?
Zwykle przesłane wiadomości są umieszczane w kolejce i ani użytkownik, ani MTA nie mogą wiedzieć, czy następny przeskok obsługuje TLS, czy nie - do momentu wysłania komunikatu , w którym to momencie nie ma niezawodnego sposobu, aby poprosić użytkownika o potwierdzenie. (Mogą to być AFK, offline, śpiący lub skrypt / program. Jeśli wysłałem wiadomość, chcę, aby została dostarczona jak najszybciej.)
Poza tym dzięki SMTP nigdy nie wiadomo, czy następny przeskok jest końcowy, czy po prostu przekaże pocztę gdzie indziej. Często zdarza się, że zapasowy MX znajduje się w zupełnie innej sieci.
W związku z tym. kompleksowe bezpieczeństwo jest możliwe tylko wtedy, gdy obie strony korzystają z OpenPGP lub S / MIME.