Dlaczego tak
Metoda POST umieszcza dane w treści żądania HTTP, dzięki czemu hasło nie pojawia się w pasku adresu, historii przeglądarki ani w logach serwera, gdzie zapisywane są adresy URL z parametrami GET. POST sam niczego nie szyfruje — ochronę przed podsłuchem zapewnia dopiero HTTPS, dlatego ostatni wariant jest błędny. Dane GET nie są szyfrowane, a to właśnie GET ma praktyczne limity długości.