Falscher Berechtigungsschlüsselbezeichner bei openssl end cert

4583
Huckle

Ich bekomme interessante Ergebnisse, wenn ich ein End-Server-Zertifikat mit einer zwischengeschalteten Zertifizierungsstelle mit openssl signiere.

Ich habe eine Root-CA, die folgendermaßen aussieht:

Serial Number: 14296918985177649921 (0xc668dc11960d5301) Issuer: C=US, ST=xROOTx, L=xROOTx, O=xROOTx, CN=xROOTx Subject: C=US, ST=xROOTx, L=xROOTx, O=xROOTx, CN=xROOTx X509v3 Subject Key Identifier: 1A:E5:27:E9:EF:2F:90:A7:13:91:1A:12:A9:3A:1D:AE:BA:1E:B8:35 

Welche hat eine Zwischenzertifizierungsstelle unterschrieben, die so aussieht:

Serial Number: 0 (0x0) Issuer: C=US, ST=xROOTx, L=xROOTx, O=xROOTx, CN=xROOTx Subject: C=US, ST=xINTERx, O=xINTERx, CN=xINTERx X509v3 Authority Key Identifier: keyid:1A:E5:27:E9:EF:2F:90:A7:13:91:1A:12:A9:3A:1D:AE:BA:1E:B8:35 DirName:/C=US/ST=xROOTx/L=xROOTx/O=xROOTx/CN=xROOTx serial:C6:68:DC:11:96:0D:53:01 X509v3 Subject Key Identifier: 16:BF:D6:2F:0D:58:A5:C3:84:95:4B:F6:FE:27:3E:0B:79:0C:6F:04 

Und wenn ich das End-Server-Zertifikat unterschreibe, bekomme ich Folgendes:

Serial Number: 1 (0x1) Issuer: C=US, ST=xINTERx, O=xINTERx, CN=xINTERx Subject: C=US, ST=xENDx, O=xENDx, CN=xENDx X509v3 Authority Key Identifier: keyid:16:BF:D6:2F:0D:58:A5:C3:84:95:4B:F6:FE:27:3E:0B:79:0C:6F:04 DirName:/C=US/ST=xROOTx/L=xROOTx/O=xROOTx/CN=xROOTx serial:00 X509v3 Subject Key Identifier: 3B:86:64:4B:80:EE:BF:92:0D:A9:D6:FD:8C:FD:DD:FF:55:55:C6:11 

Dies zeigt die richtige KeyId und Serial von der Zwischenzertifizierungsstelle an, aber den falschen DirName, der aus irgendeinem Grund der DN der Stammzertifizierungsstelle ist.

3

1 Antwort auf die Frage

2
Coffee Monkey

Das ist normales Verhalten.

Der DirName im Authority Key Identifier ist eigentlich der Betreff des Emittenten des Emittenten. Wenn Sie nur den Betreff des Emittenten angeben, wird der bereits im Zertifikat vorhandene Emittenten-DN dupliziert.

Dies ist eine häufig gestellte Frage, die auch in den OpenSSL-FAQs beantwortet wird

Die Spezifikation macht das wirklich nicht klar. Der erste Satz ist ziemlich eindeutig, aber der zweite Satz scheint darauf hinzuweisen, dass es sich um den Namen des Ausstellers und die Seriennummer des Signaturzertifikats handeln sollte. Die Hälfte davon besteht aus doppelten Informationen, aber die Seriennummer wird nicht dupliziert und ist erforderlich, um den richtigen Schlüssel auszuwählen, wenn für einen bestimmten Aussteller viele vorhanden sind. (RFC2459, Abschnitt 4.2.1.1) "Die Identifizierung kann entweder auf der Schlüsselkennung (der Schlüsselkennung des Antragstellers im Zertifikat des Ausstellers) oder auf dem Namen und der Seriennummer des Ausstellers beruhen." Huckle vor 10 Jahren 0