我想驗證證書是否由子CA頒發。我使用下面的命令:驗證BEM中的PEM證書有錯誤但返回代碼OK
openssl verify -verbose -CAfile "/usr/share/jenkins/sub-ca.crt" cert.crt
cert.crt在這種情況下是一個自簽名證書,所以它不是由sub-ca.crt發出的。 sub-ca.crt是由我們的root-ca頒發的證書。 當我運行命令,會顯示正確的錯誤:
error 18 at 0 depth lookup:self signed certificate
,但此行 OK 下顯示,當我檢查與$返回代碼?我得到0作爲返回碼。 爲什麼在發生錯誤時該命令返回OK?
感謝您的回答!有沒有辦法檢查這個命令的錯誤代碼?我必須知道它是否由CA頒發,並且爲此目的不接受自簽名證書。 – user3296316
我不認爲你可以從命令行做到這一點(至少不是沒有刮掉文本輸出)。您將不得不直接使用libcrypto API來執行此操作。 –