Zunächst werden zur Unterscheidung zwischen Schlüssel und Zertifikat (in Bezug auf "CA-Schlüssel") drei Elemente verwendet, wenn es um Zertifikate mit öffentlichem Schlüssel (normalerweise X.509) geht: den öffentlichen Schlüssel, den privaten Schlüssel und das Zertifikat. Der öffentliche Schlüssel und der private Schlüssel bilden ein Paar. Sie können mit dem privaten Schlüssel signieren und entschlüsseln, Sie können (eine Signatur) überprüfen und mit dem öffentlichen Schlüssel verschlüsseln. Der öffentliche Schlüssel soll verteilt werden, während der private Schlüssel privat gehalten werden soll.
Ein Public-Key-Zertifikat ist die Kombination zwischen einem öffentlichen Schlüssel und verschiedenen Informationen (hauptsächlich in Bezug auf die Identität des Eigentümers des Schlüsselpaars, der den privaten Schlüssel kontrolliert), wobei diese Kombination mit dem privaten Schlüssel des Ausstellers des signiert wird Zertifikat. Ein X.509-Zertifikat hat einen Betreff-Namen und einen Aussteller-Namen. Der Name des Ausstellers ist der Antragstellername des Zertifikats der Stelle, die das Zertifikat ausstellt. Selbstsignierte Zertifikate sind ein Sonderfall, bei dem der Emittent und das Subjekt identisch sind. Durch das Signieren des Inhalts eines Zertifikats (dh das Ausstellen des Zertifikats) macht der Aussteller seinen Inhalt geltend, insbesondere die Bindung zwischen dem Schlüssel, der Identität (dem Betreff) und den verschiedenen Attributen (die auf die Absicht oder den Umfang der Verwendung des Zertifikats hinweisen können) Zertifikat).
Darüber hinaus definiert die PKIX-Spezifikation eine Erweiterung (Teil eines bestimmten Zertifikats), die angibt, ob ein Zertifikat als CA-Zertifikat verwendet werden darf, dh ob es als Aussteller für ein anderes Zertifikat verwendet werden kann.
Daraus erstellen Sie eine Kette von Zertifikaten zwischen dem Endentitätszertifikat (das Sie für einen Benutzer oder einen Server überprüfen möchten) und einem CA-Zertifikat, dem Sie vertrauen. Zwischen dem End-Entity-Zertifikat Ihres Dienstes und dem CA-Zertifikat, dem Sie vertrauen, befinden sich möglicherweise CA-Zwischenzertifikate (ausgestellt von anderen CA-Zertifikaten). Sie benötigen nicht unbedingt eine Stammzertifizierungsstelle oben (ein selbstsigniertes Zertifizierungsstellenzertifikat), aber dies ist häufig der Fall (Sie können einem Zwischenzertifizierungsstellenzertifikat direkt vertrauen, wenn Sie dies wünschen).
Wenn Sie für Ihren Anwendungsfall ein selbstsigniertes Zertifikat für einen bestimmten Dienst generieren, spielt es keine Rolle, ob es das CA-Flag (Erweiterung für grundlegende Einschränkungen) hat. Sie benötigen ein CA-Zertifikat, um andere Zertifikate ausstellen zu können (wenn Sie eine eigene PKI erstellen möchten). Wenn das Zertifikat, das Sie für diesen Dienst generieren, ein CA-Zertifikat ist, sollte es keinen Schaden anrichten. Was noch wichtiger ist, ist die Art und Weise, wie Sie Ihren Client so konfigurieren können, dass er diesem Zertifikat für diesen bestimmten Server vertraut (mit Browsern sollten Sie beispielsweise ganz einfach eine explizite Ausnahme machen können). Wenn der Konfigurationsmechanismus einem PKI-Modell folgt (ohne bestimmte Ausnahmen zu verwenden), sollten Sie das Zertifikat direkt als Teil der Vertrauensanker von importieren können, da keine Kette (mit nur einem Zertifikat) erstellt werden muss Ihr Kunde, ob es '