Hallo Nils-Hero,
Natürlich kann man sich lokal einen Proxy hinstellen, der den Verkehr untersucht und dann wieder neu verschlüsselt, dann musst du halt in deinem Browser das Zertifikat dieses Proxys als vertrauenswürdig hinzufügen.
Und wo gibts Tutorials, die erklären, wie´s gemacht wird?
Vermutlich (ich würde mir so ein Ding nicht aufsetzen); als ich nach „SSL interception proxy“ gesucht habe, kam einiges, was mir nach Tutorial aussah – ob es für dich brauchbare sind, kann ich natürlich nicht beurteilen.
ein Browser kann deinen Proxy nicht von einem Man-in-the-Middle-Angriff unterscheiden
Das ist schlicht ein Bug.
Nein, das liegt in der Natur der Sache: Man kann schlicht keine „gute“ und bösartige Manipulation des Datenverkehrs unterscheiden, nur erkennen, dass manipuliert wurde.
Bei CSP hat man z.B. auch localhost weissgelistet, so einen Mechanismus sollte es auch bei https geben.
Das ist aber nicht vergleichbar mit deiner Forderung danach, Daten statt über HTTPS immer optional auch unverschlüsselt abrufen zu können. Dass man auf localhost auf das Blocken von aktivem Mixed-Content verzichten kann, liegt daran, dass der localhost generell als sicher zu bezeichnen ist (was für das öffentliche Internet aber nicht gilt) – wenn dort ein Programm unerwünschterweise Daten mitschneidet, hat man ganz andere Probleme...
Es wäre sicher irgendwie möglich gewesen, HTTPS so auszulegen, dass es optional wäre, aber dieses Vorgehen würde unnötige Risiken einführen: Ein Man-in-the-Middle-Angriff könnte quasi stellvertretend für dich HTTPS abschalten ohne dass du es merkst (dagegen gibt es HSTS). Nur damit eine Minderheit HTTPS abschalten könnte, würde man die Sicherheit der Mehrheit der Nutzer ganz sicher nicht aufs Spiel setzen.
Ich bin – wenn es mir aufgezwungen wird – gegen Verschlüsselung.
Warum willst du keine Verschlüsselung? – Dass du Scripte und Tracker auch anderweitig blocken kann, hatte ich ja bereits erläutert. Auch scheinst du mir Verschlüsselung mit DRM gleichzusetzen, ohne zu beachten, dass Verschlüsselung dich und deine Daten schützt, während DRM bedauerlicherweise Inhalte vor dir schützt. Du hast bei Verschlüsselung weiterhin die Freiheit, dir einen Proxy dazwischenzuschalten, obwohl man das besser nicht machen sollte.
Und damit bin ich nicht alleine.
Die Kritik unterstützt deine Position aber nicht wirklich, dort argumentiert man nicht direkt gegen Verschlüsselung selbst sondern gegen den damit verbundenen Konfigurationsaufwand, die (geringe) benötigte Rechenleistung und die Probleme beim Verteilen von Zertifikaten an eingebettete Geräte. Von daher finde ich es gut, dass die Browserhersteller Verschlüsselung im Zusammenhang mit HTTP/2 erzwingen – quasi mit Zuckerbrot und Peitsche. In dieses Umfeld passen auch die Maßnahmen, bei unverschlüsselt übertragenen Seiten mit Passwort-Feldern eine Warnung anzuzeigen (bringt wahrscheinlich noch Einige zum Nachdenken) und bestimmte JavaScript-APIs nur noch in sicheren Kontexten zugreifbar zu machen.
*[DRM]: Digital Right Management (von Richard Stallman oft als „Digital Restrictions Management“ bezeichnet)
Gruß
Julius