-
HINTERGRUND DER ERFINDUNG
-
Gebiet der Erfindung
-
Die
vorliegende Erfindung bezieht sich auf ein Infrastruktursystem mittels öffentlicher
Schlüssel, aufweisend
eine Zertifizierungsstelle, die eine Widerrufsliste für öffentliche
Schlüsselzertifikate
herausgibt, einen Server zum Validieren von Zertifikaten, der die
Gültigkeit
eines öffentlichen
Schlüsselzertifikats
verifiziert, und einen Client, der den Zertifikatvalidierungsserver
verwendet.
-
Beschreibung des Stands der Technik
-
Das
Patentdokument 1: US 2002/0046340A1, das Nichtpatentdokument 1:
ITU, ITU-T Recommendation X.509 „Information technology – Open systems
interconnection – The
Directory: Public-key and attribute certificate frameworks", ITU, März 2000,
S. 7–53,
und das Nichtpatentdokument 2: „GPKI Government Public Key
Infrastructure interoperability specification" S. 18–20, 27–29, „online", 25. April 2001, genehmigt von der
Basic Problem Workgroup, recherchiert am 14. März 2003 im Internet unter der <URL: http://www.soumu.go.jp/gyoukan/kanri/010514_2.pdf>, beschreiben Zertifikat-Widerrufslisten,
Servermodelle und öffentliche
Schlüssel.
-
Systeme
mit einer Infrastruktur mittels öffentlicher
Schlüssel
(nachstehend der Einfachheit halber als PKI [Public Key Infrastructure]
bezeichnet) einschließlich
einer GPKI [Government Public Key Infrastructure] werden immer häufiger eingesetzt,
um eine Person zu identifizieren, die ein elektronisches Dokument
von Interesse produziert hat, und um zu garantieren, dass das elektronische
Dokument nicht geändert
oder manipuliert worden ist (siehe zum Bei spiel das Nichtpatentdokument
1). In einem PKI-basierten System wird ein elektronisches Dokument
von einer Person elektronisch unterschrieben bzw. signiert, indem
diese ihre digitale Unterschrift bzw. Signatur mit einem Schlüssel, einem
so genannten privaten Schlüssel,
daran anbringt, den nur die betreffende Person (Signierer genannt)
besitzt. Bei Empfang eines elektronischen Dokuments mit einer digitalen
Signatur wird die digitale Signatur verifiziert, um den Erzeuger
des elektronischen Dokuments zu identifizieren und zu bestätigen, dass
das elektronische Dokument nicht manipuliert worden ist.
-
Bei
Anwendungen, die ein hohes Maß an Vertrauen
erfordern, ist zur Verifizierung einer digitalen Signatur nicht
nur das Verifizieren der betreffenden digitalen Signatur mit einem
als öffentlicher Schlüssel bezeichneten
Schlüssel
erforderlich, der in einem öffentlichen
Schlüsselzertifikat
(der Einfachheit halber als Zertifikat bezeichnet) des Signierers enthalten
ist, sondern auch die Kontrolle dessen, ob das Zertifikat des Signierers
für eine
Person gültig
ist oder nicht, die die digitale Signatur verifiziert (als Verifizierer
bezeichnet). Um zu verifizieren, ob das Zertifikat des Signierers
für den
Verifizierer gültig
ist oder nicht, muss (1) ein Zertifizierungspfad erfasst werden und
(2) der Zertifizierungspfad verifiziert werden.
-
Der
Zertifizierungspfad ist eine Vertrauenskette vom Verifizierer zum
Signierer und wird ausgedrückt
in Form einer Kette von Zertifikaten. Soweit die Zertifizierungsstellen
sich untereinander gegenseitig Zertifikate ausstellen, werden insbesondere
spezielle Zertifikate, so genannte Kreuzzertifikate, ausgestellt. Wenn
neun Zertifizierungsstellen 11 bis 19 eine Kreuzzertifizierungsbeziehung
miteinander haben, wie in 2 gezeigt,
ist der Zertifizierungspfad von einem Verifizierer mit einem von
der Zertifizierungsstelle 12 ausgestellten
Zertifikat zu einem Signierer mit einem von der Zertifizierungsstelle 11 ausgestellten Zertifikat eine Kette
von Zertifikaten, die mit einem Kreuzzertifikat 918 beginnt,
gefolgt von einem Kreuzzertifikat 968 ,
einem Kreuzzertifikat 946 , einem Kreuzzertifikat 924 und schließlich einem Zertifikat des
Verifizierers. Ein Verfahren zum Validieren des auf diese Weise
erkannten Zertifizierungspfads ist ausführlich in dem vorstehenden
Nichtpatentdokument 1 beschrieben.
-
In
einer der GPKI-Spezifikationen sind ein Endentitätsmodell und ein Zertifikatvalidierungsservermodell
als Modelle zur Verifizierung der Gültigkeit von Zertifikaten beschrieben
(siehe zum Beispiel das Nichtpatentdokument 2). Das Zertifikatvalidierungsservermodell
verwendet einen Zertifikatvalidierungsserver, der eine Funktion
zur Durchführung
einer Online-Prüfung
der Gültigkeit
des betreffenden Zertifikats im Namen eines Clients bereitstellt.
-
Das
Zertifikatvalidierungsservermodell bietet gegenüber dem Endentitätsmodell
die folgenden Vorteile. Erstens kann beim Zertifikatvalidierungsservermodell
das Programm zur Verifizierung der Client-Signatur klein ausgeführt werden,
weil es nicht nötig
ist, eine Zertifizierungspfad-Erkennungsfunktion auf einem Client
zu mounten. Weil ein Client dem Ergebnis einer Entscheidung des
Zertifikatvalidierungsservers vertraut, ist es außerdem möglich, flexibel
auf Änderungen
der Systemkonfiguration zu reagieren, indem einfach eine Einstellung
des Zertifikatvalidierungsservers geändert wird. Ob ein bestimmtes
Zertifikat gültig
ist oder nicht, wird nach dem vorstehenden Nichtpatentdokument 2
mit einer Zertifikat-Widerrufsliste (nachstehend als CRL bezeichnet) verifiziert,
die von den Zertifizierungsstellen oder einem OCSP-Responder herausgegeben
wird.
-
Weil
es nicht effizient ist, die CRL jedes Mal von der Zertifizierungsstelle
abzurufen, wenn eine Zertifikatvalidierung durchgeführt wird,
beschreibt das Patentdokument 1 ein Verfahren, bei dem der Zertifikatvalidierungsserver
die Zertifikate, die CRL und den Zertifizierungspfad im Cache speichert,
um die Geschwindigkeit des Zertifikatvalidierungsvorgangs zu erhöhen.
-
Zum
Verifizieren einer digitalen Signatur und zum Einrichten eines Zertifizierungspfads
ist der Erhalt eines Zertifikats des Signierers erforderlich.
-
Die
Verfahren zum Erhalten eines Signiererzertifikats fallen allgemein
in zwei Kategorien.
-
Bei
einer Art von Verfahren sendet ein Signierer ein mit einer digitalen
Signatur versehenes elektronisches Dokument, wobei ein Zertifikat
des Signierers getrennt erhalten werden muss. Ein Beispiel dieses
Verfahrens betrifft einen Fall, bei dem ein Signierer ein elektronisches
Dokument mit einer digitalen Signatur zusammen mit einer URL sendet,
die den Ort angibt, wo ein Zertifikat zum Verifizieren der digitalen
Signatur gespeichert ist. Bei diesem Verfahren muss der Verifizierer
auf den Ort zugreifen, wo das Zertifikat gespeichert ist (nachstehend
als Zertifikatspeicher bezeichnet), um das Zertifikat zu erhalten.
-
Bei
einer anderen Art von Verfahren sendet ein Signierer ein elektronisches
Dokument mit einer digitalen Signatur zusammen mit einem Zertifikat, das
zum Verifizieren der digitalen Signatur verwendet wird.
-
Wenn
eine CRL im Cachespeicher gespeichert ist, um den Vorgang der Zertifikatvalidierung
zu beschleunigen, ist die im Cache gespeicherte CRL nicht mehr die
neueste, wenn eine Zertifizierungsstelle in einer dringenden Situation
eine CRL ausgibt. In Patentdokument 1 wird auf diesen Punkt nicht
eingegangen.
-
Bei
einem Verfahren zur Lösung
des vorstehend genannten Problems zur Sicherstellung dessen, dass
die Zertifikatvalidierung korrekt durchgeführt werden kann, auch wenn
die CRL in einer dringenden Situation herausgegeben wird, muss der
Zertifikatvalidierungsserver in regelmäßigen Abständen auf einen Ort zugreifen,
wo die CRL gespeichert ist (nachstehend als CRL-Speicher bezeichnet),
um zu kontrollieren, ob die CRL aktualisiert worden ist. Das vorstehend
beschriebene Verfahren ist weiter in zwei Kategorien unterteilt.
Bei dem einen muss der Zertifikatvalidierungsserver selbst eine
Prüfung über das Netz
vornehmen, während
bei dem anderen eine CRL-Prüfsoftware
in den CRL-Speicher eingeführt wird.
-
Zur
Verbesserung der Genauigkeit der Zertifikatvalidierung mit der Methode
der regelmäßigen Kontrolle,
ob die CRL aktualisiert worden ist oder nicht, muss das Intervall
zwischen den Kontrollen soweit wie praktisch möglich verkürzt werden. Bei dem Verfahren,
bei dem der Zertifikatvalidierungsserver selbst eine Prüfung über das
Netz vornimmt, entsteht jedoch das Problem, dass sich die Belastung
im Netz erhöht.
-
Bei
dem Verfahren, das ein CRL-Prüfprogramm
in den CRL-Speicher
einführt,
tritt andererseits ein Problem auf, dass die Installation der CRL-Prüfsoftware
nicht gestattet ist, sofern der Administrator des CRL-Speichers
und der Administrator des Zertifikatvalidierungsserver unterschiedlich
sind, so dass die Prüfung
nicht durchgeführt
werden kann.
-
Außerdem können in
einer Umgebung, in der es mehrere Zertifikatvalidierungsserver gibt,
nicht alle Zertifikatvalidierungsserver den Validierungsvorgang
mit derselben Genauigkeit durchführen,
sofern nicht alle die in den CRL-Speicher
eingeführte CRL-Prüfsoftware
benutzen. Wenn also die Anzahl der betriebsbereiten Zertifikatvalidierungsserver
erhöht
oder verringert werden soll, muss die Einstellung der CRL-Prüfsoftware
geändert
werden. Falls der Administrator des CRL-Speichers und der Administrator
der Zertifikatvalidierungsserver jedoch unterschiedlich sind, ist
es schwierig, die Anzahl der Zertifikatvalidierungsserver flexibel
zu ändern.
-
Ein
weiteres Problem besteht darin, dass es, wenn der Zertifizierungspfad
im Cachespeicher gespeichert ist, die Zertifizierungsstellen aber
alte Kreuzzertifikate widerrufen und neue Kreuzzertifikate ausgestellt
haben, erforderlich ist, einen Zertifizierungspfad mit den neuen
Kreuzzertifikaten einzurichten.
-
Außerdem führt in einer
Umgebung, in der es mehrere Zertifikatvalidierungsserver gibt, auch
wenn die mehreren Zertifikatvalidierungsserver dasselbe Zertifikat
validieren, jeder der Zertifikatvalidierungsserver die Erkennung
des Zertifizierungspfads durch und erhält die CRL. Dies erhöht die Wahrscheinlichkeit,
dass sich die Zugriffe auf einen bestimmten CRL-Speicher oder auf
einen bestimmten Zertifikatspeicher konzentrieren, sowie die Wahrscheinlichkeit einer
erhöhten
Netzlast. In Patentdokument 1 wird auf diese Probleme nicht eingegangen.
-
Weiter
besteht bei dem vorherigen Verfahren zum getrennten Erhalt des Zertifikats
das Problem, dass der Client zur Aufforderung des Zertifikatvalidierungsservers,
das Zertifikat zu verifizieren, zuerst auf den Zertifikatspeicher
zugreifen muss, um das Zertifikat zu erhalten.
-
Unter
diesen Umständen
ist eine neue Technik zur Lösung
dieser Probleme erwünscht.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Nach
einem Aspekt, der kein Aspekt der vorliegenden Erfindung ist, wird
ein Infrastruktursystem mittels öffentlicher
Schlüssel
bereitgestellt, umfassend eine Zertifizierungsstelle mit einer Zertifikatausstellungseinrichtung
zum Ausstellen eines Zertifikats und einer CRL-Ausgabeeinrichtung
zum Ausgeben einer CRL, einem Zertifikatspeicher mit einer Zertifikatspeichereinrichtung
zum Speichern des von der Zertifizierungsstelle ausgestellten Zertifikats,
einem CRL-Speicher mit einer CRL-Speichereinrichtung zum Speichern
der von der Zertifizierungsstelle ausgegebenen CRL, einem Zertifikatvalidierungsserver mit
einer Zertifikatvalidierungseinrichtung zum Validieren des Zertifikats,
einer CRL-Cacheeinrichtung zum Cache-Speichern der aus dem CRL-Speicher abgerufenen
CRL und einer Zertifizierungspfad-Cacheeinrichtung zum Cache-Speichern
eines von der Zertifikatvalidierungseinrichtung erkannten Zertifizierungspfads
zum Validieren des Zertifikats und einem Client mit einer Verifizierungseinrichtung
für digitale Signaturen
zum Verifizieren einer digitalen Signatur und einer Aufforderungseinrichtung
für die
Zertifikatvalidierung zum Auffordern des Zertifikatvalidierungsservers
zum Validieren des Zertifikats, wobei die Zertifizierungsstelle
eine Übertragungseinrichtung
für CRL-Ausgabebenachrichtigungen
zum Senden einer CRL-Ausgabebenachrichtigung, dass „eine CRL
ausgegeben worden ist",
an den Zertifikatvalidierungsserver zur gleichen Zeit aufweist,
an der die CRL ausgegeben wird, und wobei der Zertifikatvalidierungsserver
eine Empfangseinrichtung für CRL-Ausgabebenachrichtigungen
zum Empfangen der CRL-Ausgabebenachrichtigung von der Zertifizierungsstelle
aufweist.
-
Nach
einem weiteren Aspekt, der kein Aspekt der vorliegenden Erfindung
ist, ruft die CRL-Cacheeinrichtung des Zertifikatvalidierungsservers
bei Empfang der CRL-Ausgabebenachrichtigung durch die Empfangseinrichtung
für CRL-Ausgabebenachrichtigungen
die von der Zertifizierungsstelle neu ausgegebene CRL aus dem CRL-Speicher
ab.
-
Nach
einem weiteren Aspekt, der kein Aspekt der vorliegenden Erfindung
ist, weist der Zertifikatvalidierungsserver eine Übertragungseinrichtung für CRL-Ausgabebenachrichtigungen
auf, die, wenn der Zertifikatvalidierungsserver feststellt, dass
die CRL neu ausgegeben worden ist, eine CRL-Ausgabebenachrichtigung,
dass „eine
CRL ausgegeben worden ist",
an andere vorregistrierte Zertifikatvalidierungsserver sendet.
-
Nach
einem weiteren Aspekt, der kein Aspekt der vorliegenden Erfindung
ist, weist die Zertifizierungsstelle eine Übertragungseinrichtung für Zertifikatausstellungsbenachrichtigungen
auf, die bei Ausstellung des Zertifikats durch die Zertifikatausstellungseinrichtung
eine Zertifikatausstellungsbenachrichtigung, dass „ein Zertifikat
ausgestellt worden ist",
an den Zertifikatvalidierungsserver sendet; der Zertifikatvalidierungsserver
weist eine Empfangseinrichtung für
Zertifikatausstellungsbenachrichtigungen zum Empfangen der Zertifikatausstellungsbenachrichtigung
auf; bei Empfang der Zertifikatausstellungsbenachrichtigung durch
die Empfangseinrichtung für
Zertifikatausstellungsbenachrichtigungen richtet die Zertifikatvalidierungseinrichtung
einen Zertifizierungspfad ein, der das neu ausgestellte Zertifikat
einschließt,
und die Zertifizierungspfad-Cacheeinrichtung
speichert den Zertifizierungspfad im Cachespeicher.
-
Nach
einem Aspekt der vorliegenden Erfindung weist der Zertifikatvalidierungsserver
eine Zertifizierungspfad-Übertragungseinrichtung
auf, die bei Erkennen eines Zertifizierungspfads den Zertifizierungspfad
an andere vorregistrierte Zertifikatvalidierungsserver sendet, und
bei Empfang des Zertifizierungspfads von anderen Zertifikatvalidierungsservern
speichert die Zertifizierungspfad-Cacheeinrichtung den Zertifizierungspfad
im Cachespeicher.
-
Nach
einem weiteren Aspekt der vorliegenden Erfindung weist der Client
eine Aufforderungseinrichtung für
die Zertifikaterfassung auf, die den Zertifikatvalidierungsserver
auffordert, ein zum Verifizieren einer digitalen Signatur nötiges Zertifikat
einzuholen, und der Zertifikatvalidierungsserver weist eine Zertifikaterfassungseinrichtung
auf, die das von dem Client angeforderte Zertifikat aus dem Zertifikatspeicher
erfasst und dieses, wenn es von der Zertifikatvalidierungseinrichtung
für gültig befunden
wird, an den Client sendet.
-
Nach
einem weiteren Aspekt, der kein Aspekt der vorliegenden Erfindung
ist, weist der Zertifikatvalidierungsserver eine Einrichtung zum
Erzeugen einer Nachricht auf, die „zum Senden einer CRL-Ausgabebenachrichtigung
auffordert", die
Zertifizierungsstelle weist eine Einrichtung zum Empfangen der Aufforderungsnachricht
für die
CRL-Ausgabebenachrichtigung auf, und die Übertragungseinrichtung für CRL-Ausgabebenachrichtigungen
der Zertifizierungsstelle sendet die CRL-Ausgabebenachrichtigung
an den Zertifikatvalidierungsserver, der die Aufforderungsnachricht
für die CRL-Ausgabebenachrichtigung
an die Zertifizierungsstelle gesendet hat.
-
Nach
einem weiteren Aspekt, der kein Aspekt der vorliegenden Erfindung
ist, weist der CRL-Speicher eine Übertragungseinrichtung für CRL-Ausgabebenachrichtigungen
auf, die, wenn festgestellt wird, dass eine neue CRL im CRL-Speicher gespeichert
worden ist, eine CRL-Ausgabebenachrichtigung sendet, die angibt,
dass „eine
CRL ausgegeben worden ist",
und außerdem
eine Empfangseinrichtung für
die Aufforderung zur CRL-Ausgabebenachrichtigung, die eine Aufforderungsnachricht
für die
CRL-Ausgabebenachrichtigung empfängt,
die „zum
Senden der CRL-Ausgabebenachrichtigung auffordert".
-
Nach
einem weiteren Aspekt der vorliegenden Erfindung realisiert die
CRL-Prüfsoftware
eine Einrichtung zum Überwachen
der Ausgabe einer CRL und zum Senden einer CRL-Ausgabebenachrichtigung,
wenn eine neue CRL ausgegeben wird, und eine Einrichtung zum Empfangen
einer Aufforderungsnachricht für
die CRL-Ausgabebenachrichtigung, wobei die Übertragungseinrichtung für CRL-Ausgabebenachrichtigungen
die CRL-Ausgabebenachrichtigung an eine einleitende Quelle der Aufforderungsnachricht
für die
CRL-Ausgabebenachrichtigung sendet.
-
Nach
einem weiteren Aspekt der vorliegenden Erfindung weist der Zertifikatvalidierungsserver eine
Einrichtung zum Empfangen einer Aufforderungsnachricht für die von
der Erzeugungseinrichtung zur Aufforderung für die CRL-Ausgabebenachrichtigung
erzeugte CRL-Ausgabebenachrichtigung auf.
-
US 6.134.550 beschreibt
ein Verfahren und eine Vorrichtung zum Validieren von Zertifikaten
mittels vertrauenswürdiger
Pfade, die mit der vorliegenden Erfindung die Merkmale nach dem
Oberbegriff von Anspruch 1 gemeinsam haben.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
1 zeigt
ein Schemadiagramm der Systemkonfiguration eines Austauschsystems
für digital signierte
elektronische Dokumente nach einer Ausführungsform der vorliegenden
Erfindung.
-
2 zeigt
ein Diagramm der Kreuzzertifizierungsbeziehungen zwischen den Zertifizierungsstellen 1 nach
der Ausführungsform.
-
3 zeigt
ein Ablaufdiagramm mit den Abläufen
nach der Ausführungsform
bei Ausgabe einer CRL 7.
-
4 zeigt
ein Ablaufdiagramm mit den Abläufen
nach der Ausführungsform,
wenn ein Client-Terminal 5 ein elektronisches Dokument
mit einem Zertifikat 509 sendet und empfängt.
-
5 zeigt
ein Ablaufdiagramm mit den Abläufen
nach der Ausführungsform,
wenn ein Client-Terminal 5 ein elektronisches Dokument
ohne eine Zertifikat 509 sendet und empfängt.
-
6A und 6B zeigen
Diagramme mit Beispielen für
eine Übertragungszielliste 104 für CRL-Ausgabebenachrichtigungen
und eine Weiterleitungszielliste 408 für CRL-Ausgabebenachrichtigungen.
-
7 zeigt
den Betriebsablauf in dem Austauschsystem für digital signierte elektronische
Dokumente in 1, wenn ein Zertifikatvalidierungsserver 4 eine
Zertifizierungsstelle 1 auffordert, eine CRL-Ausgabebenachrichtigung 8 zu
senden.
-
8A und 8B zeigen
Diagramme mit einem Beispiel einer Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung.
-
9 zeigt
ein Diagramm mit der Hardware-Konfiguration einer Zertifizierungsstelle 1,
eines Zertifikatspeichers 2, eines CRL-Speichers 3,
eines Zertifikatvalidierungsservers 4 und eines Client-Terminals 5 in 1.
-
AUSFÜHRLICHE
BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
-
Nachstehend
werden Ausführungsformen der
vorliegenden Erfindung unter Bezugnahme auf die anliegenden Zeichnungen
beschrieben. Dabei ist zu beachten, dass die vorliegende Erfindung
in keiner Weise durch die gezeigten beispielhaften Ausführungsformen
eingeschränkt
ist.
-
1 zeigt
die Konfiguration eines Austauschsystems für digital signierte elektronische
Dokumente nach einer Ausführungsform
der vorliegenden Erfindung. Dieses System weist neun Zertifizierungsstellen
(CA) von CA 11 bis CA 19 (allgemein als Zertifizierungsstellen 1 bezeichnet),
einen Zertifikatspeicher 2, einen CRL-Speicher 3,
n Zertifikatvalidierungsserver von Server 41 bis
Server 4n (allgemein als Zertifikatvalidierungsserver 4 bezeichnet)
und m Client-Terminals
von Client-Terminal 51 bis Client-Terminal 5m auf, die die Zertifikatvalidierungsserver 4 auffordern,
Zertifikate zu validieren (allgemein als Client-Terminals 5 bezeichnet),
die alle über
ein Netz 0 miteinander verbunden sind.
-
Die
Zertifizierungsstellen 1 weisen eine Zertifikatausstellungsfunktion 101 zum
Ausstellen von Zertifikaten 509 an die Client-Terminals 5 und
zum Speichern von Kopien der Zertifikate 509 im Zertifikatspeicher 2,
eine CRL-Ausgabefunktion 102 zum Ausgeben einer CRL 7,
einer Liste von widerrufenen Zertifikaten 509, und zum
Speichern der CRL 7 im CRL-Speicher 3, eine CRL-Ausgabebenachrichtigungsfunktion 103 zum
Senden einer CRL-Ausgabebenachrichtigung 8, dass die CRL 7 ausgegeben worden
ist, an die Zertifikatvalidierungsserver 4 und eine Aufforderungsempfangsfunktion 105 für CRL-Ausgabebenachrichtigungen
zum Empfangen einer Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung
auf, die „zum
Senden der CRL-Ausgabebenachrichtigung 8 auffordert".
-
Die
Zertifizierungsstellen 1 von CA 11 bis
CA 19 stellen sich untereinander
Kreuzzertifikate 9 aus, und zwischen ihnen besteht eine
Kreuzzertifizierungsbeziehung, wie in 2 gezeigt.
-
Der
Zertifikatspeicher 2 weist eine Zertifikatdatenbank 201 zur
Aufnahme der Zertifikate 509 und eine Zertifikatdatenbank-Verwaltungsfunktion 202 zum
Empfangen der Zertifi kate 509 von den Zertifizierungsstellen 1,
zum Speichern der Zertifikate 509 in der Zertifikatdatenbank 201 und
zum Suchen und Liefern eines bestimmten Zertifikats 509 als
Ergebnis aus der Zertifikatdatenbank 201 auf.
-
Der
CRL-Speicher 3 weist eine CRL-Datenbank 301 zur
Aufnahme der CRL 7 und eine CRL-Datenbank-Verwaltungsfunktion 302 zum
Empfangen der CRL 7 von den Zertifizierungsstellen 1,
zum Speichern der CRL in der CRL-Datenbank 301 und zum Suchen
und Liefern einer bestimmten CRL 7 als Ergebnis aus der
CRL-Datenbank 301 auf.
-
Die
Zertifikatvalidierungsserver 4 weisen jeweils Folgendes
auf:
einen CRL-Cachespeicher 401, der die CRL 7 cache-speichert,
einen
Zertifizierungspfad-Cachespeicher 402, der einen zum Validieren
von Zertifikaten 509 verwendeten Zertifizierungspfad cache-speichert,
eine
Zertifikatvalidierungsfunktion 403, die bei Empfang einer
Aufforderung von einem Client-Terminal 5 ein Zertifikat
validiert,
eine Zertifikaterfassungsfunktion 404,
die auf den Empfang einer Aufforderung von einem Client-Terminal 5 hin
ein relevantes Zertifikat 509 aus dem Zertifikatspeicher 2 entnimmt,
das Zertifikat 509 mit der Zertifikatvalidierungsfunktion 403 validiert
und es, wenn es für
gültig
befunden wird, an das Client-Terminal 5 sendet,
eine
CRL-Verwaltungsfunktion 405, die eine CRL 7 aus
dem CRL-Speicher 3 erfasst und im CRL-Cachespeicher 401 speichert,
eine
CRL-Ausgabebenachrichtigungs-Verwaltungsfunktion 406, die
bei Empfang einer CRL-Ausgabebenachrichtigung 8 von einer
Zertifizierungsstelle 1 die CRL-Ausgabebenachrichtigung 8 an
andere vorregistrierte Zertifikatvalidierungsserver 4 oder
an die Zertifikatvalidierungsserver 4 sendet, die durch
Senden der Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung
zur Übertragung
der CRL-Ausgabebenachrichtigung 8 aufgefordert
haben,
eine Zertifizierungspfad-Verwaltungsfunktion 407, die
den von der Zertifikatvalidierungsfunktion 403 erstellten
oder erkannten Zertifizierungspfad im Zertifizierungspfad-Cachespeicher 402 cache-speichert, den
Zertifizierungspfad an andere vorregistrierte Zertifikatvalidierungsserver 4 sendet
und die von anderen Zertifikatvalidierungsservern 4 empfangenen Zertifizierungspfade
im Zertifizierungspfad-Cachespeicher 402 cache-speichert,
eine
Aufforderungserzeugungsfunktion 410 für die CRL-Ausgabebenachrichtigung, die eine Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung
erzeugt, die die Zertifizierungsstelle 1 zum Senden der
CRL-Ausgabebenachrichtigung 8 auffordert, und
eine
Aufforderungsempfangsfunktion für
CRL-Ausgabebenachrichtigungen 411, die die Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung von
anderen Zertifikatvalidierungsservern empfängt.
-
Die
Client-Terminals 5 weisen jeweils Folgendes auf: eine elektronische
Dokumentenaustauschfunktion 501 zum Austauschen elektronischer Dokumente 6 mit
anderen Client-Terminals 5,
eine
digitale Signaturfunktion 502, die elektronische Dokumente 6 elektronisch
signiert und die digitalen Signaturen an elektronischen Dokumenten 6 verifiziert,
die von anderen Client-Terminals 5 empfangen werden,
eine
Aufforderungsfunktion 503 für die Zertifikatvalidierung,
die einen Zertifikatvalidierungsserver 4 auffordert, ein
Zertifikat 509 zu validieren, und ein Ergebnis der Validierung
von dem Zertifikatvalidierungsserver 4 empfängt,
eine
Aufforderungsfunktion 504 für die Zertifikaterfassung,
die, wenn ein elektronisches Dokument 6 anstelle eines
Zertifikats selbst mit einer URL versehen ist, einen Speicherort
des Zertifikats 509 angibt, Identifikationsin formationen über das
Zertifikat an einen Zertifikatvalidierungsserver 4 sendet,
um das an der URL gespeicherte Zertifikat 509 zu erhalten,
und das Zertifikat 509 von dem Zertifikatvalidierungsserver 4 empfängt,
einen
von der digitalen Signaturfunktion 502 verwendeten privaten
Schlüssel 508 und
ein
von einer Zertifizierungsstelle 1 ausgestelltes Zertifikat 509.
-
Ein
Zertifikat 5091 des Client-Terminals 51 wird von einer Zertifizierungsstelle 11 ausgestellt, und ein Zertifikat 5092 eine Client-Terminals 52 wird von einer Zertifizierungsstelle 12 ausgestellt
-
Bei
dieser Ausführungsform
ist der Zertifikatvalidierungsserver 4, der von der Aufforderungsfunktion 503 für die Zertifikatvalidierung
und der Aufforderungsfunktion 504 für die Zertifikaterfassung verwendet
wird, ein bestimmter Zertifikatvalidierungsserver 4, der
zuvor unter den Zertifikatvalidierungsservern 41 bis 4n ausgewählt worden ist.
-
Das
Client-Terminal 52 verwendet zum
Beispiel einen Zertifikatvalidierungsserver 41 .
-
Die
Zertifizierungsstellen 1, der Zertifikatspeicher 2,
der CRL-Speicher 3, die Zertifikatvalidierungsserver 4 und
die Client-Terminals 5 in 1 können durch
eine CPU 91 realisiert werden, die ein bestimmtes in einen
Speicher 92 in einem normalen Computer geladenes Programm
ausführt,
der, wie in 9 gezeigt, zum Beispiel die
CPU 91, den Speicher 92, eine externe Speichervorrichtung 93 wie etwa
eine Festplatte, eine Lesevorrichtung 94 zum Lesen von
Informationen von einem wechselbaren Speichermedium 99 wie
etwa einer CD-ROM, eine Kommunikationsvorrichtung 95 für die Kommunikation
mit anderen Geräten über ein
Netz, eine Eingabevorrichtung 96 wie etwa eine Tastatur
und eine Maus, eine Ausgabevorrichtung 97 wie etwa einen
Monitor und einen Drucker und eine Schnittstelle 98 zur Übertragung
von Daten zwischen diesen Vorrichtungen umfasst.
-
Das
heißt,
durch Ausführen
eines bestimmten Programms kann die CPU 91 als einen Prozess eine
Zertifikatausstellungsfunktion 101, eine CRL-Ausgabefunktion 102,
eine CRL-Ausgabebenachrichtigungsfunktion 103,
eine Aufforderungsempfangsfunktion 105 für CRL-Ausgabebenachrichtigungen,
eine Zertifikatdatenbank-Verwaltungsfunktion 202, eine
CRL-Datenbank-Verwaltungsfunktion 302,
eine Zertifikatvalidierungsfunktion 403, eine Zertifikaterfassungsfunktion 404,
eine CRL-Verwaltungsfunktion 405, eine CRL-Ausgabebenachrichtigungs-Verwaltungsfunktion 406,
eine Zertifizierungspfad-Verwaltungsfunktion 407, eine
Aufforderungserzeugungsfunktion 410 für die CRL-Ausgabebenachrichtigung,
eine Aufforderungsempfangsfunktion 411 für CRL-Ausgabebenachrichtigungen,
eine elektronische Dokumentenaustauschfunktion 501, eine
digitale Signaturfunktion 502, eine Aufforderungsfunktion 503 für die Zertifikatvalidierung
und eine Aufforderungsfunktion 504 für die Zertifikaterfassung realisieren.
Weiter können
eine Zertifikatdatenbank 201, eine CRL-Datenbank 301, ein CRL-Cachespeicher 401 und
ein Zertifizierungspfad-Cachespeicher 402 durch die CPU 91 mit
dem Speicher 92 und der externen Speichervorrichtung 63 realisiert
werden.
-
Das
Programm zur Realisierung dieser Vorrichtungen auf dem Computer
kann über
die Lesevorrichtung 94 von dem computerlesbaren wechselbaren
Speichermedium 99 in den Computer geladen werden oder es
kann von anderen Servern über
die Kommunikationsvorrichtung 96 und ein computertaugliches
Kommunikationsmedium wie etwa ein Netz oder eine Trägerwelle
eingeführt
werden, die sich in dem Netz fortpflanzt.
-
Das
Programm kann vorübergehend
in der externen Speichervorrichtung 93 zwischengespeichert
werden, ehe es zur Ausführung
durch die CPU 91 in den Speicher 92 geladen wird,
oder es kann zur Ausführung
durch die CPU 91 direkt in den Speicher 92 geladen
werden, ohne dass in der externen Speichervorrichtung 93 gespeichert
wird.
-
Als
Nächstes
wird unter Bezugnahme auf die Zeichnungen der Betriebsablauf in
dem auf digitalen Signaturen basierenden System in 1 erläutert, wenn
der Zertifikatvalidierungsserver 4 die Zertifizierungsstelle 1 auffordert,
die CRL-Ausgabebenachrichtigung 8 zu senden.
-
7 zeigt
den Betrieb des Zertifikatvalidierungsservers 4 und der
Zertifizierungsstelle 1 in dem auf digitalen Signaturen
basierenden System in 1, wenn der Zertifikatvalidierungsserver 4 die Zertifizierungsstelle 1 auffordert,
die CRL-Ausgabebenachrichtigung 8 zu senden.
-
In
dem Zertifikatvalidierungsserver 4 erzeugt die Aufforderungserzeugungsfunktion 410 für die CRL-Ausgabebenachrichtigung
die Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung (Schritt 7101)
und sendet sie an die Zertifizierungsstelle 1 (Schritt 7102).
-
Die
als Beispiel in 8A gezeigte Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung
enthält
eine Nachricht, die „zum
Senden der CRL-Ausgabebenachrichtigung 8 auffordert", und einen Hostnamen,
der eine Adresse im Netz 0 für ein Ziel der CRL-Ausgabebenachrichtigung 8 angibt.
-
In
der Zertifizierungsstelle 1 wird, wenn die Aufforderungsempfangsfunktion 105 für CRL-Ausgabebenachrichtigungen
eine Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung
empfängt (Schritt 7201),
zu einer Übertragungszielliste 104 für CRL-Ausgabebenachrichtigungen
der Hostname des Zertifikatvalidierungsservers 4 hinzugefügt, der
die Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung
gesendet hat (Schritt 7202).
-
Wenn
der Zertifikatvalidierungsserver 41 zur Weiterleitung
der CRL-Ausgabebenachrichtigung 8 an den Zertifikatvalidierungsserver 42 auffordert, erzeugt die Aufforderungserzeugungsfunktion 410 für die CRL-Ausgabebenachrichtigung
des Zertifikatvalidierungsserver 41 die
Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung
und sendet sie an den Zertifikatvalidierungsserver 42 .
-
Die
Aufforderungsempfangsfunktion 411 für CRL-Ausgabebenachrichtigungen
des Zertifikatvalidierungsservers 42 empfängt die
Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung
und fügt
den Hostnamen des einleitenden Zertifikatvalidierungsserver 4 zur Übertragungszielliste 104 für CRL-Ausgabebenachrichtigungen
hinzu.
-
Wenn
der Zertifikatvalidierungsserver 4 die Zertifizierungsstelle 1 auffordert,
das Senden der CRL-Ausgabebenachrichtigung 8 zu stoppen,
sendet der Server die in 8B gezeigte
Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung an
die Zertifizierungsstelle 1.
-
Die
in 8B gezeigte Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung
enthält
eine Nachricht, die „zum
Stoppen der Übertragung
der CRL-Ausgabebenachrichtigung 8 auffordert", und einen Hostnamen
für das
Ziel der CRL-Ausgabebenachrichtigung 8.
-
Bei
Empfang der in 8B gezeigten Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung
löscht
die Zertifizierungsstelle 1 den Hostnamen des Zertifikatvalidierungsservers 4 aus
der Übertragungszielliste 104 für CRL-Ausgabebenachrichtigungen.
-
Wenn
der Zertifikatvalidierungsserver 4 andere Zertifikatvalidierungsserver 4 zur
Weiterleitung oder zum Stoppen der Weiterleitung der CRL-Ausgabebenachrichtigung 8 auffordert,
sendet er die Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung
an einen vorgesehenen Zertifikatvalidierungsserver 4.
-
Als
Nächstes
wird der Betrieb der Zertifizierungsstelle 1, des CRL-Speichers 3 und
des Zertifikatvalidierungsservers 4 in dem auf digitalen
Signaturen basierenden System in 1 bei Ausgabe
einer CRL 7 unter Bezugnahme auf die Zeichnungen erläutert.
-
3 zeigt
den Betrieb der Zertifizierungsstelle 1, des CRL-Speichers 3 und
des Zertifikatvalidierungsservers 4 in dem auf digitalen
Signaturen basierenden System in 1 bei Ausgabe
einer CRL 7.
-
Zunächst wird
der Betriebsablauf in der Zertifizierungsstelle 1 betrachtet.
-
Wenn
die CRL-Ausgabefunktion 102 in der Zertifizierungsstelle 1 eine
CRL 7 erzeugt (Schritt 3101), sendet sie diese
an den CRL-Speicher 3 (Schritt 3102).
-
Danach
erzeugt die CRL-Ausgabebenachrichtigungsfunktion 103 eine
CRL-Ausgabebenachrichtigung 8 und sendet sie an die vorbestimmten Zertifikatvalidierungsserver 4 oder
an jene Zertifikatvalidierungsserver 4, die durch Senden
der Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung
die Übertragung
der CRL-Ausgabebenachrichtigung 8 angefordert haben (Schritt 3103).
-
Bei
dieser Ausführungsform
sendet die Zertifizierungsstelle 1 die CRL-Ausgabebenachrichtigung 8 an
die Zertifikatvalidierungsserver 4, deren Hostnamen in
der Übertragungszielliste 104 für CRL-Ausgabebenachrichtigungen
stehen.
-
6A zeigt
ein Beispiel für
eine von der Zertifizierungsstelle 1 verwaltete Übertragungszielliste 104 für CRL-Ausgabebenachrichtigungen,
die den Hostnamen eines Zertifikatvalidierungsserver 41 und den Hostnamen eines Zertifikatvalidierungsserver 4n enthält.
-
Dadurch
sendet die CRL-Ausgabebenachrichtigungsfunktion 103 der
Zertifizierungsstelle 1 die CRL-Ausgabebenachrichtigung 8 an
den Zertifikatvalidierungsserver 41 und
den Zertifikatvalidierungsserver 4n .
-
Als
Nächstes
wird der Betriebsablauf im CRL-Speicher 3 beschrieben.
-
Die
CRL-Datenbank-Verwaltungsfunktion 302 des CRL-Speichers 3 wartet
auf einen Zugriff von der Zertifizierungsstelle 1 oder
dem Zertifikatvalidierungsserver 4. Bei Empfang einer CRL 7 von
der Zertifizierungsstelle 1 (Schritt 3301) speichert
die CRL-Datenbank-Verwaltungsfunktion 302 die CRL 7 in
der CRL-Datenbank 301 (Schritt 3302) und wartet erneut
auf einen Zugriff von der Zertifizierungsstelle 1 oder
dem Zertifikatvalidierungsserver 4.
-
Bei
Empfang einer Aufforderung von dem Zertifikatvalidierungsserver 4 zum
Senden einer CRL 7 (Schritt 3303) sucht die CRL-Datenbank-Verwaltungsfunktion 302 in
der CRL-Datenbank 301 nach der
CRL 7 (Schritt 3304), sendet sie an den anfordernden
Server 4 und wartet erneut auf einen Zugriff von der Zertifizierungsstelle 1 oder
dem Zertifikatvalidierungsserver 4.
-
Als
Nächstes
wird der Betriebsablauf in den Zertifikatvalidierungsservern 4 erläutert.
-
Hier
wird der Betrieb des Zertifikatvalidierungsservers 4 anhand
eines Beispiels für
den Betrieb des Zertifikatvalidierungsserver 41 beschrieben, wenn
dieser die CRL-Ausgabebenachrichtigung 8 von der Zertifizierungsstelle 1 empfängt.
-
Wenn
die CRL-Ausgabebenachrichtigungs-Verwaltungsfunktion 406 in
dem Zertifikatvalidierungsserver 41 eine
CRL-Ausgabebenachrichtigung 8 von
einer Zertifizierungsstelle 1 oder einem anderen Zertifikatvalidierungsserver 4 empfängt, (Schritt 3401),
prüft sie
zuerst, ob sie die CRL-Ausgabebenachrichtigung 8 bereits
empfangen hat (Schritt 3402), und beendet die Verarbeitung,
wenn festgestellt wird, dass die CRL-Ausgabebenachrichtigung 8 bereits
empfangen worden ist.
-
Wenn
festgestellt wird, dass die CRL-Ausgabebenachrichtigung 8 erstmals
empfangen worden ist, greift die CRL-Verwaltungsfunktion 405 auf
den CRL-Speicher 3 zu (Schritt 3403), entnimmt
die CRL 7 (Schritt 3404) und speichert sie im
CRL-Cachespeicher 401 (Schritt 3405).
-
Danach überträgt die CRL-Ausgabebenachrichtigungs-Verwaltungsfunktion 406 die
CRL-Ausgabebenachrichtigung 8 an andere vorregistrierte
Zertifikatvalidierungsserver 4 oder an jene Server, die durch
Senden der Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung
zur Übertragung
der CRL-Ausgabebenachrichtigung 8 aufgefordert haben (Schritt 3406).
-
Der
Zertifikatvalidierungsserver 4 verwendet eine Weiterleitungszielliste 408 für CRL-Ausgabebenachrichtigungen,
um die Zertifikatvalidierungsserver 4 zu verwalten, an
die die CRL-Ausgabebenachrichtigung 8 weitergeleitet werden
soll.
-
6B zeigt
ein Beispiel für
die von dem Zertifikatvalidierungsserver 41 verwaltete
Weiterleitungszielliste 408 für CRL-Ausgabebenachrichtigungen,
die einen Hostnamen des Zertifikatvalidierungsservers 42 , einen Hostnamen des Zertifikatvalidierungsservers 43 und einen Hostnamen des Zertifikatvalidierungsservers 4n enthält.
-
Auf
diese Weise leitet die CRL-Ausgabebenachrichtigungs-Verwaltungsfunktion 406 die CRL-Ausgabebenachrichtigung 8 an
den Zertifikatvalidierungsserver 42 ,
den Zertifikatvalidierungsserver 43 und
den Zertifikatvalidierungsserver 4n weiter.
-
Bei
dieser Ausführungsform
sind die Hostnamen der Zertifikatvalidierungsserver 41 bis 4n immer in
einer der in den Zertifikatvalidierungsservern 41 bis 4n geführten Weiterleitungsziellisten 408 für CRL-Ausgabebenachrichtigungen
enthalten.
-
Wenn
bei diesem Aufbau einer der Zertifikatvalidierungsserver 4 eine
CRL-Ausgabebenachrichtigung 8 von der Zertifizierungsstelle 1 empfängt, kann die
CRL-Ausgabebenachrichtigung 8 mit Sicherheit an alle Zertifikatvalidierungsserver 41 bis 4n gesendet werden.
-
Wenn
ein neuer Zertifikatvalidierungsserver 4 hinzugefügt werden
muss, kann dies ohne Änderung
der Übertragungszielliste 104 für CRL-Ausgabebenachrichtigungen
erfolgen, indem einfach der Hostname des neuen Zertifikatvalidierungsservers 4 zu
einer der von den Zertifikatvalidierungsservern 41 bis 4n geführten Weiterleitungsziellisten 408 für CRL-Ausgabebenachrichtigungen
hinzugefügt
wird.
-
Vorstehend
ist der Betriebsablauf in dem auf digitalen Signaturen basierenden
System in 1 bei Ausgabe einer CRL 7 beschrieben.
-
Als
Nächstes
wird unter Bezugnahme auf die Zeichnungen der Betriebsablauf in
dem Austauschsystem für
digital signierte elektronische Dokumente in 1 beschrieben,
wenn ein elektronisches Dokument 6 von einem Client-Terminal 51 an ein Client-Terminal 52 übertragen
wird.
-
Bei
dieser Ausführungsform
gibt es zwei Fälle:
Bei dem einen Fall ist das Zertifikat 509 zum Verifizieren
einer an dem elektronischen Dokument 6 angebrachten digitalen
Signatur an das elektronische Dokument 6 angehängt, während es
bei dem anderen Fall nicht an das elektronische Dokument 6 angehängt ist.
Zuerst wird der Fall betrachtet, bei dem das Zertifikat 509 zum
Validieren der digitalen Signatur an das elektronische Dokument 6 angehängt ist.
-
4 zeigt
den Betrieb des Client-Terminals 51 ,
des Client-Terminals 52 , des Zertifikatvalidierungsservers 41 und des Zertifikatvalidierungsservers 42 in dem Austauschsystem für digital
signierte elektronische Dokumente in 1, wenn
das Zertifikat 509 zum Validieren einer digitalen Signatur,
die an einem von dem Client-Terminal 51 an
das Client-Terminal 52 gesendeten
elektronischen Dokument 6 angebracht ist, an das elektronische
Dokument 6 angehängt
ist.
-
Zuerst
wird der Betriebsablauf im Client-Terminal 51 erläutert.
-
Wenn
die elektronische Dokumentenaustauschfunktion 501 des Client-Terminals 51 das elektronische Dokument 6 zur Übertragung
an das Client-Terminal 52 erzeugt
(Schritt 4501), bringt die digitale Signaturfunktion 502 unter
Verwendung des privaten Schlüssels 5081 eine digitale Signatur an dem elektronischen
Dokument 6 an (Schritt 4502).
-
Als
Nächstes
sendet die elektronische Dokumentenaustauschfunktion 501 das
digital signierte elektronische Dokument 6 zusammen mit
dem Zertifikat 5091 an das Client-Terminal 52 (Schritt 4503).
-
Als
Nächstes
wird der Betriebsablauf im Client-Terminal 52 erläutert.
-
Wenn
das Client-Terminal 52 das elektronische
Dokument 6 empfängt
(Schritt 4511), fordert die Aufforderungsfunktion 503 für die Zertifikatvalidierung
des Client-Terminals 52 den Zertifikatvalidierungsserver 41 auf, die Gültigkeit des zusammen mit dem
elektronischen Dokument 6 empfangenen Zertifikats 5091 zu validieren (Schritt 4512),
und empfängt ein
Ergebnis der Validierung von dem Zertifikatvalidierungsserver 41 (Schritt 4513).
-
Wenn
als Ergebnis der Validierung festgestellt wird, dass das Zertifikat 5091 für
das Client-Terminal 52 nicht gültig ist,
beendet das Terminal seine Verarbeitung.
-
Wenn
als Ergebnis der Validierung festgestellt wird, dass das Zertifikat 5091 für
das Client-Terminal 52 gültig ist,
entnimmt die digitale Signaturfunktion 502 einen öffentlichen
Schlüssel
aus dem Zertifikat 5091 und validiert
die an dem elektronischen Dokument 6 angebrachte digitale
Signatur (Schritt 4515). Wenn festgestellt wird, dass die
digitale Signatur nicht korrekt ist, endet die Verarbeitung.
-
Wenn
die digitale Signatur für
korrekt befunden wird, wird das elektronische Dokument 6 gespeichert
(Schritt 4516).
-
Als
Nächstes
wird der Betriebsablauf in den Zertifikatvalidierungsservern 4 beschrieben.
-
Wenn
der Zertifikatvalidierungsserver 41 von dem
Client-Terminal 52 aufgefordert
wird, das Zertifikat 5091 zu validieren
(Schritt 4401), prüft
die Zertifikatvalidierungsfunktion 403 zuerst, ob ein Zertifizierungspfad
von dem Client-Terminal 52 zu dem
Client-Terminal 51 im Zertifizierungspfad-Cachespeicher 402 existiert
(Schritt 4402).
-
Wenn
der Zertifizierungspfad im Zertifizierungspfad-Cachespeicher 402 existiert,
geht die Zertifikatvalidierungsfunktion 403 weiter zu Schritt 4404. Wenn
der betreffende Zertifizierungspfad im Zertifizierungspfad-Cachespeicher 402 nicht
existiert, erkennt die Zertifikatvalidie rungsfunktion 403 den
Zertifizierungspfad (Schritt 4403), ehe sie mit Schritt 4404 fortfährt.
-
In
Schritt 4404 entnimmt die Zertifikatvalidierungsfunktion 403 eine
CRL 7 aus dem CRL-Cachespeicher 401 und prüft, ob der
Zertifizierungspfad gültig
ist oder nicht. Danach sendet sie das Prüfergebnis an das Client-Terminal 52 (Schritt 4405).
-
Ist
der fragliche Zertifizierungspfad kein neu erkannter, wird die Verarbeitung
beendet. Ist andererseits der Zertifizierungspfad derjenige, der
in Schritt 4403 neu erkannt worden ist, wird er an den Zertifikatvalidierungsserver 4 gesendet,
dessen Hostname in einer Zertifizierungspfad-Übertragungszielliste 409 steht
(Schritt 4407), ehe die Verarbeitung beendet wird.
-
Die
Zertifizierungspfad-Übertragungszielliste 409 ist
eine Liste mit Hostnamen der Zertifikatvalidierungsserver 4,
an die der neu erkannte Zertifizierungspfad übermittelt werden soll. Bei
dieser Ausführungsform
wird die Weiterleitungszielliste 408 für CRL-Ausgabebenachrichtigungen
auch als die Zertifizierungspfad-Übertragungszielliste 409 verwendet.
-
Daher
wird in Schritt 4407 der Zertifizierungspfad an den Zertifikatvalidierungsserver 42 , den Zertifikatvalidierungsserver 43 und den Zertifikatvalidierungsserver 4n gesendet.
-
Auch
wenn bei dieser Ausführungsform
dieselbe Liste als die Weiterleitungszielliste 408 für CRL-Ausgabebenachrichtigungen
und die Zertifizierungspfad-Übertragungszielliste 409 verwendet
wird, ist die vorliegende Erfindung nicht auf diesen Aufbau beschränkt und
kann unterschiedliche Listen verwenden.
-
Wenn
der Zertifikatvalidierungsserver 42 ,
der Zertifikatvalidierungsserver 43 und
der Zertifikatvalidierungsserver 4n den
Zertifizierungspfad von dem Zertifikatvalidierungsserver 41 empfangen (Schritt 4411),
prüft die
Zertifizierungspfad-Verwaltungsfunktion 407, ob der Zertifizie rungspfad
im Zertifizierungspfad-Cachespeicher 402 gespeichert ist (Schritt 4412).
-
Ist
der Zertifizierungspfad im Zertifizierungspfad-Cachespeicher 402 gespeichert,
endet die Verarbeitung ohne einen weiteren Vorgang. Ist der Zertifizierungspfad
nicht im Zertifizierungspfad-Cachespeicher 402 gespeichert,
speichert die Zertifizierungspfad-Verwaltungsfunktion 407 ihn
im Zertifizierungspfad-Cachespeicher 402 (Schritt 4413),
sendet den Zertifizierungspfad an den Zertifikatvalidierungsserver 4,
dessen Hostname in der Zertifizierungspfad-Übertragungszielliste 409 steht
(Schritt 4414), und beendet dann die Verarbeitung.
-
Während bei
dieser Ausführungsform
die Zertifizierungspfad-Verwaltungsfunktion 407 des Zertifikatvalidierungsservers 4 den
Zertifizierungspfad sendet/empfängt
und im Cachespeicher speichert, ist die vorliegende Erfindung nicht
auf diesen Aufbau beschränkt.
So ist es zum Beispiel möglich,
dass die Zertifizierungspfad-Verwaltungsfunktion 407 Zertifizierungspfadinformationen
sendet/empfängt
und im Cachespeicher speichert, die eine eindeutige Identifizierung
des Zertifizierungspfads gestatten, oder den entsprechenden Zertifizierungspfad
nach Bedarf anhand der Zertifizierungspfadinformationen einrichtet.
-
Vorstehend
ist der Betriebsablauf in dem Austauschsystem für digital signierte elektronische Dokumente
in 1 beschrieben, wenn ein Zertifikat 509 zum
Verifizieren einer digitalen Signatur an einem elektronischen Dokument
an das elektronische Dokument 6 angehängt ist, das von dem Client-Terminal 51 an das Client-Terminal 52 gesendet wird.
-
Als
Nächstes
wird unter Bezugnahme auf die Zeichnungen der Betriebsablauf in
dem Austauschsystem für
digital signierte elektronische Dokumente in 1 für den Fall
beschrieben, dass das Zertifikat 509 zum Validieren einer
digitalen Signatur an einem von dem Client-Terminal 51 an das Client-Terminal 52 gesendeten elektronischen Dokument 6 nicht
an das elektronische Dokument 6 angehängt ist.
-
5 zeigt
den Betrieb des Client-Terminals 51 ,
des Client-Terminals 52 , des Zertifikatvalidierungsservers 4 und
des Zertifikatspeichers 2 in dem Austauschsystem für digital
signierte elektronische Dokumente in 1, wenn
das Zertifikat 509 zum Validieren einer digitalen Signatur,
die an einem von dem Client-Terminal 51 an
das Client-Terminal 52 gesendeten elektronischen Dokument 6 angebracht
ist, nicht an das elektronische Dokument 6 angehängt ist.
-
Zunächst wird
der Betriebsablauf im Client-Terminal 51 erläutert.
-
Wenn
die elektronische Dokumentenaustauschfunktion 501 des Client-Terminals 51 ein an das Client-Terminal 52 zu übermittelndes elektronisches
Dokument 6 erzeugt (Schritt 5501), bringt die digitale
Signaturfunktion 502 unter Verwendung des privaten Schlüssels 5081 eine digitale Signatur an dem elektronischen
Dokument 6 an (Schritt 5502).
-
Als
Nächstes überträgt die elektronische
Dokumentenaustauschfunktion 501 das digital signierte elektronische
Dokument 6 mit einer URL, die den Speicherort des Zertifikats 5091 angibt, an das Client-Terminal 52 (Schritt 5503).
-
Auch
wenn bei dieser Ausführungsform
eine URL, die den Speicherort des Zertifikats 509 angibt, zusammen
mit dem elektronischen Dokument 6 übertragen wird, ist die vorliegende
Erfindung nicht auf diesen Aufbau beschränkt. Es ist zum Beispiel möglich, einen
Teil der in dem Zertifikat 509 enthaltenen Informationen
zu übertragen.
-
Als
Nächstes
wird der Betriebsablauf im Client-Terminal 52 erläutert.
-
Wenn
das Client-Terminal 52 das elektronische
Dokument 6 empfängt
(Schritt 5511), fordert die Aufforderungsfunktion 504 für die Zertifikaterfassung den
Zertifikatvalidierungsserver 41 auf,
das der zusammen mit dem elektronischen Dokument 6 übertragenen
URL entsprechende Zertifikat 5091 einzuholen
(Schritt 5512), und empfängt ein Ergebnis der Aufforderung
von dem Zertifikatvalidierungsserver 41 (Schritt 5513).
-
Wenn
das Ergebnis der Aufforderung das Zertifikat 5091 nicht
enthält,
das heißt
der Zertifikatvalidierungsserver 41 entscheidet,
dass das durch die URL angegebene Zertifikat 5091 für das Client-Terminal 52 nicht gültig ist, wird die Verarbeitung
beendet. Enthält
das Ergebnis der Aufforderung das Zertifikat 5091 ,
entnimmt die Aufforderungsfunktion 503 für die Zertifikatvalidierung
einen öffentlichen
Schlüssel
aus dem Zertifikat 5091 , um die
an dem elektronischen Dokument 6 angebrachte digitale Signatur
zu validieren (Schritt 5515). Stellt die Validierung fest,
dass die digitale Signatur nicht korrekt ist, wird die Verarbeitung
gestoppt. Wird die digitale Signatur für korrekt befunden, wird sie
gespeichert (Schritt 5516), ehe die Verarbeitung endet.
-
Als
Nächstes
wird der Betriebsablauf in den Zertifikatvalidierungsservern 4 beschrieben.
-
Bei
Empfang einer Aufforderung von dem Client-Terminal 52 zur Erfassung des Zertifikats 5091 (Schritt 5401) greift die
Zertifikaterfassungsfunktion 404 des Zertifikatvalidierungsservers 41 unter Verwendung der von dem Client-Terminal 52 gesendeten URL auf den Zertifikatspeicher 2 zu
(Schritt 5402), um das Zertifikat 5091 zu
erhalten (Schritt 5403).
-
Danach
prüft die
Zertifikatvalidierungsfunktion 403, ob das Zertifikat 5091 für
das Client-Terminal 52 gültig ist
(Schritt 5404).
-
Der
Betriebsablauf der Zertifikatvalidierungsfunktion 403 ist
derselbe wie der von Schritt 4402 bis Schritt 4409 in 4 und
auf eine weitere Erklärung wird
hier verzichtet.
-
Wird
bei der Prüfung
festgestellt, dass das Zertifikat 5091 für das Client-Terminal 52 gültig
ist, erzeugt die Zertifikatvalidierungsfunktion 403 ein
Ergebnis für
die Aufforderung mit dem Zertifikat 5091 (Schritt 5405)
und sendet es an das Client-Terminal 52 (Schritt 5407).
Wird andererseits festgestellt, dass das Zertifikat 5091 für
das Client-Terminal 52 nicht gültig ist,
erzeugt die Zertifikatvalidierungsfunktion 403 ein Ergebnis
für die
Aufforderung, das angibt, dass „das Zertifikat nicht gültig ist" (Schritt 5406),
und sendet es an das Client-Terminal 52 (Schritt 5407).
-
Als
Nächstes
wird der Betriebsablauf im Zertifikatspeicher 2 erläutert.
-
Bei
Empfang einer Aufforderung von dem Zertifikatvalidierungsserver 41 zum Senden des Zertifikats 5091 (Schritt 5201) sucht die
Zertifikatdatenbank-Verwaltungsfunktion 202 in der Zertifikatdatenbank 201 nach
dem Zertifikat 5091 (Schritt 5202)
und sendet es an den Zertifikatvalidierungsserver 4 (Schritt 5203).
-
Vorstehend
ist der Betriebsablauf in dem Austauschsystem für digital signierte elektronische Dokumente
in 1 beschrieben, wenn ein Zertifikat 509 zur
Verifizierung einer an einem elektronischen Dokument angebrachten
digitalen Signatur nicht an das elektronische Dokument 6 angehängt ist,
das von dem Client-Terminal 51 an
das Client-Terminal 52 gesendet
wird.
-
In
dem Austauschsystem für
digital signierte elektronische Dokumente nach dieser Ausführungsform,
wie vorstehend beschrieben, sendet die Zertifizierungsstelle 1 bei
Ausgabe einer CRL 7 eine CRL-Ausgabebenachrichtigung 8 an
die Zertifikatvalidierungsserver 4, deren Hostnamen in
der Übertragungszielliste 104 für CRL-Ausgabebenachrichtigungen
stehen, um so die Zertifikatvalidierungsserver 4 zu benachrichtigen,
dass sie die CRL 7 ausgegeben hat. Die Zertifikatvalidierungsserver 4,
die die CRL-Ausgabebenachrichtigung 8 empfangen haben, erfassen
die CRL 7 aus dem CRL-Speicher 3 und speichern
sie im Cachespeicher.
-
Daher
kann, wenn die Zertifizierungsstelle 1 eine CRL 7 in
einer dringenden Situation ausgibt, weil die von diesen Zertifikatvalidierungsservern 4 im
Cachespeicher gespei cherten CRL die neuesten sind, die Genauigkeit
der Validierung des Zertifikats 509 sichergestellt werden.
-
Außerdem übertragen
in dem Austauschsystem für
digital signierte elektronische Dokumente nach dieser Ausführungsform
die Zertifikatvalidierungsserver 4, die die CRL-Ausgabebenachrichtigung 8 empfangen
haben, die CRL-Ausgabebenachrichtigung 8 an andere Zertifikatvalidierungsserver 4, deren
Hostnamen in der Weiterleitungszielliste 408 für CRL-Ausgabebenachrichtigungen
stehen.
-
Daher
kann ein neuer Zertifikatvalidierungsserver 4 hinzugefügt werden,
indem einfach der Hostname des neuen Zertifikatvalidierungsservers 4 in
die Weiterleitungszielliste 408 für CRL-Ausgabebenachrichtigungen
im Zertifikatvalidierungsserver 4 eingetragen wird, um
die CRL-Ausgabebenachrichtigung 8 an den neuen Server weiterzuleiten,
ohne Einstellungen auf der Seite der Zertifizierungsstelle 1 ändern zu
müssen.
-
Wenn
der Zertifikatvalidierungsserver 4 in dem Austauschsystem
für digital
signierte elektronische Dokumente nach dieser Ausführungsform
einen Zertifizierungspfad von einem anderen Zertifikatvalidierungsserver 4 empfängt, speichert
er den empfangenen Zertifizierungspfad außerdem im Cachespeicher. Wenn
er einen neuen Zertifizierungspfad erkennt, sendet der Zertifikatvalidierungsserver 4 den neuen
Zertifizierungspfad an andere Zertifikatvalidierungsserver 4,
deren Hostnamen in der Zertifizierungspfad-Übertragungszielliste 409 stehen.
-
Dieser
Aufbau ermöglicht
es, den Zertifizierungspfad gemeinsam unter mehreren Zertifikatvalidierungsservern 4 zu
nutzen, wodurch verhindert wird, dass sich die Zugriffe auf den
Zertifikatspeicher 2 und den CRL-Speicher 3 konzentrieren
oder dass sich die Belastung im Netz erhöht.
-
Außerdem fordert
in dem Austauschsystem für
digital signierte elektronische Dokumente nach dieser Ausführungsform
das Client-Terminal 5, wenn es eine URL empfängt, die
den Speicherort des Zertifikats 509 angibt, anstatt auf
den Zertifikatspeicher 2 zuzugreifen, den Zertifikatvalidierungsserver 4 auf, das
Zertifikat 509 einzuholen. Nur wenn das aus dem Zertifikatspeicher 2 erhaltene
Zertifikat 509 für
das Client-Terminal 5 gültig
ist, liefert der Zertifikatvalidierungsserver 4 das Zertifikat 509 als
Ergebnis an das anfordernde Client-Terminal 5.
-
Daher
ist die Funktion zum Zugreifen auf den Zertifikatspeicher 2 in
dem Client-Terminal 5 nicht nötig.
-
Während bei
dieser Ausführungsform
die CRL-Ausgabebenachrichtigung 8 nur Informationen transportiert,
die besagen, dass „eine
CRL ausgegeben worden ist",
ist die vorliegende Erfindung nicht auf diesen Aufbau beschränkt.
-
Die
CRL-Ausgabebenachrichtigung 8 kann zum Beispiel eine neu
ausgegebene CRL 7 oder Informationen über den Unterschied zwischen
einer früher
ausgegebenen CRL 7 und einer neu ausgegebenen CRL 7 enthalten.
Die CRL-Ausgabebenachrichtigung 8 kann auch eine Liste
von Identifikationsinformationen für neuerlich widerrufene Zertifikate 509 enthalten.
-
Indem
eine neu ausgegebene CRL 7 selbst, Informationen über den
Unterschied zwischen der früher
ausgegebenen CRL 7 und der neu ausgegebenen CRL 7 und
eine Liste von Identifikationsinformationen für neuerlich widerrufene Zertifikate 509 in die
CRL-Ausgabebenachrichtigung 8 eingefügt werden, kann der Zertifikatvalidierungsserver 4,
der die CRL-Ausgabebenachrichtigung 8 empfangen hat, ohne
den Schritt für
das Zugreifen auf den CRL-Speicher 3 und das Erfassen der
neu ausgegebenen CRL 7 auskommen.
-
Während bei
dieser Ausführungsform
das Übertragen
der CRL-Ausgabebenachrichtigung 8 und das Empfangen der
Aufforderungsnachricht 10 für die CRL-Ausgabebenachrichtigung
von der Zertifizierungsstelle 1 durchgeführt werden,
ist die vorliegende Erfindung nicht auf diesen Aufbau beschränkt. Das Übertragen
der CRL-Ausgabebenachrichtigung 8 und das Empfangen der
Aufforderungsnachricht 10 für die CRL-Aus gabebenachrichtigung
können
zum Beispiel auch durch den CRL-Speicher 3 erfolgen.
-
Alternativ
kann eine CRL-Prüfsoftware
in den CRL-Speicher 3 eingeführt werden, um eine Funktion
zu realisieren, die die Ausgabe der CRL 7 überwacht
und bei Feststellung dessen, dass eine neue CRL 7 ausgegeben
worden ist, die CRL-Ausgabebenachrichtigung 8 übermittelt.
Die CRL-Prüfsoftware
kann auch die Aufforderungsempfangsfunktion für CRL-Ausgabebenachrichtigungen
realisieren. Die Übertragungsfunktion
für CRL-Ausgabebenachrichtigungen
kann die CRL-Ausgabebenachrichtigung an eine einleitende Quelle
der Aufforderungsnachricht für
die CRL-Ausgabebenachrichtigung senden.
-
Die
CRL-Prüfsoftware
ermöglicht
die Verwendung der Zertifizierungsstelle 1 und des CRL-Speichers 3,
die über
keine Übertragungsfunktion
für CRL-Ausgabebenachrichtigungen
verfügen. Außerdem lässt sich
durch Verwalten der Ziele der CRL-Ausgabebenachrichtigung durch
die Aufforderungsempfangsfunktion für CRL-Ausgabebenachrichtigungen
die Anzahl der Zertifikatvalidierungsserver flexibel ändern, auch
wenn der Administrator des CRL-Speichers und der Administrator der
Zertifikatvalidierungsserver unterschiedlich sind.
-
Weil
bei dieser Ausführungsform
die CRL-Ausgabebenachrichtigung 8 von der Zertifizierungsstelle
nur dann an den Zertifikatvalidierungsserver gesendet wird, wenn
sie eine CRL ausgibt, ist es nicht nötig, in vorbestimmten Intervallen
zu prüfen,
ob eine CRL ausgegeben worden ist oder nicht. Dies verringert die
Belastung im Netz 0.
-
Außerdem kann,
weil die CRL-Ausgabebenachrichtigung 8 von der Zertifizierungsstelle 1 ausgegeben
wird, auch wenn der Administrator des CRL-Speichers 3 und
der Administrator des Zertifikatvalidierungsservers 4 unterschiedlich
sind, ein hohes Maß an
Genauigkeit bei der Zertifikatvalidierung sichergestellt werden.
-
Weil
der Zertifikatvalidierungsserver 4 durch Senden der Aufforderungsnachricht 10 für die CRL-Ausgabebenach richtigung
zum Übertragen
der CRL-Ausgabebenachrichtigung 8 auffordern kann, ist
es außerdem
möglich,
die Anzahl der Zertifikatvalidierungsserver 4 flexibel
zu ändern,
wenn der Administrator des CRL-Speichers 3 und der Administrator der
Zertifikatvalidierungsserver 4 unterschiedlich sind.
-
Wenn
der Zertifikatvalidierungsserver feststellt, dass eine neue CRL
ausgegeben worden ist, benachrichtigt er außerdem andere Zertifikatvalidierungsserver über die
Ausgabe der neuen CRL.
-
Wenn
die Zertifikatvalidierungsserver geändert werden sollen, an die
die CRL-Ausgabebenachrichtigung gesendet werden muss, braucht nur
die Einstellung des Zertifikatvalidierungsservers geändert zu
werden, wodurch es möglich
ist, die Anzahl der Zertifikatvalidierungsserver flexibel zu ändern, auch
wenn der Administrator des CRL-Speichers und der Administrator der
Zertifikatvalidierungsserver unterschiedlich sind.
-
Außerdem wird,
wenn der Zertifikatvalidierungsserver neuerlich einen Zertifizierungspfad
erkennt, der neue Zertifizierungspfad an andere Zertifikatvalidierungsserver übertragen,
so dass er gemeinsam unter den Servern genutzt werden kann. Dieser
Aufbau verhindert daher, dass die Zugriffe auf den CRL-Speicher
und den Zertifikatspeicher übermäßig zunehmen
und dass sich die Belastung im Netz erhöht.
-
In
einem Fall, in dem ein Zertifikat unabhängig von einem elektronischen
Dokument erhalten wird, fordert außerdem der Client, anstatt
auf den Zertifikatspeicher zuzugreifen, um das Zertifikat zu erhalten,
den Zertifikatvalidierungsserver auf, das Zertifikat einzuholen
und zu validieren. Bei diesem Aufbau ist es nicht nötig, dass
der Client über
die Funktion zum Zugreifen auf den Zertifikatspeicher verfügt, um das
Zertifikat zu erhalten.
-
Die
vorliegende Erfindung ermöglicht
daher die zuverlässige
Ausführung
der Validierung eines Zertifikats mit hoher Genauigkeit und geringer
Belastung.