OpenSSL Zertifikate / Schlüssel validieren

Um zu validieren, ob ein Schlüssel und ein Zertifikat miteinander matchen, muss man einfach den Inhalt von Zertifikat und Schlüssel miteinander vergleichen:

openssl x509 -in file.pem -noout -text

openssl rsa -in file.key -noout -text

Hier gibt es bei beidem eine Sektion „Modulus“. Wenn diese identisch ist, passen Zertifikat und Schlüssel zueinander, ansonsten nicht.

Beispiel:

Cert1

openssl genrsa -out test1.key 2048
openssl req -x509 -new -nodes -key test1.key -sha256 -days 365 -out test1.pem

Cert2

openssl genrsa -out test2.key 2048
openssl req -x509 -new -nodes -key test1.key -sha256 -days 365 -out test2.pem
Vergleich:

Wenn man nun die Modulus Sektion von Key1 und Cert1 vergleicht:

openssl x509 -in test1.pem -noout -text
openssl rsa -in test1.key -noout -text

sollte dies übereinstimmen, das selbe wäre auch bei Key2 und Cert2 der Fall.

Key1 und Cert2 sowie umgekehrt Key2 und Cert1 sollten aber ungleiche Modulus Sektionen aufweisen:

openssl x509 -in test1.pem -noout -text
openssl rsa -in test2.key -noout -text