DIE SPEZIELLE TECHNIK DER MITTEL DER VERBINDUNG

--------------------------------------------------------------------------------------------------------

Die Ausgabe 1аааааааааааааааааааааааааааааааааааааааа РхЁш ааааааааааааааааааааааааааааааааааааааааааа 1996

Die Systeme, die Netze und die technischen Mittel

Der vertraulichen Verbindung

 

УДК 621.391.7

 

Л.Н. САПЕГИН

 

DIE TYPISCHEN DEFEKTE IN DEN KRIPTOGRAFITSCHESKI PROTOKOLLEN

 

Nach den Materialien der ausländischen Presse ist es mehr 30 криптографических der Protokolle bekannt, die für die Sicheren vermutlich galten. Die Erfahrung hat gezeigt, dass die überwiegende Mehrheit von ihnen über die Defekte verschiedenen Schweregrades verfügt. Im gegenwärtigen Artikel werden nur etwas hellsten Beispiele криптографических der Protokolle mit den Defekten und den Angriffen, die diese Defekte verwenden vorgeschlagen. Das Wissen der negativen Präzedenzfälle kann den Herstellern криптографических (nicht nur криптографических) der Protokolle helfen, die charakteristischen Fehler zu vermeiden.

 

1. Die Klassifikation криптографических der Protokolle

 

1.1. Die Protokolle der Chiffrierung / расшифрования.

 

Zugrunde des Protokolles dieser Klasse ist einiger symmetrischer oder asymmetrischer Algorithmus der Chiffrierung/rasschifrowanija enthalten. Der Algorithmus der Chiffrierung wird auf der Sendung vom Absender der Mitteilung erfüllt, als dessen Ergebnis die Mitteilung aus der offenen Form in die Chiffrierte umgewandelt werden wird. Der Algorithmus расшифрования wird auf der Aufnahme vom Empfänger erfüllt, als dessen Ergebnis die Mitteilung aus der chiffrierten Form mit offenen Karten umgewandelt werden wird. So wird die Eigenschaft der Vertraulichkeit gewährleistet.

Für die Versorgung der Eigenschaft der Ganzheit der übergebenen Mitteilungen  werden die symmetrischen Algorithmen der Chiffrierung / расшифрования mit den Algorithmen der Berechnung имитозащитной die Einschübe (ИЗВ) auf der Sendung und der Prüfung ИЗВ auf der Aufnahme gewöhnlich vereint, wofür der Schlüssel der Chiffrierung verwendet wird. Unter Anwendung von den asymmetrischen Algorithmen der Chiffrierung / расшифрования wird die Eigenschaft der Ganzheit abgesondert mittels der Berechnung der elektronischen digitalen Unterschrift (ЭЦП) auf der Sendung und der Prüfung ЭЦП auf der Aufnahme gewährleistet, als auch die Eigenschaften der Störungsfreiheit und der Echtheit der übernommenen Mitteilung gewährleistet werden.

 

1.2. Die Protokolle der elektronischen digitalen Unterschrift (ЭЦП).

 

Zugrunde des Protokolles dieser Klasse ist einiger Algorithmus der Berechnung ЭЦП auf der Sendung mit Hilfe des geheimen Schlüssels des Absenders und der Prüfung ЭЦП auf der Aufnahme mit Hilfe des entsprechenden offenen Schlüssels, der aus dem offenen Nachschlagewerk herausgezogen wird, aber geschützten vor den Modifikationen enthalten. Im Falle des positiven Ergebnisses der Prüfung endet das Protokoll von der Operation der Archivierung der übernommenen Mitteilung, seiner ЭЦП und des entsprechenden offenen Schlüssels gewöhnlich. Die Operation der Archivierung kann nicht erfüllt werden, wenn ЭЦП nur für die Versorgung der Eigenschaften der Ganzheit und der Echtheit der übernommenen Mitteilung, aber nicht der Störungsfreiheit verwendet wird. In diesem Fall, nach der Prüfung, ЭЦП kann sofort oder nach Verlauf des begrenzten Zeitraums der Erwartung zerstört sein.

 

1.3. Die Protokolle der Identifizierung / аутентификации.

 

Zugrunde des Protokolles der Identifizierung ist einiger Algorithmus der Prüfung die Tatsache, dass das identifizierte Objekt (der Benutzer, die Einrichtung, den Prozess enthalten...), vorlegend einigen Namen (den Bezeichner), weiß die geheimen Informationen, die nur dem erklärten Objekt bekannt sind, wobei die Methode der Prüfung, natürlich, indirekt, d.h. ohne Vorweisung dieser geheimen Informationen ist.

Gewöhnlich verbindet sich mit jedem Namen (dem Bezeichner) des Objektes das Verzeichnis seiner Rechte und der Vollmachten im System, aufgezeichnet in der geschützten Datenbank. In diesem Fall kann das Protokoll der Identifizierung bis zum Protokoll аутентификации ausgedehnt sein, in dem das identifizierte Objekt auf die Machtbefugnis der bestellten Dienstleistung geprüft wird.

Wenn im Protokoll der Identifizierung ЭЦП verwendet wird, so spielt die Rolle der geheimen Informationen den geheimen Schlüssel ЭЦП, und verwirklicht sich die Prüfung ЭЦП mit Hilfe des offenen Schlüssels ЭЦП, dessen Wissen nicht zulässt, den entsprechenden geheimen Schlüssel zu bestimmen, aber lässt zu, sich darin zu überzeugen, dass er dem Autor ЭЦП bekannt ist.

 

1.4. Die Protokolle аутентифицированного die Verteilungen der Schlüssel.

 

Die Protokolle dieser Klasse vereinen аутентификацию die Benutzer mit dem Protokoll der Erzeugung und der Verteilung der Schlüssel nach dem Kanal der Verbindung. Das Protokoll hat zwei oder mehrerer Teilnehmer; vom dritten Teilnehmer ist das Zentrum der Erzeugung und der Verteilung der Schlüssel (ЦГРК), genannt für die Kürze ein Server S.

Das Protokoll besteht aus drei Etappen, die den Titel haben: die Erzeugung, die Registrierung und die Kommunikation.

Auf der Stufe der Erzeugung generiert der Server S die Zahlenbedeutungen der Parameter des Systems, einschließlich, den geheimen und offenen Schlüssel.

Auf der Stufe der Registrierung identifiziert der Server S die Benutzer nach den Dokumenten (beim persönlichen Erscheinen oder durch der bevollmächtigten Personen), für jedes Objekt generiert die Schlüssel- und\oder Identifizierungsinformationen und bildet den Marker der Sicherheit, der die notwendigen Systemkonstanten und den offenen Schlüssel des Servers S (falls notwendig) enthält.

Auf der Stufe der Kommunikation wird eigentlich das Protokoll аутентифицированного des Schlüsselaustausches realisiert, der von der Bildung allgemein сеансового des Schlüssels endet.

 

2. Die Defekte in криптографических die Protokolle

 

Aus den ausländischen Periodika zur Gegenwart ist es mehr 30 криптографических der Protokolle für die kommerziellen Systeme der Verbindung bekannt. Der Teil von ihnen trägt die Namen der Autoren, anderer Teil ist von den internationalen Standards МККТТ und ISO empfohlen, dritte - geht in die nationalen Standards verschiedener Länder ein. Jedoch veralten die Standards schnell, und in den Protokollen stellen sich die Defekte verschiedenen Schweregrades heraus, von den Mängeln als die unbegründete Komplexität des Protokolles und bis zu den katastrophalen Mängeln beginnend, die das Protokoll äußerst gefährlichen machen.

Im gegenwärtigen Artikel werden nur etwas hellsten Beispiele криптографических der Protokolle mit den Defekten und den Angriffen, die diese Defekte verwenden vorgeschlagen. Jedes Protokoll zuerst wird Wörter mit Hilfe der Zeichnung für die Anschaulichkeit der Idee des Protokolles kurz beschrieben, dann es wird der formale Text des Protokolles, der die Spezifikation des Protokolles berichtet vorgestellt. Der formale Text des Protokolles wird auf einiger Sprache des hohen Niveaus, die den ziemlich breiten Vertrieb in der Literatur nach der Sicherheit der Protokolle bekam geschrieben. Endlich, auf dieser Sprache werden eine - zwei Angriffe des Gegners (der Verletzer), einige verwendende Defekte des Protokolles bezeichnet. Es ist nötig zu bemerken, dass sich diese Angriffe möglich nur häufig erweisen, ungenügend voller Spezifikation des Protokolles dankend; genauer, dank dem, was aus einer Menge der möglichen Spezifikationen des Protokolles natürlichst, aber misslungen realisiert wird. Es bedeutet, dass sich bei der aufmerksameren Auswahl der Spezifikation des Protokolles, unter Berücksichtigung des Wissens der negativen Präzedenzfälle, die angegebenen Angriffe, möglich, нереализуемыми oder nicht effektiv erweisen werden.

Zur Zeit "gibt es keine sichere, systematische Methodologie für die Konstruktion der sicheren Kommunikationsprotokolle, und die Erfahrung hat gezeigt, dass sich die sehr große Zahl der kommerziellen Protokolle, die vermutlich sicher galten, verwundbar seitens des breiten Spektrums der wirksamen Angriffe tatsächlich erwiesen haben. Von den angewandten Programmierern darf man nicht die Konstruktion fordern (es ist möglich, es dass zur Konstruktion) die sicheren Protokolle" [1] nicht zuzulassen ist nötig. Diese Sache professionell криптографов. Jedoch soll die volle Spezifikation Protokoll, des offenbar, gemeinsam криптографом und dem Programmierer entwickelt werden; es ist noch besser, wenn es ein und derselbe Mensch wird.

In den nachfolgenden Abteilungen werden die Protokolle mit den typischen Defekten betrachtet. Die Beispiele der Protokolle sind auf die Gruppen nach dem Typ verwendet криптосистемы müde:

- Die Protokolle mit криптосистемой DH (Diffi, Chellman);

- Die Protokolle mit криптосистемой RSA (Rajwest, Schamir, Adleman);

- Die Protokolle mit коммутативным von der Chiffrierung (Schamir);

- Die Protokolle аутентифицированного die Verteilungen der Schlüssel;

- Die Protokolle, die auf den Identitäten gegründet sind.

 

3. Die Protokolle mit криптосистемой DH

 

Historisch ist криптосистема DH erste криптосистемой mit den offenen Schlüsseln (КСОК), gegründet auf экспоненциальной der einseitigen Funktion. Erstens wurde dieser криптосистема wie das Schema der Verteilung der Schlüssel für klassisch symmetrisch криптосистемы mit den geheimen allgemeinen Schlüsseln [2] verwendet. Vorläufig bekommen alle Benutzer des Netzes der Verbindung vom Server S für den glaubwürdigen Kanal die Systemkonstanten (Р,), wo die einfache Zahl Р und die Gründung der Stufe wie es sich gehört herauskommen.

 

3.1. Das Protokoll des Schlüsselaustausches DH

 

Die Benutzer Und und In bilden den geheimen Schlüssel der paarigen Verbindung Kab mit Hilfe des folgenden Protokolles (die Abb. 1)

- Der Benutzer Und vom Zufallszahlengenerator (ДСЧ) generiert rechnet die Zufallszahl Xa, aus und schickt es В

- Der Benutzer In vom Sensor generiert die Zufallszahl Xb, rechnet aus und schickt es А

- Der Benutzer Und, die Zahl Yb von In bekommen, rechnet aus.

- Der Benutzer In, die Zahl Ya von bekommen Und, rechnet aus.

Die Abb. 1

 

Die Zahlen Xa, Xb werden gewaschen. Da, so Kab = Kba.

Für die Kürze anstelle der verbalen Beschreibung wird die formale Aufzeichnung gewöhnlich verwendet, in der der Doppelpunkt die Aufzählung der vom Benutzer begangenen Handlungen bedeutet, der Zeiger bedeutet die Erzeugung, die Extraktion oder die Aufzeichnung der Informationen nach den inneren Ketten (den Kanälen) den Benutzer, der doppelte Zeiger bedeutet die Sendung nach dem äusserlichen offenen Kanal, der dreifache Zeiger - die Sendung nach dem äusserlichen geschützten Kanal der Verbindung, zum Beispiel, die Sendung nach dem chiffrierten Kanal der geheimen Daten für den Benutzer vom Server S. In diesem Fall sieht die formale Aufzeichnung des Protokolles auf folgende Weise aus:

UND: ДСЧ () Xa;; [A B Ya] B

IN: ДСЧ () Xb; КЗУ ();;

[BAYb] A,

UND:

Hier: ║ - das Zeichen des Beitrittes, [...] - die gebildete Mitteilung, КЗУ - der Schlüsselspeicher.

Es wird angenommen, dass der Kanal ohne Fehler und ohne Einwirkungen des Gegners ().

Der Angriff 1. Еb - fängt der Gegner Е, die die Rolle des Benutzers In spielen, die Mitteilung von Und zu In auf und bildet den Schlüssel der paarigen Verbindung Kea=Kae, wobei Und meint, was der Schlüssel der Verbindung mit In (die Abb. 2) sind:

UND: ДСЧ () Xa;; [A B Ya] EbB

Eb: ДСЧ (E) Xе; КЗУ (E);;

ааааааааааааааааааааааааааа [BAYe] A

UND:

 

Die Abb. 2

 

Der Angriff 2Еа, Еb - fängt der Gegner Е, die die Rollen der Benutzer Und und In spielen, die Mitteilungen von Und und In auf, bildet die Schlüssel Kae und Keb der paarigen Verbindung mit Und und In den Weg der Führung zwei paralleler Protokolle. Daraufhin meinen die Benutzer Und und In, dass sie die vertrauliche Verbindung auf dem Schlüssel Kab haben; tatsächlich haben sie die chiffrierte Verbindung mit перешифрованием beim Gegner Е (die Abb. 3) festgestellt.

 

 

Die Abb. 3

 

UND: ДСЧ () Xa;; [A B Ya] Eb

Eb: ДСЧ (E) Xе; КЗУ (E);;

ааааааааааааааааааааааааааа [BAYe] A

Ea: [ABYe] B ,

UND:

IN : ДСЧ ()  Xb; ааааааааа КЗУ ();; [BAYb] Ea,  

Ea:

 

3.2. Das Protokoll аутентифицированного des Schlüsselaustausches DH [3]

 

Nach dem Erhalten der Systemkonstanten vom Server S die Benutzer Und, In, Mit... Generieren von ДСЧ die geheimen Schlüssel Cha, Хb, Xc..., rechnen die offenen Schlüssel aus;;;... Eben unterbringen sie ins allgemeinverständliche vor den Modifikationen geschützte Nachschlagewerk {Ya, Yb, Yc...}. (Die Abb. 4).

 

Die Abb. 4

Die formale Aufzeichnung des Protokolles:

IN: ДСЧ () tb;; [BAZ] A

A: ДСЧ (A) ta;;

ааааа;

 [ABUV] der Kanal [] B

IN=A (?);  =B (?);; аааааааааа

 

Hier bedeutet das Zeichen “~” die Möglichkeit der Entstellung vom Kanal oder der Modifikation vom Gegner, das Zeichen "­" bedeutet die Errichtung in die Stufe, - rückgängig zu tb nach mod (p-1), das Zeichen (?) nach der Gleichheit bedeutet, dass die Ausführung der Gleichheit geprüft wird: bei der Nichterfüllung wird das Protokoll zerrissen, bei der Ausführung verwirklicht sich der Übergang zur nächsten Operation.

Daraufhin unterscheidet sich der Schlüssel bei U von Kab, wenn die Prüfung der Echtheit erfüllt wird. Von hier aus ist nötig es

Der Angriff 1. Gegner Jea, der die Rolle des Benutzers Und spielt, wechselt im Kanal die Mitteilung [ABUV] auf [AB ] mit der Bedingung aus. Daraufhin bildet der Benutzer In den falschen Schlüssel Kab.

Der Angriff 2. Der Gegner Еb, die die Rolle In spielen, schickt Und die Zahl, worauf jener laut des Protokolles von den Zahlen (UV antwortet ), wo Daraufhin der Gegner Е mit Und den Schlüssel der paarigen Verbindung Kae, die nach dem offenen Kanal der Verbindung übergeben sind feststellt, wobei Und meint, dass es der Schlüssel für die Verbindung mit В ist

 

 

4. Die Protokolle mit криптосистемой RSA

 

Vorläufig alle Benutzer Und, In, Mit... Die Netze der Verbindung generieren die persönlichen Module na, nb, nc..., jeder von denen hat die Struktur: n=pq die Werke zwei einfacher Zahlen p und q (na=paqa; nb=pbqb; nc=pcqc;...), gewählt wie es sich gehört [2]. Dann wählt jeder Benutzer ein Paar Zahlen (e, d), befriedigend der Bedingung mit der entsprechenden Weise, wo sich Weiter die Zahlen (n, e) als offener Schlüssel nach dem glaubwürdigen Kanal ins allgemeinverständliche Nachschlagewerk begeben. Die Zahlen (p, q, d) die Benutzer sparen im Geheimnis auf.

 

4.1. Das Protokoll der Chiffrierung und der digitalen Unterschrift nach RSA [2]

 

Das vorliegende Protokoll ist МККТТ, die Empfehlung Х.509 empfohlen. Der Defekt des Protokolles besteht in der falschen Ordnung der Operation der Chiffrierung und des Unterschreibens: es ist zuerst, zu unterschreiben, dann zu chiffrieren zuerst. In der formalen Aufzeichnung des Protokolles werden die folgenden Bezeichnungen verwendet:

M - die übergebene Mitteilung von Und zu In;

Сb - chiffriert Und die Mitteilung m auf dem Schlüssel eb des Empfängers In;

Сba - die Mitteilung Сb, die Und auf dem Schlüssel da den Absender А unterschrieben sind

Es wird angenommen, dass nb <na. Die Begründung zwei letzten Gleichheiten besteht in den folgenden Umgestaltungen:

Атака1. Einiger Benutzer Х (der Verletzer) fängt die Mitteilung (die Abb. 5 auf), nimmt ЭЦП den Benutzer ab Und, den offenen Schlüssel (na, ea benutzend).

 

 

Die Abb. 5

 

Er unterschreibt die bekommene chiffrierte Mitteilung Сb auf dem geheimen Schlüssel dx, sich die Urheberschaft auf die Mitteilung M.Polutschiws die Mitteilung dadurch verleihend, nimmt der Benutzer In die Unterschrift Х mit Hilfe des offenen Schlüssels ab (nx, ex), entziffert auf dem geheimen Schlüssel db und wählt die Mitteilung m, die für die Mitteilung von Х hält, aber nicht von Und, wenn die Mitteilung m die Merkmale А nicht enthält

Die Bemerkung: wenn na=nb, so werden die Operationen der Chiffrierung und des Unterschreibens перестановочными, so dass die Abnahme ЭЦП möglich bei einer beliebigen Ordnung dieser Operationen wird.

 

4.2. Das Protokoll der Chiffrierung nach RSA auf dem allgemeinen Modul

 

Wenn auch die Zirkularmitteilung m nach криптосистеме RSA mit dem allgemeinen Modul “n” chiffriert wird. Die Benutzer Und und In bekommen die chiffrierten Mitteilungen,

Атака1. Der Gegner Е fängt die chiffrierten Mitteilungen Sa und Сb auf. Die offenen Schlüssel ea und eb wissend, findet der Gegner nach dem Algorithmus Ewklida die Zahlen x, y so dass xea + yeb = 1 (mit der großen Wahrscheinlichkeit der Zahl ea und eb sind gegenseitig einfach). Dann rechnet daraufhin der Gegner die Mitteilung m aus, nur die offenen Schlüssel ea, eb und das Modul n wissend, aber, den Modul nicht wissend, was dem Wissen der Faktorisierung n=pq gleichbedeutend ist.

 

5. Die Protokolle mit коммутативным vom Algorithmus der Chiffrierung [4]

 

Der Algorithmus der Chiffrierung heißt коммутативным, wenn das Ergebnis der konsequenten Chiffrierung der Mitteilung m auf den Schlüsseln К1 und К2 von der Ordnung der verwendeten Schlüssel nicht abhängt: К2 {К1 {M}} = =K1 {K2 {M}}, wo K {M} - das Ergebnis der Chiffrierung M auf dem Schlüssel K.Primeramis коммутативного des Algorithmus der Chiffrierung der Algorithmus DH, den Algorithmus RSA beim allgemeinen Modul, den Algorithmus гаммирования (die Addition nach dem Modul sind). Коммутативность des Algorithmus der Chiffrierung ist hier Untersuchung коммутативности der Operationen der modularen Multiplikation und der Addition.

Der kommutatiwnyj Algorithmus der Chiffrierung ist davon attraktiv, dass die Benutzer den allgemeinen Schlüssel der paarigen Verbindung nicht feststellen müssen, und es ist genügend, die persönlichen geheimen Schlüssel generieren. Die Idee der vertraulichen Verbindung ohne vorläufige Vereinbarung vom Schlüssel der Chiffrierung wird vom Beispiel Schamira (die Abb. 6) am hellsten demonstriert.

 

5.1. Das Dreischrittprotokoll der Chiffrierung Schamira [4]

 

 

Die Abb. 6

 

Die formale Aufzeichnung des Protokolles:

A: ДСЧ () х; m х In

IN: ДСЧ () y; (M) y A

A: (m х y) x = M y B

B: (M y) y = M

 

Der Angriff 1. Der Gegner Е fängt alle drei Mitteilungen im Kanal der Verbindung auf und legt sie nach mod2 zusammen. Daraufhin wird m in der offenen Art erhalten.

Der Angriff 2. Die Abwesenheit der Identifizierung der Korrespondenten Und und In benutzend, kann der Gegner Е die Rolle In spielen, die Vertraulichkeit m zerstörend, oder, die Rolle zu spielen Und, die falsche Mitteilung dem Benutzer В aufdrängend

 

5.2. Das Dreischrittprotokoll mit коммутативным von der Chiffrierung [6]

 

Für den allgemeinen Fall hat das Dreischrittprotokoll der Chiffrierung Schamira die nächste formale Aufzeichnung (die Abb. 7):

UND: Ka {M} B

B:

A:

B:

 

 

Die Abb. 7

 

Der Moderator Und des Protokolles verwendet zuerst die Operation der Chiffrierung auf dem Schlüssel Ka, dann die Operation расшифрования mit dem Schlüssel;

Getrieben B verwendet zuerst die Operation расшифрования mit dem Schlüssel Zu, dann die Operation der Chiffrierung mit dem Schlüssel Кb. Es wird angenommen, dass für jeden m und Zu vorhanden ist: К-1 {K {M}} =K {K-1 {M}}.

Der Angriff 1. Die Reflexion [6]

Der Gegner Еb, die die Rolle In spielen, gibt Und seine erste Mitteilung zurück. Laut des Protokolles geltend, Und verwendet zu ihm die Operation, und im Kanal zeigt sich die offene Mitteilung М

UND:

Der Angriff 2. (Das Parallele Protokoll) [6]

Der Gegner Еb gibt Und seine erste Mitteilung nicht als Antwort, und wie der Anfang des parallelen Protokolles mit führend Еb und getriebenem A.Predpolagajetsja, dass bei der Arbeit im Netz solches möglich (die Abb. 8 zurück).

 

 

Die Abb. 8

 

Das I. Protokoll (Und Еb)

Das II. Protokoll (Еb)

1. Und: Ка {M} Еb

 

 

1 ’. Еb: Ka {M} A

 

2 ’. A: {Ka {M}} =MЕb

2. Еb: A

 

3. A: {} Еb

 

 

3 ’. Еb: {} A

4. A: Ка {{}} =

 

 

4 ’. ___________________

 

Daraufhin bekommt der Gegner Е die Mitteilung m, die für In vorbestimmt ist, und der Benutzer Und bekommt die falsche Mitteilung, angeblich von В

Der Angriff der Reflexion und mit dem parallelen Protokoll sind starke Waffen des Gegners, gegen die es schwierig ist, den einfachen Schutz anzubieten. Es sind auch die Angriffe mit einigen parallelen Protokollen möglich, die der Gegner Е gleichzeitig etwas Rollen spielen kann: zum Beispiel, Ea, Eb und Es - die Rolle des Servers S.

 

6. Die Protokolle аутентифицированного die Verteilungen der Schlüssel

 

Die in dieser Abteilung betrachteten Protokolle haben drei Teilnehmer: die Benutzer Und, In und den Server S. Das Ziel der Protokolle - die Erzeugung und die sichere Sendung vom Server S des Schlüssels der paarigen Verbindung Kab den Benutzern Und und W.Besopasnosts nimmt die Eigenschaften der Vertraulichkeit, der Ganzheit, der Echtheit und "der Frische auf". Es bedeutet, dass sich infolge des Protokolles der echte Schlüssel Kab gerade bei Und und In, und nur bei ihnen erweisen soll. Die Eigenschaft "der Frische" bedeutet, dass die Teilnehmer des Protokolles die Möglichkeit haben, sich zu überzeugen, dass die übernommenen Mitteilungen im gegebenen Start des Protokolles gebildet sind, und sind aus dem parallelen oder früheren Protokoll nicht genommen. Zu diesem Ziel werden “нонсы” Na und Nb - die Zufallszahlen der einmaligen Nutzung verwendet.

Die Protokolle der gegebenen Abteilung unterscheiden sich von vorhergehend durch die ausführlichere Spezifikation: es wird die Struktur der Mitteilung, der Adresse und ihrer Prüfung angewiesen... Jedoch wie die Beispiele zeigen, und auf diesem höheren Niveau der Spezifikation in den Protokollen gibt es die ernsten Defekte.

 

6.1. Das Protokoll der Sendung des Schlüssels mit der Quittierung

 

Im gegebenen Protokoll wird криптосистема RSA (als RSA) für die Sendung nach dem Kanal der Schlüssel der paarigen Verbindung mit ЭЦП, der Chiffrierung und der Quittierung verwendet. Die Algorithmen der Chiffrierung / расшифрования der Benutzer Und, In, Mit werden durch (Jea, Da), (Eb bezeichnet, Db), (Ec, Dc), wobei alle Algorithmen der Chiffrierung geöffnet gelten, und ist jeder Algorithmus расшифрования ein Geheimnis des Benutzers. Das Unterschreiben verwirklicht sich von der Anwendung des Algorithmus D, und die Prüfung der Unterschrift - die Anwendung des Algorithmus Е. Der autorisierte Benutzer Mit spielt die Rolle des Gegners. Für die Vereinfachung der Bezeichnungen werden wir EDK anstelle E (D (K)) schreiben.

Die formale Aufzeichnung des Protokolles:

 

AДСЧ ()  Kab; EbDaKab=Х; [ABX] der Kanal [] B

B=B (?);  EaDb=КЗУ (); EaDb=Y; [B Y]

Þ Der Kanal [║║] A

A: =B (?); =A (?); EbDa =; = Kab (?); Kab КЗУ (A)

 

Die Zeichen “~” und “__” bedeuten die Möglichkeit der Modifikation der Mitteilungen von den Kanalfehlern oder dem Gegner in den Richtungen АВ und ВА. Wir werden vermuten, dass das Protokoll АВ in der Abwesenheit der Modifikationen so dass Y = EaDbKab geht, aber der Verletzer Mit fängt die Quittung Y auf und beginnt das Protokoll der Sowjetarmee.

MIT: AY] A

A: A = A (?); Ec Da Y = Ec Db KabºКЗУ (); Ec Da=Z;

ааааа [ACZ] C

C: Ea Dc Z=КЗУ (C); Eb Dc = EbDcEcDbKab=KabКЗУ (C)

Daraufhin erkennt Mit den Schlüssel Kab und bildet mit Und den Schlüssel mit der Abweichung vom Protokoll, was der Benutzer Und nicht bemerkt.

 

6.2. Das Protokoll der otwej-Reis [5,6].

 

Die Idee des Protokolles in den Wörtern wird auf folgende Weise (die Abb. 9) beschrieben :

- Der Benutzer Und, den Initiator des Protokolles, übergibt In chiffriert нонс Na für den Server S; der Benutzer In übersendet es S, chiffriert нонс Nb ergänzt.

- Cервер S generiert den Schlüssel Kab und übergibt es In auf dem Schlüssel Kbs für In und auf dem Schlüssel Kas für А

- Der Benutzer In entziffert Kab, prüft нонс Nb und übersendet Und seinen Teil der Mitteilung.

- Der Benutzer Und entziffert den Schlüssel Kab und prüft нонс Nа.

 

ааааааааааааа [AIIBIIKas {NaIIAIIB}] аааааааа [AIIBIIKas {NaIIAIIB} IIKbs {NbIIAIIB}]

 


ааааааааааааааааааааааааааа

ааааааа Kas {NaIIKab} аааааааааааааааааа Kbs {Kas {NaIIKab} IINbIIKab}

 

Die Abb. 9

 

Der Angriff. Es wird angenommen, dass die Modifikationen im Kanal fehlen, so dass man in der formalen Beschreibung die Zeichen ”~” und “__” senken kann. Der Gegner Eb mischt sich ins Protokoll nur in der letzten Etappe ein, wo anstelle Kas {Na÷çKab} Kas {Na÷çA÷çB}, gewählt der ersten Mitteilung ersetzt. Daraufhin identifiziert Und Eb wie In und übernimmt die Kombination [A÷çB] als Schlüssel Kab, da laut des Protokolles, zum Beispiel, der Vergleich разрядностей der Zahlen oder der Analyse des Schlüssels Kab auf die Zufälligkeit nicht vorgesehen wird.

 

6.3. Das Protokoll Nejman - Stablbajn [6]

 

Die verbale Beschreibung des Protokolles:

- Der Benutzer Und übergibt In нонс Na in der offenen Art.

- Der Benutzer In chiffriert auf dem Schlüssel Kbs нонс Na, die Notiz der Zeit Тb und schickt dem Server S zusammen mit нонсом Nb, der zu In von Und in der chiffrierten Art auf dem Schlüssel Kab zurückkehren wird und wird geprüft sein.

- Der Server S generiert den Schlüssel Kab, chiffriert es für Und und In, aber beider begeben sich chiffriert die Mitteilungen zu Und mit geöffnet нонсом Nb.

- Der Benutzer Und wählt den entsprechenden Teil für In und schickt In zusammen mit Kab {Nb}, für die Prüfung "der Frische" des bekommenen Schlüssels Kab (die Abb. 10).

 

 

Die Abb. 10

 

Der Angriff. Gegner Jea startet das Protokoll, die Zahl Na nach eigenem Ermessen gewählt, wählt aus der Mitteilung ВS Nb und Kbs {ANaТb}, ignoriert die Mitteilung SЕа, bildet und schickt In die letzte Mitteilung des Protokolles: [Kbs {ANaТb} Na {Nb}], wo der zweite Teil нонс Nb, chiffriert auf Na, wie auf dem Schlüssel ist. In dieser Mitteilung spielt die Rolle Kab Na. Das Protokoll sieht die Prüfungen der Merkmale des Schlüssels nicht vor, deshalb Na wird es ist In wie der Schlüssel der paarigen Verbindung Kab (aufgegeben von Gegner Jea) üblich.

Aus der Literatur sind auch andere ähnliche Protokolle аутентифицированного die Verteilungen der Schlüssel, jeden mit den Defekten bekannt. Diese Protokolle haben die Titel:

- Das Protokoll BANY (Barrow, Abadi, Nidchem, Jaglom) [7].

- Das Protokoll Nidchem - Schröder [6].

- Das Protokoll "Kerberos" ("der Zerberus") [5], usw.

 

7. Die Protokolle, die auf den Identitäten gegründet sind

 

Viele Protokolle der Identifizierung/autentifikazii und ЭЦП werden auf der Prüfung einiger Identität in modularer Arithmetik gegründet. Wenn die Identifizierungsdaten, die vom Benutzer nach dem Kanal der Verbindung vorgelegt werden, und die Daten, die mit dem Revidenten aus dem Nachschlagewerk gewählt werden, der Prüfgleichheit befriedigen, so wird gefolgert, dass der Benutzer der ist, für sich wen ausgibt. Jedoch hat die Prüfgleichheit viel mehr Lösungen gewöhnlich, als laut des Protokolles bekommen sein kann. Es lässt zu, die Zahlen, befriedigend der Prüfgleichheit auszuwählen, die geheimen Daten des Benutzers oder des Servers nicht wissend. Diese Zahlen als Identifizierungsdaten vorlegend, kann man in einer Reihe von den Fällen den Revidenten täuschen.

Als Beispiel betrachten wir zwei Modifikationen des Protokolles der einseitigen Identifizierung. Vorläufig wählt der Server S wie es sich gehört die Bedeutungen der Systemparameter (Р,), generiert von ДСЧ den geheimen Schlüssel х, rechnet den entsprechenden offenen Schlüssel aus und sendet allen Benutzern ständig (Р, y) nach dem glaubwürdigen Kanal aus. Weiter, für jeden Benutzer, zum Beispiel, für Und der Server von ДСЧ die zufällige geheime Zahl "Zu" generiert, rechnet den offenen Bezeichner r=ak aus (mod p), findet den geheimen Bezeichner S=K-1 (A+xr) mod (p-1) und nach dem sicheren Kanal übergibt Und seine Identifizierungsdaten (A, r, S), zum Beispiel, Und bekommt sie in ЦГРК bei der Registrierung zusammen mit den Systemkonstanten Р, y. Wir werden bemerken, dass der geheime Bezeichner S eine Funktion der unbekannten Zahl "Zu" ist, das, und des geheimen Schlüssels х des Servers S, sowie der Funktion der Adresse Und und des offenen Bezeichners “r” gewaschen wird.

 

7.1. Das Zweischrittprotokoll der einseitigen Identifizierung

 

In diesem Protokoll der Benutzer In, wünschend, zu identifizieren Und, schickt "die Frage" (die Zufallszahl Z) und prüft die Richtigkeit "der Antwort" Und (die Abb. 11).

Die formale Aufzeichnung des Protokolles:

 

IN: ДСЧ () Z UND

UND: ДСЧ () t; rt (modp) =u; (S+tz) mod (p-1) =V; [AIIrIIuIIv] B

B: ; A - аутентифицирован.

 

 

Die Abb. 11

 

Wir werden bemerken, dass wenn irgendwelche Zahlen Und, r, u, v bei aufgegeben, y, z der Angleichung (*) in gewöhnlicher Arithmetik (ohne mod p befriedigen), so befriedigen sie solcher Angleichung nach einem beliebigen Modul.

Wir werden rij =, wo i, j, l, m - ganz legen. Dann wird die Angleichung (*) befriedigt, wenn iv = A+lz; jv = rij + mz. Beide Angleichungen für jeden z geben die identischen Bedeutungen v, wenn ihre Koeffizienten proportional sind 

Von hier aus ist nötig es, dass Und sich gleichstellen soll; (die Zahl i, j war es ganz) bequem, so, dass v zu wählen. Wir werden bemerken, dass da die Gleichheit (*) nach mod p geprüft werden wird, so kann man das System der Angleichungen bezüglich der Kennziffern (v, z) nach mod (p-1), laut dem Theorem Ejlera entscheiden. Die Zahlen Aij, rij, ulm, für den allgemeinen Fall, haben die Wortlänge wesentlich grösser, als die Wortlänge des Moduls p. Da die Zahl Aij an der Angleichung (*) nur in der Kennziffer teilnimmt, so kann man anstelle seiner (die Zahl v verwenden, haben z schon die Wortlänge). Die Zahl ulm nimmt an der Angleichung (*) nur in der Gründung der Stufe teil, deshalb es kann man auf ersetzen. Endlich, die Zahl rij nimmt an der Angleichung (*) wie in der Kennziffer teil, als auch in der Gründung der Stufe, deshalb es kann man nur auf d.h. die Zahl der Wortlänge 2 ersetzen.

Der Angriff. Der Gegner Е, die die Rolle spielen, fängt im Kanal der Verbindung "die Frage" Z auf und gibt "die Antwort": B, wo die Zahl v aus dem System der Angleichungen nach mod (p-1) findet. Wenn In die Wortlänge der Zahlen in "der Antwort" nicht prüft, so wird bei ihm die Angleichung (*) befriedigt. Wenn In das Vorhandensein der Bedeutung rij im Nachschlagewerk der offenen Bezeichner prüft, so kann der Gegner ganz i im Voraus auswählen, war j so, dass die Bedeutung rij im Nachschlagewerk.

 

7.2. Das Dreischrittprotokoll der einseitigen Identifizierung

 

Im gegebenen Protokoll der Benutzer Und, wünschend, sich In zu identifizieren, schickt ihm die Identifizierungsdaten Und, r und синхроданные der Sitzung der Verbindung “u”. Auf "die Frage" Z von In er soll die richtige "Antwort" v solchen geben, damit die Prüfgleichheit (*) (die Abb. 12) befriedigt wurde.

 

 

Die Abb. 12

 

Für den autorisierten Benutzer generiert es, leicht, da er den geheimen Bezeichner (S) weiß und selbst zu machen синхроданные (u) auf spezifische Weise. Für den Gegner Е, die nicht keinen geheimen Bezeichner wissen, es gelang auch, im Protokoll 7.1 zu machen., aber dort war "die Frage" Z im Voraus bekannt. Im Protokoll 7.2. Der Gegner soll irgendwelche Identifizierungsdaten und nur zuerst vorlegen dann bekommt "die Frage" Z von In, auf den er "die richtige Antwort" geben soll. Die formale Aufzeichnung des Protokolles zwischen Und und In:

 

UND: ДСЧ () t; rt (mod p) = u; [A r u] B

B: ДСЧ () Z; [BZ] A;

A:; v = (S+tz) mod (p-1); [A v] B

B:; A wurde bei В identifiziert

 

Der Angriff. Der Gegner Е, die die Rolle spielen, schickt In die Mitteilung ], wo die Identifizierungsdaten, wie im Angriff des Punktes 7.1 auswählt. Als Antwort auf eine beliebige "Frage" Z von In, entscheidet der Gegner das System der Angleichungen verhältnismäßig v nach mod (p-1) und schickt v]. Wenn In die Wortlänge der Zahlen in "der Antwort" nicht prüft, so wird der Gegner In unter dem Namen identifiziert, den geheime Bezeichner dieses Benutzers nicht wissend.

 

Der Schluss

 

Das Wissen der negativen Präzedenzfälle kann den Herstellern криптографических (nicht nur криптографических) der Protokolle helfen, die typischen Fehler wie bei der Analyse, als auch bei der Konstruktion der Protokolle zu vermeiden.

 

Die Literatur

 

1. “Security in the Open Blueprint”. Open Blueprint Technical Reference Library, SBOF-8702 (hard copy), SK2T-2478-00 (CD ROM), 1995

2. Диффи, Chellman. ”Die neuen Richtungen in der Kryptographie”. ТИИЭР, т.67, №3, 1979

3. Domingo, Hugnet. “Full secure exchange and authentication with no previously shared secrets”. Eurocrypt-89.

4. Мэсси. “Die Einleitung in die moderne Kryptographie”. ТИИЭР, т.76, №5, 1988

5. Mao, Boyd. “Development of authentication protocols: some misconceptions and a new approach”. Comp. Sec. Found. Workshop VII, 1994

6. Carlsen. “Cryptographic protocol flaws”. Comp. Sec. Found. Workshop VII, 1994

7. Syverson. “A taxonomy of replay attacks”. Comp. Sec. Found. Workshop VII, 1994

 

Der Artikel hat in Januar 1996 gehandelt



Яндекс цитирования

Subscribe Subscribe.Ru
The Family Tree of Family