In dieser Hausarbeit wird der mathematische Hintergrund des SHA-256 (Secure Hash Algorithm) genauer erläutert. Dieser ist heutzutage mit Blick auf Passwortsicherheit und Bitcoin nicht mehr wegzudenken und birgt daher für das Zeitalter des Internets einen immensen Stellenwert.
Inhaltsverzeichnis
1. Einleitung
2. Einführung in die Thematik, Operatoren und Funktionen
2.1 Grundlegende Begrifflichkeiten in der IT
2.2 Operatoren
2.2.1 Standardisierte logische Operatoren
2.2.2 Nach „NIST“ definierte Operatoren
2.3 Funktionen
2.3.1 „Ch(x,y,z)“
2.3.2 „Maj(x,y,z)"
2.3.3 „ ∑0{256} (x)“ und „ ∑1{256} (x)“
2.3.4 „σ0{256} (x)“ und „σ1{256} (x)“
3. Funktionsweise des SHA-2
3.1 SHA-256 Vorbereitung
3.1.1 Konstanten und Initiativ Hashwert
3.1.2 Datensatzerweiterung
3.1.3 Datengliederung
3.2 SHA-256 Hashberechnung
3.2.1 Ermitteln der Words
3.2.2 Initiierung der Arbeitsvariablen
3.2.3 Kompressionsfunktion
3.2.4 Zusammenführung zum Hashwert
Zielsetzung & Themen
Die vorliegende Hausarbeit hat zum Ziel, die mathematischen Grundlagen und die technische Funktionsweise des SHA-256-Algorithmus verständlich zu erläutern und dabei die zugrundeliegenden kryptografischen Prozesse transparent zu machen.
- Grundlagen der Informationstechnologie und Boolesche Algebra
- Logische Operatoren und mathematische Funktionen im Kontext von SHA-256
- Schritt-für-Schritt-Vorbereitung: Padding und Datenaufbereitung
- Der komplexe Prozess der Hash-Berechnung durch die Kompressionsfunktion
- Sicherheitsrelevanz von Hash-Funktionen in modernen IT-Systemen
Auszug aus dem Buch
3.1.2 Datensatzerweiterung
Ein weiterer Hintergrund einer Hashfunktion ist es, den gesuchten Hashwert aus einer kaum eingeschränkten Menge an Daten ( Datenmenge < 2^64 (vgl. (National Institute of Standards and Technology, 2015, p. 3))) zu berechnen. Jedoch ist auch die Hashfunktion an Bedingungen gebunden, welche im Nachhinein deutlicher werden, weswegen häufig die Länge des Inputs erweitert werden muss. Dieses Verfahren wird fachsprachlich „Padding“ (dt. „Polstern/ Erweitern“) genannt.
Dabei wird zu aller erst die Länge („ℓ“) der zu kryptografierenden Information „M“ in Bits ermittelt. An die Information „M“ wird nun ein Bit mit dem Status „1“ angehängt. Nun gilt es „k“ Nullen anzuhängen, mit der Bedingung, dass k die kleinste nicht negative Lösung dieser Gleichung ist: „ℓ + 1 + k ≡ 448mod 512“ (vgl. (National Institute of Standards and Technology, 2015, S. 13)). Ziel beim Padding ist es, dass die Eingangsdaten ein Vielfaches (ohne Rest) von 512 sind. Daher wird abschließend an die Information, die bereits mit „1“ und „k“ mal „0“ erweitert wurde, 64 Bit angehängt, welche die ursprüngliche Länge der „Message M“ darstellen. Dies erklärt auch, warum die Daten nicht länger als 2^64 sein dürfen, sie wären ansonsten nicht mehr darstellbar.
Zusammenfassung der Kapitel
1. Einleitung: Diese Einleitung führt in die Bedeutung von Hash-Funktionen für das digitale Leben ein und motiviert die Untersuchung des SHA-256-Algorithmus.
2. Einführung in die Thematik, Operatoren und Funktionen: Dieses Kapitel erläutert die IT-Grundlagen sowie die für den SHA-256 notwendigen mathematischen und logischen Operatoren und Funktionen.
3. Funktionsweise des SHA-2: Hier wird der detaillierte Ablauf des SHA-256-Algorithmus, von der Vorbereitung der Daten bis zur finalen Hash-Berechnung, schrittweise dargelegt.
Schlüsselwörter
SHA-256, Kryptografie, Hash-Funktion, Mathematik, Informatik, Algorithmus, NIST, Bit, Byte, Padding, Kompressionsfunktion, Datensicherheit, Authentifizierung, Binärsystem, Hexadecimal
Häufig gestellte Fragen
Worum geht es in dieser Arbeit grundsätzlich?
Die Arbeit behandelt die mathematische Funktionsweise des SHA-256-Algorithmus, der für die sichere Erzeugung von Hash-Werten in der Informationstechnik von zentraler Bedeutung ist.
Was sind die zentralen Themenfelder der Arbeit?
Die zentralen Themen umfassen die informationstechnischen Grundlagen, spezifische logische Operatoren sowie die methodische Aufbereitung und Kompression von Datenblöcken innerhalb des SHA-256-Verfahrens.
Was ist das primäre Ziel der Arbeit?
Das primäre Ziel ist es, den mathematischen Hintergrund und die schrittweise Durchführung der Hash-Berechnung durch den SHA-256 transparent und nachvollziehbar darzustellen.
Welche wissenschaftliche Methode wird verwendet?
Die Arbeit basiert auf einer methodischen Analyse und Aufarbeitung der offiziellen Standards des „National Institute of Standards and Technology“ (NIST), um den Algorithmus mathematisch zu erklären.
Was wird im Hauptteil behandelt?
Im Hauptteil wird der Algorithmus in die Bereiche Vorbereitung (Padding, Gliederung) und eigentliche Hashberechnung (Words-Ermittlung, Arbeitsvariablen, Kompressionsfunktion) unterteilt.
Welche Schlüsselwörter charakterisieren die Arbeit?
Die Arbeit wird maßgeblich durch Begriffe wie SHA-256, Hash-Funktion, Kryptografie, Padding, Kompressionsfunktion und NIST charakterisiert.
Warum ist eine „Datensatzerweiterung“ (Padding) notwendig?
Padding stellt sicher, dass die Eingangsdaten eine für den Algorithmus erforderliche Blockgröße (Vielfaches von 512 Bit) erreichen, um eine konsistente Verarbeitung zu ermöglichen.
Was ist die Aufgabe der Kompressionsfunktion im SHA-256?
Die Kompressionsfunktion führt in 64 Runden die eigentliche Berechnung durch, indem sie Konstanten und Wörter mit Arbeitsvariablen kombiniert, um den Hash-Wert iterativ zu bilden.
- Arbeit zitieren
- Anonym (Autor:in), 2019, Der SHA-256 (Secure Hash Algorithm). Kryptografie durch Mathematik, München, GRIN Verlag, https://www.grin.com/document/1142025