• Keine Ergebnisse gefunden

Sichere Implementierung

N/A
N/A
Protected

Academic year: 2022

Aktie "Sichere Implementierung"

Copied!
31
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Sichere Implementierung

Prof. Dr. rer. nat. R¨udiger Weis

TFH Berlin

Wintersemester 2007/2008

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(2)

Von den Grundbausteinen zu sicheren Systemen

Vorlesung bisher:

Bausteineur Kryptosysteme.

Dieses Kapitel:

Naiver Einsatz der Bausteine kann gef¨ahrlich sein!

Beschreibung von Angriffszenarien, denenguteKryptosysteme widerstehen k¨onnen.

Rest der Vorlesung:

Wie setzt man die Bausteine, die wir haben, sinnvoll ein?

(3)

Von den Grundbausteinen zu sicheren Systemen

Vorlesung bisher:

Bausteineur Kryptosysteme.

Dieses Kapitel:

Naiver Einsatz der Bausteine kann gef¨ahrlich sein!

Beschreibung von Angriffszenarien, denenguteKryptosysteme widerstehen k¨onnen.

Rest der Vorlesung:

Wie setzt man die Bausteine, die wir haben, sinnvoll ein?

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(4)

Von den Grundbausteinen zu sicheren Systemen

Vorlesung bisher:

Bausteineur Kryptosysteme.

Dieses Kapitel:

Naiver Einsatz der Bausteine kann gef¨ahrlich sein!

Beschreibung von Angriffszenarien, denenguteKryptosysteme widerstehen k¨onnen.

Rest der Vorlesung:

Wie setzt man die Bausteine, die wir haben, sinnvoll ein?

(5)

Naive PK-Krypto

Naiver Einstatz der PK-Kryptographie

Offentlicher Schl¨¨ ussel (z.B. RSA:n,e) Klartext X

Offentliche Verschl¨¨ usselungsfunktionf(x) (RSA: f(x) =xe modn)

Chiffretext Y=f(X)

Rate-Verifikationsangriff:

Geben: ChiffretextY, gesucht Klartext X. F¨ur alle plausiblen (∗) Klartexte X:

Wennf(X) =Y, dann gib X aus und STOP.

Der Angriff ist effizient, wennEntropiedes Klartextes klein ist.

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(6)

Naive PK-Krypto

Naiver Einstatz der PK-Kryptographie

Offentlicher Schl¨¨ ussel (z.B. RSA:n,e) Klartext X

Offentliche Verschl¨¨ usselungsfunktionf(x) (RSA: f(x) =xe modn)

Chiffretext Y=f(X) Rate-Verifikationsangriff:

Geben: ChiffretextY, gesucht KlartextX.

F¨ur alle plausiblen (∗) Klartexte X:

Wennf(X) =Y, dann gibX aus und STOP.

(7)

Naive PK-Krypto

Diskussion

Der Rate-Verifikationsangriff ist ein sehr ernstes Problem – Nachrichten mit geringer Entropie kommen in der Praxis h¨aufig vor.

Ein Angreifer kann leicht eine begrenzte Anzahl (z.B., einige Milliarden) plausibler Klartexte zu generieren und zu

¨uberpr¨ufen, ob einer davon der gesuchte Klartext ist.

→ Gute Public-Key Verschl¨usselung muss die Nachrichten deshalb randomisieren.

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(8)

Naive PK-Krypto

Diskussion

Der Rate-Verifikationsangriff ist ein sehr ernstes Problem – Nachrichten mit geringer Entropie kommen in der Praxis h¨aufig vor.

Ein Angreifer kann leicht eine begrenzte Anzahl (z.B., einige Milliarden) plausibler Klartexte zu generieren und zu

¨uberpr¨ufen, ob einer davon der gesuchte Klartext ist.

→ Gute Public-Key Verschl¨usselung muss die Nachrichten deshalb randomisieren.

(9)

Naive PK-Krypto

Beispiel

Sei Y eine verschl¨usselte Nachricht an einen Aktienh¨andler.

Absender ist ein hochrangiger Mitarbeiter von Merck. Handelt es sich um die Anweisung, die Schering-Aktien im Besitz der Firma Merck zu verkaufen?

Man stelle sich ein Programm vor, das einige Millionen oder Milliarden Variationen der Anweisung “Schering verkaufen”

erzeugt und verschl¨usselt. Zu den generierten Klartexten w¨urden z.B. geh¨oren

“verkaufe die Schering-Aktien”

“verkaufe alle Schering-Aktien”

“verkaufe Schering-Aktien”

“verkaufe die Scherig-Aktien” (Tippfehler!)

“verkaufe alle Scherig-Aktien”

“verkaufe Scherig-Aktien”

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(10)

Naive RSA-Unterschriften

Naiver Einsatz von RSA-Unterschriften

Verifikationsschl¨ussel:n,e

Finde zwei Nachrichten X1 und X2, und einen Faktorb mit X2=X1∗be modn.

Es sei X1ein harmloser Text, X2 enthalte dagegen eine f¨ur den Angreifer vorteilhafte Aussage.

Veranlasse den Unterzeichner (= Inh. des geh. Schl.) dazu,X1

zu unterschreiben. F¨ur die Unterschrift S1unter X1gilt: X1emodn=S1.

Nun ist es leicht, eine Unterschrift S1 unterX2 zu berechnen. (Wie?)

(11)

Naive RSA-Unterschriften

Naiver Einsatz von RSA-Unterschriften

Verifikationsschl¨ussel:n,e

Finde zwei Nachrichten X1 und X2, und einen Faktorb mit X2=X1∗be modn.

Es sei X1ein harmloser Text, X2 enthalte dagegen eine f¨ur den Angreifer vorteilhafte Aussage.

Veranlasse den Unterzeichner (= Inh. des geh. Schl.) dazu,X1

zu unterschreiben. F¨ur die Unterschrift S1unter X1gilt: X1emodn=S1.

Nun ist es leicht, eine Unterschrift S1 unterX2 zu berechnen. (Wie?)

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(12)

Naive RSA-Unterschriften

Naiver Einsatz von RSA-Unterschriften

Verifikationsschl¨ussel:n,e

Finde zwei Nachrichten X1 und X2, und einen Faktorb mit X2=X1∗be modn.

Es sei X1ein harmloser Text, X2 enthalte dagegen eine f¨ur den Angreifer vorteilhafte Aussage.

Veranlasse den Unterzeichner (= Inh. des geh. Schl.) dazu,X1

zu unterschreiben. F¨ur die Unterschrift S1unter X1gilt: X1emodn=S1.

Nun ist es leicht, eine Unterschrift S1 unterX2 zu berechnen. (Wie?)

(13)

Naive RSA-Unterschriften

Naiver Einsatz von RSA-Unterschriften

Verifikationsschl¨ussel:n,e

Finde zwei Nachrichten X1 und X2, und einen Faktorb mit X2=X1∗be modn.

Es sei X1ein harmloser Text, X2 enthalte dagegen eine f¨ur den Angreifer vorteilhafte Aussage.

Veranlasse den Unterzeichner (= Inh. des geh. Schl.) dazu,X1

zu unterschreiben. F¨ur die Unterschrift S1unter X1gilt:

X1emodn=S1.

Nun ist es leicht, eine Unterschrift S1 unterX2 zu berechnen. (Wie?)

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(14)

Naive RSA-Unterschriften

Naiver Einsatz von RSA-Unterschriften

Verifikationsschl¨ussel:n,e

Finde zwei Nachrichten X1 und X2, und einen Faktorb mit X2=X1∗be modn.

Es sei X1ein harmloser Text, X2 enthalte dagegen eine f¨ur den Angreifer vorteilhafte Aussage.

Veranlasse den Unterzeichner (= Inh. des geh. Schl.) dazu,X1

zu unterschreiben. F¨ur die Unterschrift S1unter X1gilt:

X1emodn=S1.

Nun ist es leicht, eine Unterschrift S unterX zu berechnen.

(15)

Naive RSA-Unterschriften

Diskussion

Der Angriff mag nicht sonderlich plausibel erscheinen – immerhin muss man zwei sinnvolleNachrichten X1 undX2 finden, die in einer sehr speziellen algebraischen Beziehung zueinander stehen.

Wie schwierig das ist, h¨angt aber von Faktoren ab, die außerhalb der Kryptographie liegen, und die der Kryptograph nicht beeinflussen kann. (Welche Nachrichten sind sinnvoll?)

→ Die Sicherheit guter Kryptosysteme f¨ur Digitale Unterschriften darf nicht davon abh¨angen, welche Nachrichten in einem gegebenen Kontext als sinnvoll akzeptiert werden!

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(16)

Naive RSA-Unterschriften

Diskussion

Der Angriff mag nicht sonderlich plausibel erscheinen – immerhin muss man zwei sinnvolleNachrichten X1 undX2 finden, die in einer sehr speziellen algebraischen Beziehung zueinander stehen.

Wie schwierig das ist, h¨angt aber von Faktoren ab, die außerhalb der Kryptographie liegen, und die der Kryptograph nicht beeinflussen kann. (Welche Nachrichten sind sinnvoll?)

→ Die Sicherheit guter Kryptosysteme f¨ur Digitale Unterschriften darf nicht davon abh¨angen, welche Nachrichten in einem gegebenen

(17)

Naive RSA-Unterschriften

Beispiel f¨ ur einen Denial-of-Service Angriff

Nachrichten: Messwerte von einem Sensorknoten.

Angriff: W¨ahle Unterschrift Szuf¨allig, schicke “Messwert” X=Se modn drahtlos an Empf¨anger.

Empf¨anger: G¨ultig unterschriebene aber (wahrscheinlich) total unplausible Nachricht X.

M¨ogliche Reaktion: “Sensorknoten defekt” – Empf¨anger ignoriert alle weiteren Nachrichten dieses Sensorknotens.

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(18)

Naive RSA-Unterschriften

Beispiel f¨ ur einen Denial-of-Service Angriff

Nachrichten: Messwerte von einem Sensorknoten.

Angriff: W¨ahle Unterschrift Szuf¨allig, schicke “Messwert”

X=Semodn drahtlos an Empf¨anger.

Empf¨anger: G¨ultig unterschriebene aber (wahrscheinlich) total unplausible Nachricht X.

M¨ogliche Reaktion: “Sensorknoten defekt” – Empf¨anger ignoriert alle weiteren Nachrichten dieses Sensorknotens.

(19)

Naive RSA-Unterschriften

Kryptosystem f¨ ur Digitale Unterschriften.

→ Sichere Kryptosysteme f¨ur Digitale

Unterschriften erlauben es dem Angreifer nicht einmal, Unterschriften unter zuf¨allige

Nachrichten zu f¨alschen.

→ Naiv eingesetztes RSA ist in diesem Sinne kein sicheres Kryptosystem f¨ur Digitale Unterschriften.

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(20)

Blockchiffren

Naiv eingesetzte Blockchiffren

“Von Haus aus” kann man eine Blockchiffre benutzen, um Nachrichten der gegebenen Blockl¨angeb (z.B.b = 64 bit, b = 128 bit, . . . ) zu verschl¨usseln.

Was tue ich mit l¨angeren Nachrichten? Wir teilen M in b-bit Bl¨ocke Mi ∈ {0,1}b, ggf. mit “Padding” des letzten Blocks, und benutzen die Blockchiffre wie ein Electronisches

Codebuch (“Electronic Codebook” – ECB):

Ci :=EK(Mi).

(21)

Blockchiffren

Naiv eingesetzte Blockchiffren

“Von Haus aus” kann man eine Blockchiffre benutzen, um Nachrichten der gegebenen Blockl¨angeb (z.B.b = 64 bit, b = 128 bit, . . . ) zu verschl¨usseln.

Was tue ich mit l¨angeren Nachrichten? Wir teilen M inb-bit Bl¨ocke Mi ∈ {0,1}b, ggf. mit “Padding” des letzten Blocks, und benutzen die Blockchiffre wie ein Electronisches

Codebuch (“Electronic Codebook” – ECB):

Ci :=EK(Mi).

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(22)

Blockchiffren

Blockchiffren im ECB Modus

M M M M

C

1

C

2

C

3

C

n

3 2

1 n

.. .

Klartexte

Chiffretexte Ci :=EK(Mi).

Der ECB Modus ist unsicher!(Warum?)

(23)

Blockchiffren

Blockchiffren im ECB Modus

M M M M

C

1

C

2

C

3

C

n

3 2

1 n

.. .

Klartexte

Chiffretexte

Ci :=EK(Mi).

Der ECB Modus ist unsicher!(Warum?)

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(24)

Blockchiffren

ECB in der Praxis

Der ECB Modus ist einer von vier im Zusammenhang mit dem DES”offiziell standardisierten“ “Modes of Operation”

(“Betriebsarten”).

In vielen (schlechten!)DES- oder AES-basierten

Krypto-Produkten wird der ECB-Modus verwendet (da formal standardkonform).

(25)

Blockchiffren

Wie schwach ist der ECB Modus?

Bei ECB-verschl¨usselten Nachrichten kann der Angreifer ggf.

sich wiederholende Textfragmente entdecken.

Da sich bei “normalen” Nachrichten Textteile kaum

wiederholen, d¨urfte dies eher eine theoretische Schw¨ache sein . . . oder?

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(26)

Blockchiffren

Ein ECB-verschl¨ usselter Chiffretext

(27)

Blockchiffren

Der zugeh¨ orige Klartext (als Bitmap gespeichert):

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(28)

Blockchiffren

Das gleiche Bild, auf sichere Weise verschl¨ usselt:

(29)

Keine Authentizit¨at

Keine Authentizit¨ at

Beispiel: Verschl¨usselted Datenpaket mit einer dem Angreifer bekannten IP-Adresse im (verschl¨usselten) Header . . . Das Datenpaket wird an einem Gateway entschl¨usselt und innerhalb eines lokalen und sicheren Netzes an den vorgesehenen Empf¨anger weitergeleitet.

Ein aktiver Angreifer kann das die Empf¨angeradresse

manipulieren – und die entschl¨usselte Nachricht an die eigene Adresse weiterleiten.

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

(30)

Keine Authentizit¨at

Vertraulichkeit und Authentizit¨ at

Man betrachte Anwendungen mit dem SchutzzielVertraulichkeit, aber ohne das SchutzzielAuthentizit¨at:

→ Verschl¨usselte Daten nicht vor Manipulationen zu sch¨utzen, kann deren Vertraulichkeit gef¨ahrden!

(31)

Keine Authentizit¨at

opyleft c

c

opyleft

Erstellt mit Freier Software

Nach einer Vorlesung von Stefan Lucks.

c

R¨udiger Weis, Berlin 2008

unter der GNU Free Documentation License.

Prof. Dr. rer. nat. R¨udiger Weis TFH Berlin

Referenzen

ÄHNLICHE DOKUMENTE

Black-Box-Tests sind Methoden zum Testen von Software, bei denen keine Kenntnisse ¨uber den inneren Aufbau des Pr¨uflings benutzt werden, wie z.B.. Die Betrachtung er- folgt nur

(Gruppenzuordnung) unter Eliminierung einer Variable außerhalb des Experiments – Mehrfaktorielle ANOVA: Experiment durch Ver¨ anderung mehrerer unabh¨ angigen..

• Die Frage wie viel IT-Sicherheit kosten darf ist nicht mit Pauschalantworten zu lösen. • Praxis und Forschung stellen zahlreiche Methoden bereit, die bei sinnvoller Kombination

Zum Vergleich wurde auch ein primitives Verfahren mit einfachster Wortgrammatik eingebaut, das W¨orter nach den alten Rechtschreibregeln erkennen und trennen kann, je- doch f¨ur

4. Jeder kann Signatur bzw. Echtheit mit öffentlichem Schlüssel des Unterzeichners verifizieren.. abzuhebender Geldbetrag).  Empfänger verifiziert und falls m=A_p{r} sinnvollen

 MixColumn für hohe Diffusion; Änderung in einem Input Byte verursacht Änderung in allen Output Bytes.  Auswahl von

Du kannst den Differenzialquotienten f¨ ur eine gegebene (differenzierbare) Funktion f an der Stelle x 0 aufstellen und seine geometrische Bedeutung beschreiben.. Du kannst

In diesem Artikel finden Sie die Definition der Testgr¨ osse ”Rangsumme” und eine rekursive Vorschrift, die es erlaubt den enor- men Rechenaufwand f¨ ur die Ermittlung