我需要的紅寶石相當於如下: OpenSSL的X509 -sha1 -fingerprint -noout -in cert.pemOpenSSL的Ruby代碼來生成指紋
我寫的代碼:
data = File.read("cert.pem")
data["-----BEGIN CERTIFICATE-----\n"]=""
data["-----END CERTIFICATE-----\n"]=""
OpenSSL::Digest::SHA1.new(Base64.encode64(data))
此代碼不會生成與openssl cli命令相同的指紋。
任何想法我可能做錯了什麼?
FWIW,一個PKCS12證書對象(來自pfx文件)必須將其證書成員提取出來用於校驗和,所以最後一行是:OpenSSL :: Digest :: SHA1.new(cert.certificate .to_der).to_s – KWillets 2016-06-13 20:37:57
我知道這個主題是一個老的,希望有人會回覆。對於SHA256證書,我是否需要將摘要計算爲SHA256? '把OpenSSL :: Digest :: SHA256.new(cert.to_der).to_s' – SickLickWill 2017-02-16 18:01:10
@SickLickWill否,這裏的SHA1表示用於生成指紋本身的算法,並且與證書中使用的哈希算法沒有關係。 – 2017-06-12 18:37:17