vollständig im Web unter

Slides:



Advertisements
Ähnliche Präsentationen
Eine Einführung in das RSA-Verfahren an Beispielen
Advertisements

Mündliche Fachprüfung
Beispiel: RSA Man nehme 2 große Primzahlen p und q. p = 3 , q = 5
Beispiel zum RSA-Algorithmus
Sicherheit in Netzwerken
Präsentation Der Gruppe: Boll, Barbosa, Blädel Klasse: WG 05 a.
Eine dynamische Menge, die diese Operationen unterstützt,
1 ecash : das Geld auf der Festplatte Oliver Vornberger Fachbereich Mathematik/Informatik Universität Osnabrück Osnabrück
Kryptographie - ein Exkurs Kodieren/Dekodieren, Verschlüsseln/Entschlüsseln, Chiffrieren/Dechiffrieren zum Zweck der Geheimhaltung, zur Authentifizierung,
Hauptseminar Asymmetrische Verschlüsselung & Zertifikate

Asymmetrische Kryptographie
SS 2007 FG Datenbanken – Interaktive Systeme, Fachbereich 17 Praktische Informatik Prof. Dr. Lutz Wegner Elektronische Signatur Waldemar Wiegel Sommer.
Verschlüsselte Botschaften - eine Einführung -
GIN1b – Exkurs: Primzahlen
Sicherheit in Rechnernetzen
Sicherheit in Rechnernetzen
Seminar: Sicherheit in vernetzten Systemen.
Verschlüsselungsverfahren Gruppe 3/ Judith Neu / Stephanie Czichon
Proseminar : Allgegenwärtiges Rechnen
Public Key Kryptographie mit dem RSA Schema
Algorithmentheorie 04 –Hashing
Symmetrische und Asymmetrische Verschlüsselung Habilitationsvortrag
Systemsicherheit I Übung 5 André Adelsbach Chair for Network- and Data-Security Horst Görtz Institute Bochum, Germany.
Cranking Modell – Drehungen senkrecht zur Symmetrieachse Das Crankingmodell Drehungen senkrecht zur Symmetrieachse Thorsten Krautscheid
Ein Public Key Kryptosystem mit perfekten Codes in Graphen.
Wir suchen ‘ mit m = m    ‘ c  ‘ mod 26
(Ron Rivest, Adi Shamit, Leonard Adleman , 1977)
Kryptologie.
Symmetrische Verschlüsselung
Inhalte und Maßnahmen eingegeben haben,
Hashverfahren und digitale Signaturen
Kryptologie Entwicklung und Bewertung von Verschlüsselungsverfahren
Jointly Generating Random Keys for the Fully Distributed Environment
Elektronische Signatur
Überblick über die Kryptographie
20:00.
Einwegfunktionen mit und ohne „Falltür“
KRYPTOGRAFIE.
Kryptographie Wie funktioniert Electronic Banking?
TU GRAZ RSA-Public-Key-Kryptograhie Shor `94
präsentiert von Ulli, Nina& Kerstin
Kryptosysteme, Digitale Signaturen, Keymanagement
Sicherheit in Computernetzen
Kryptograhie Wie funktioniert Electronic Banking?
Was ist Kryptographie? Alice Bob Maloy (Spion)
Institut für Theoretische Informatik
AES – Advanced Encryption Standard
Symmetrische Blockchiffren DES – der Data Encryption Standard
Kurzvortrag für die Lehrerfortbildung
Verschlüsselungsverfahren
(C) 2003, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz 1 RSA-Algorithmus 1978 von Ronald Rivest, Adi Shamir und Leonard Adleman erfunden.
Analyseprodukte numerischer Modelle
ENDLICHE KÖRPER RSA – VERFAHREN.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Systeme II Christian Schindelhauer Sommersemester 2006.
IT-Sicherheit Kapitel 2 - Symmetrische Kryptographie
IT-Sicherheit Kapitel 3 - Public Key Kryptographie
Präsentiert von Riccardo Fuda.  Klassische (symmetrische) Kryptographie  Der weg zur modernen Kryptographie  Message Authentification Codes  Asymmetrische.
Pretty Good Privacy Public Encryption for the Masses
Michal Olejniczak Pawel Kiedrowski
Asymmetrische Kryptographie
RSA ist nach seinen Erfindern Rivest, Shamir und Adleman benannt.
Folie Nr. Stand Jänner 2008 RSA ist nach seinen Erfindern Rivest, Shamir und Adleman benannt RSA ist ein asymmetrisches Kryptosystem 
Motivation Schutz ausgetauschter Informationen
© 2013 TravelTainment Kryptographie in der IT Kryptographische Verfahren und ihre Anwendung in der IT.
Kryptografie und Datensicherheit RSA. Kryptografie und Datensicherheit RSA - Public-Key-Verschlüsselung 1. Asymmetrisches Verschlüsselungsverfahren 2.
Kryptographie ● Motivation ● Theoretisches ● Symmetrische Verschlüsselung: RC4 ● Asymmetrische Verschlüsselung: RSA.
Verschlüsselung nach dem RSA-Verfahren
RSA public key encryption
 Präsentation transkript:

vollständig im Web unter http://dud.inf.tu-dresden.de Auszüge aus: Andreas Pfitzmann: Sicherheit in Rechnernetzen; Mehrseitige Sicherheit in verteilten und durch verteilte Systeme vollständig im Web unter http://dud.inf.tu-dresden.de

Kryptologische Grundlagen erreichbare Schutzziele: Vertraulichkeit, Konzelation genannt Integrität (= keine unerkannte unbefugte Modifikation von Informationen), Authentikation genannt durch Kryptographie unerreichbar: Verfügbarkeit – zumindest nicht gegen starke Angreifer

Symmetrisches Konzelationssystem ausführlichere Notation z gen k:=gen(z) ent ver S S:=ver(k,x) x:=ent(k,S)=ent(k,ver(k,x)) Zufallszahl Schlüssel-generie-rung k Vertrauensbereich Angriffsbereich geheimer Schlüssel k Klartext Ver-schlüsse-lung Schlüsseltext Ent-schlüsse-lung Klartext x k(x) x NSA: Bad Aibling ... Bedarfsträger: Abhörschnittstellen lokaler Rechner HW Betriebssystem Windows 95/98/ME/CE/XP Home E., MacOS 9.x: alle Progr. =k-1(k(x)) Geheimer Bereich Undurchsichtiger Kasten mit Schloß; 2 gleiche Schlüssel

Bsp. Vernam-Chiffre (=one-time-pad) 0 1 1 0 Zufallszahl Schlüssel-generie-rung k geheimer Schlüssel 0 1 1 0 k Klartext Ver-schlüsse-lung + Schlüsseltext Ent-schlüsse-lung + Klartext 0 0 1 1 0 0 1 1 x k(x) x 0 1 =k-1(k(x)) Geheimer Bereich Undurchsichtiger Kasten mit Schloß; 2 gleiche Schlüssel

Schlüsselverteilung bei symmetrischem Kryptosystem NSA: Key Escrow Key Recovery Schlüsselverteilzentralen Y kAY(k2) kBY(k2) + k2 Z kAZ(k3) kBZ(k3) + k3 X kAX(k1) kBX(k1) Schlüssel k = k1 k(Nachrichten) Teilnehmer A Teilnehmer B

Asymmetrisches Konzelationssystem Vertrauensbereich Angriffsbereich ausführlichere Notation z gen (c,d):=gen(z) ent ver S S:=ver(c,x,z') x:=ent(d,S)=ent(d,ver(c,x,z')) z' Zufallszahl Schlüssel-generie-rung c Chiffrierschlüssel öffentlich bekannt Dechiffrierschlüssel geheimgehalten d Klartext Ver-schlüsse-lung Schlüsseltext Ent-schlüsse-lung Klartext x c(x) x =d(c(x)) Zufallszahl‘ Geheimer Bereich Undurchsichtiger Kasten mit Schnappschloß; 1 Schlüssel

Schlüsselverteilung bei asymmetrischem Konzelationssystem Öffentliches Schlüsselregister R 1. A läßt seinen öffentlichen Chiffrierschlüssel cA (ggf. anonym) eintragen. 3. B erhält von R cA, den öffent- lichen Chiffrierschlüssel von A, beglaubigt durch die Signatur von R. 2. B bittet das Schlüssel-register R um den öffentlichen Chiffrier-schlüssel von A. cA(Nachricht an A) Teilnehmer A Teilnehmer B

Symmetrisches Authentikationssystem ausführlichere Notation z gen k:=gen(z) code MAC:=code(k,x) MAC = code(k,x) ? Zufallszahl Schlüssel-generie-rung k Vertrauensbereich Angriffsbereich geheimer Schlüssel k Klartext und Testergebnis Klartext Codieren Text mit Authentikation Testen: MAC = k(x) ? x x, k(x) x, =:MAC (message authentication code) "ok" oder "falsch" Geheimer Bereich Glasvitrine mit Schloß; 2 gleiche Schlüssel

Digitales Signatursystem Vertrauensbereich (keine Vertraulichkeit nötig) Angriffsbereich ausführlichere Notation z gen (t,s):=gen(z) sign test x,Sig test(t,x,Sig)  ok,falsch Sig:=sign(s,x,z')) z' x, Sig, „ok“ oder „falsch“ Zufallszahl 0,1k 0,1j 0,1* 0,1l 011001011 Schlüssel-generie-rung t Schlüssel zum Testen der Signatur, öffentlich bekannt Schlüssel zum Signieren, geheimgehalten s Klartext mit Signatur und Testergebnis Klartext mit Signatur Testen Signieren Klartext x, s(x), x, s(x) x „ok“ oder „falsch“ Zufallszahl‘ Geheimer Bereich Glasvitrine mit Schloß; 1 Schlüssel

Schlüsselverteilung bei digitalem Signatursystem Öffentliches Schlüsselregister R 1. A läßt tA, den Schlüssel zum Testen seiner Signatur, (ggf. anonym) eintragen. 3. B erhält von R tA, den Schlüssel zum Testen der Signatur von A, beglaubigt durch die Signatur von R. 2. B bittet das Schlüssel-register R um den Schlüssel zum Testen der Signatur von A. Nachricht von A, sA(Nachricht von A) Teilnehmer A Teilnehmer B

Schlüsselgenerierung Erzeugung einer Zufallszahl z für die Schlüsselgenerierung: XOR aus z1, einer im Gerät erzeugten, z2, einer vom Hersteller gelieferten, z3, einer vom Benutzer gelieferten, zn, einer aus Zeitabständen errechneten. z1  z2  z3 …  zn z   gfjjbz gen

Anmerkungen zum Schlüsselaustausch Wem werden Schlüssel zugeordnet? 1. einzelnen Teilnehmern asymmetrische Systeme 2. Paarbeziehungen symmetrische Systeme 3. Gruppen – Wie viele Schlüssel müssen ausgetauscht werden? n Teilnehmer asymmetrische Systeme je System n symmetrische Systeme n (n-1) Wann Schlüssel generieren und austauschen? Sicherheit des Schlüsselaustauschs begrenzt kryptographisch erreichbare Sicherheit: Mehrere Ur-Schlüsselaustausche durchführen

Hybride Kryptosysteme (1) Kombiniere: von asymmetrischen: Einfache Schlüsselverteilung von symmetrischen: Effizienz (Faktor 100 bis 10000, SW und HW) Wie? Asymmetrisches System nur, um Schlüssel für symmetrisches auszutauschen Konzelation: N A B Besorge cB Wähle k Entschlüssele k mit dB Entschlüssele N mit k cB(k),k(N)

Hybride Kryptosysteme (2) Noch effizienter: Teil von N in 1. Block  128  k ,N................................  1024  cB(") k(") Wenn B auch k benutzen soll: sA(B,k) dazulegen Authentikation: k authentisieren und geheimhalten Besorge cB Wähle k Besorge tA Entschlüssele cB(B,k,sA(B,k)) Teste B,k mit tA Teste N mit k N,k(N),cB(B,k,sA(B,k)) MAC

Symmetrisches Kryptosystem DES 64-Bit-Block Klartext 64-Bit-Schlüssel (nur 56 Bits verwendet) IP R0 L0 K1 Iterationsrunde 1 Teil-schlüssel-erzeugung R1 L1 K2 Iterationsrunde 2 R2 L2 R15 L15 K16 Iterationsrunde 16 R16 L16 IP -1 64-Bit-Block Schlüsseltext

Eine Iterationsrunde Li-1 Ri-1 f Ki Li = Ri-1 Ri = Li-1  f(Ri-1, Ki) Feistel Chiffren Li-1 Ri-1 f Ki Li = Ri-1 Ri = Li-1  f(Ri-1, Ki)

Entschlüsselungsprinzip Verschlüsseln Iterationsrunde i Entschlüsseln Iterationsrunde i Li-1 Ri-1 Ri=Li-1f(Ri-1, Ki) Li = Ri-1 f Ki f Ki Li = Ri-1 Ri=Li-1f(Ri-1, Ki) Ri-1 Li-1 Entschlüsselungsprinzip trivial Li-1  f(Ri-1, Ki)  f( Li , Ki) = Li-1  f(Li, Ki)  f( Li , Ki) = Li-1 Ersetze Ri -1 durch Li

Verschlüsselungsfunktion f Ri-1 32 Aufblähen Schlüssel eingehen lassen Mischen Nichtlinearität schaffen (Permutationen und  sind linear) E 48 48 Ki 48 S8 S7 S6 S5 S4 S3 S2 S1 32 "Substitutionsbox" S kann beliebige Funktion s : {0,1}6  {0,1}4 aufnehmen, z.B. Tabelle. Speziell in DES aber festgelegt. P 32 f(Ri-1, Ki) Begriffe Substitutions-Permutationsnetze Confusion - Diffusion

Teilschlüsselerzeugung 64-Bit-Schlüssel (nur 56 Bits verwendet) Auswahl von 48 der 56 Bits für jede Runde 28 28 PC-1 LS1 LS2 D0 C0 D1 C1 D2 C2 D16 C16 PC-2 K1 56 48 PC-2 K2 PC-2 K16

Verallgemeinerung von DES 1.) 56  16 • 48 = 768 Schlüsselbits 2.) variable Substitutionsboxen 3.) variable Permutationen 4.) variable Expansionspermutation 5.) variable Anzahl Iterationsrunden

RSA - asymmetrisches Kryptosystem R. Rivest, A. Shamir, L. Adleman: A Method for obtaining Digital Signatures and Public-Key Cryptosystems; Communications of the ACM 21/2 (Feb. 1978) 120-126. Schlüsselgenerierung 1) Wähle zwei Primzahlen p und q zufällig sowie stochastisch unabhängig mit |p|  |q| = l, p  q 2) Berechne n := p • q 3) Wähle c mit 3 ≤ c < (p-1)(q-1) und ggT(c, (p-1)(q-1)) = 1 (n) 4) Berechne d mittels p, q, c als multiplikatives Inverses von c mod (n) c • d  1 (mod (n)) 5) Veröffentliche c und n. Ver-/Entschlüsselung Exponentation mit c bzw. d in Zn Beh.: m Zn gilt: (mc)d  mc • d  (md)c  m (mod n)

Beweis (1) c • d  1 (mod (n))  k Z : c • d - 1 = k • (n)  k Z : c • d = k • (n) + 1 Also gilt mc • d  mk • (n) +1 (mod n) Mittels des Fermatschen Satzes m Zn*: m(n)  1 (mod n) folgt für alle zu p teilerfremden m mp-1  1 (mod p) Da p-1 ein Teiler von (n) ist, gilt mk • (n) +1 p mk • (p-1)(q-1) +1 p m • (m p-1)k • (q-1) p m 1

Beweis (2) Gilt trivialerweise für m p 0 Entsprechende Argumentation für q ergibt mk • (n) +1 q m Da Kongruenz sowohl bzgl. p als auch q gilt, gilt sie auch bzgl. p • q = n mc • d  mk • (n) +1  m (mod n) Vorsicht: Es gibt (bisher ?) keinen Beweis RSA leicht zu brechen  Faktorisierung leicht

Naiver unsicherer Einsatz von RSA RSA als asymmetrisches Konzelationssystem Codiere Nachricht (ggf. geblockt) als Zahl m < n . Verschlüsselung von m: mc mod n Entschlüsselung von mc: (mc)d mod n = m RSA als digitales Signatursystem Umbenennung: c  t, d  s Signieren von m: ms mod n Testen von m, ms: (ms)t mod n = m ?

RSA als asymmetrisches Konzelationssystem: naiv Zufallszahl Geheimer Bereich Schlüsselgenerierung: p,q Primzahlen n := pq c mit ggT(c,(p -1)(q -1)) = 1 d  c -1 mod (p -1)(q -1) c, n Chiffrierschlüssel, öffentlich bekannt Dechiffrierschlüssel, geheimgehalten d, n Klartext Verschlüs-selung x c mod n Schlüsseltext Entschlüsselung (c(x))d=(xc)d  x mod n Klartext x c(x) x Zufallszahl‘

RSA als asymmetrisches Konzelationssystem: Beispiel Zufallszahl Geheimer Bereich Schlüsselgenerierung: p,q 3,11 n 33 c 3 mit ggT(3,20)=1 d 7 3, 33 Chiffrierschlüssel, öffentlich bekannt Dechiffrierschlüssel, geheimgehalten 7, 33 Klartext Verschlüsse-lung (-2)3  -8  25 Schlüsseltext Entschlüsselung 257  (-8)7  643(-8)  (-2)3 (-8)  31 Klartext 31 25 31 Zufallszahl‘

Angriff auf Konzelation mit RSA naiv Schlüsseltext abgehört ( x c ) d  x ( xy ) c = x c  y c (( xy ) c ) d  x  y entschlüsseln lassen aus y selbst gebildet teile durch y, erhalte x

RSA als digitales Signatursystem: naiv Zufallszahl Geheimer Bereich Schlüsselgenerierung: p,q Primzahlen n := pq t mit ggT(t,(p -1)(q -1) = 1 s  t -1 mod (p -1)(q -1) t, n Schlüssel zum Testen der Signatur, öffentlich bekannt s, n Schlüssel zum Signieren, geheimgehalten Text mit Signatur und Testergebnis „Entschlüs-selung“ (s(x))t=(xs)t  x mod n Text mit Signatur „Verschlüsselung“ xs mod n Text x, s(x), t(x, s(x)) x, s(x) x

Angriff auf digitale Signatur mit RSA naiv ( x s ) t  x ( x s y ) t  x  y t (( x s y ) t ) s  x s  y gewünschte Nachricht signieren lassen gewählte Nachricht y teile durch y, erhalte x s

Abwehr der Davida-Angriffe mittels kollisionsresist. Hashfkt. h() : kollisionsresistente Hashfunktion 1.) asymmetrisches Konzelationssystem Klartextnachrichten müssen Redundanzprädikat erfüllen m, Redundanz  prüfe ob h(m) = Redundanz 2.) digitales Signatursystem Vor dem Signieren wird auf die Nachricht h angewendet Signatur zu m = (h(m))s mod n prüfe ob h(m) = ((h(m))s)t mod n Vorsicht: Es gibt (bisher?) keinen Beweis für Sicherheit!

RSA als asymmetrisches Konzelationssystem Zufallszahl Geheimer Bereich Schlüsselgenerierung: p, q Primzahlen n := pq c mit ggT(c,(p -1)(q -1)) = 1 d  c -1 mod (p -1)(q -1) c, n Chiffrierschlüssel, öffentlich bekannt Dechiffrierschlüssel, geheimgehalten d, n Entschlüsselung ()d mod n =: z,x,y; if h(z,x) = y then Ausgabe 2. Komponente von ((z,x,h(z,x))c)d mod n Klartext Verschlüsselung (z,x,h(z,x))c mod n Schlüsseltext Klartext x c(x) x Zufallszahl‘ z kollisionsresistente Hashfunktion h - global bekannt -

RSA als digitales Signatursystem Zufallszahl Geheimer Bereich Schlüsselgenerierung: p,q Primzahlen n := pq t mit ggT(t,(p -1)(q -1)) = 1 s  t -1 mod (p -1)(q -1) t, n Schlüssel zum Testen der Signatur, öffentlich bekannt s, n Schlüssel zum Signieren, geheimgehalten Text mit Signatur und Testergebnis Text mit Signatur „Entschlüs-selung“ (s(x))t=((h(x)s)t  h(x) mod n „Verschlüsselung“ (h(x))s mod n Text x, s(x), t(x, s(x)) x, s(x) x kollisionsresistente Hashfunktion h - global bekannt -