Message Authentication Codes

Ähnliche Dokumente
MAC Message Authentication Codes

Message Authentication Codes

Effizienten MAC-Konstruktion aus der Praxis: NMAC Idee von NMAC:

Kryptographie und Komplexität

Digitale Unterschriften mit ElGamal

Digitale Signaturen. Sven Tabbert

Hashfunktionen. Roman Brunnemann Stephan Müller. 23. November Einleitung Anforderungen Konstruktion Beispiel MD5 MD5 vs.

Kryptographie und Fehlertoleranz für Digitale Magazine

Unterhalten Sie sich leise mit Ihrem Nachbarn über ein aktuelles Thema. Dauer ca. 2 Minuten

Seminar Kryptographie und Datensicherheit

Hash-Algorithmen. Manuel Pöter TU-Wien - e November 2004

Ein RSA verwandtes, randomisiertes Public Key Kryptosystem

Lösung zur Klausur zu Krypographie Sommersemester 2005

Vorlesung Sicherheit

Sicherer MAC für Nachrichten beliebiger Länge

Kap. 2: Fail-Stop Unterschriften

Voll homomorpe Verschlüsselung

2. Realisierung von Integrität und Authentizität

Name: Matr.-Nr.: Seite: Geben Sie drei Klassifizierungsmerkmale aus dem Kurstext für den Begriff

Wiederholung: Informationssicherheit Ziele

Public-Key Kryptographie mit dem RSA Schema. Torsten Büchner

Kryptographische Hash-Funktionen

10.6 Authentizität. Geheimhaltung: nur der Empfänger kann die Nachricht lesen

Authentikation und digitale Signatur

IT-Sicherheit: Kryptographie

Vorlesung Sicherheit

Public-Key-Kryptographie

Secure Sockets Layer (SSL) Prof. Dr. P. Trommler

Kurze Einführung in kryptographische Grundlagen.

Symmetrische und Asymmetrische Kryptographie. Technik Seminar 2012

Einführung in die Kryptographie ,

OPC UA: Ein kritischer Vergleich der IT-Sicherheitsoptionen

Netzsicherheit Architekturen und Protokolle Instant Messaging

Kryptographie und Kryptoanalyse Literaturhinweise

iterative Hashfunktionen

Verschlüsselung. Chiffrat. Eve

Übungen zur Vorlesung Systemsicherheit

Anhang I zur Vorlesung Kryptologie: Elementare Zahlentheorie

Wiederholung. Symmetrische Verfahren: klassische Verfahren / grundlegende Prinzipien: Substitution, Transposition, One-Time-Pad DES AES

Kryptograhie Wie funktioniert Electronic Banking? Kurt Mehlhorn Adrian Neumann Max-Planck-Institut für Informatik

(ikp = i-key-protocol, i=1,2,3)

Name:... Vorname:... Matrikel-Nr.:... Studienfach:...

Security Associations Schlüsseltausch IKE Internet Key Exchange Automatischer Schlüsseltausch und Identitätsnachweis

Praktikum IT-Sicherheit

3 Betriebsarten bei Blockverschlüsselung

Seminar Hacking: Passwortsicherheit / Hashes

RSA Full Domain Hash (RSA-FDH) Signaturen

Sichere Hashfunktionen

Digitale Unterschriften Grundlagen der digitalen Unterschriften Hash-Then-Sign Unterschriften Public-Key Infrastrukturen (PKI) Digitale Signaturen

Übungen zu. Grundlagen der Kryptologie SS Hochschule Konstanz. Dr.-Ing. Harald Vater. Giesecke & Devrient GmbH Prinzregentenstraße 159

Wiederholung: Informationssicherheit Ziele

Reaktive Sicherheit. II. Passwörter. Dr. Michael Meier. technische universität dortmund

Kryptographie. ein erprobter Lehrgang. AG-Tagung Informatik, April 2011 Alfred Nussbaumer, LSR für NÖ. LSR für NÖ, 28. April 2011 Alfred Nussbaumer

Netzwerktechnologien 3 VO

Einleitung Verfahren Programme Schlüsselverwaltung Passwörter Ende. GPG-Einführung. Martin Schütte. 13. April 2008

Authentikation und digitale Signatur

SSL/TLS Sicherheit Warum es sich lohnt, sich mit Ciphersuites zu beschäftigen

Technikseminar SS2012

Digitale Signaturen. Kapitel 10 p. 178

KRYPTOSYSTEME & RSA IM SPEZIELLEN

Das TLS-Protokoll Transport Layer Security Version 1.0 Seminar: Internet Dienste SS Christoph Moll

Pseudozufallsgeneratoren

In beiden Fällen auf Datenauthentizität und -integrität extra achten.

Public-Key-Verschlüsselung und Diskrete Logarithmen

Betriebssysteme und Sicherheit

T. Schneider: Datensparsamkeit durch effizientes Rechnen unter Verschlüsselung

Multiplikationsmethode. Informatik I. goldener Schnitt. Der goldene Schnitt. Einführung. Rainer Schrader. 30. Mai Konstruktionsmethode

Homomorphe Verschlüsselung

Das RSA Kryptosystem

Vortrag zum Proseminar: Kryptographie

Digital Rights Management (DRM) Verfahren, die helfen Rechte an virtuellen Waren durchzusetzen. Public-Key-Kryptographie (2 Termine)

9 Schlüsseleinigung, Schlüsselaustausch

Kryptographie I Symmetrische Kryptographie

Elementare Mengenlehre

Prof. Dr. Martin Leischner Netzwerksysteme und TK. Hochschule Bonn-Rhein-Sieg. Modul 5: IPSEC

4.4.1 Statisches perfektes Hashing. des Bildbereichs {0, 1,..., n 1} der Hashfunktionen und S U, S = m n, eine Menge von Schlüsseln.

Mitschrift Vorlesung Einführung in die Kryptographie vom 18. Januar 2011

Kryptographie und Komplexität

PKI-Outsourcing: Vertrauen ist gut, Kryptografie ist besser

Konzepte von Betriebssystemkomponenten: Schwerpunkt Sicherheit. Asymmetrische Verschlüsselung, Digitale Signatur

Musterlösung der Hauptklausur zur Vorlesung Sicherheit Sommersemester 2012

8: Zufallsorakel. Wir suchen: Einfache mathematische Abstraktion für Hashfunktionen

Institut für Kryptographie und Sicherheit Jun.-Prof. Dr. D. Hofheinz. Stammvorlesung Sicherheit im Sommersemester Klausur

11 Instanzauthentisierung

8. Von den Grundbausteinen zu sicheren Systemen

Grundlagen der Verschlüsselung und Authentifizierung (2)

Key Agreement. Diffie-Hellman Schlüsselaustausch. Key Agreement. Authentifizierter Diffie-Hellman Schlüsselaustausch

Digitale Signaturen Einführung und das Schnorr Signaturschema

Einführung in die Zahlentheorie

Urbild Angriff auf Inkrementelle Hashfunktionen

8 Komplexitätstheorie und Kryptologie

Cramer-Shoup-Variante des ElGamal-Kryptoschemas

Workshop Experimente zur Kryptographie

RSA Full Domain Hash (RSA-FDH) Signaturen

Einwegfunktionen mit und ohne Falltür

Transkript:

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 Denitionen Universelle Hash-Familien Schluss

Was ist ein Message Authentication Code (MAC)? keyed hash function Funktion h(k, x) bzw. Funktionenfamilie h K (x), bildet Nachrichten x und Schlüssel K auf MACs oder Tags ab Nur die Kommunikationspartner sollen den MAC berechnen können Authentizität: Nachricht stammt vom Kommunikationspartner und wurde nicht manipuliert Verschlüsselung allein garantiert die Authentizität nicht!

Angrismodell 1. Ein Orakel berechnet y = MAC K (x) 2. Der Angreifer stellt q Anfragen x 1, x 2,..., x q an das Orakel und bekommt so gültige Paare (x 1, y 1 ), (x 2, y 2 ),..., (x q, y q ) 3. Ziel des Angreifers: neues Paar (x, y) erzeugen (x / {x 1,..., x q }) Wenn (x, y) ein gültiges Paar ist, so ist es eine Fälschung Wenn (x, y) mit Wahrscheinlichkeit ɛ gültig ist, so ist es eine (ɛ, q)-fälschung

CBC MAC CBC-MAC K (x) = y n, mit y i = e K (y i 1 x i ) (1 i n) Grundbaustein: symmetrische Blockverschlüsselung üblicherweise DES, AES Vorteil: verbreitete Verschlüsselungsfunktionen gut analysiert Nachteil: normalerweise sehr langsam Vorsicht bei der Konstruktion: e K (x 1 ) e K (x 2 ) e K (x n ) ergibt keine gute MAC-Funktion

Einfache Erweiterungen von Hashfunktionen Sei h(x) eine iterierte Hash-Funktion. Secret IV: MAC K (x) = h(x), mit dem Initialwert K Secret Prex: MAC K (x) = h(k x) Secret Sux: MAC K (x) = h(x K) Envelope: MAC K (x) = h(k x K)

Nested MAC (NMAC) Grundidee: Verknüpfung zweier Hash-Funktionen (mit Schlüsseln) NMAC (K1,K2)(x) = h K1 (g K2 (x)) g K2 muss kollisionsresistent sein h K1 ist der little MAC und muss eine sichere MAC-Funktion sein die Verkettung ist der big MAC

Hash MAC (HMAC) wie nach RFC 2104 HMAC K (x) = H(K opad H(K ipad x)) Spezialfall von NMAC mit h K (x) = g K (x) = H(K x) K 1 = K opad K 2 = K ipad (opad = 0x3636... 36, ipad = 0x5c5c... 5c) Vorteil: Hash-Funktion H wird als 'black box' benutzt und ist beliebig auswechselbar

Sicherheit von NMACs little MAC-Angri: Angreifer erzeugt (y, h K1 (y )) Angenommen hierfür gibt es keinen (ɛ 1, q)-angri. Kollisionsangri: Angreifer erzeugt x x und g K2 (x ) = g K2 (x ) Angenommen hierfür gibt es keinen (ɛ 2, q + 1)-Angri. big MAC-Angri: Angreifer erzeugt (x, h K1 (g K2 (x ))) Falls die Annahmen stimmen und es für den big MAC einen (ɛ, q)-angri gibt, so ist (beweisbar) ɛ < ɛ 1 + ɛ 2 Das heiÿt: Eine Schwachstelle der Funktionen g, h ist Vorbedingung für jeden Angri auf NMAC

Allgemeine Angrie auf MACs bester bekannter Angri: Kollisions-/Geburtstagsangri Wenn MAC K die Länge von n bits hat, müssten im Mittel 2 n/2 MACs berechnet werden für einen (1/2, O(2 n/2 ))-Angri In der Praxis unmöglich, weil die Berechnung der MAC-Werte vom Opfer erfolgen muss. zum Vergleich: 1 MAC/sec = 2 25 MACs/Jahr Über 1 GBit/sec-Leitung können 2 46 MACs angefordert werden.

Geht es noch sicherer?

Erste Verbesserung Jeden Schlüssel K nur einmal benutzen. nur noch (ɛ, 0) und (ɛ, 1)-Fälschungen möglich.

Bedingungslos sichere MACs Eigenschaften eines bedingungslos sicheren MACs: Wahrscheinlichkeiten ɛ 0 und ɛ 1 der möglichen (ɛ 0, 0) und (ɛ 1, 1)-Angrie sind möglichst klein Sicherheit ist unabhängig von den Ressourcen des Angreifers

Die Funktion payo Sei payo(x, y) die Wahrscheinlichkeit, dass (x, y) ein gültiges Paar ist: payo(x, y) = Pr[y = h K (x)] = {K K : h K(x) = y} K Sei payo(x, y; x, y ) die bedingte Wahrscheinlichkeit dafür, dass (x, y ) ein gültiges Paar ist, wenn (x, y) gültig ist: payo(x, y; x, y ) = Pr[y = h K (x ) y = h K (x)] = Pr[y = h K (x ) y = h K (x)] Pr[y = h K (x)] = {K K : h K (x ) = y, h K (x) = y} {K K : h K (x) = y}

Deception Probability Pd q heiÿt deception probability bzw. Betrugswahrscheinlichkeit von q Pd q ist der gröÿte Wert ɛ, so dass ein (ɛ, q)-fälscher existiert Maximum über alle möglichen Schlüssel K Pd 0 = max{payo(x, y)} Pd 1 = max{payo(x, y; x, y )}( x x, y, y ) Raten ist immer möglich, deshalb: Bei M möglichen MAC-Werten: Pd q 1/M (für alle q)

Universelle Hash-Familien Eine Hash-Familie, die N Nachrichten auf M Hash-Werte abbildet, heiÿt (N, M)-Hash-Familie Universellen Hash-Familien müssen bestimmte Anforderungen an Kollisionswahrscheinlichkeit, Schlüsselund Wertebereich erfüllen Eine (N, M)-Hash-Familie heiÿt stark-universell, wenn x, x, y, y, x x gilt: {K K : h K (x) = y, h K (x ) = y } = K M 2

Zwei stark-universelle Hash-Familien 1. Für eine Primzahl p und a, b Z p sei f (a,b)(x) := ax + b mod p f (a,b) : Z p Z p ist dann eine stark-universelle (p, p)-hash-familie. 2. Seien j N, p eine Primzahl, X = {0, 1} j \ {(0,..., 0)}, r (Z p ) j j f r ( x) := r x mod p = r i x i i=1 Dann ist f r : X Z p eine stark-universelle (2 j 1, p)-hash-familie.

Berechnung von Pd0 {K K : h K (x) = y} = y {K K : h K (x) = y, h K (x ) = y } = K M = K 2 M y payo(x, y) = {K K : h K(x) = y} K = K /M K Pd 0 = 1/M = 1/M

Berechnung von Pd1 payo(x, y ; x, y) = {K K : h K(x) = y, h K (x ) = y } {K K : h K (x) = y} Pd 1 = 1/M = K /M 2 K /M = 1/M Also ist Pd 0 = Pd 1 = 1/M. Die Möglichkeit eines Angris ist minimal.

Fazit 1. Auf einem völlig oenen Kanal (Angreifer hat Lese- und Schreibzugri) lässt sich eine authentizierte Verbindung aufbauen. 2. Wenn jede Nachricht mit zufälligem Schlüssel authentiziert wird, ist die Authentizierung bedingungslos sicher, d.h. mit unbegrenzten Ressourcen nicht zu fälschen. In der Realität hängt alles von der Schlüsselquelle ab.

Quellen Douglas Stinson, Cryptography Theory and Practice, pp. 136-149 Chapman & Hall/CRC, Boca Raton, Florida, 2nd ed., 2002 Mihir Bellare, Ran Canetti, Hugo Krawczyk, Keying Hash Functions for Message Authentication, 1996, http://www.cse.ucsd.edu/users/mihir/papers/hmac.html Sha Goldwasser, Mihir Bellare, Lecture Notes on Cryptography, Chapter 8, 2001, Cambridge, Massachusetts, http://www.cse.ucsd.edu/users/mihir/papers/gb.html Bart Preneell, Paul van Oorschot, MDx-MAC and Building Fast MACs from Hash Functions, in: Advances in Cryptology CRYPTO '95, LNCS 963, pp. 1-14, Springer-Verlag, Berlin, 1995