Seit "Geotrustglobalca" und "/ C = US/O = GeoTrust Inc./CN = GeoTrust Global CA" sind nicht wirklich vergleichbar.
Ich werde in den Pool mit einer Antwort für "X.509 Certificate Äquivalenz" wandern, da es nicht sofort offensichtlich oder leicht zu bekommen.
Zuerst sollten Sie vorsichtig sein, Zertifikate auf Gleichheit zu vergleichen. Wenn <certificate bits 1> == <certificate bits 2>
, dann können Sie sagen, dass sie das gleiche Zertifikat und gleich sind. Das Gegenteil gilt jedoch nicht.
Um das Gegenteil zu verstehen, müssen Sie zwei Dinge wissen. Erstens stellen Zertifizierungsstellen manchmal ein Zertifikat mit nahezu denselben Parametern erneut aus. Basierend auf dem Antragstellernamen sind sie gleichwertig; aber basierend auf den Bits sind sie nicht gleich. Einige Zertifizierungsstellen haben dies in der Vergangenheit getan, um von SHA-1 zu SHA-256 zu stoßen.
Die zweite Sache zu verstehen ist, was sind die wichtigen Bits, damit Sie feststellen können, ob Zertifikate gleichwertig sind. Die IETF hat kein X.509-Validierungsdokument. Der nächste ist RFC 4158: Internet X.509 Public Key Infrastructure: Certification Path Building, gemischt mit einigen anderen Dokumenten, wie Ausstellungsregeln (die nicht mit Validierungsregeln identisch sind).
Laut RFC 4158, können Sie eindeutig ein Zertifikat mit entweder identifizieren:
{Issuer DN, Serial Number}
Paar
{Authority Key identifier (AKID), Subject Key identifier (SKID)}
Paar
Die Ecke bei einem CA Wieder Ausstellen eines Root CA Ergebnisse in:
- der Hash ändert
- die Seriennummer ändert
- der öffentliche Schlüssel bleibt
- der Distinguished Name bleibt
Artikel (3), der öffentliche Schlüssel bleibt, ist bedeutsam, weil es bedeutet, weder die Authority Key Identifier (AKID) noch die Betreff Schlüsselkennung (SKID) ändert. Artikel (4), der Distinguished Name bleibt, ist wichtig, weil es, was viele Leute für den Vergleich verwenden (und es war die Ursache für viele Sicherheitsfehler im Laufe der Jahre).
In diesem Fall sind die Schlüsselbezeichner identisch, daher sollten Sie in Betracht ziehen, diese zu akzeptieren, auch wenn sich die Seriennummer geändert hat. (Die Seriennummer muss sich entsprechend der IETF- und CA/B-Regeln ändern).
Ein sehr seltsame Ecke Fall, die vor kurzem in der öffentlichen Schlüsseln Pinning kamen, stellt ein Server ein Elliptische-Kurven-Zertifikat mit Domain-Parametern (die vollständige Erweiterung der p
, g
, Q
, etc), aber der Kunde erwartet eine benannte Kurve (wie secp256r1
). Sollte dieser Schlüssel als gleichwertig akzeptiert werden? (Die IETF sagt, dass das Zertifikat die benannte Kurve verwenden muss).
die oben genannten Informationen gegeben, sind diese Informationen in Ihrem Vergleich nutzlos:
Und diese Informationen für Ihren Vergleich unvollständig:
"/C=US/O=GeoTrust Inc./CN=GeoTrust Global CA"
In diesem Fall sollten Sie auf der sicheren Seite bleiben und den Vergleich für Gleichheit oder Äquivalenz ablehnen.
*** 'CN = *. Slack.com' *** ist wahrscheinlich falsch. Server-Namen sollten nicht in den * Common Name (CN) * gehören. Es ist sowohl vom IETF als auch von CA/B Forums veraltet. Wenn sie im CN platziert werden, müssen sie auch im * Subject Alternate Name (SAN) * vorhanden sein (Sie müssen sie in diesem Fall zweimal auflisten). Weitere Regeln und Gründe finden Sie unter [Wie unterschreiben Sie eine Zertifikatsignierungsanforderung mit Ihrer Zertifizierungsstelle] (http://stackoverflow.com/a/21340898/608639) und [So erstellen Sie ein selbstsigniertes Zertifikat mit openssl?] (http://StackOverflow.com/q/10175812/608639) – jww
Stack Overflow ist eine Website für Programmier- und Entwicklungsfragen. Diese Frage scheint off-topic zu sein, weil es nicht um Programmierung oder Entwicklung geht. Siehe [Welche Themen kann ich hier fragen?] (Http://stackoverflow.com/help/on-topic) in der Hilfe. Vielleicht [Super User] (http://superuser.com/) oder [Unix & Linux Stack Exchange] (http://unix.stackexchange.com/) wäre ein besserer Ort, um zu fragen. Siehe auch [Wo veröffentliche ich Fragen zu Dev Ops?] (Http://meta.stackexchange.com/q/134306). – jww