Klassischer Verschlüsselungsschlüsselaustausch und Authentisierung


  Share  
|

Nehmen Sie Alice und Bob Wunsch an, um in Verbindung zu stehen. Wenn sie einen allgemeinen Schlüssel teilen, können sie ein klassisches Schlüsselsystem verwenden. Aber wieSIND sie über einen allgemeinen Schlüssel einig? Wenn Alice Bob ein schickt, Vorabend sieht das eavesdropper es undIST in der Lage, den Verkehr zwischen ihnen zu lesen.

Um dieses das Urprogramm ladenproblem zu vermeiden, beruhen klassische Protokolle auf einer verläßlichen dritten Partei, Cathy. Alice und Cathy teilen einen geheimen (anderen) geheimen Schlüssel des Schlüssels und Bob und Cathy des Anteiles a. Das Ziel ist, einen geheimen Schlüssel zur Verfügung zu stellen, den Alice und Bob teilen. Das folgende einfache Protokoll liefert einen Ausgangspunkt.

  1. Alice - > Cathy: {Antrag für Lernabschnittschlüssel zum Bob}kAlice

  2. Cathy - > Alice: {ksession}kAlice || {ksession}kBob

  3. Alice - > Bob: {ksession}kBob

Bob jetzt dechiffriert die Anzeige und verwendet ksession, um mit Alice zu verständigen.

Dieses bestimmte Protokoll ist die Grundlage für viel mehr hoch entwickelte Protokolle. Jedoch weiß Bob nicht zu, wem spricht er. Nehmen Sie an, daß Alice Bob eine Anzeige (wie "Ablagerung $500 im Bankkonto Dans heute") chiffroren unter ksession schickt. Wenn Vorabend die zweite Anzeige im Austausch oben notiert und die Anzeige unter ksession chiffror, kann sie Bob die Anzeige schicken {ksession}kBob folgte von der Anzeige, die unter ksession chiffroren wurde. Bob weiß nicht, wem sie sendet.

Probleme wie dieses vermeiden, replay Angriff addiert beträchtliche Kompliziertheit. Schlüsselaustauschprotokolle fügen gewöhnlich, an einem Minimum, irgendeine Art der Authentisierung hinzu und Verteidigung gegen replay Angriff. Eins von den bekanntesten solche Protokolle ist das Needham-Schroeder Protokoll.

  1. Alice - > Cathy: {Alice || Bob || rand1}

  2. Cathy - > Alice: {Alice || Bob || rand1 || ksession || {Alice || ksession} kBob} kAlice

  3. Alice - > Bob: {Alice || ksession} kBob

  4. Bob - > Alice: ksession {rand2}

  5. Alice - > Bob: {}ksession rand2 1

In diesem Protokoll sind rand1 und rand2 zwei Zahlen, die zufällig erzeugt werden, außer daß sie können nicht zwischen unterschiedlichen Protokollaustäuschen wiederholen. Diese Zahlen werden nonces genannt. (wenn Alice das Protokoll von neuem anfängt, ist ihr rand1 im ersten Austausch nicht dort vorher. verwendet worden) Die Grundlage für die Sicherheit dieses Protokolls ist, daß Alice und Bob Cathy vertrauen.

Wenn Bob die dritte Anzeige empfängt und sie dechiffriert, sieht er, daß die Anzeige Alice nennt. Da er die Anzeige dechiffrieren könnte, wurde die Anzeige mit einem Schlüssel chiffroren, den er nur mit Cathy teilt. Weil er Cathy, vertraut das SchlüsselkBob nicht mit sonst jedermann geteilt zu haben, muß die Anzeige von Cathy chiffroren worden sein. Dies heißt, daß Cathy vouching, daß sie ksession erzeugte, also Bob mit Alice verständigen könnte. So vertraut Bob, daß Cathy Alice die Anzeige schickte und daß Alice sie an ihn weiterleitete.

Jedoch wenn Vorabend die Anzeige notierte, könnte sie replayed sie zu Bob. Dadurch, daß Fall, Vorabend nicht den Lernabschnittschlüssel gekannt haben würde, also Bob legen dar, um zu überprüfen, daß seine unbekannte Empfänger ihn kennt. Er schickt Alice eine gelegentliche Anzeige, die durch ksession chiffroren wird. Wenn Vorabend die Anzeige abfängt, weiß sie nicht was zurückzugehen; wenn sie alles sendet, ermitteln die Vorteile von ihr eine Anzeige, die ist sehr niedrig und Bob korrekt ist nach dem zufall vorwählend versucht replay. Aber, wenn Alice in der Tat die Kommunikation einleitet, wenn sie die Anzeige erhält, kann sie sie dechiffrieren (weil sie ksession kennt), irgendeine örtlich festgelegte Funktion an den gelegentlichen Daten anzuwenden (hier, sie durch 1) verringern, und das Resultat chiffrieren und es zu Bob zurückbringen. Dann ist Bob sicher, daß er mit Alice spricht.

Alice muß sich auch überzeugen, daß sie mit Bob spricht. Wenn sie die zweite Anzeige von Cathy empfängt, dechiffriert sie es und prüft, ob Alice, Bob und rand1 anwesend sind. Dieses erklärt ihr, daß Cathy die zweite Anzeige sendete (weil es mit kAlice chiffroren wurde, das nur sie und Cathy kennen) und daß es eine Antwort zur ersten Anzeige war (weil rand1 in den ersten und zweiten Anzeigen ist). Sie erhält den Lernabschnittschlüssel und leitet den Rest an Bob weiter. Sie weiß, daß nur Bob ksession hat, weil nur sie und Bob die Anzeigen lesen können, die diesen Schlüssel enthalten. So, wenn sie die Anzeigen empfängt, die mit diesem Schlüssel chiffroren werden, ist sie sicher, daß sie mit Bob spricht.

Das Needham-Schroeder Protokoll nimmt an, daß alle Verschlüsselungsschlüssel sicher sind. In der Praxis werden Lernabschnittschlüssel pseudorandomly erzeugt. Abhängig von dem Algorithmus, der verwendet wird, kann es möglich sein, solche Schlüssel vorauszusagen. Denning und Sacco nahmen an, daß Vorabend einen Lernabschnittschlüssel erhalten könnte und stürzten das Protokoll um. Nehmen Sie an, daß das Protokoll oben stattfand. Dann:

  1. Vorabend - > Bob: {Alice || ksession} kBob

  2. Bob - > Alice: ksession {rand3} [ abgefangen bis zum Eve ]

  3. Vorabend - > Bob: {}ksession rand3 1

Jetzt denkt Bob, daß er mit Alice spricht. Er spricht wirklich mit Vorabend.

Denning und Sacco schlagen mit Zeitstempeln, Bob zu ermöglichen, dieses replay zu ermitteln vor. Das Anwenden ihrer Methode am Needham-Schroeder Protokoll erbringt

  1. Alice - > Cathy: {Alice || Bob || rand1}

  2. Cathy - > Alice: {Alice || Bob || rand1 || ksession || {Alice || T || ksession} kBob} kAlice

  3. Alice - > Bob: {Alice || T || ksession} kBob

  4. Bob - > Alice: ksession {rand2}

  5. Alice - > Bob: {}ksession rand2 1

wo T ein Zeitstempel ist. Wenn Bob die Anzeige in Schritt 3 erhält, weist er ihn zurück, wenn der Zeitstempel zu alt ist (zu altes feststellend vom System im Gebrauch). Diese Änderung erfordert synchronisierte Taktgeber. Denning und Sacco merken, daß eine Direktion mit einem langsamen Taktgeber zu einem Replayangriff verletzbar ist. Eine Partei mit einem schnellen Taktgeber ist auch verletzbar, und den Taktgeber einfach zurückstellen beseitigt nicht die Verwundbarkeit.

Das Otway-Rees Protokoll behebt diese Probleme, indem es den Gebrauch der Zeitstempel vermeidet.

  1. Alice - > Bob: numerisch || Alice || Bob || {rand1 || numerisch || Alice || Bob}kAlice

  2. Bob - > Cathy: numerisch || Alice || Bob, || {rand1 || numerisch || Alice || Bob}kAlice || {rand2 || numerisch || Alice || Bob}kBob

  3. Cathy - > Bob: numerisch || {rand1 || ksession}kAlice || {rand2 || ksession} kBob

  4. Bob - > Alice: numerisch || {rand1 || ksession}kAlice

Der Zweck der numerischen Ganzzahl ist, alle Anzeigen mit einem bestimmten Austausch zu verbinden. Wieder betrachten Sie die Elemente des Protokolls.

Wenn Alice die vierte Anzeige von Bob empfängt, prüft sie, ob das numerische mit dem numerischen in der ersten Anzeige übereinstimmt, daß sie Bob sendete. Wenn so, weiß sie, daß dieses ein Teil des Austausches ist. Sie vertraut auch, daß Cathy den Lernabschnittschlüssel erzeugte, weil nur Cathy und Alice kAlice kennen, und die gelegentliche Zahl rand1 stimmt mit überein, was Alice in den chiffrorenen Teil der Anzeige einsetzte. Diese Faktoren kombinierend, ist Alice jetzt überzeugt, daß sie mit Bob spricht.

Wenn Bob die Anzeige von Cathy empfängt, stellt er fest, daß das numerische bis das entspricht, das er von Alice und gesendet Cathy empfing. Er dechiffriert daß Teil der Anzeige, die mit seinem Schlüssel chiffroren wird und prüft, ob rand2 ist, was er sendete. Er weiß dann, daß Cathy die Antwort sendete und daß es auf den Austausch mit Alice zutrifft.

Weil keine Zeitstempel benutzt werden, ist die Synchrounisierung der System Taktgeber irrelevant. Nehmen Sie jetzt an, daß Vorabend einen alten Lernabschnittschlüssel und die Anzeige in 3 erwarb.

Sie leitet diese Anzeige an Alice weiter. Alice sofort Ausschüße es, wenn sie keine fortwährenden Schlüsselaustäusche mit Bob hat. Wenn sie und numerisch nicht zusammenpaßt, weist sie Anzeige des Vorabends zurück. Der einzige Weise Vorabend könnte Bob verkörpern ist, wenn sie ksession für einen fortwährenden Austausch erwarb, die dritte Anzeige notierte und den relevanten Teil zu Alice zurücksendete, bevor Bob so tun könnte. Dadurch, daß Fall jedoch Vorabend zum Verkehr einfach hören könnte und keine replay, seien Sie beteiligt.

dieses ist ein Artikel, der von Bill Kuriko hinzugefügt wird


Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions