Die Einleitung

Während vieler Jahrhunderte verwendete die Menschheit криптографические die Methoden für den Schutz der Informationen bei ihrer Sendung und der Aufbewahrung. Ungefähr wurden zu Ende des XIX. Jh. diese Methoden ein Objekt des mathematischen Studiums. Der Zweig der Mathematik, der den Schutz der Informationen studiert, heißt von der Kryptologie [cryptology] traditionell und wird auf die Kryptographie [cryptography], sich beschäftigend mit der Entwicklung der neuen Methoden und der Begründung ihrer Korrektheit, und криптоанализ [cryptanalysis] unterteilt, dessen Aufgabe - das intensive Studium der existierenden Methoden, zwecks des realen Öffnens der Geheimnisse anderer Seite häufig ist. Die Kryptographie und криптоанализ befinden sich in der engen Wechselwirkung miteinander und mit den praktischen Bedürfnissen und entwickeln sich von den parallel geschlossenen Regierungsorganisationen vieler Staaten und der internationalen wissenschaftlichen Gesellschaft.

Zur Zeit existieren Tausende криптографических der Systeme, die wie программно realisiert sind, als auch аппаратно. Unter ihnen kann man die Systeme wählen, selbst криптографический deren Prinzip der Arbeit, wie, zum Beispiel, der integrierte Schaltkreis Clipper, die von der Regierung der USA in der Qualität криптографического den Standard für die Telekommunikation angeboten werden geheimgehalten wird, und die Systeme, deren Algorithmus geöffnet ist, und geheim ist nur bestimmt, in der Regel klein, die Portion der Informationen, die genannt wird (geheim) dem Schlüssel [(secret) key] - zu ihm verhält sich die Mehrheit der Systeme, реализуемых программно und vorbestimmt für die breite Nutzung. Im Folgenden werden wir nur die Systeme des zweiten Typs betrachten.

Im System des betrachteten Typs die Aufgabe des Öffnens des Systems, das heißt die Verstöße des Schutzes der Informationen ohne vorläufiges Wissen des Schlüssels ist beim Vorhandensein bei der öffnenden Seite der unbeschränkten Rechenressourcen in der Regel theoretisch lösbar. Vom mathematischen Standpunkt klärt sich die Zuverlässigkeit криптографической die Systeme von der Komplexität der Lösung dieser Aufgabe unter Berücksichtigung der realen Rechenressourcen der potentiellen öffnenden Seite. Vom planmäßigen Standpunkt bedeutet das Verhältnis des Wertes des potentiellen Öffnens und des Wertes der geschützten Informationen.

Die mathematische Forschung der Zuverlässigkeit криптографических der Systeme ist von der Abwesenheit des universellen mathematischen Begriffes der Komplexität erschwert. Aus diesem Grund ist es die Zuverlässigkeit der Mehrheit криптографических der Systeme zur Zeit unmöglich nicht nur, aber sogar adäquat zu beweisen, abzufassen. In der Regel, die Anwendung diese oder jenes криптографической die Systeme ist auf den Ergebnissen vieljährig praktisch криптоанализа der Systeme des gegebenen Typs, in dieser oder jener Stufe verstärkt von der mathematischen Begründung gegründet. Diese Begründung kann die Aufgabe des Öffnens gegeben криптосистемы auf irgendwelche Aufgabe der Theorie der Zahlen oder der Kombinatorik zurückführen, deren Lösung tatsächlich nicht ausführbar angenommen wird, oder, was bevorzugter, zur Klasse der NP-vollen Aufgaben, сводимость zu dem ein "Etalon" der praktischen Unlösbarkeit ist. Gleichzeitig, der Begriff der praktischen Unlösbarkeit für die konkreten praktischen Aufgaben ist deutlich bestimmt oder stabil, dank der Entwicklung der Rechentechnik und der Methoden криптоанализа nicht.
 

Die Kryptographie mit dem symmetrischen Schlüssel

Lange Zeit traditionell криптографической Schema war das Schema mit dem symmetrischen Schlüssel [symmetric key, dual key]. In diesem Schema gibt es einen Schlüssel, der an der Chiffrierung und der Entzifferung der Informationen teilnimmt. Die chiffrierende Prozedur erzeugt mit Hilfe des Schlüssels die Reihe der Handlungen über den Ausgangsdaten, дешифрующая erzeugt die Prozedur mit Hilfe des selben Schlüssels die Rückhandlungen über dem Kode. Die Entzifferung des Kodes ohne Schlüssel wird tatsächlich unerfüllbar angenommen. Wenn die chiffrierten so Informationen nach gewöhnlich übergeben werden, d.h. soll es schutzlosem, dem Kanal der Verbindung, einen und derselbe Schlüssel beim Absender und dem Empfänger gibt, infolge wessen die Notwendigkeit im zusätzlichen geschützten Kanal für die Sendung des Schlüssels entsteht, wird die Verwundbarkeit des Systems erhöht und es nehmen die planmäßigen Schwierigkeiten zu.

Zur Klasse der Algorithmen mit dem symmetrischen Schlüssel verhält sich die Methode “des einmaligen Notizblocks” [one-time pad], bestehend in der bitweisen Addition (“гаммировании”) des chiffrierten Textes mit der zufälligen Reihenfolge der Bits - den Schlüssel (siehe [S94]). Die Länge des Schlüssels soll mit der Länge des chiffrierten Textes übereinstimmen und jeder Abschnitt des Schlüssels soll einmalig verwendet werden; andernfalls gibt der Text dem unbefugten Entziffern leicht nach. Bei der Ausführung dieser Bedingungen ist die vorliegende Methode eine einzige Methode, theoretisch standfest gegen криптоанализа des Gegners mit den unbeschränkten Rechenressourcen. Ungeachtet seiner, zur Zeit wird die Methode “des einmaligen Notizblocks” wegen der planmäßigen Schwierigkeiten, die mit den Erzeugungen verbunden sind, der Sendung und der Aufbewahrung der superlangen darin verwendeten Schlüssel tatsächlich nicht verwendet.

Zu anderem Beispiel des Schemas mit dem symmetrischen Schlüssel kann der Algorithmus DES (Data Encryption Standard), übernommen am 23. November 1976 als offiziell криптографического des Standards der USA für den Schutz nicht kritisch [unclassified] den Informationen (siehe [S94], s.219-243) dienen. In den Standard war die Lage über obligatorisch ресертификации (die Revision) des Algorithmus jeder fünf Jahre aufgenommen; letzter solche ресертификация hat in 1992 Nach Meinung der Experten, in Zusammenhang mit bestimmten Erfolgen in криптоанализе DES und dem Erscheinen der neuen Methoden der Chiffrierung mit dem symmetrischen Schlüssel stattgefunden, der Algorithmus kann ресертифицирован auf die folgende fünfjährige Frist nicht sein. Nichtsdestoweniger, DES wird es криптографически den standhaften Algorithmus nach wie vor angenommen und es bleibt das am meisten verbreitete Schema der Chiffrierung mit dem symmetrischen Schlüssel übrig.

Der russische Standard auf die Kryptographie mit dem symmetrischen Schlüssel ist ГОСТ 28147-89 “die Systeme der Bearbeitung der Informationen bestimmt. Der Schutz криптографическая. Der Algorithmus криптографического die Umgestaltungen”, der am 1. Juli 1990 Im Unterschied zu DES eingesetzt war, den Standard enthält den Hinweis darauf, dass er "nach den Möglichkeiten die Beschränkungen auf die Stufe der Geheimhaltung der geschützten Informationen nicht auflegt”. Im Allgemeinen ist der Algorithmus ГОСТ 28147 DES ähnlich, aber es gibt die Reihe der wesentlichen Unterschiede, wie, zum Beispiel, die Länge des Schlüssels und die Deutung des Inhalts der Knoten des Ersatzes [im Schema DES genannt “S-boxes”]. Während die Auffüllung der Knoten des Ersatzes DES vom Standpunkt криптографической der Standhaftigkeit optimisiert ist und wird es offenbar im Standard angewiesen, ist die Auffüllung der Knoten des Ersatzes ГОСТ 28147 “ein geheimes Element und wird ordnungsgemäß” geliefert. Berücksichtigend, dass es ein langfristiges Schlüsselelement, allgemein für das Netz des Computers ”gleichzeitig" ist, und dass “die bestimmte Ordnung” der Lieferung криптографическую die Optimierung nicht vorsehen kann, dieser Punkt des Standards wird einer seiner schwachen Stellen, erschwerend die Realisierung nicht beitragend криптографической der Standhaftigkeit vorgestellt. Jedoch ist bei der Aufgabe der optimisierten Bedeutungen für die Knoten des Ersatzes криптографическая die Standhaftigkeit des Algorithmus mit der Standhaftigkeit DES vergleichbar.
 

Die Kryptographie mit dem offenen Schlüssel

In 1976 war U.Diffi und M.Chellmanom [DH76] der neue Typ криптографической die Systeme - das System mit dem offenen Schlüssel [public key cryptosystem] angeboten. Im Schema mit dem offenen Schlüssel existiert zwei Schlüssel, geöffnet [public] und geheim [private, secret], gewählt so dass gibt ihre konsequente Anwendung zum Datenfeld dieses Massiv ohne Veränderungen ab. Die chiffrierende Prozedur verwendet den offenen Schlüssel, дешифрующая - geheim. Die Entzifferung des Kodes ohne Wissen des geheimen Schlüssels ist tatsächlich unerfüllbar; es ist die Aufgabe der Berechnung des geheimen Schlüssels nach dem bekannten offenen Schlüssel insbesondere unlösbar. Der Hauptvorteil der Kryptographie mit dem offenen Schlüssel - der vereinfachte Mechanismus des Austausches von den Schlüsseln. Bei der Verwirklichung der Kommunikation nach dem Kanal der Verbindung wird nur der offene Schlüssel übergeben, was die Nutzung für dieses Ziel des gewöhnlichen Kanals ermöglicht und entfernt das Bedürfnis nach dem speziellen geschützten Kanal für die Sendung des Schlüssels.

Mit dem Erscheinen der Systeme mit dem offenen Schlüssel der Begriff vom Schutz der Informationen, und zusammen mit ihm wurden die Funktionen der Kryptographie wesentlich ausgedehnt. Wenn früher als die Haupt- Aufgabe криптографических der Systeme die sichere Chiffrierung der Informationen angenommen wurde, nimmt zur Zeit das Gebiet der Anwendung der Kryptographie auch die digitale Unterschrift (аутентификацию), die Lizenzierung, нотаризацию (свидетельствование), die verteilte Verwaltung, den Schema der Abstimmung, das elektronische Geld und anderes (siehe [BFS91], die Uhr 7, [S94], die Uhr 1) auf. Die am meisten verbreiteten Funktionen криптографических der Systeme mit dem offenen Schlüssel - die Chiffrierung und die digitale Unterschrift, wobei die Rolle der digitalen Unterschrift im Vergleich zur traditionellen Chiffrierung in letzter Zeit gewachsen ist: einige den Systemen mit dem offenen Schlüssel unterstützen die digitale Unterschrift, aber unterstützen die Chiffrierung nicht.

Die digitale Unterschrift wird für аутентификации der Texte verwendet, die nach den Telekommunikationskanälen übergeben werden. Sie ist der gewöhnlichen handschriftlichen Unterschrift ähnlich und verfügt über ihre Haupteigenschaften: beglaubt, dass der unterschriebene Text gerade von der Person stammt, die die Unterschrift stellte, ermöglicht der Person nicht, auf die Verpflichtungen zu verzichten, die mit dem unterschriebenen Text verbunden sind. Die digitale Unterschrift stellt die kleine Zahl der zusätzlichen Informationen, die zusammen mit dem unterschriebenen Text übergeben werden dar. Im Unterschied zur Chiffrierung, bei der Bildung der Unterschrift wird der geheime Schlüssel, und bei der Prüfung - geöffnet verwendet.

Wegen der Besonderheiten der Algorithmen, die der Systeme mit dem offenen Schlüssel bilden, ihre Schnelligkeit ist bei der Bearbeitung des einzelnen Blocks der Informationen gewöhnlich in die Dutzende Male weniger, als die Schnelligkeit der Systeme mit dem symmetrischen Schlüssel auf dem Block der selben Länge. Für die Erhöhung der Effektivität der Systeme mit dem offenen Schlüssel werden die gemischten Methoden häufig verwendet, die криптографические die Algorithmen beider Typen realisieren. Bei der Chiffrierung der Informationen kommt der zufällige symmetrische Schlüssel heraus, es meldet sich der Algorithmus mit dem symmetrischen Schlüssel für die Chiffrierung des Ausgangstextes. Und dann den Algorithmus mit dem offenen Schlüssel für die Chiffrierung des symmetrischen Schlüssels. Nach dem Kommunikationskanal wird der Text, der vom symmetrischen Schlüssel chiffriert ist, und den symmetrischen Schlüssel übergeben, der vom offenen Schlüssel chiffriert ist. Für das Entziffern der Handlung werden in der Rückordnung erzeugt: erstens wird mit Hilfe des geheimen Schlüssels des Empfängers der symmetrische Schlüssel, und dann mit Hilfe des symmetrischen Schlüssels - der chiffrierte nach dem Kanal bekommene Text entziffert. Für die Bildung der elektronischen Unterschrift nach dem unterschriebenen Text wird seine einseitige chesch-Funktion (der Digest) [one-way hash function, digest], darstellend einen kurzen Block der Informationen, der den ganzen Text insgesamt charakterisiert ausgerechnet; die Aufgabe der Wiederherstellung des Textes nach seiner chesch-Funktion oder der Auslese anderen Textes, der die selbe chesch-Funktion hat, ist tatsächlich unlösbar. Bei der unmittelbaren Bildung der Unterschrift, anstelle der Chiffrierung vom geheimen Schlüssel jedes Blocks des Textes wird der geheime Schlüssel nur zur chesch-Funktion verwendet; nach dem Kanal wird der Text und die gebildete Unterschrift der chesch-Funktion übergeben. Für die Prüfung der Unterschrift wird die chesch-Funktion vom nach dem Kanal bekommenen Text wieder ausgerechnet, wonach mit Hilfe des offenen Schlüssels geprüft wird, dass die Unterschrift gerade der gegebenen Bedeutung der chesch-Funktion entspricht. Die Algorithmen der Berechnung der einseitigen chesch-Funktionen sind mit den Algorithmen der Chiffrierung mit dem symmetrischen Schlüssel in der Regel logisch eng verbunden.

Die beschriebenen Hybridmethoden der Chiffrierung und die digitale Unterschrift kombinieren in sich die Effektivität der Algorithmen mit dem symmetrischen Schlüssel und die Eigenschaft der Unabhängigkeit von den zusätzlichen geheimen Kanälen für die Sendung der Schlüssel, eigen den Algorithmen mit dem offenen Schlüssel. Die Kriptografitscheski Standhaftigkeit der konkreten Hybridmethode klärt sich von der Standhaftigkeit des schwächsten Gliedes bei der Kette, die aus den Algorithmen mit symmetrischen und mit dem offenen Schlüssel besteht, gewählt für seine Realisierung.
 

Das System RSA

In 1978 haben R.Riwest, A.Schamir und L.Adleman [RSA78] erste криптосистему mit dem offenen Schlüssel für die Chiffrierung und die digitale Unterschrift, bekommend den Titel RSA (nach den ersten Buchstaben der Familiennamen der Autoren) geschaffen. Das System wird in den Termini der elementaren Theorie der Zahlen beschrieben. Ihre Zuverlässigkeit wird durch die praktische Unlösbarkeit der Aufgabe der Zerlegung der großen natürlichen Zahl auf die einfachen Faktoren bedingt. Der moderne Zustand der Algorithmen der Faktorisierung zu (lässt die Zerlegungen auf dem Faktor) diese Aufgabe für die Zahlen von der Länge bis zu 430 Bit zu lösen; ausgehend davon, der Schlüssel die Länge in 512 Bit wird sicher für den Datenschutz befristet bis zu 10 Jahren angenommen, und in 1024 Bits - ist vom Sicheren unbedingt. Die Länge der Unterschrift im System RSA stimmt mit der Länge des Schlüssels überein.

Obwohl математически die bewiesene Nachricht der Aufgabe des Öffnens RSA zur Aufgabe der Zerlegung auf dem Faktor, sowie der Aufgabe der Zerlegung auf dem Faktor zur Klasse der NP-vollen Aufgaben fehlt, ist das System von der Praxis!geprüft geworden und ist ein anerkannter Standard de-facto in der industriellen Kryptographie, sowie dem offiziellen Standard der Reihe der internationalen Organisationen. Andererseits, der freie Vertrieb der Software, die auf RSA gegründet ist, ist davon beschränkt, dass der Algorithmus RSA in den USA mit der Reihe der Patente geschützt ist.
 

Das Projekt DSS

In 1991 war in den USA das Projekt des föderalen Standards der digitalen Unterschrift - DSS (Digital Signature Standard, [DSS91], siehe auch [S94], s.304-314), der digitalen Unterschrift das System beschreibenden DSA (Digital Signature Algorithm) veröffentlicht. Eines der Hauptkriterien bei der Bildung des Projektes war seine Patentsauberkeit.

Der angebotene Algorithmus DSA, hat, wie auch RSA, der teoretiko-Zahlencharakter, und ist auf криптографической dem System das Ale-gamalja [E85] in der Variante Schnorra [S89] gegründet. Seine Zuverlässigkeit ist auf der praktischen Unlösbarkeit eines bestimmten Sonderfalles der Aufgabe der Berechnung des diskreten Logarithmus gegründet. Die modernen Methoden der Lösung dieser Aufgabe haben ungefähr die selbe Effektivität, dass auch die Methoden der Lösung der Aufgabe der Faktorisierung; in diesem Zusammenhang wird es vorgeschlagen, die Schlüssel von der Länge von 512 bis zu 1024 Bit mit den selben Charakteristiken der Zuverlässigkeit, dass auch im System RSA zu verwenden. Die Länge der Unterschrift im System DSA ist es, als in RSA weniger, eben bildet 320 Bit.

Ab Datum der Veröffentlichung hat das Projekt viel kritischer Rezensionen (bekommen siehe z.B. [R92]), viele aus denen bei seiner Nacharbeit berücksichtigt waren. Eines der Hauptargumente gegen DSA ist, dass, im Unterschied zur allgemeinen Aufgabe der Berechnung des diskreten Logarithmus, ihr Sonderfall, der im vorliegenden Schema verwendet ist, und, möglich wenig studiert ist, hat wesentlich die kleinere Komplexität des Öffnens. Außerdem spezifiziert der Standard die Weise des Erhaltens der Pseudozufallszahlen, die bei der Bildung der digitalen Unterschrift verwendet werden nicht, bezeichnet darauf nicht, dass dieses Element des Algorithmus einer kritischest nach криптографической der Standhaftigkeit ist.

Die Funktionen DSA sind nur von der digitalen Unterschrift beschränkt, das System grundsätzlich ist für die Chiffrierung der Daten nicht vorbestimmt. Nach der Schnelligkeit ist das System DSA mit RSA bei der Bildung der Unterschrift vergleichbar, aber ist wesentlich (in 10-40 überlässt Mal) ihr bei der Prüfung der Unterschrift.

Zusammen mit dem Projekt DSS ist das Projekt des Standards SHS (Secure Hash Standard), beschreibend die einseitige chesch-Funktion SHA (Secure Hash Algorithm), empfohlen für die Nutzung zusammen mit DSA (siehe [S94], s.333-336) veröffentlicht. Die chesch-Funktion SHA ist eine Modifikation des Algorithmus MD4, wohlbekannt in криптографической der Literatur.
 

Der russische Standard der digitalen Unterschrift

In 1993 waren in Russland zwei staatliche Standards "die Prozeduren der Leistung und der Prüfung der elektronischen digitalen Unterschrift auf Grund von asymmetrisch криптографического des Algorithmus" und "die Funktion хэширования”, unter dem allgemeinen Titel "die Informative Technologie herausgegeben. Der Kriptografitscheski Schutz der Informationen”.

Der Standard “die Prozeduren der Leistung und der Prüfung der elektronischen digitalen Unterschrift...” Ist dem amerikanischen Analogon DSS in vieler Hinsicht ähnlich. Für die Bildung und die Prüfung der digitalen Unterschrift darin wird der selbe Algorithmus das Ale-gamalja und Schnorra, dass auch in DSS, mit den unbedeutenden Modifikationen verwendet. Es gibt zwei alternative Längen des Schlüssels, 512 und 1024 Bit; die Länge der Unterschrift bildet 512 Bit.

Für die Erzeugung der Schlüssel ist die Reihe der neuen Algorithmen angeboten. Die Schlüssel, die mit Hilfe dieser Algorithmen bekommen werden, haben die spezielle Art, was die Aufgabe des Öffnens des Systems im Vergleich zu DSS potentiell vereinfachen kann. Die Kritik DSS, die mit der ungenügend entwickelten theoretischen Begründung des Algorithmus verbunden sind, für den Fall росийского des Standards mildert sich davon etwas, dass das Element des Schlüssels q länger, als in DSA herauskommt. Die Kritik. Verbunden mit der Abwesenheit der Spezifikation für die Weise des Erhaltens der Pseudozufallszahlen, bleibt es in der Kraft übrig.

Wie auch DSS, der russische Standard bestimmt nur den Algorithmus der digitalen Unterschrift, aber nicht der Chiffrierung. Die Schnelligkeit beider Algorithmen stimmt ungefähr überein.

Der Standard "die Funktion хэширования” ist für die Nutzung zusammen mit dem Standard "die Prozeduren der Leistung und der Prüfung der digitalen Unterschrift” vorbestimmt und stellt den originellen Algorithmus dar, der auf der Methode der Chiffrierung mit dem symmetrischen Schlüssel ГОСТ 28147 gegründet ist. Der Standard enthält криптографического die Begründung des gewählten Algorithmus nicht korrigiert ГОСТ 28147 im Teil der Auffüllung der Knoten des Ersatzes nicht.

Ungeachtet der angegebenen Mängel, das System, das im russischen Standard beschrieben ist, ist auf vielen Gebieten, besonders für die kommerziellen Anlagen anwendbar.
 

Programm- криптографическая das System TerKript

St.-Petersburger МГП “ТЕРКОМ” криптографическая ist das System TerKript, das den Komplex der Programme auf der Sprache C des Standards ANSI darstellt entwickelt. Das System realisiert in vollem Umfang die Algorithmen DES, ГОСТ 28147, RSA, DSS/SHS und russisch криптографических der Standards. Die Algorithmen sind aufgrund der allgemeinen Prozeduren der Theorie der Zahlen, die die modernen teoretiko-Zahlenmethoden für die Errungenschaft der maximalen Effektivität verwenden realisiert. Es gibt die spezielle Version des Systems, optimisiert für die Arbeit auf den Personalcomputern IBM AT 286, 386, 486.
 

Die Literatur