SHA-512
SHA-512 ist eine Funktion des kryptographischen Algorithmus SHA-2, der eine Weiterentwicklung des berühmten SHA-1 ist.
SHA-512 ist Sha-256 sehr ähnlich, außer dass es 1024 Bits “Blöcke” verwendet und als Eingabe eine maximale Länge von 2^128 Bits akzeptiert. SHA-512 hat auch andere algorithmische Modifikationen im Vergleich zu Sha-256.
SHA-512 Algorithmus Übersicht
SHA-512 hat die Struktur:
- Wörter sind 64 Bits lang
- 80 Runden werden statt 64 verwendet,
- die Nachricht ist in Stücke von 1024 Bits unterteilt,
- Anfangswerte von Variablen und Konstanten werden auf 64 Bits erweitert,
- die Konstanten für jede der 80 Runden sind die 80 ersten Primzahlen,
- die Verschiebung der rotr- und shr-operationen wird auf eine andere anzahl von Positionen verlagert.
Die Anfangswerte der Variablen h0-h7 in SHA-512:
- h0 := 0x6a09e667f3bcc908
- h1 := 0xbb67ae8584caa73b
- h2 := 0x3c6ef372fe94f82b
- h3 := 0xa54ff53a5f1d36f1
- h4 := 0x510e527fade682d1
- h5 := 0x9b05688c2b3e6c1f
- h6 := 0x1f83d9abfb41bd6b
- h7 := 0x5be0cd19137e2179
SHA-512/t
SHA-512/t ist identisch mit SHA-512, außer dass:
- Anfangs-Hash-Werte von h0 bis h7 werden durch die Erzeugungsfunktion SHA-512/t IV gesetzt;
- die Ausgabe wird konstruiert, indem die Verkettung von h0 bis h7 in t Bits abgeschnitten wird;
- t 384 ist nicht erlaubt, stattdessen sollte SHA-384 wie angegeben verwendet werden;
- t-Werte von 224 und 256 werden speziell als genehmigt bezeichnet.
Das modifizierte SHA-512/t ist das gleiche wie SHA-512, außer dass seine Anfangswerte von h0 bis h7 mit einer hexadezimalen Konstante 0xa5a5a5a5a5a5a5a5 XOR-verknüpft sind.