Weil klassischer Schlüsselsystemgebrauch Schlüssel teilte, ist es nicht möglich, eine Identität an einen Schlüssel zu binden.
Allgemeine Schlüsselschlüsselsysteme verwenden zwei Schlüssel, von denen einer für alle vorhanden sein soll. Die Verbindung zwischen dem Verschlüsselungsschlüssel und der Direktion ist kritisch, weil sie den allgemeinen Schlüssel feststellt, der verwendet wird, um Anzeigen für Geheimhaltung zu chiffrieren. Wenn die Schwergängigkeit fehlerhaft ist, könnte jemand anders als die beabsichtigte Empfänger die Anzeige lesen.
Zwecks dieser Diskussion nehmen wir an, daß die Direktion durch einen Namen irgendeiner annehmbarer Art gekennzeichnet wird und zum Wesen beglaubigt worden ist, das die Verschlüsselungsschlüssel erzeugt. Die Frage ist, wie irgendeine (vielleicht unterschiedliche) Direktion den allgemeinen Schlüssel an die Darstellung der Identität binden kann.
Eine offensichtliche Idee ist, damit der Begründer den allgemeinen Schlüssel mit ihrem privaten Schlüssel unterzeichnet, aber diese drückt bloß das Problem zu einem anderen Niveau, weil die Empfänger nur wissen würde, daß whoever den allgemeinen Schlüssel unterzeichnete ihn auch erzeugte. Keine Identität ist anwesend.
|
|
Eine Anzeige verursachen, die eine Darstellung der Identität, des entsprechenden allgemeinen Schlüssels und des Zeitstempels enthält und ein verläßliches Berechtigung Zeichen es hat.
CAlice = {eAlice || Alice || T} dCathy
Diese Art der Struktur wird eine Bescheinigung genannt.
Eine Bescheinigung ist ein Zeichen, das eine Identität an einen Verschlüsselungsschlüssel bindet.
Wenn Bob mit Alice verständigen möchte, erreichte er Bescheinigung CAlice Alices. Annehmend, daß er Cathys allgemeinen Schlüssel kennt, kann er die Bescheinigung dechiffrieren. Er zuerst Überprüfungen der Zeitstempel T, zum zu sehen, als die Bescheinigung ausgestellt wurde. (von diesem, kann er feststellen, wenn die Bescheinigung zu alt ist vertraut zu werden; sehen Sie unten.) Er betrachtet das vorbehaltliche Wesen (Alice, zu der die Bescheinigung ausgestellt wurde). Der allgemeine Schlüssel in der Bescheinigung gehört diesem Thema, also hat Bob jetzt Alices allgemeinen Schlüssel. Er weiß, daß Cathy die Bescheinigung unterzeichnete und folglich dieses Cathy zu irgendeinem Grad vouching, daß der allgemeine Schlüssel Alice gehört. Wenn er Cathy vertraut, um solch eine Ermittlung zu bilden, nimmt er den allgemeinen Schlüssel an, wie gültig und Alice gehörend.
Ein sofortiges Problem ist, daß Bob Cathys allgemeinen Schlüssel kennen muß, um die Bescheinigung zu validieren. Zwei Annäherungen beschäftigen dieses Problem. Das erste, durch Merkle, beseitigt Unterzeichnung Cathys; das zweite strukturiert Bescheinigungen in Unterzeichnungketten.
Die übliche Form der Bescheinigung ist, damit der Aussteller ein Durcheinander der Identität des Themas (zu, wem wird die Bescheinigung herausgegeben), des allgemeinen Schlüssels und der Informationen wie Zeit der Ausgabe oder des Verfalls mit dem privaten Schlüssel des Ausstellers chiffriert. Um die Bescheinigung zu validieren, verwendet ein Benutzer den allgemeinen Schlüssel des Ausstellers um das Durcheinander zu dechiffrieren und die Daten in der Bescheinigung zu überprüfen. Der Benutzer, der versucht, die Bescheinigung zu validieren, muß den allgemeinen Schlüssel des Ausstellers erhalten. Wenn der Aussteller eine Bescheinigung hat, kann der Benutzer diesen Schlüssel von der Bescheinigung des Ausstellers erhalten. Dieses drückt das Problem zu einem anderen Niveau: wie kann die Bescheinigung des Ausstellers validiert werden?
Zwei Annäherungen an dieses Problem sollen a Baum-wie Hierarchie, mit dem allgemeinen Schlüssel der Wurzel konstruieren, die aus Band heraus, oder eine willkürliche Anordnung für certifiers erlauben und auf Wissen jeder Einzelperson der certifiers bauen bekannt ist. Zuerst überprüfen wir X.509, das Bescheinigungen und Bescheinigung im allgemeinen beschreibt. Wir betrachten dann die PGP Bescheinigungstruktur.
X.509the Verzeichnis-Authentisierung Rahmen ist die Grundlage für viele andere Protokolle. Er definiert Bescheinigung Formate und Bescheinigunggültigkeitserklärung in einem generischen Kontext. Bald nach seiner ursprünglichen Ausgabe 1988, I'Anson und Mitchell gefundenen Problemen mit den Protokollen und der Bescheinigung Struktur. Diese Probleme wurden in der Version 1993 behoben, gekennzeichnet als X.509v3.
Die Bescheinigung X.509v3 hat die folgenden Bestandteile.
Version. Jede aufeinanderfolgende Version der Bescheinigung X.509 hat neues auffängt hinzugefügt. Wenn auffängt, fangen 8, 9, und 10 (sehen Sie unten), sind Geschenk, dieses müssen 3 sein auf; wenn 8 auffängt und 9 anwesend sind, fangen dieses ist entweder 2 oder 3 auf; und wenn keines von auffängt, 8, 9, und 10 sind Geschenk, die Versionsnummer können 1, 2 oder 3 sein.
Seriennummer. Dieses muß unter den Bescheinigungen einzigartig sein, die durch diesen Aussteller ausgestellt werden. Das heißt, muß das Paar (unterschiedener Name, Seriennummer des Ausstellers) einzigartig sein.
Unterschrift Algorithmusbezeichner. Dieses kennzeichnet den Algorithmus und alle mögliche Parameter, verwendet, um die Bescheinigung zu unterzeichnen.
Unterschiedener Name Des Ausstellers. Dieses ist ein Name, der einzigartig den Aussteller kennzeichnet.
Gültigkeit Abstand. Dieses gibt die Zeiten, zu denen die Bescheinigung gültig wird und abläuft.
Vorbehaltlicher Bemerkenswerter Name. Dieses ist ein Name, dem einzigartig kennzeichnet abhängig von, wem wird die Bescheinigung herausgegeben.
Vorbehaltliche allgemeine Schlüsselinformationen. Dieses kennzeichnet den Algorithmus, seine Parameter und den allgemeinen Schlüssel des Themas.
Einzigartiger Bezeichner des Ausstellers (Version 2 und 3 nur Bescheinigungen). Unter einigen Umständen kann Aussteller unterschiedene Namen aufbereitet werden (zum Beispiel, wenn der bemerkenswerte Name auf eine Rolle sich bezieht oder wenn eine Firma und eine zweite Firma mit schließt, öffnet sich der gleiche bemerkenswerte Name). Dieses fangen läßt den Aussteller unter Wesen mit dem gleichen Ausstellernamen disambiguieren auf.
Vorbehaltlicher einzigartiger Bezeichner (Version 2 und 3 nur Bescheinigungen). Dieses fangen ist wie auffangen 8, aber für das Thema auf.
Verlängerungen (Version 3 nur Bescheinigungen). X.509v3 definiert bestimmte Verlängerungen in den Bereichen der Schlüssel- und Politikinformationen, in den Bescheinigungwegbegrenzungen und in den Aussteller- und vorbehaltlicheninformationen. Z.B. wenn ein Aussteller mehrfache Bescheinigungschlüssel hat, läßt der "Berechtigung Schlüsselbezeichner" die Bescheinigung anzeigen, welcher Schlüssel verwendet werden sollte. Die "grundlegende Begrenzungen" Verlängerung zeigt an, wenn der Bescheinigung Halter Bescheinigungen ausstellen kann.
Unterschrift. Dieses fangen kennzeichnet den Algorithmus und die Parameter auf, die verwendet werden, um die Bescheinigung zu unterzeichnen, gefolgt von der Unterzeichnung (ein chiffrorenes Durcheinander von fängt 1 bis 10) auf, selbst.
Um die Bescheinigung zu validieren, erhält der Benutzer den allgemeinen Schlüssel des Ausstellers für den bestimmten Unterzeichnungalgorithmus (fangen Sie 3) und Dechiffrierungen die Unterzeichnung auf (fangen Sie 11 auf). Sie verwendet dann die Informationen in der Unterzeichnung auffängt (fangen Sie 11) auf, zum recompute, das der Durcheinanderwert vom anderen auffängt. Wenn er die dechiffrorene Unterzeichnung zusammenbringt, ist die Unterzeichnung gültig, wenn der allgemeine Schlüssel des Ausstellers korrekt ist. Der Benutzer überprüft dann die Periode der Gültigkeit (fangen Sie 5) auf, um sicherzugehen, daß die Bescheinigung gegenwärtig ist.
Eine Bescheinigungberechtigung (Ca) ist ein dieses Wesen Ausgaben Bescheinigungen.
Wenn alle Bescheinigungen einen allgemeinen Aussteller haben, dann kann der allgemeine Schlüssel des Ausstellers aus Band heraus verteilt werden. Jedoch ist dieses infeasible. Z.B. ist es in hohem Grade unwahrscheinlich, daß Frankreich und die Vereinigten Staaten über einen einzelnen Aussteller für ihre Organisationen und Bescheinigungen der Bürger einigSEIN konnten. Dieses schlägt mehrfache Aussteller vor, das den Prozeß der Gültigkeitserklärung erschwert.
Nehmen Sie an, daß Alice eine Bescheinigung von ihrem lokalen Ca, Cathy hat. Sie möchte mit Bob verständigen, dessen lokales Ca Dan ist. Das Problem ist, damit Alice und Bob jeder des anderen Bescheinigungen validiert.
Nehmen Sie an, daß X<<Y > > die Bescheinigung darstellt, die X für das Thema Y erzeugte (X ist das Ca, das die Bescheinigung ausstellte). Bescheinigung Bobs ist Dan<<Bob > >. Wenn Cathy eine Bescheinigung zu Dan ausgestellt hat, hat Dan eine Bescheinigung Cathy<<Dan > >; ähnlich wenn Dan eine Bescheinigung zu Cathy ausgestellt hat, hat Cathy eine Bescheinigung Dan<<Cathy > >. In diesem Fall sollen Dan und Cathy Kreuz-bestätigt.
Zwei CAs werden Kreuz-bestätigt, wenn jedes eine Bescheinigung für die andere ausgestellt hat.
Weil Alice Cathys (vertraut) allgemeinen Schlüssel hat, kann sie Cathy<<Dan erreichen > > und die Unterzeichnungkette bilden
Cathy<<Dan > > Dan<<Bob > >
Weil Alice Bescheinigung Dans validieren kann, kann sie den allgemeinen Schlüssel dadurch verwenden daß Bescheinigung, um Bescheinigung Bobs zu validieren. Ähnlich kann Bob Dan<<Cathy erwerben > > und Bescheinigung Alices validieren.
Dan<<Cathy > > Cathy<<Alice > >
Unterschrift Ketten können von der willkürlichen Länge sein. Die einzige Anforderung ist, daß jede Bescheinigung durch die vor ihr in der Kette validiert werden kann. (X.509 schlägt organisierendes CAs in eine Hierarchie vor, um die Längen der Bescheinigung Unterzeichnungketten herabzusetzen, aber dieses ist nicht eine Anforderung.)
Bescheinigungen können widerrufen werden oder annulliert werden. Eine Liste solcher Bescheinigungen ermöglicht einem Benutzer zu ermitteln und Ausschuß, ungültig erklärten Bescheinigungen.
PGP ist ein Enciphermentprogramm, das allgemein, um Privatleben für elektronische Post in dem Internet zur Verfügung zu stellen, verwendet wird und Akten digital zu unterzeichnen. Es benutzt eine Bescheinigung-gegründete Schlüsselmanagementinfrastruktur für allgemeine Schlüssel der Benutzer. Seine Bescheinigungs- und Schlüsselmanagementstruktur unterscheiden sich von X.509's in einigen Weisen. Hier beschreiben wir Struktur OpenPGPs; aber viel dieser Diskussion trifft auch auf andere Versionen von PGP zu.
Eine OpenPGP Bescheinigung besteht aus Paketen. Ein Paket ist eine Aufzeichnung mit einem Umbau, der seinen Zweck beschreibt. Eine Bescheinigung enthält ein allgemeines Schlüsselpaket, das von null oder mehr Unterschrift Paketen gefolgt wird. Ein OpenPGP allgemeines Schlüsselpaket hat die folgende Struktur.
Version. Dieses ist entweder 3 oder 4. Version 3 ist mit allen Versionen von PGP kompatibel; Version 4 ist nicht mit alten (Version 2.6) Versionen von PGP kompatibel.
Zeit der Kreation. Dieses spezifiziert, als die Bescheinigung hergestellt wurde.
Gültigkeit Periode (Version 3 nur). Dieses gibt die Zahl Tagen, die die Bescheinigung gültig ist. Wenn es 0 ist, läuft die Bescheinigung nicht ab.
Allgemeiner Schlüsselalgorithmus und Parameter. Dieses kennzeichnet den Algorithmus, der verwendet wird und gibt die Parameter für das verwendete Schlüsselsystem. Version 3 Pakete enthalten den Modul für RSA. Version 4 Pakete enthalten die Parameter, die für das verwendete Schlüsselsystem passend sind.
Allgemeiner Schlüssel. Dieses gibt den allgemeinen Schlüssel. Version 3 Pakete enthalten den Exponenten für RSA. Version 4 Pakete enthalten den allgemeinen Schlüssel für das Schlüsselsystem, das innen gekennzeichnet wird, auffangen 4.
Die Informationen in einem OpenPGP Unterzeichnungpaket sind für die zwei Versionen unterschiedlich. Version 3 enthält das folgende.
Version. Dieses ist 3.
Unterschrift Art. Dieses beschreibt den spezifischen Zweck der Unterzeichnung und kodiert ein Niveau des Vertrauens. Z.B. sagt Unterzeichnungart 0x11, daß der Unterzeichner nicht überprüft hat, daß der allgemeine Schlüssel dem genannten Thema gehört.
Kreation Zeit. Dieses spezifiziert die Zeit, zu der das Folgen wurden gehackt auffängt.
Schlüsselbezeichner des Unterzeichners. Dieses gibt den Schlüssel an, der verwendet wird, um die Unterzeichnung zu erzeugen.
Allgemeiner Schlüsselalgorithmus. Dieses kennzeichnet den Algorithmus, der verwendet wird, um die Unterzeichnung zu erzeugen.
Durcheinanderalgorithmus. Dieses kennzeichnet den Algorithmus, der verwendet wird, um die Unterzeichnung zu hacken, bevor es unterzeichnet.
Teil unterzeichneter Durcheinanderwert. Nachdem die Daten gehackt sind, fangen Sie 2 wird gegeben die Zeit auf, zu der das Durcheinander berechnet wurde, und das fangen wird gehackt und hinzugefügt zum vorhergehenden Durcheinander auf. Die ersten zwei Bytes werden in dieses auffangen gesetzt. Die Idee ist, daß die Unterzeichnung sofort zurückgewiesen werden kann, wenn die ersten zwei Bytes, die während der Gültigkeitserklärung gehackt werden, nicht dieses auffangen zusammenbringen.
Unterschrift. Dieses enthält den Encipherment des Durcheinanders mit dem privaten Schlüssel des Unterzeichners.
Ein Version 4 Unterzeichnungpaket ist beträchtlich komplizierter, aber, wie ein Version 3 Unterzeichnungpaket, bindet es eine Unterzeichnung an einen Bezeichner und Daten. Den interessierten Leser bezieht auf den OpenPGP Spezifikationen.
PGP Bescheinigungen unterscheiden sich von den Bescheinigungen X.509 in einigen wichtigen Weisen. Anders als X.509 kann ein einzelner Schlüssel mehrfache Unterzeichnungen haben. (alle Version werden 4 PGP Schlüssel vom Inhaber unterzeichnet; dieses wird Selbst-Unterzeichnen. benannt) Auch anders als X.509, wird ein Begriff "des Vertrauens" in jeder Unterschrift eingebettet, und die Unterzeichnungen für einen einzelnen Schlüssel können unterschiedliche Niveaus des Vertrauens haben. Die Benutzer der Bescheinigungen können das Niveau des Vertrauens für jede Unterschrift feststellen und dementsprechend fungieren.
BEISPIEL: Nehmen Sie an, daß Alice mit Bob verständigen muß. Sie erreicht allgemeine Bescheinigung PGP Schlüssel Bobs, Ellen, Fred, Giselle, Bob<<Bob > > (wo die Darstellung X.509 in der offensichtlichen Weise verlängert wird). Alice weiß keine der Unterzeichner, also sie erhält Bescheinigung PGP Giselles, Henry, Irene, Giselle<<Giselle > >, von einem Bescheinigung Bediener. Sie kennt Henry vage, also erreicht sie seine Bescheinigung, Ellen, Henry<<Henry > > und überprüft Bescheinigung Giselles. Sie merkt, daß Unterzeichnung des Henrys auf dem "beiläufigen" Vertrauen Niveau ist, also entscheidet sie, nach Bestätigung anderwohin zu schauen. Sie erreicht Bescheinigung Ellens, Jack, Ellen<<Ellen > > und erkennt sofort Jack als ihr Ehemann. Sie hat seine Bescheinigung und benutzt sie, um Bescheinigung Ellens zu validieren. Sie merkt, daß seine Unterschrift auf dem "positiven" Vertrauen Niveau ist, also nimmt sie Bescheinigung Ellens als gültiges an und benutzt sie, um Bobs zu validieren. Sie merkt, daß Ellen die Bescheinigung mit "positivem" Vertrauen auch unterzeichnete, also stellt sie fest, daß die Bescheinigung und der allgemeine Schlüssel, die er enthält, ist vertrauenswürdig. |
Im Beispiel oben, folgte Alice zwei Unterzeichnungketten:
Henry<<Henry > > Henry<<Giselle > > Giselle<<Bob > >
und
Jack<<Ellen > > Ellen<<Bob > >
(wo die ungeprüften Unterzeichnungen fallengelassen worden sind). Die Vertrauen Niveaus beeinflußten, wie Alice die Bescheinigung überprüfte.
Eine subtile Unterscheidung entsteht hier zwischen X.509 und PGP Bescheinigungen. Bescheinigungen X.509 schließen ein Element des Vertrauens ein, aber das Vertrauen wird nicht in der Bescheinigung angezeigt. PGP Bescheinigungen zeigen das Niveau des Vertrauens an, aber das gleiche Niveau des Vertrauens kann unterschiedliche Bedeutungen zu den unterschiedlichen Unterzeichnern haben.
Die Entwicklung und das Management der allgemeinen Schlüssel ist wegen der unterschiedlichen Anforderungen der verschiedenen Protokolle kompliziert. Die meisten Protokolle benutzen irgendeine Form der Bescheinigungen X.509v3, obgleich die Verlängerungen sich verändern. Die Infrastruktur, die allgemeine Schlüssel und Bescheinigungbehörden handhat, wird eine allgemeine Schlüsselinfrastruktur genannt. Einige solche Infrastrukturer sind im Platz, wie den PGP Bescheinigung Bedienern und den kommerziellen Bescheinigung Ausstellern für World Wide Webdatenbanksuchroutinen.
Online: 707 users browsing the articles directory
|
|