• Keine Ergebnisse gefunden

Einmal-Paßw ¨ orter

N/A
N/A
Protected

Academic year: 2022

Aktie "Einmal-Paßw ¨ orter"

Copied!
7
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Standards

IEEE P1363/P1363a: Enth ¨alt alle Public-Key Verfahren.

•EC-DH, EC-DSA, EC-MQV, EC-IES.

•Anhang enth ¨alt viele grundlegende, zahlentheoretische Algorithmen.

ANSI X9.62: EC-DSA.

ANSI X9.63: EC-DH, EC-MQV, EC-IES.

FIPS186.2: NIST Standard f ¨ur DSA und EC-DSA.

SECG: Indutriestandard gef ¨uhrt von Certicom.

•EC-DH, EC-DSA, EC-MQV, EC-IES.

IETF: IPsec, S/MIME, ...

ISO/IEC 14888-3: Identity-based cryptography.

PKCS #13: ECC.

3 18. Januar 2007

Standards

Alle (außer IEEE) geben Nachrichtenformate und empfohlene Kurven an.

•Nicht jeder kann/will geeignete K ¨orper und Kurven selber finden (Punktez ¨ahlalgorithmus implementieren, ...)

•Unterst ¨utzt Verbreitung und Interoperabilit ¨at.

Verschiedene Standards benutzen teilweise die gleichen Kurven.

•Unterst ¨utzt Verbreitung und Interoperabilit ¨at.

Die ANSI und NIST Kurven sind

”am besten“.

Arbeitsweise von Standards:

•”Freiwillige“ Mitarbeit von Firmenangestellten. Wenig Academia.

•Dadurch Interessensvertretung der Firmen ...

MQV Protokoll

MQV Protokolle:

•Schl ¨usselberechnung symmetrisch.

wA,WA,wB,WBprivate/ ¨offentliche Schl ¨ussel.

•Geheime ZufallszahlenrA,rB.RA= rAPundRB= rBPwerden von A und B ausgetauscht.

•A berechnetsA= (rA+ µ(RA)wA) modℓ,SB= (RB+ µ(RB)WB)und KAB= hsASB. B analog mit A und B vertauscht.

Two-Pass Variante: AK, keine Key Confirmation.

One-Pass Variante von A nach B: VerwendetwB,WBanstelle von rB,RB. AK, keine Key Confirmation. Keine known-key oder forward secrecy, da B passiv ist.

Unknown Key-Share m ¨oglich (durch Zusatz leicht verhinderbar).

1 18. Januar 2007

Standards

Ziel: Interoperabilit ¨at, sichere Implementierungen.

Zu definieren:

•Format der Daten, K ¨orperelemente, Punkte, Signaturen, (Public-Key) Chiffretexte, ...

•Konversionsfunktionen dieser Objekte nach Bitstring, Integers, ...

•Genauer Spezifikation der Algorithmen, Punktkompression ja/nein, Hybridverschl ¨usselung, ...

Ein paar Standards/Organisationen:

•International: IEEE, IETF, ISO, ITU.

•National: ANSI, CEN, DIN, NIST.

•Company: PKCS, SECG.

(2)

Einmal-Paßw ¨ orter

Verbesserung gegen ¨uber Paßw ¨ortern: Jedes Paßwort wird nur einmal verwendet.

Beispiel: TAN beim online Banking.

Einmal-Paßw ¨orter mittels EinwegfunktionH.

Initialisierung:

•Beweiser w ¨ahlt geheimesw0und setztwt= Ht(w0).

wtwird authentisch (!) zum Verifizierer transportiert.

•Beweiser und Verifizierer halten einen Z ¨ahleri ¨uber die erfolgten Identifikationen.

•Der Verifizierer merkt sichwt−inach deri-ten Verifikation.

7 18. Januar 2007

Einmal-Paßw ¨ orter

Identifikation:

•In der(i + 1)-ten Identifikation berechnet der Beweiser

wt−i−1= Ht−i−1(w0)und schicktwt−i−1an den Verifizierer. Dieser

¨uberpr ¨uftwt−i= H(wt−i−1).

Eigenschaften:

•Wird einwt−ibekannt, so bleiben die nachfolgenden sicher.

•Begrenzte Anzahl von Passw ¨ortern.

•Nicht simultan f ¨ur verschiedene Identifikationen benutzbar, ohne Replayangriff zu erm ¨oglichen.

Challenge-Response Identifikation (nachfolgend) ist da flexibler.

Identifikation

Eine logische Einheit will sich gegen ¨uber einem System identifizieren, um Zugang, Resourcen, Information, Kontrolle etc. zu erhalten.

Beispiel: Geld abheben vom Konto (in der Bank oder vom Geldautomat), einloggen, ...

Der Ansatz ist, Identit ¨at mit einer geheimen Information bzw. Wissen gleichzusetzen: PIN, Paßwort, geheimer Schl ¨ussel, Kenntnis des geheimen Schl ¨ussels zu einem ¨offentlichem Schl ¨ussel.

Dies f ¨uhrt auf Identifikationsprotokolle, in denen der Beweiser einen Verifizierer von seiner Identit ¨at ¨uberzeugen m ¨ochte.

5 18. Januar 2007

Paßw ¨ orter

Hier benutzt man eine Einwegfunktion f. Der Beweiser offenbart dem Verifizierer sein Paßwortw, dieser berechnet f (w)und ¨uberpr ¨uft, ob der Wert in der Benutzer-Datei f ¨ur den Beweiser vorkommt.

Gefahren:

•Paßwort wird bekannt durch Verschulden des Verifizierers oder sonstige technische Probleme (Paßworteingabefenster ist gar nicht das

”echte“).

•Dictionary Attack (Paßw ¨orter intelligent raten).

•Paßwort kann dann durch erfolgreichen Angreifer verwendet werden.

(3)

Salzen und Strecken

Nochmal zu den Paßw ¨ortern. Im folgenden zwei Techniken, einen Dictionary-Angriff zu erschweren, sollte der Angreifer Zugriff auf die Paßwortdatei mit Eintr ¨agen(IDi,H(Passworti))haben.

Strecken:

•StattH einmal anwenden,H sehr h ¨aufig anwenden, also Paßwortdatei mit Eintr ¨agen der Form(IDi,Hr(Passworti)) verwenden.

rsollte so groß sein, daß die Berechnung beispielsweise ca.

1 Sekunde dauert.

•Der Angreifer hat dann einen unumg ¨anglich gr ¨oßeren Rechenaufwand.

11 18. Januar 2007

Salzen und Strecken

Salzen:

•Zu den Paßw ¨ortern Salz hinzuf ¨ugen, also Paßwortdatei mit Eintr ¨agen(IDi,Hr(Passworti||Salzi), Salzi)verwenden.

•Zum Beispiel Salzi= i, oder besser Salziein Zufallswert.

•Dictionary-Angriff bezieht sich dann nur auf eine gew ¨ahlte IDi, nicht alle zusammen (beachte Geburtstagsparadxon), bzw. wird f ¨ur alle erschwert.

Zus ¨atzlich:

•Login Prompt hat normalerweise eingebaute Verz ¨ogerung, wenn Paßwort falsch eingegeben wird.

Challenge-Response Identifikation

Einfaches Beispiel 1:

•Verifizierer schickt Beweiser eine geeignete (zuf ¨allige) Nachricht.

•Beweiser schickt eine Signatur der Nachricht zur ¨uck.

•Verifizierer ¨uberpr ¨uft die Signatur.

Einfaches Beispiel 2:

•Verifizierer schickt Beweiser einen geeigneten (zuf ¨alligen) Chiffretext.

•Beweiser schickt die Entschl ¨usselung des Chiffretexts zur ¨uck.

•Verifizierer ¨uberpr ¨uft die Entschl ¨usselung.

Man-in-the-Middle oder Grandmaster Postal-Chess Problem:

•Jemand kann sich zwischen die kommunizierenden Parteien h ¨angen. Z ¨ahlt bei C-R-I nicht direkt als Angriff.

9 18. Januar 2007

Challenge-Response Identifikation

Beweiser sei B und Verifizierer A (B und A werden hier mit den

¨offentlichen Schl ¨usselnBundAgleichgesetzt).

Beispiel (Gegenseitige Identifikation):

•B schickt A eine ZufallszahlrB.

•A schickt B eine ZufallszahlrA,Bund die SignaturSA(rA,rB,B).

•B ¨uberpr ¨uft die Korrektheit der Daten (alsoBund die Signatur), A hat sich damit dann gegen ¨uber B identifiziert.

•B schickt A den WertAund die SignaturSB(rB,rA,A).

•A ¨uberpr ¨uft die Korrektheit der Daten (alsoAund die Signatur), B hat sich damit dann gegen ¨uber A identifiziert.

Weitere Protokolle speziell f ¨ur Identifikation: Zero Knowledge Beweise etc.

(4)

Zero Knowledge Beweise

Daß P nichts weiteres bez ¨uglichxverr ¨at, wird wie folgt formalisiert.

F ¨ur jedes Programm Vgibt es ein Programm M, dessen Ausgaben als Zufallsvariable mit den Ausgaben von(P,V)als Zufallsvariable in Abh ¨angigkeit der Zufallsb ¨ander nicht effizient unterschieden werden k ¨onnen (bei gleicher, fixer Eingabe der zus ¨atzlichen Parameter, bis auf den Zeugen).

Die Eingabe des Zeugen soll also f ¨ur eine (jede) Berechnung keinen Vorteil bringen.

Es gen ¨ugt, nur solche Mzu betrachten, welche die zwischen P und Vkommunizierten Nachrichten und das Zufallsband von V

ausgeben, da diese als Eingabe von Vaufgefaßt werden k ¨onnen und Vdanach deterministisch abl ¨auft. Man nennt Meinen Simulator.

15 18. Januar 2007

Zero Knowledge Beweise

SeinRSA Modul,xzuf ¨allig undy = x2mod n.

P soll Kenntnis vonxbeweisen, ohne etwas ¨uberxzu verraten.

1. P w ¨ahlt zuf ¨alligesrund schickta = r2an V.

2. V w ¨ahlt zuf ¨alligese∈ {0,1}und schicktean P.

3. P berechnetb = rxeund schicktban V.

4. V akzeptiert genau dann, wennb2= aye.

Ein schummelndes Programm B anstelle von P kann wie folgt mit Erfolgswahrscheinlichkeit1/2vorgehen:

1. B w ¨ahlt zuf ¨alligesrund r ¨ateim voraus, alsoe∈ {0,1}zuf ¨allig.

2. B berechneta = r2y−e und schicktaan V.

3. V schickt zuf ¨alligesean B, und B antwortet mitr.

Interaktive Beweissysteme

Hier nur informell.

Haben zwei Programme, einen Beweiser P und einen Verifizierer V.

Diese tauschen Nachrichten aus, zum Schluß akzeptiert V oder weist zur ¨uck.

P und V haben als Eingabe jeweils ein Zufallsband und weitere, gemeinsame Daten. P erh ¨alt dar ¨uberhinaus weitere (vor V geheimen) Daten, welche Zeuge genannt werden.

Die Idee ist, daß P die L ¨osung zu einem Problem erh ¨alt und V davon

¨uberzeugen muß, daß es die L ¨osung kennt, ohne etwas ¨uber die L ¨osung zu verraten.

Allgemein betrachten wir(P,V )als Programm mit zwei kommunizierenden, beliebigen Teilprogrammen P und V.

13 18. Januar 2007

Interaktive Beweissysteme

Beispiel: F ¨ur einykennt P einxmity = gx. V kennt nury. P will beweisen, daß esxkennt.

•P k ¨onntexan V schicken, aber dann w ¨are es V bekannt.

•Abgesehen davon gibt es Probleme und L ¨osungenx, wo es schwierig ist, zu pr ¨ufen, obxeine L ¨osung ist. Betrachten wir hier nicht.

Es sollen folgende Eigenschaften gelten:

•Vollst ¨andigkeit: Wenn P den Zeugenxals Eingabe erh ¨alt (P kennt x), dann akzeptiert V.

•Korrektheit: F ¨ur jedes Programm B: Wenn V in der Interaktion mit B akzeptiert, dann hat B den Zeugen mit Wahrscheinlichkeit≥1/3 als Eingabe erhalten.

Dann heißt(P,V )ein interaktives Beweissystem.

(5)

Commitment Schemes

Ziel: P legt sich vor V auf einen Wert fest, ohne daß V den Wert erf ¨ahrt. Sp ¨ater muß P den Wert bekannt geben.

Eigenschaften:

•Hiding (comput., uncond.): Der Wert ist geheim vor V.

•Binding (comput., uncond.): P kann bei Bekanntgabe nicht schummeln.

Variante basierend auf DLP:

1. Challenge. V schicktg,van P.

2. Commit. P legt sich auf die Nachrichtmwie folgt fest. P w ¨ahlt zuf ¨alligesrund schicktc = grvman V.

3. Reveal. P schicktm,ran V. V testetc = grvm.

19 18. Januar 2007

Commitment Schemes

Wenn P schummeln k ¨onnte, dann h ¨atten wird eine Gleichung grvm= grvmund somit das DLPv = g(r−r)/(m−m).

P kann(rr)/(mm)berechnen.

Der Wertcist v ¨ollig zuf ¨allig, gibt keine Information ¨ubermpreis.

V hat daher auch dann keinen Vorteil, wenn essmitv = gskennt.

Beispiel: M ¨unzwurf ¨ubers Telefon.

Scheme ist unconditionally hiding und computationally binding.

Außerdem:

MitC(m,r) = grvmgiltC(r1,m1)C(r2,m2) = C(r1+ r2,m1+ m2).

⇒homomorphes Commitment.

Dies findet Anwendung beim verdeckten Rechnen, e-Voting.

Zero Knowledge Beweise

Angenommen, es gibt ein schummelndes B mit Erfolgswahrscheinlichkeit>1/2.

Dann kann B Wurzelnb,rmitb2= ayeundr2= ayeunde6= efinden.

Folglich kann B Quadratwurzeln vonyausrechnen, alson faktorisieren.

Durch mehrfache Wiederholung des interaktiven Beweises kann man die Erfolgswahrscheinlichkeit f ¨ur B beliebig klein machen.

17 18. Januar 2007

Zero Knowledge Beweise

Simulation des Beweises: Sei Vgegeben. Wir konstruieren Mwie B, nur daß Mnoche= V(a) ¨uberpr ¨uft und solange rechnet, bis dies gilt.

Die Ausgabe von Mist dann nicht von der von(P,V)zu unterscheiden:

aist zuf ¨allig,e = V(a), undbist eine korrekte Quadratwurzel.

Damit ist der angegebene interaktive Beweis ein Zero Knowledge Beweis (of Knowledge).

(6)

Paarungsbasierte Kryptographie

Destruktive Seite von Paarungen:

•MOV Angriff und FR Reduktion. (1991-1993) Konstruktive Seite von Paarungen:

•Sakai, Ohgishi, Kasahara und Boneh, Franklin mit identit ¨atsbasierter Kryptographie. (2000)

Seitdem extrem aktives Gebiet in der Kryptographie, mit vielen weiteren Anwendungen.

Forschung:

•Protokolle (Paarung abstrakt gegeben).

•Konstruktion geeigneter elliptischer Kurven, effiziente Berechung der Paarungen.

23 18. Januar 2007

Paarungsbasierte Kryptographie

Beispiel: Short Signatures.

Setup wie Undeniable Signatures, plus Paarunge : G×GGT. Schl ¨ussel:y = gx.

Signatur:(σ,M)mitσ= H(M)x. Verifikation:e(g,σ) = e(y,H(M)).

Gegen ¨uber Schnorr spart man sich im wesentlichenh.

Die Sicherheit des Verfahrens kann im Zufallsorakelmodell auf das CDH inGzur ¨uckgef ¨uhrt werden.

Weitere Protokolle

•Multiparty Kryptographie.

•Threshold Kryptographie (

”Entschl ¨usseln, wenn die Mehrheit daf ¨ur ist“).

•Multi-party computation.

•Oblivious transfer, simulaneous contract signing.

•Auktionen.

•... ...

•...

21 18. Januar 2007

Paarungsbasierte Kryptographie

SeienG1,G2,GT zyklische Gruppen von Primzahlordnungℓ. Eine Paarung ist eine nicht-degenerierte bilineare Abbildung

e : G1×G2GT. Eigenschaften:

•Paarungwertee(P,Q)sollen leicht ausgerechnet werden k ¨onnen.

G1,G2,GT sollen sicheres DLP und CDH haben. Aber f ¨urG1= G2 ist das DDH inG1mit Hilfe voneleicht zu l ¨osen! (Wie?)

•MeistG1,G2 Punktgruppe einer elliptischen Kurve,GT

Untergruppe vonF×qkundeWeil- oder Tatepaarung.

Referenzprobleme:

1. Pairing inversion: ZuP,W das ElementQmite(P,Q) = W finden, etc.

2. Bilinear CDH: ZuP,aP,bP,cPden Werte(P,P)abcberechnen.

3. viele mehr.

(7)

Identit ¨atsbasierte Kryptographie

Traditionelle Verfahren:

•Private Keys werden geheim erzeugt, daraus die Public Keys berechnet. Bindung an eine Identit ¨at erfolgt durch eine Trust Authority mittels Zertifikat.

Identit ¨atsbasierte Kryptographie:

•Hier werden erst die Public Keys erzeugt, und dann durch die TA daraus die Private Keys. Liefert Authentifizierung der Public Keys!

•Hat erweiterte Sicherheitsmodelle, Angreifer d ¨urfen auch f ¨ur andere Identit ¨aten Fragen stellen, speziell sich geheime Schl ¨ussel anderer Identit ¨aten geben lassen.

Identit ¨atsbasierte Verschl ¨usselung:

•Boneh und Franklin 2000. Es war bis dahin ungel ¨ost, ob das

¨uberhaupt geht.

25 18. Januar 2007

Identit ¨atsbasierte Kryptographie

Identit ¨atsbasierte Signaturen:

•Geht auch ohne Paarungen (Paper von Shamir in den 80igern, RSA basiert).

•Verwendet man p(x) = e(P,x)in unserer Beschreibung des

Schnorrverfahrens (P = g), dann erh ¨alt man ein identit ¨atsbasiertes Signaturverfahren.

Beispiel:

PErzeuger,sP ¨offentlicher Schl ¨ussel von TA,sgeheimer Schl ¨ussel von TA.H(ID) ¨offentlicher Schl ¨ussel vonID,sH(ID)geheimer Schl ¨ussel vonID.

Signatur:r = e(P,kP),h = H(M||r),u = hsH(ID) + kP.

Verifikation:y = e(sP,H(ID)). Testee(P,u) = yH(M||r)r.

Referenzen

ÄHNLICHE DOKUMENTE

(2 Punkte) (c) Skizzieren Sie, wie eine passende Aufteilung der z-Ebene aussehen k¨ onnte, damit alle Punkte innerhalb eines Teils der z-Ebene zu genau einem Riemannschen Blatt der

Annahme: A ist wahrheitsfunktional wahr [falsch]. Schritt 1: Ermittle die Anzahl der Wahrheitswertzuordnungsfragmente für den Satz A. Wenn das Tableau für {¬A} [für {A}]

Dies ist lediglich für die vierte Zeile der Tabelle (p=w, q=f, r=f) nicht der Fall.. Diese Belegung der Variablen muss folglich

Hinweis: Entwickeln Sie f um 1/2 und untersuchen Sie den Konvergenzradius dieser Reihe unter der Annahme, dass 1 ein regul¨ arer Punkt von f sei.. Die L¨ osungen sind bis Dienstag,

Da der erste Faktor auf einen Wert kleiner als δ festgelegt ist (also z.B. δ/2), muss der zweite Faktor ein Vielfaches vom Kehrwert davon sein, damit das Produkt insgesamt einen

Wenn X mehr als ein Element enth¨ alt, erhalten wir ein Beispiel, welches zeigt, daß die Umkehrung im Allgemeinen nicht gilt.. L¨ osungsvorschlag zur Aufgabe 3: Zu (a)

• Jede Person muss jeder Personen des anderen Geschlechts einen eindeutigen Rang zuordnen (Priorit¨ atenliste)!.

Pr¨ asenzaufgaben zu Speziel le Aspekte der Analysis Blatt X