IT-Security. Teil 16: Hash-Verfahren
|
|
|
- Thomas Fürst
- vor 7 Jahren
- Abrufe
Transkript
1 IT-Security Teil 16: Hash-Verfahren
2 Literatur [16-1] [16-2] [16-3] [16-4] [16-5] [16-6] 2
3 Übersicht Hash-Funktionen Geburtstagsangriff Beispiel: SHA-256 3
4 Definition Hash-Funktion I Hash-Funktion = Funktion h(x), für die folgendes gilt: Kompression: Abbildung eines beliebigen Bitstrings auf einen Ausgabewert mit einer festen in der Regel kurzen Länge. Dieser ist der Hash-Wert. Effizienz: Für jeden Eingabewert x lasst sich die Funktion h(x) mit geringem Aufwand berechnen. Das muss nicht umgekehrt gelten. Beispiele: Berechnung des Paritätsbits: Rechnernetze Cyclic Redundancy Check (CRC): Rechnernetze, Plattenblöcke Indizierung von Tabellen einer relationalen Datenbank Zugriff auf Symboltabellen innerhalb von Compilern 4
5 Definition Hash-Funktion II Kryptographische Hash-Funktion = Hash-Funktion h(x), für die zusätzlich noch folgendes gilt: Unbestimmbarkeit von Urbildern: Nur mit erheblichen Aufwand ist das x für ein gegebenes y bei y=h(x) zu bestimmen. Unbestimmbarkeit eines weiteren Urbildes: Nur mit erheblichen Aufwand ist für ein gegebenes x ein weiteres x' zu bestimmen, wobei h(x)=h(x') gilt. Kollisionsfreiheit (Collision Resistance): Nur mit erheblichen Aufwand sind zwei beliebige x und x' zu bestimmen, wobei h(x)=h(x') gilt. Der kryptographische Schutz basiert auf dem hohen Aufwand in den letzten drei Forderungen. Diese Asymmetrie in der Effizienz führt dazu, dass manchmal kryptographische Hash-Funktionen als One-Way-Verfahren bezeichnet werden. Siehe dazu: 5
6 Bemerkungen Kollision = Eine Kollision liegt vor, wenn derselbe Hash-Wert anhand verschiedener Urbilder erzeugt werden kann. Da das Urbild x (fast) immer größer ist als der Hash-Wert, z.b. 160 bit, sind Kollisionen prinzipiell nie zu vermeiden: Beispiel: Block von 1 kbyte: *8 Bit-Kombinationen werden auf Möglichkeiten abgebildet. Praktisch haben Kollisionen nur in wenigen Fällen Relevanz, da menschlich lesbare Texte, z. B. Verträge, nur eine sehr kleine Teilmenge aller Bitkombinationen benutzen. Der Schutz basiert auf dem hohen Aufwand in einem konkreten Fall eine Kollision zu erzeugen, nicht darauf, ob Kollisionen überhaupt möglich sind. 6
7 Struktur der Hash-Funktionen (Konzept) 7
8 Ergänzungen f() ist eine Kompressionsfunktion. Bitlänge des Hash-Wertes sollte mindestens 160 bit sein. Implementiert werden diese Funktionen, indem ein Register mit der Hash-Wertlänge (mind. 160 bit) in Schleifen (Runden) blockweise verknüpft wird: 8
9 Geburtstagsangriff I Idee Wie viele Personen müssen sich in einem Raum befinden, dass zwei Personen mit 50%iger Wahrscheinlichkeit am selben Tag Geburtstag haben? Antwort: 23 Allgemeiner: Wie viele Elemente müssen aus einer Menge mit n Elementen ausgewählt werden, damit mit einer Wahrscheinlichkeit 0,5 zwei identische gefunden werden? Antwort: Ca. Wurzel aus n Anders: Wie viele Texte müssen zufällig erstellt werden, damit zwei beliebige mit 50%iger Wahrscheinlichkeit denselben Hash- Wert besitzen? Bei einer Hash-Wertlänge von 160 bit: 2 80, was als nicht realisierbar gilt. 9
10 Wie verläuft der Geburtstagsangriff? 1. Es gibt zwei Nachrichten m 1 und m 2, wobei m 1 für den Angreifer schlecht und m 2 gut ist. 2. Der Angreifer variiert m 1 und m 2 - z. B. Einfügen von Blanks oder Zeichen, die mit einem nachfolgenden Backspace unsichtbar gemacht werden o.ä. - und bestimmt die Hash- Werte. 3. Nach durchschnittlich 2 r/2 Versuchen, wobei r die Länge des Hash-Wertes ist, hat der Angreifer zwei Variationen m 1 ' und m 2 ', gefunden, die denselben Hash-Wert besitzen. 4. Nun lässt der Angreifer m 1 ' unterschreiben. 5. Der Angreifer tauscht den unterschriebenen Text m 1 ' mit dem anderen Text m 2 ' aus... 10
11 Geburtstagsangriff II Was lehrt uns das? Der Unterschreibende sollte vor der Leistung der Unterschrift den Text kosmetisch, z.b. durch willkürliches Einfügen von Leerzeichen verändern. Das Besagte bezog sich auf ASCII-Texte (siehe Backspace etc.). Mit Textsystemen ist es noch schlimmer, da auf der Binärfile -Ebene "unsichtbar" Daten eingefügt werden können... Siehe dazu: 11
12 Einfache Hash-Funktionen Einfachstes Verfahren: H(m) = b 1 XOR b 2 XOR... XOR b n Blockweises Exclusiv-Oder aller Blöcke der Nachricht m Ergebnis: Einfache longitudinale Parität Nicht besonders sicher bzw. wirksam Anwendungsbeispiel: Feststellung von Bitkippern Verbesserung: 1. Hash-Register:=0 2. Für jeden n-bit-block: Verschiebung der Hash-Registers um 1 Bit nach links Register:= Register XOR Block Hohes Maß an Erkennung von Bitkippern Probleme beider Verfahren: Es lässt sich leicht eine andere Nachricht mit demselben Hash-Wert generieren. 12
13 Secure Hash Algorithm (SHA) Version Version SHA-0 (fehlerhaft) 1995 SHA SHA2-Varianten: SHA-256, SHA-384, SHA SHA SHA-3-Varianten: SHA3-224, SHA3-256, SHA3-384, SHA3-512 Sollten nicht benutzt werden Empfehlung Algorithmus Hash-Size Word-Size Block-Size Runden SHA SHA SHA SHA
14 SHA-256 Globaler Algorithmus func SHA-256(Message m) { Initial_HashArray(); while not End-of-Information(m) { M:= getnextblock(m); if last Block(M) { padding_block(m); MSG-Scheduling(M); Initial_Register(); MSG-Compression(); Hash-Value(); return H[0..7]; 14
15 SHA-256 Initialisierung des Hash-Arrays proc Initial_HashArray { H[0]:= 0x6a09e667; H[1]:= 0xbb67ae85; H[2]:= 0x3c6ef372; H[3]:= 0xa54ff53a; H[4]:= 0x510e527f; H[5]:= 0x9b05688c; H[6]:= 0x1f83d9ab; H[7]:= 0x5be0cd19; Initialisierung der ersten 8 32-Bit-Worte des Hash-Wertes in einem Array H[0..7] Die Werte sind die Stellen hinter dem Komma der 2.Wurzel aus den ersten 8 Primzahlen, jeweils als 32-bit-Werte. 15
16 SHA-256 Konstanten K Dann wird noch ein Array K[0..79] von 64 bit-konstanten benötigt. Diese Zahlen sind die Stellen hinter dem Komma der 3. Wurzel aus den ersten 80 Primzahlen. Quelle: NIST.FIPS
17 SHA Padding n*512 bit l bit k bit 64 bit Message 1 0 Length Eine 1 hinten anfügen Dann k-mal 0 anfügen, wobei l+k (mod 512); es wird das kleinste k benutzt Am Ende die Länge der Nachricht als 64 bit-wert 17
18 SHA Funktionen Name Funktion Ch() ch( x, y, z) = (x AND y) XOR ( (NOT x) AND z) Maj maj( x, y, z) = (x AND y) XOR (x AND z) XOR (y AND z) Σ 0 (x) BSIG0(x) = rotr(2,x) XOR rotr(13,x) XOR rotr(22,x) Σ 1 (x) σ 0 (x) σ 1 (x) BSIG1(x) = rotr(6,x) XOR rotr(11,x) XOR rotr(25,x) SSIG0(x) = rotr(7,x) XOR rotr(18,x) XOR shr(3,x) SSIG1(x) = rotr(17,x) XOR rotr(19,x) XOR shr(10,x) shr(n,x) Shift right x>>n rotr(n,x) Rotate right (x>>n) (x<<(w-n)) Das gilt für w=32 bit-worte 18
19 SHA-256 Nachricht M (n*512 bit) Bei jeder Bearbeitung eines Blocks wird das Array W gesetzt. Ein Block von 512 bit einer Nachricht wird als Array M[0..15] von jeweils 32 bit-worten dargestellt. M[0] sind daher die ersten 4 Bytes enthalten. Das Ganze im Big- Endian-Format. Der Block wird nun in das Array W[0..63] expandiert (Message Scheduling). Mit diesen W-Werten wird gearbeitet. Das Array W wird wie folgt gefüllt: proc MSG-Scheduling(Block M) { for j:= 0 to 15 { W[j]:= M[j]; for j:= 16 to 63 { W[j]:= SSIG1(W[j-2])+W[j-7]+SSIG0(W[j-15])+W[j-16]; + ist die normale 32 bit-addition 19
20 SHA-256 Kompressionsfunktion I A (H 0 ) B (H 1 ) C (H 2 ) D (H 3 ) E (H 4 ) F (H 5 ) G (H 6 ) H (H 7 ) (1x initialisiert) 1. Runde A B C D E F G H Die Register A bis H sind temporäre Variablen, die in jeder Runde überschrieben werden. Sie werden einmalig mit H[0..7] initialisiert. proc Initial_Register { A:= H[0]; B:= H[1]; C:= H[2]; D:= H[3]; E:= H[4]; F:= H[5]; G:= H[6]; H:= H[7]; 20
21 SHA-256 Kompressionsfunktion II proc MSG-Compression { for i:= 0 to 63 { T[0]:= H+BSIG1(E)+ch(E,F,G)+K[i]+W[i]; T[1]:= BSIG0(A)+maj(A,B,C); H:= G; G:= F; F:= E; E:= D+T[0]; D:= C; C:= B; B:= A; A:= T[0]+T[1]; Hier werden die 64 Runden unter Benutzung des Arrays W mit der Nachricht durchgeführt. In den Registern A bis H steht dann das Ergebnis. 21
22 SHA-256 Kompressionsfunktion III A B C D E F G H maj ch + K BSIG0 BSIG1 + T[1] W + + T[0] A B C D E F G H 22
23 SHA-256 Berechnung des Hash-Werts proc Hash-Value { H[0]:= A+H[0]; H[1]:= B+H[1]; H[2]:= C+H[2]; H[3]:= D+H[3]; H[4]:= E+H[4]; H[5]:= F+H[5]; H[6]:= G+H[6]; H[7]:= H+H[7]; Globaler Algorithmus func SHA-256(Message m) { Initial_HashArray(); while not End-of-Information(m) { M:= getnextblock(m); if last Block(M) { padding_block(m); MSG-Scheduling(M); Initial_Register(); MSG-Compression(); Hash-Value(); return H[0..7]; Die anderen Varianten von SHA2 arbeiten sehr ähnlich zu SHA
24 Empfehlungen Die Länge des Hash-Wertes sollte mindestens 256 bit sein, also sind folgende Verfahren zu empfehlen: SHA-256, SHA-384 und SHA-512 SHA3-256, SHA3-384 und SHA3-512 Langfristig sollte auf SHA3 umgestiegen werden. 24
25 Nach dieser Anstrengung etwas Entspannung... 25
Kapitel 7: Kryptographische Hash- Funktionen. IT-Sicherheit
Kapitel 7: Kryptographische Hash- Funktionen IT-Sicherheit Einschub: 31C3 31. Chaos Communications Congress 27. bis 30.12.14 in Hamburg Jährliche Konferenz des Chaos Computer Club Breites Themenspektrum
Hashfunktionen und MACs
3. Mai 2006 Message Authentication Code MAC: Message Authentication Code Was ist ein MAC? Der CBC-MAC Der XOR-MAC Kryptographische Hashfunktionen Iterierte Hashfunktionen Message Authentication Code Nachrichten
Kryptografische Hashfunktionen
Kryptografische Hashfunktionen Andreas Spillner Kryptografie, SS 2018 Wo verwenden wir kryptografische Hashfunktionen? Der Hashwert H(x) einer Nachricht x wird oft wie ein Fingerabdruck von x vewendet.
Geburtstagsangriff. Schneller Hash-Kollisionen erzeugen. Philipp Offensand, Samuel Michel, Theodor van Nahl, 12. Februar 2014
Geburtstagsangriff Schneller Hash-Kollisionen erzeugen. Philipp Offensand, Samuel Michel, Theodor van Nahl, 12. Februar 2014 Inhalt Geburtstaparadoxon Geburtstagsangriff Gegenmaßnahmen Geburtstaparadoxon
Password: Mein Geheimnis in Händen Dritter
Password: Mein Geheimnis in Händen Dritter 4. April 2014 Die Staatsanwaltschaft Verden (Aller) ist bei Ermittlungen im Internet auf einen Datensatz von rund 18 Millionen Mailadressen und zugehörigen Passworten
Konstruktion von MACs. Message Authentication Codes. Sicherheitsmodell CBC-MAC
Message Authentication Codes Entspricht Hashfunktionen mit geheimen Schlüsseln. h : K M H, MAC = h k (m). h parametrisierte Hashfunktion. m Nachricht. k geheimer Schlüssel. Mit der Nachricht m wird h k
Hash-Algorithmen. Manuel Pöter TU-Wien - e November 2004
Hash-Algorithmen Manuel Pöter TU-Wien - e0226003 [email protected] November 2004 Kurzfassung Dieser Artikel liefert einen kurzen Überblick über Funktionsweise und Anwendungsgebiete von Hash-Algorithmen
IT-Security. Teil 8b: Rechnen mit beliebiger Genauigkeit Algorithmen
IT-Security Teil 8b: Rechnen mit beliebiger Genauigkeit Algorithmen 06.06.17 1 Überblick Potenzieren Quadrieren Euklid'scher Algorithmus In den meisten Fällen wird nur mit positiven Werten gerechnet. Bei
Message Authentication Codes. Konstruktion von MACs. Hash-then-Encrypt. Sicherheitsmodell
Message Authentication Codes Entspricht Hashfunktionen mit geheimen Schlüsseln. h : K M H, MAC = h k (m). h parametrisierte Hashfunktion. m Nachricht. k geheimer Schlüssel. Mit der Nachricht m wird h k
Vorlesung Sicherheit
Vorlesung Sicherheit Jörn Müller-Quade ITI, KIT basierend auf den Folien von Dennis Hofheinz, Sommersemester 2014 02.05.2016 1 / 22 Überblick 1 Hashfunktionen Erinnerung Formalisierung Die Merkle-Damgård-Konstruktion
Kryptographische Hashfunktionen
Kryptographische Hashfunktionen Proseminar/Seminar Kryptographie und Datensicherheit SoSe 2009 Universität Potsdam Jan Jantzen Seminar Kyptographie und Datensicherheit SoSe 09 1 Gliederung Datenintegrität
IT-Security. Teil 15: Zufall
IT-Security Teil 15: Zufall 09.05.17 1 Literatur [15-1] http://de.wikipedia.org/wiki/kryptographisch_sicherer_zufallszahlen generator [15-2] https://gnupg.org/documentation/manuals/gcrypt/fips-prng- Description.html
Informatik II, SS 2014
Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 7 (21.5.2014) Binäre Suche, Hashtabellen I Algorithmen und Komplexität Abstrakte Datentypen : Dictionary Dictionary: (auch: Maps, assoziative
Vorlesung Sicherheit
Vorlesung Sicherheit Dennis Hofheinz ITI, KIT 30.04.2018 1 / 35 Überblick 1 Hashfunktionen Motivation Formalisierung Die Merkle-Damgård-Konstruktion (Weitere) Angriffe auf Hashfunktionen Zusammenfassung
Verteilte Kyroptographie
Verteilte Kyroptographie Klassische kryptographische Verfahren Kryptographische Hash-Funktionen Public-Key-Signaturen Verteilte Mechanismen Schwellwert-Signaturen Verteilt generierte Zufallszahlen Verteilte
12. Hashing. Hashing einfache Methode um Wörtebücher zu implementieren, d.h. Hashing unterstützt die Operationen Search, Insert, Delete.
Hashing einfache Methode um Wörtebücher zu implementieren, d.h. Hashing unterstützt die Operationen Search, Insert, Delete. Worst-case Zeit für Search: Θ(n). In der Praxis jedoch sehr gut. Unter gewissen
Wiederholung: Informationssicherheit Ziele
Wiederholung: Informationssicherheit Ziele Vertraulichkeit : Schutz der Information vor unberechtigtem Zugriff bei Speicherung, Verarbeitung und Übertragung Methode: Verschüsselung symmetrische Verfahren
Message Authentication Codes
Message Authentication Codes Fabian Eltz / Matthias Schubert Seminar Kryptographie und Datensicherheit WS 06/07 Nested 1. Message Authentication Code () 2. 3. Nested 4. 5. 6. 7. 8. 9. - F. Eltz, M. Schubert
Hashing II. Übersicht. 1 Hashing und Verkettung. 2 Offene Adressierung
Übersicht Datenstrukturen und Algorithmen Vorlesung 13: 1 Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://moves.rwth-aachen.de/teaching/ss-15/dsal/ 2 Effizienz
Übungen zu Architektur Eingebetteter Systeme. Teil 1: Grundlagen. Blatt : Grundlagen des Cyclic redundancy code (CRC)
Übungen zu Architektur Eingebetteter Systeme Blatt 4 22.05.2009 Teil 1: Grundlagen 1.1: Grundlagen des Cyclic redundancy code (CRC) Im Gegensatz zum Parity-Check, der nur einfache Bit-Fehler erkennen kann,
Digitale Unterschriften. Angriffe und Sicherheitsmodelle. Bemerkungen. Angriffe und Sicherheitsmodelle
Digitale Unterschriften Auch digitale Signaturen genannt. Nachrichten aus Nachrichtenraum: M M. Signaturen aus Signaturenraum: σ S. Schlüssel sind aus Schlüsselräumen: d K 1, e K 2. SignierungsverfahrenS
Informatik II, SS 2016
Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 8 (13.5.2016) Hashtabellen I Algorithmen und Komplexität Dictionary mit sortiertem Array Laufzeiten: create: O(1) insert: O(n) find: O(log
Hashfunktionen und Kollisionen
Hashfunktionen und Kollisionen Definition Hashfunktion Eine Hashfunktion ist ein Paar (Gen, H) von pt Algorithmen mit 1 Gen: s Gen(1 n ). Gen ist probabilistisch. 2 H: H s berechnet Funktion {0, 1} {0,
Modul 4: IPsec Teil 1
Modul 4: IPsec Teil 1 Teil 1: Transport- und Tunnelmode Authentication Header Encapsulating Security Payload IPsec Architektur (Security Association, SAD, SPD), Teil 2: Das IKE-Protokoll Folie 1 Struktur
Homomorphe Verschlüsselung
Homomorphe Verschlüsselung Definition Homomorphe Verschlüsselung Sei Π ein Verschlüsselungsverfahren mit Enc : G G für Gruppen G, G. Π heißt homomorph, falls Enc(m 1 ) G Enc(m 2 ) eine gültige Verschlüsselung
MAC Message Authentication Codes
Seminar Kryptographie SoSe 2005 MAC Message Authentication Codes Andrea Schminck, Carolin Lunemann Inhaltsverzeichnis (1) MAC (2) CBC-MAC (3) Nested MAC (4) HMAC (5) Unconditionally secure MAC (6) Strongly
INSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS
Julian Arz, Timo Bingmann, Sebastian Schlag INSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS 1 KIT Julian Universität Arz, des Timo LandesBingmann, Baden-Württemberg Sebastian und Schlag nationales
Algorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Prof. Martin Lercher Institut für Informatik Heinrich-Heine-Universität Düsseldorf Teil Hash-Verfahren Version vom: 18. November 2016 1 / 28 Vorlesung 9 18. November 2016
Hashfunktionen. Roman Brunnemann Stephan Müller. 23. November Einleitung Anforderungen Konstruktion Beispiel MD5 MD5 vs.
23. November 2004 Einleitung Sicherheitsanforderungen Konstruktion von Präsentation einer eigenen Hashfunktion MD5 MD5 vs. SHA1 Angriffe auf Einteilung Kryptographische schlüssellos symmetrisch MDC andere
iterative Hashfunktionen
Presentation im Rahmen von "Kryptographie" (SS 2005, Universität Potsdam) über kryptographische Hashfunktionen (Teil 2) iterative Hashfunktionen Holger Herrlich 22.Mai.2005 Grundlage: "Cryptography: Theory
VI.4 Elgamal. - vorgestellt 1985 von Taher Elgamal. - nach RSA das wichtigste Public-Key Verfahren
VI.4 Elgamal - vorgestellt 1985 von Taher Elgamal - nach RSA das wichtigste Public-Key Verfahren - besitzt viele unterschiedliche Varianten, abhängig von zugrunde liegender zyklischer Gruppe - Elgamal
Informatik 1 für Nebenfachstudierende Beispiele für Klausuraufgaben
Informatik 1 für Nebenfachstudierende Beispiele für Klausuraufgaben Aufgabe 1: Zahlensysteme a) Stellen sie die Zahl Z als allgemeine Formel mittels eines polyadischen Zahlensystems zur Basis B dar. b)
1.8 Shift-And-Algorithmus
.8 Shift-And-Algorithmus nutzt durch Bitoperationen mögliche Parallelisierung Theoretischer Hintergrund: Nichtdeterministischer endlicher Automat Laufzeit: Θ(n), falls die Länge des Suchwortes nicht größer
Arrays. Theorieteil. Inhaltsverzeichnis. Begriffe. Programmieren mit Java Modul 3. 1 Modulübersicht 3
Programmieren mit Java Modul 3 Arrays Theorieteil Inhaltsverzeichnis 1 Modulübersicht 3 2 Eindimensionale Arrays 3 2.1 Arrays deklarieren.............................. 3 2.2 Arrays erzeugen................................
3. Übung Algorithmen I
INSTITUT FÜR THEORETISCHE INFORMATIK 1 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft Institut für Theoretische www.kit.edu Informatik Hashtabellen:
Technische Informatik - Eine Einführung
Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Technische Informatik - Eine Einführung Darstellung von Zeichen und
Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 16/17. Kapitel 13. Listen. Listen 1
Kapitel 13 Listen Listen 1 Ziele Implementierungen für Listen kennenlernen Einfach verkettete und doppelt verkettete Listen verstehen Listen-Implementierungen in der Java-Bibliothek kennenlernen Durch
Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 15/16. Kapitel 12. Listen. Listen 1
Kapitel 12 Listen Listen 1 Ziele Implementierungen für Listen kennenlernen Einfach verkettete und doppelt verkettete Listen verstehen Listen-Implementierungen in der Java-Bibliothek kennenlernen Durch
Digitale Signaturen. Einführung und das Schnorr Signatur Schema. 1 Digitale Signaturen Einführung & das Schnorr Signatur Schema.
Digitale Signaturen Einführung und das Schnorr Signatur Schema 1 Übersicht 1. Prinzip der digitalen Signatur 2. Grundlagen Hash Funktionen Diskreter Logarithmus 3. ElGamal Signatur Schema 4. Schnorr Signatur
NIST Hash Function Competition and the SHA-3 Standard
and the SHA-3 Standard Department of Computer Sciences University of Salzburg June 10, 2013 and the SHA-3 Standard Übersicht Aufgaben Sonstiges National Institute of Standards and Technology Bundesbehörde
Das Generalized Birthday Problem
Das Generalized Birthday Problem Problem Birthday Gegeben: L 1, L 2 Listen mit Elementen aus {0, 1} n Gesucht: x 1 L 1 und x 2 L 2 mit x 1 x 2 = 0. Anwendungen: Meet-in-the-Middle Angriffe (z.b. für RSA,
IT-Sicherheit - Sicherheit vernetzter Systeme -
IT-Sicherheit - Sicherheit vernetzter Systeme - Kapitel 7: Kryptographische Hash-Funktionen Wolfgang Hommel, Helmut Reiser, LRZ, WS 13/14 IT-Sicherheit 1 Inhalt Definition: Kryptographische Hash-Verfahren
Humboldt-Universität zu Berlin Berlin, den Institut für Informatik
Humboldt-Universität zu Berlin Berlin, den 15.06.2015 Institut für Informatik Prof. Dr. Ulf Leser Übungen zur Vorlesung M. Bux, B. Grußien, J. Sürmeli, S. Wandelt Algorithmen und Datenstrukturen Übungsblatt
Public Key Kryptographie
4. Dezember 2007 Outline 1 Einführung 2 3 4 Einführung 1976 Whitefield Diffie und Martin Hellman 2 Schlüsselprinzip Asymmetrische Verschlüsselungsverfahren public Key private Key Anwendung E-Mail PGP openpgp
Algorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Prof. Martin Lercher Institut für Informatik Heinrich-Heine-Universität Düsseldorf Teil 4 Suchen in Texten Version vom: 15. November 2016 1 / 39 Vorlesung 8 15. November
Masterarbeit OCRA Challenge/Response - Framework. Sideris Minovgioudis
Masterarbeit Challenge/Response - Framework Sideris Minovgioudis 1 Inhalt Einführung Kryptographische Hashfunktionen HMAC HOTP Anforderungen Definition Modi Sicherheit 2 Inhalt Anwendungen Authentifizierung
Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12 1. Kapitel 11. Listen. Listen
Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12 1 Kapitel 11 Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12 2 Ziele Implementierungen für
Einführungs- und Orientierungsstudium Informatik, Teil 2. Digitales Geld: Bitcoin und Blockketten Günter Rote. Freie Universität Berlin
EinS@FU Einführungs- und Orientierungsstudium Informatik, Teil 2 Digitales Geld: Bitcoin und Blockketten Günter Rote Freie Universität Berlin Überblick Geld ohne zentrale Kontrolle Hashfunktionen zum Speichern
In beiden Fällen auf Datenauthentizität und -integrität extra achten.
Stromchiffren Verschlüsseln eines Stroms von Daten m i (Bits/Bytes) mithilfe eines Schlüsselstroms k i in die Chiffretexte c i. Idee: Im One-Time Pad den zufälligen Schlüssel durch eine pseudo-zufällige
Speicherklassen (1) Lokale Variablen
Speicherklassen (1) Lokale Variablen Lokale Variablen beschränken sich auf die Funktionen, in denen sie definiert werden Sind in der Funktion gekapselt können also nur in der Funktion verändert werden
Übersicht. Volltextindex Boolesches Retrieval Termoperationen Indexieren mit Apache Lucene
Übersicht Volltextindex Boolesches Retrieval Termoperationen Indexieren mit Apache Lucene 5.0.07 1 IR-System Peter Kolb 5.0.07 Volltextindex Dokumentenmenge durchsuchbar machen Suche nach Wörtern Volltextindex:
Literatur. ISM SS 2017 Teil 8/Asymmetrische Verschlüsselung
Literatur [8-1] Beutelspacher, A.; Schwenk, J.; Wolfenstetter, K.-D.: Moderne Verfahren der Kryptographie. 4. Auflage, Vieweg 2001 [8-2] Schmeh, Klaus: Kryptografie. dpunkt, 4. Auflage, 2009 [8-3] Schneier,
13. Hashing. AVL-Bäume: Frage: Suche, Minimum, Maximum, Nachfolger in O(log n) Einfügen, Löschen in O(log n)
AVL-Bäume: Ausgabe aller Elemente in O(n) Suche, Minimum, Maximum, Nachfolger in O(log n) Einfügen, Löschen in O(log n) Frage: Kann man Einfügen, Löschen und Suchen in O(1) Zeit? 1 Hashing einfache Methode
Einführung Programmierpraktikum C Michael Zwick
Einführung Programmierpraktikum C Michael Zwick Vorlesung, Übung & Fragestunde Dr.-Ing. Michael Zwick Raum Z945 [email protected] (089) 289 23609 Tutorium Ab Dienstag: Auswahl Tutoriumsplatz auf www.ldv.ei.tum.de/lehre/computertechnik
Algorithmen und Datenstrukturen (für ET/IT) Programm heute. Sommersemester Dr. Tobias Lasser
Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 06 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München Programm heute 7 Fortgeschrittene Datenstrukturen 8 Such-Algorithmen
Kryptographie und Komplexität
Kryptographie und Komplexität Einheit 6.2 Digitale Signaturen 1. Sicherheitsanforderungen 2. RSA Signaturen 3. ElGamal Signaturen Wozu Unterschriften? Verbindliche Urheberschaft von Dokumenten Unterschrift
Algorithmen und Datenstrukturen 1 Kapitel 5
Algorithmen und Datenstrukturen 1 Kapitel 5 Technische Fakultät [email protected] Vorlesung, U. Bielefeld, Winter 2005/2006 Kapitel 5: Effizienz von Algorithmen 5.1 Vorüberlegungen Nicht
Message Authentication Codes
Message Authentication Codes Martin Schütte 30. Nov. 2004 Gliederung Denitionen Grundlegende Begrie Konstruktion von MACs häug benutzte MACs Einschätzung der Sicherheit Bedingungslos sichere MACs zusätzliche
Algorithmische Kryptographie
Algorithmische Kryptographie Walter Unger Lehrstuhl für Informatik I 16. Februar 2007 Public-Key-Systeme: Rabin 1 Das System nach Rabin 2 Grundlagen Körper Endliche Körper F(q) Definitionen Quadratwurzel
Themen. Sicherungsschicht. Rahmenbildung. Häufig bereitgestellte Dienste. Fehlererkennung. Stefan Szalowski Rechnernetze Sicherungsschicht
Themen Sicherungsschicht Rahmenbildung Häufig bereitgestellte Dienste Fehlererkennung OSI-Modell: Data Link Layer TCP/IP-Modell: Netzwerk, Host-zu-Netz Aufgaben: Dienste für Verbindungsschicht bereitstellen
8. A & D - Heapsort. Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können.
8. A & D - Heapsort Werden sehen, wie wir durch geschicktes Organsieren von Daten effiziente Algorithmen entwerfen können. Genauer werden wir immer wieder benötigte Operationen durch Datenstrukturen unterstützen.
Digitale Signaturen. Sven Tabbert
Digitale Signaturen Sven Tabbert Inhalt: Digitale Signaturen 1. Einleitung 2. Erzeugung Digitaler Signaturen 3. Signaturen und Einweg Hashfunktionen 4. Digital Signature Algorithmus 5. Zusammenfassung
Dynamisches Huffman-Verfahren
Dynamisches Huffman-Verfahren - Adaptive Huffman Coding - von Michael Brückner 1. Einleitung 2. Der Huffman-Algorithmus 3. Übergang zu einem dynamischen Verfahren 4. Der FGK-Algorithmus 5. Überblick über
Vorlesung Sicherheit
Vorlesung Sicherheit Dennis Hofheinz ITI, KIT 15.05.2017 1 / 25 Überblick 1 Hashfunktionen Angriffe auf Hashfunktionen Zusammenfassung Hashfunktionen 2 Asymmetrische Verschlüsselung Idee Beispiel: RSA
FH Schmalkalden Fachbereich Informatik. Kolloquium 21. März 2002
FH Schmalkalden Fachbereich Informatik http://www.informatik.fh-schmalkalden.de/ 1/17 Kolloquium 21. März 2002 Entwicklung eines JCA/JCE API konformen Kryptographischen Service Providers für HBCI unter
Sicherheit von PDF-Dateien
Sicherheit von PDF-Dateien 1 Berechtigungen/Nutzungsbeschränkungen zum Drucken Kopieren und Ändern von Inhalt bzw. des Dokumentes Auswählen von Text/Grafik Hinzufügen/Ändern von Anmerkungen und Formularfeldern
Kryptographie und Komplexität
Kryptographie und Komplexität Einheit 4.4 Semantische Sicherheit 1. Sicherheit partieller Informationen 2. Das Verfahren von Rabin 3. Sicherheit durch Randomisierung Semantische Sicherheit Mehr als nur
Algorithmentheorie Randomisierung. Robert Elsässer
Algorithmentheorie 03 - Randomisierung Robert Elsässer Randomisierung Klassen von randomisierten Algorithmen Randomisierter Quicksort Randomisierter Primzahltest Kryptographie 2 1. Klassen von randomisierten
Es sei a 2 und b 2a 1. Definition Ein (a, b)-baum ist ein Baum mit folgenden Eigenschaften:
Binäre Suchbäume (a, b)-bäume (Folie 173, Seite 56 im Skript) Es sei a 2 und b 2a 1. Definition Ein (a, b)-baum ist ein Baum mit folgenden Eigenschaften: 1 Jeder Knoten hat höchstens b Kinder. 2 Jeder
Institut für Theoretische Informatik Jun.-Prof. Dr. D. Hofheinz. Übungsblatt 5. pk = (g, y) und sk = (g, x). ? = y H(t m) t. g s
Institut für Theoretische Informatik Jun.-Prof. Dr. D. Hofheinz Stammvorlesung Sicherheit im Sommersemester 2014 Übungsblatt 5 Hinweis: Übungsblätter können freiwillig bei Jessica Koch, Raum 256, Geb.
Kurzskript MfI:AGS WS 2018/19 Teil II: Gruppen / Teil III: Ringe 34
Kurzskript MfI:AGS WS 2018/19 Teil II: Gruppen / Teil III: Ringe 34 Satz 4.2.11 (Chinesischer Restsatz, Ring-Version) Sind N teilerfremd (d.h. ggt( ) =1), so ist die Abbildung ein Ring-Isomorphismus. :
