Altes TLS läuft auf Android aus

Transport Layer Security (TLS) ist das Protokoll, das heutzutage die meisten Teile des Internets antreibt. Es verleiht HTTPS das S für „Secure“. F-Droid verwendet es, um die Verbindung zu Repos abzuschirmen. Nach vielen Jahren schleppender Updates und einer zunehmenden Anzahl von Schwachstellen ist letztlich ein kritischer Punkt erreicht, an dem die Verwendung der alten, unbrauchbaren Versionen beendet werden sollte. TLS-Version 1.2 ist nicht angreifbar und wird grundsätzlich überall unterstützt. TLSv1.2 wurde 2008 fertiggestellt, ist somit weit davon entfernt unausgereift zu sein. Von TLSv1.0 und TLSv1.1 wird erwartet, dass sie von der IETF, der Normungsorganisation, die momentan den TLS-Standard festlegt, offiziell missbilligt werden. Die Hauptanbieter von Browsern haben alle versprochen, sie ab 2020 fallen zu lassen.

Da F-Droid NetCipher verwendet, wird TLSv1.2 in vollem Umfang zurück bis Android 4.1 unterstützt.

Eine Möglichkeit die TLSv1.2-Unterstützung zu erzwingen, wäre es, den „f-droid.org“-Webserver so zu konfigurieren, dass die Unterstützung von TLSv1.0 und TLSv1.1 beendet wird, wie das bei SSLv2 und SSLv3 geschah. Wir ziehen es stattdessen vor, dies auf der Client-Seite zu erledigen, damit alte Versionen von F-Droid und alte Geräte ohne TLSv1.2 (ergänzt in Android 4.1) weiterhin mit „f-droid.org“ funktionieren. Außerdem bedeutet eine client-seitige Verarbeitung, dass Verbindungen zu allen Repos diesen Schutz erhalten werden, ohne Änderungen an Repo-Servereinrichtungen vorzunehmen.

Mit dem NetCipher-Ansatz werden die neuesten Versionen von F-Droid niemals TLS älter als v1.2 nutzen, da sie sich nicht verbinden werden, solange kein TLSv1.2 zur Verfügung steht. Da f-droid.org weiter sicher TLSv1.0 und TLSv1.1 unterstützen wird, sind ältere Clients und Android-Geräte immer noch in der Lage, sich zu verbinden, selbst wenn sie TLSv1.2 nicht unterstützen. Das ist ein Gewinn für alle.

Das bedeutet, dass jedes Repo von nun an TLSv1.2 unterstützen muss, um mit dem F-Droid-Client zu funktionieren. Wenn ein Webserver TLSv1.2 nicht unterstützt, ist er wirklich zu alt, um in irgendeiner Weise sicher genutzt werden zu können. Selbst die älteste, noch unterhaltene Linux-Version (6) von Red Hat Enterprise unterstützt TLSv1.2 und die wurde 2010 veröffentlicht.