Wszystko sprowadza się do wymagań bezpieczeństwa, wyboru użytkownika i ryzyka niejawnego obniżenia oceny. Wyłączenie starych szyfrów po stronie serwera jest w dużej mierze konieczne, ponieważ przeglądarki z radością przechodzą do absolutnie okropnych szyfrów po stronie klienta w imię wygody / wygody użytkownika. Zapewnienie, że nic, co zależy od bezpiecznego kanału dla użytkownika, nie może być osiągnięte za pomocą niepewnej metody, jest oczywiście bardzo dobre.
Nie pozwalając mi wyraźnie obniżyć poziomu bezpieczeństwa do niezabezpieczonego HTTP, kiedy uznałem, że twój post na blogu o tym, dlaczego lubisz Python bardziej niż Ruby (nie mówiąc, że to robisz, to tylko ogólny przykład), nie jest czymś, co przeszkadza mi w oczach widowni lub opinii publicznej Udało mi się wejść bez przeszkód, przy założeniu, że HTTPS będzie dla mnie trywialny.
Istnieją obecnie systemy wbudowane, które nie mają możliwości korzystania z TLS po wyjęciu z pudełka, lub takie, które utknęły na starych implementacjach (myślę, że to okropnie źle, że tak jest, ale jako zaawansowany użytkownik [insert embedded urządzenie tutaj], czasem nie mogę tego zmienić).
Oto zabawny eksperyment: spróbuj pobrać najnowszą wersję LibreSSL z wcześniejszej strony OpenBSD przez HTTPS z wystarczająco starą implementacją TLS / SSL. Nie będziesz w stanie. Próbowałem pewnego dnia na urządzeniu ze starszą kompilacją OpenSSL od około 2012 roku, ponieważ chciałem uaktualnić ten system wbudowany do bezpieczniejszych, nowych rzeczy ze źródła - nie mam luksusu w postaci gotowego pakietu. Komunikaty o błędach, gdy próbowałem, nie były dokładnie intuicyjne, ale przypuszczam, że było tak, ponieważ mój starszy OpenSSL nie obsługiwał właściwych rzeczy.
Jest to jeden przykład, w którym przeniesienie HTTPS-a może w rzeczywistości zaszkodzić ludziom: jeśli nie masz luksusu z gotowych pakietów i chcesz samodzielnie rozwiązać problem, budując ze źródła, jesteś zablokowany. Na szczęście w przypadku LibreSSL możesz wrócić do jawnego żądania HTTP. Jasne, nie uratuje cię to od atakującego, który przepisuje ruch, który jest w stanie zastąpić pakiety źródłowe skompromitowanymi wersjami i przepisać wszystkie sumy kontrolne w treści HTTP opisujące pakiety dostępne do pobrania na przeglądanych stronach, ale nadal jest użyteczny częstszy przypadek.
Większość z nas nie jest ani jednym niezabezpieczonym plikiem pobranym od APT (Advanced Persistent Thread: żargon bezpieczeństwa dla krajowych agencji wywiadowczych i innych niezwykle dobrze wyposażonych cyberataków). Czasami potrzebuję po wget
prostu dokumentacji tekstowej lub małego programu, którego źródło mogę szybko skontrolować (na przykład moje małe narzędzia / skrypty w GitHub) na polu, które nie obsługuje najnowszych pakietów szyfrów.
Osobiście zadałbym to pytanie: czy twoje treści są takie, że osoba może zgodnie z prawem podjąć decyzję „Nie mam nic przeciwko dostępowi do wiedzy publicznej”? Czy istnieje realna szansa na realne ryzyko dla osób nietechnicznych przypadkowo obniżających standard HTTP do treści? Uwzględnij swoje wymagania bezpieczeństwa, wymuszone wymagania dotyczące prywatności użytkowników oraz ryzyko niejawnych obniżek w stosunku do zdolności użytkowników, którzy rozumieją ryzyko dokonywania świadomego wyboru w poszczególnych przypadkach, aby przejść bez zabezpieczenia. Całkowicie uzasadnione jest stwierdzenie, że w przypadku Twojej witryny nie ma dobrego powodu, aby nie egzekwować protokołu HTTPS - ale sądzę, że uczciwie jest powiedzieć, że nadal istnieją dobre przypadki użycia zwykłego protokołu HTTP.