NeuerNutzer schrieb:
Für was soll denn dann SHA1 nicht mehr ausreichend sein?
Für einfache Signaturen (alles wo SHA1 einmalig aufgerufen wird und das Ergebnis bekannt ist); und das obwohl es keine öffentlich bekannte Kollision gibt, also reine Vorsichtsmaßnahme.
Im Gegensatz zu MD5 wo diese bereits erfolgreich produziert wurden (allerdings nur mit minimalen Änderungen).
Trotzdem wird MD5 bis heute verwendet, z.B. zur Verifizierung von Ubuntu-ISOs (auf https://help.ubuntu.com/community/UbuntuHashes stehen nur MD5). Auch auf der Ubuntuusers.de Downloadseite werden als Prüfsumme nur MD5 verlinkt, obwohl auch SHA1 und SHA256 verfügbar sind auf dem Ubuntu Download-Server.
Aber die meisten Leute prüfen ja nicht mal die MD5...
Konkret bei HTTPS: So ein Zertifikat ist teils über Jahre gültig und wenn dann die Verifikation an einer einzigen SHA1 hängt, kann man vielleicht sagen daß jemand die nötige Rechenzeit investiert um das zu kippen. (laienhaft ausgedrückt)
Bei LUKS wird die Hashfunktion nicht einmalig aufgerufen sondern in einer Schleife viele tausend Mal (siehe cryptsetup luksDump, iterations); der Zweck ist hier Rechenleistung zu verbrennen um Bruteforce teurer zu machen.
Bekannt ist dann nur die Signatur vom letzten Schritt, wenn du dafür eine Kollision findest kannst du sie trotzdem nicht verwenden da du ja, wenn überhaupt, eine Kollision für hunderttausend Iterationen finden musst.
So eine "Kollision" gibt es tatsächlich bei LUKS, und zwar wenn du ein Passwort (oder Key) > 64 Bytes verwendest, arbeitet der PBKDF2-Algorithmus nicht mit dem Passwort sondern mit dem Hash davon. Wenn du also das Passwort kennst und somit den Hash des Passwortes produzieren kannst, dann wird der Hash auch als gültiges Passwort angenommen. Das bedeutet daß du bei einem zufälligen Keyfile von 512 Bytes, tatsächlich nicht 256^512 Kombinationen durchprobieren musst, sondern nur 256^20 weil der Hash eben bedeutend kürzer ist. Trotzdem ist das immer noch eine unmöglich große Zahl, und durch die Iterationen kostet jeder Versuch ordentlich Rechenzeit.
Siehe: https://mathiasbynens.be/notes/pbkdf2-hmac
Das ist dann aber keine Schwäche von SHA1 die hier zum tragen kommt, sondern eine Eigenheit des PBKDF2-Algorithmus.
Knacken kann man es deswegen noch lange nicht...
Aber wenn dich das stört (und du tatsächlich so lange Passwörter verwendest), kannst du wie gesagt auch selbst auf SHA512 umsatteln, auch nachträglich ohne alles neu verschlüsseln zu müssen. Du musst dazu allerdings den Master Key auf einen neuen LUKS-Header übertragen (gleicher Cipher, gleiches Offset, anderer Hash). Da das nicht ungefährlich ist, vorher auch ein Backup des bestehenden LUKS-Headers machen.
http://unix.stackexchange.com/a/178722/30851