SHA3-256 in Excel

SHA3-256 ist ein kryptographischer Hash und nutzt eine Sponge-Konstruktion mit der Permutation Keccak-f[1600]. Der 1600-Bit-Zustand wird als 5×5-Matrix aus 64-Bit Wörtern (Little-Endian) geführt. Die SHA3-Verfahren gelten als Nachfolger der SHA2 Familie.

Eine Permutation umfasst 24 Runden der Schritte θ (theta), ρ (rho), π (pi), χ (chi) und ι (iota). Zur Übersicht: θ mischt Spaltenparitäten, ρ rotiert Bits, π permutiert die Positionen, χ liefert die Nichtlinearität, ι fügt die Rundenkonstante ein. Weitere Details können hier genommen werden.

Grundsätzlich sind die Funktionen invertierbar. Aus der Tatsache heraus, dass am Ende nur die ersten 256 der 1600 Bit entnommen werden, wird das Verfahren zur Einwegfunktion.

Zur Veranschaulichung und Demonstration wurden in Excel die Verarbeitungsschritte nachimplementiert. Um dies kompakt zu halten, wurde nur mit einem 5×5-Zustand gearbeitet, was allerdings die maximale Eingabelänge auf 134 Zeichen begrenzt. Im nachfolgenden Bild ist eine Beispielverarbeitung dargestellt.

Download der Microsoft Excel-Datei. Auf Makros wurde verzichtet; aufgrund der Lambda-Funktionen wird das Ergebnis jedoch nur unter Office 365 oder Excel 2024 lauffähig sein.

SHA256: 2C2DB61146ACC7F22965E0091FC8C99177DEDD5DF61CE8EF921990A55ACDC724