Abo
  • Services:

Hashfunktion: Gits langer Weg zu SHA-256

Die Entwickler des Versionskontrollsystems Git wollen und müssen von SHA-1 auf SHA-256 wechseln. Doch auch fast zwei Jahre nach ersten Plänen gibt es nur langsame Fortschritte in dieser Richtung und den Entwicklern steht noch viel Arbeit bevor.

Artikel veröffentlicht am ,
Github unterstützt die Arbeiten an der Git-Migration zu SHA-256.
Github unterstützt die Arbeiten an der Git-Migration zu SHA-256. (Bild: Github)

Seit knapp zwei Jahren gilt die Hashfunktion SHA-1 als endgültig gebrochen und davon abhängige Software-Projekte müssten auf sichere Alternativen wechseln. Ein sehr prominentes Beispiel hierfür ist das Versionskontrollsystem Git, das bereits kurz nach Bekanntwerden der SHA-1-Kollision einen Plan für den Wechsel hin zu SHA-256 fasste. Doch diese Arbeiten sind trotz einiger Fortschritte noch längst nicht abgeschlossen, wie der Github-Angestellte Brian M. Carlson auf der Konferenz Git-Merge berichtet. Die Git-Merge findet im Zuge der größeren Fosdem-Konferenz in Brüssel statt.

Stellenmarkt
  1. meravis Wohnungsbau- und Immobilien GmbH, Hannover
  2. Deutsche Leasing AG, Bad Homburg vor der Höhe

Dass die Umbauarbeiten trotz fast zwei Jahren Entwicklungszeit noch lange nicht beendet sind, hat einen relativ simplen Grund: Die Nutzung eines anderen Hash-Algorithmus als SHA-1 war bei Git nie vorgesehen. Das ist vor allem deshalb problematisch, weil die Software Git grundlegend um die Hashwerte herum aufgebaut ist.

Sämtliche Objekte, die Git speichert, wie die Dateien im Repository, die interne Baumstruktur, einzelne Beiträge und anderes, werden über die Hashwerte referenziert. Zusätzlich dazu ist die Länge der SHA-1-Hashwerte von 160 Bit an mehreren Stellen mit einem 20 Byte großem Array fest codiert gewesen.

Hashfunktion steht, Interoperabilität noch nicht

Die Idee, diese Arrays und überhaupt auch die Repräsentation der Hashwerte in einen generischen Objekttyp zu überführen, äußerte Carlson bereits im Jahr 2014. Und inzwischen sind diese Arbeiten laut Carlson auch weitgehend abgeschlossen. So ist Git nun in der Lage, SHA-256 für neue Objekte zu nutzen und so ein ganzes Repository auf Grundlage der neuen Hashfunktion aufzubauen, wozu auch das Repository-Format erweitert werden musste.

Darüber hinaus kann weiterhin SHA-1 verwendet werden, so dass die Git-Entwickler die beiden Implementierungen parallel zueinander testen können. Was jedoch noch fehlt, ist jede Art der Interoperabilität, die laut Carlson das eigentliche Ziel der Arbeiten ist. So sollen für Nutzer sämtliche mit dem Übergang verbundenen Störungen weitgehend minimiert werden. Ebenso sollen die alte und die neue Software weiter miteinander kommunizieren können, so dass jeder Nutzer den Zeitpunkt des Übergangs selbst wählen können soll.

Hierzu muss etwa ein neues Index-Format umgesetzt werden, das sowohl SHA-1 wie auch SHA-256 versteht und darüber die entsprechenden Objekte findet. Ebenso müssen vor allem die Befehle Fetch und Push so umgearbeitet werden, dass neue Clients diese auch auf SHA-1-Repositorys durchführen können. Dafür erhält der Client Möglichkeiten, die Hashwerte der referenzierten Objekte lokal zu übersetzen. Diese Technik wiederum kann dann auch dazu genutzt werden, die Repositorys selbst von SHA-1 auf SHA-256 zu migrieren.

Detaillierter Plan für den Übergang

Für Nutzer soll all dies zunächst hinter den Kulissen abgewickelt werden. Beim sogenannten Dark Launch wird weiter SHA-1 zur Ein- und Ausgabe verwendet, intern jedoch schon SHA-256 gesetzt, was dabei getestet werden kann. In einer folgenden, frühen Übergangsphase sollen sowohl SHA-1 als auch SHA-256 als Eingaben genutzt werden können, was die Kommunikation und Zusammenarbeit mit Personen ermöglichen soll, die noch nicht auf SHA-256 gewechselt haben.

Der erste echte Schritt des Übergangs ist es dann, nur noch SHA-256 als Ausgabe für die Objekte zu verwenden. Solange hier auf die Möglichkeit der Interoperabilität geachtet wird, seien damit verbundene Störungen wohl minimal, heißt es in dem offiziellen Plan. Letztlich sollen irgendwann nur noch Hashwerte zugelassen werden, die SHA-256 nutzen.

Wann und inwiefern einzelne Projekte diese Übergangsphasen umsetzen, bleibt diesen natürlich selbst überlassen. Als Voraussetzung dafür muss der Git-Code vor allem noch die beschriebene Interoperabilität gewährleisten können, was zurzeit eben noch nicht der Fall ist. Einen Zeitplan dafür hat Carlson nicht genannt. Bis zum vollständigen Abschied von SHA-1 wird es für Git also wohl noch etwas dauern.



Anzeige
Hardware-Angebote
  1. 18,99€
  2. (u. a. Fractal Design Meshfy Light Tint 69,90€)
  3. (reduzierte Überstände, Restposten & Co.)

__destruct() 14. Feb 2019 / Themenstart

Und es wäre bestimmt sowieso schneller, wenn sich die Länge nicht ändern würde, sondern...

arthurdont 05. Feb 2019 / Themenstart

Witzbold. Genauso gut könnte man behaupten, daß ein A380 weniger Softwareprobleme hätte...

Peter Brülls 04. Feb 2019 / Themenstart

Rechtschreibkorrigierte Version. Guter Vorsatz: Ich werde nicht mehr einhändig und...

RicoBrassers 04. Feb 2019 / Themenstart

So wie ich den Post verstanden habe, baut man Git jetzt aber so flexibel um, dass eine...

schily 03. Feb 2019 / Themenstart

SCCS ist jedenfalls schneller als git und verbraucht erheblich weniger PLattenplatz

Kommentieren


Folgen Sie uns
       


Sechs Bluetooth-Hörstöpsel im Test

Wir haben sechs neue Bluetooth-Hörstöpsel getestet. Mit dabei sind Modelle von Sennheiser, Audio Technica, Master & Dynamic sowie HMD Global. Aber auch zwei Modelle kleinerer Startups sind vertreten. Und eines davon hat uns bezüglich der Akkulaufzeit sehr überrascht. Kein anderer von uns getesteter Bluetooth-Hörstöpsel hat bisher eine vergleichbar lange Akkulaufzeit zu bieten - wir kamen auf Werte von bis zu 11,5 Stunden statt der sonst üblichen drei bis fünf Stunden.

Sechs Bluetooth-Hörstöpsel im Test Video aufrufen
Uploadfilter: Voss stellt Existenz von Youtube infrage
Uploadfilter
Voss stellt Existenz von Youtube infrage

Gut zwei Wochen vor der endgültigen Abstimmung über Uploadfilter stehen sich Befürworter und Gegner weiter unversöhnlich gegenüber. Verhandlungsführer Voss hat offenbar kein Problem damit, wenn es Plattformen wie Youtube nicht mehr gäbe. Wissenschaftler sehen hingegen Gefahren durch die Reform.

  1. Uploadfilter Koalition findet ihren eigenen Kompromiss nicht so gut
  2. Uploadfilter Konservative EVP will Abstimmung doch nicht vorziehen
  3. Uploadfilter Spontane Demos gegen Schnellvotum angekündigt

Security: Vernetzte Autos sicher machen
Security
Vernetzte Autos sicher machen

Moderne Autos sind rollende Computer mit drahtloser Internetverbindung. Je mehr davon auf der Straße herumfahren, desto interessanter werden sie für Hacker. Was tun Hersteller, um Daten der Insassen und Fahrfunktionen zu schützen?
Ein Bericht von Dirk Kunde

  1. Alarmsysteme Sicherheitslücke ermöglicht Übernahme von Autos
  2. Netzwerkanalyse Wireshark 3.0 nutzt Paketsniffer von Nmap
  3. Sicherheit Wie sich "Passwort zurücksetzen" missbrauchen lässt

Pauschallizenzen: CDU will ihre eigenen Uploadfilter verhindern
Pauschallizenzen
CDU will ihre eigenen Uploadfilter verhindern

Absurder Vorschlag aus der CDU: Anstatt die Urheberrechtsreform auf EU-Ebene zu verändern oder zu stoppen, soll nun der "Mist" von Axel Voss in Deutschland völlig umgekrempelt werden. Nur "pures Wahlkampfgetöse" vor den Europawahlen, wie die Opposition meint?
Eine Analyse von Friedhelm Greis

  1. Europawahlen Facebook will mit dpa Falschnachrichten bekämpfen
  2. Urheberrecht Europas IT-Firmen und Bibliotheken gegen Uploadfilter
  3. Uploadfilter Fast 5 Millionen Unterschriften gegen Urheberrechtsreform

    •  /