Einführung in Computer Microsystems

Ähnliche Dokumente
Das RSA-Verfahren. Armin Litzel. Proseminar Kryptographische Protokolle SS 2009

11. Das RSA Verfahren und andere Verfahren

RSA Verfahren. Kapitel 7 p. 103

RSA-Verschlüsselung. Verfahren zur Erzeugung der beiden Schlüssel:

Digitale Signaturen. Sven Tabbert

Public-Key-Algorithmen WS2015/2016

10. Public-Key Kryptographie

Über das Hüten von Geheimnissen

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

Computeralgebra in der Lehre am Beispiel Kryptografie

Elliptische Kurven in der Kryptographie

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens

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

Asymmetrische. Verschlüsselungsverfahren. erarbeitet von: Emilia Winkler Christian-Weise-Gymnasium Zittau

Modul Diskrete Mathematik WiSe 2011/12

Erste Vorlesung Kryptographie

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

Authentikation und digitale Signatur

Primzahlen und RSA-Verschlüsselung

27. Algorithmus der Woche Public-Key-Kryptographie Verschlüsseln mit öffentlichen Schlüsseln

Lenstras Algorithmus für Faktorisierung

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer

IT-Sicherheit: Kryptographie. Asymmetrische Kryptographie

Der Zwei-Quadrate-Satz von Fermat

12 Kryptologie. ... immer wichtiger. Militär (Geheimhaltung) Telebanking, Elektronisches Geld E-Commerce

Grundlagen der Verschlüsselung und Authentifizierung (2)

Verschlüsselung. Chiffrat. Eve

Diffie-Hellman, ElGamal und DSS. Vortrag von David Gümbel am

Entwicklung der Asymmetrischen Kryptographie und deren Einsatz

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

Kryptographie mit elliptischen Kurven

IT-Sicherheit Kapitel 3 Public Key Kryptographie

RSA-Verschlüsselung. von Johannes Becker Gießen 2006/2008

10. Kryptographie. Was ist Kryptographie?

Voll homomorpe Verschlüsselung

Algorithmische Kryptographie

IT-Sicherheitsmanagement. Teil 12: Asymmetrische Verschlüsselung

5. Übung zum G8-Vorkurs Mathematik (WiSe 2011/12)

Kryptographische Verfahren auf Basis des Diskreten Logarithmus

Informatik für Ökonomen II HS 09

Kryptographie Reine Mathematik in den Geheimdiensten

Zur Sicherheit von RSA

Verschlüsselung. Kirchstraße 18 Steinfelderstraße Birkweiler Bad Bergzabern Fabian Simon Bfit09

Einführung in die moderne Kryptographie

Public-Key Verschlüsselung

Public-Key-Kryptosystem

U3L Ffm Verfahren zur Datenverschlüsselung

RSA Verfahren. Ghazwan Al Hayek Hochschule für Technik Stuttgart. 2. November 2008

Kap. 8: Speziell gewählte Kurven

Sicherheit von hybrider Verschlüsselung

Kryptographie oder Verschlüsselungstechniken

Zahlen und das Hüten von Geheimnissen (G. Wiese, 23. April 2009)

Konzepte von Betriebssystem-Komponenten: Schwerpunkt Sicherheit Grundlagen: Asymmetrische Verschlüsslung, Digitale Signatur

1 Kryptosysteme 1 KRYPTOSYSTEME. Definition 1.1 Eine Kryptosystem (P(A), C(B), K, E, D) besteht aus

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Das wichtigste Kennzeichen asymmetrischer Verschlüsselungsverfahren ist, dass die Kommunikationspartner dabei anstelle eines

9 Schlüsseleinigung, Schlüsselaustausch

Content-Verwertungsmodelle und ihre Umsetzung in mobilen Systemen

Theoretische Informatik SS 04 Übung 1

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Probabilistische Primzahlensuche. Marco Berger

Division Für diesen Abschnitt setzen wir voraus, dass der Koeffizientenring ein Körper ist. Betrachte das Schema

1. Asymmetrische Verschlüsselung einfach erklärt

Verschlüsselung und Entschlüsselung

Datensicherheit und Datenschutz. Datenschutz. Datensicherheit. Schutz von Personen. Schutz von Daten. (setzt Datensicherheit voraus)

Programmierkurs Java

Datensicherheit durch Kryptographie

Zeichen bei Zahlen entschlüsseln

, WS2012 Übungsgruppen: Mo.,

Nachrichten- Verschlüsselung Mit S/MIME

Grundlagen der Kryptographie

Kryptographie eine erste Ubersicht

2. Realisierung von Integrität und Authentizität

Symmetrische und Asymmetrische Kryptographie. Technik Seminar 2012

Was können Schüler anhand von Primzahltests über Mathematik lernen?

Kryptographische Algorithmen

Lineare Gleichungssysteme

Methoden der Kryptographie

Technische Universität München SS 2006 Fakultät für Informatik 12. Oktober 2006 Prof. Dr. A. Knoll. Aufgabe 1 Transferfragen (Lösungsvorschlag)

Kryptographie und Fehlertoleranz für Digitale Magazine

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

Netzsicherheit I, WS 2008/2009 Übung 12. Prof. Dr. Jörg Schwenk

3 Das RSA-Kryptosystem

Eine Logikschaltung zur Addition zweier Zahlen

vom ggt zu gpg Lars Fischer Die Mathematik von RSA Lars Fischer Intro Mathematik RSA Anhang 1 lars.scher (bei) gmx-topmail.

Lösungsvorschlag für die Probeklausuren und Klausuren zu Algebra für Informations- und Kommunikationstechniker bei Prof. Dr.

Was bisher geschah Kryptographische Systeme (M, C, K, e, d) Verfahren: symmetrisch klassisch: Verschiebechiffren (Spezialfall Caesar-Code)

Algorithmische Kryptographie

Analysis I für Studierende der Ingenieurwissenschaften

ElGamal Verschlüsselungsverfahren (1984)

Linux User Group Tübingen

Ein Scan basierter Seitenangriff auf DES

Zusammenfassung der Vorlesung vom

Kapitel 3: Etwas Informationstheorie

Fachschaft Mathematik und Informatik (FIM) LA I VORKURS. Herbstsemester gehalten von Harald Baum

Kryptographie I Symmetrische Kryptographie

Elemente der Analysis I Kapitel 2: Einführung II, Gleichungen

Transkript:

Einführung in Computer Microsystems Kapitel 9 Entwurf eines eingebetteten Systems für Anwendungen in der IT-Sicherheit Prof. Dr.-Ing. Sorin A. Huss Fachbereich Informatik Integrierte Schaltungen und Systeme SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 1

Übersicht Mathematische Grundlagen Kryptographie RSA Elliptische Kurven Hardware-Software-Codesign Demonstration des Entwurfs SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 2

Galois-Körper G F(p) p Primzahl die Elemente, die als Rest bei Modulo-Rechnen bleiben können für 7 sind das z.b. die Elemente 0, 1, 2, 3, 4, 5, 6 Endlicher Körper für G F(13): 11 12 0 1 10 9 2 3 8 7 6 5 4 SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 3

Modulare Addition/Subtraktion Es gilt (a) + ( a) 0 mod p Addition ist einfach: Falls a + b > p, dann rechne a + b p Subtraktion ist auch einfach: Falls a b < 0, dann rechne a b + p SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 4

Modulare Multiplikation und Division Modulare Multiplikation: Für a, b GF gilt max(a b) = (p 1) 2 = p 2 2p + 1 Sukzessive Subtraktion von p ist sehr rechenintensiv Modulare Division: a/b a b ( 1) mod p Multiplikativ Inverses ist aufwändig zu berechnen (kleiner Satz von Fermat, siehe Folien Seite 7) SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 5

Effiziente Multiplikation Mittels Montgomery Reduction realisiert Require: x = (x n 1,..., x 1, x 0), y = (y n 1,..., y 1, y 0), and m = (m n 1,..., m 1, m 0) with 0 x, y < m, m = m 1 mod 2 16 Ensure: xyr 1 mod m where R = 2 16n 1: a = (a n 1,..., a 1, a 0) := 0 2: for i from 0 to n 1 do 3: u := (a 0 + x i y 0)m mod 2 16 4: a := (a + x i y + u i m)/2 16 5: end for 6: if a m then a := a m end if 7: return a Mehr in den Übungen SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 6

Der kleine Satz von Fermat Es gilt a p a mod p Da in einem Primkörper F p das a teilerfremd zu p sein muss, folgt gcd(a, p) = 1. a (p 1) 1 mod p a (p 2) a 1 mod p a (p 2) a 1 mod p SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 7

RSA 1977 erfunden von Ronald L. Rivest, Adi Shamir und Leonard Adleman Asymmetrisches Verschlüsselungs-Verfahren ca. 1000-mal langsamer als AES Sicherheit: Schwierigkeit der Primfaktorzerlegung Häufig eingesetzt: IPSec, SSL,... SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 8

RSA: Ablauf und Schlüsselparameter Berechne RSA-Modul n = p q mit p q zufällige Primzahlen Berechne Eulersche ϕ-funktion ϕ(n) = (p 1)(q 1) Wähle zu ϕ(n) teilerfremde Zahl e mit 1 < e < ϕ(n) Bestimme d mit d e 1 mod ϕ(n) (n, e) ist der öffentliche Schlüssel d ist der private Schlüssel Typische Größe für n: 1024, 2048, 3072, 4096 Bit SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 9

RSA-Verschlüsselung c m e mod n Mit schneller Exponentation berechnen: z.b. x 3 mod n (x 2 mod n)(x mod n) m ist der Klartext Normalerweise ein symmetrischer Schlüssel, z.b. AES Typischerweise wird für e eine Fermat-Primzahl verwendet, z.b. 2 16 + 1, sonst bestehen Angriffsmöglichkeiten z.b. Low-Exponent-Angri: Wenn die gleichen Nachrichten verschlüsselt werden, kann der Angreifer unter Verwendung von e Schlüsseltexten die ursprüngliche Nachricht berechnen (mit Chinesischem Restsatz, siehe Seite 12) SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 10

RSA-Entschlüsselung m c d mod n (wegen d e 1 mod n) Aufwändig, da d idr keine Fermat-Primzahl Berechnung mittels chinesischem Restsatz Exponentation in kleinen Modulen (z.b. 2x halbe Bitbreite) SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 11

Chinesischer Restsatz Gegeben: System simultaner Kongruenzen, wobei a i ganze Zahlen und m i paarweise teilerfremde natürliche Zahlen sind: x ai mod m i Bestimme alle x, die alle Kongruenzen gleichzeitg lösen Setze m = n i=1 m i und M i = m/m i, wobei 1 i n Weil die m i teilerfremd sind, gilt: gcd(m i, M i ) = 1 Berechne mit dem erweiterten Euklidischen Algorithmus: y i M i 1 mod m i Setze x = ( n i=1 a iy i M i ) mod m Wegen a i y i M i a i mod m i und weil für j i m i ein Teiler von M j ist: aj y j M j 0 mod m i Daraus folgt: x ai y i M i + P n j=1,j i a jy j M j a i mod m i SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 12

RSA-OAEP Schemata Reines RSA ist unsicher Adaptive Chosen Ciphertext Angriffe (das gleiche m wird wiederholt verschlüsselt) RSA-OAEP verhindert dies: Padding-Verfahren, um Chiretext oder Signatur auf eine bestimmte Struktur zu bringen fügt Zufall zu den Daten hinzu und verhindert teilweise Entschlüsselung ohne das Berechnen der Inversen von Einwegfunktionen (schwierig) SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 13

Elliptische Kurven Kryptographie (ECC) 1986/1987 erfunden von Miller/Koblitz Asymmetrisches Verfahren, das Operationen auf elliptischen Kurven über endlichen Körpern benutzt Sicherheit: Schwierigkeit der Berechnung des diskreten Logarithmus in der Gruppe der Punkte der elliptischen Kurve wesentlich kürzere Schlüssel möglich: 160 Bit ECC 1024 Bit RSA Wichtigste bisher bekannte Alternative zu RSA-basierten Verfahren Häufig eingesetzt: SmartCards, Reisepass,... SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 14

ECC-Kurvenparameter Vereinfachte Weierstraßsche Gleichung: E : y 2 = x 3 + ax + b Kurvenparameter D = (p, b, P, n) mit p: Die Primzahl p des zugrunde liegenden Primkörpers Fp. b: Der Parameter b der vereinfachten Weierstraÿschen Gleichung. Da a = 3 konstant ist, deniert alleinig b die Gleichung komplett. P: Der Basispunkt P = (xp, yp) der elliptischen Kurve. Er wird zur Derivation von Schlüsselsätzen benutzt. n: Die Ordnung des Basispunktes P. Es gilt np = O. SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 15

Beispiele über R y 4 y 4 3 3 2 2 1 1 2 1 1 2 3 1 x 2 1 1 2 3 1 x 2 2 3 3 4 4 E 1 (R) : y 2 = x 3 2x + 3 4 E 2 (R) : y 2 = x 3 + 1 4 x + 3 2 SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 16

ECC Punkt-Addition P + Q = R Um zwei Punkte zu addieren gibt es fünf Fälle: 1. Fall (P = O): Das Additionsergebnis ist Q (Identität). 2. Fall (Q = O): Das Additionsergebnis ist P (Identität). 3. Fall (Q = P): Das Additionsergebnis von P + ( P) = O. 4. Fall (Q = P): Die Punkt-Verdoppelung muss angewendet werden (sonst Division durch Null). 5. Fall (sonst): Die Gerade, die durch die Punkte P und Q läuft, schneidet die Kurve an einem dritten Punkt R. Spiegelt man diesen Punkt an der x-achse so erhält man das Additionsergebnis P + Q = R. ( ) 2 ( ) yq y P yq y P x R = x P x Q und y R = (x P x R ) y P. x Q x P x Q x P SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 17

ECC Punkt-Addition II P + Q = R y 4 3 2 R = (x R, y R ) 1 Q = (x Q, y Q ) 4 3 2 1 1 2 3 4 x 1 P = (x P, y P ) 2 3 R = (x R, y R ) 4 SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 18

ECC Punkt-Verdopplung 2P = P + P = R P = (x P, y P ) y 4 3 2 1 4 3 2 1 1 2 3 4 1 2 3 4 R = (x R, y R ) x R = (x R, y R ) Hinweis: Tangente in P ( ) 3x 2 2 x R = P + a 2x P 2y P ( ) 3x 2 y R = P + a (x P x R ) y P 2y P SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 19

ECDSA Signatur-Generierung Digitale Signatur: Eine zu Daten berechnete Zahl, die die Urheberschaft und Zugehörigkeit zur Nachricht nachweist. Eingabe: Kurvenparameter D = (p, b, P, n) privater Schlüssel d, Klartext m Ausgabe: Signatur s 1. Berechne Hashwert e = H(m) 2. repeat 3. repeat 4. Wähle k [1, n) zufällig aus. 5. Berechne kp = R = (x R, y R ). 6. until r 0 7. Berechne s = k 1 (e + dr) mod n. 8. until s 0 9. return (r, s). SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 20

Hashfunktionen bilden beliebig lange Strings auf Strings fester Länge ab. nie injektiv können mittels Kompressionsfunktionen generiert werden: h : Σ m Σ n, m > n Hashwert h(x) muss für alle x effizient berechenbar sein h(x) Einwegfunktion: Funktionswert leicht berechenbar, aber Umkehrung schwierig Kollision, wenn h(x) = h(x ) aber x x Alle Hash- und Kompressionsfunktionen besitzen Kollisionen, da sie nicht injektiv sind Es soll schwer sein gezielt Kollisionen zu nden SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 21

Hashfunktionen II SHA-2 SHA-2 Familie: SHA224, SHA256, SHA384, SHA512 1995 entwickelt von NIST (National Institute of Standards and Technology) Feste Nachrichtenblocklänge (1024-Bit bei SHA512) Runden-basierte Verarbeitung (80 Runden bei SHA512) K t : Rundenkonstanten W t : Eingabestring A-H: Ergebnis nach 80 Runden SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 22

ECDSA-Signatur validieren Eingabe: Kurvenparameter D = (p, b, P, n), öentlicher Schlüssel Q, Klartext m, Signatur (r, s). Ausgabe: Akzeptanz oder Zurückweisung der Signatur. 1. if r, s / [1, n 1) then 2. return Signatur zurückweisen. 3. end if 4. Berechne Hashwert e = H(m). 5. Berechne w = s 1 mod n. 6. Berechne u 1 = ew mod n und u 2 = rw mod n. 7. Berechne Punkt R = u 1P + u 2Q. 8. if R = O then 9. return Signatur zurückweisen. 10. end if 11. Berechne v = x R mod n. 12. if v = r then 13. return Signatur akzeptieren. 14. end if 15. return Signatur zurückweisen. SS 2009 Integrierte Schaltungen und Systeme Einführung in Computer Microsystems Prof. Dr.-Ing. Sorin A. Huss 23