[英]Not getting version 3 when creating a csr file with openssl
我被要求創建一個 csr(證書簽名請求),然后將其發送給將創建證書的實體。
我的問題是,我能夠創建私鑰和 csr,但我必須使用版本 3 創建它。我不知道是否可行,因為就像我嘗試的那樣,我只能得到版本3 只要我自己創建一個證書。 但不適用於證書請求。
這就是我生成私鑰的方式:
openssl ecparam -genkey -name prime256v1 -out private.pem
我的配置文件(x509Version3.cnf)是這樣的:
[ req ]
prompt = no
encrypt_key = no
default_bits = 2048
distinguished_name = req_distinguished_name
x509_extensions = v3_req
[ req_distinguished_name ]
commonName = 434C800000012A
[ v3_req ]
keyUsage = critical, digitalSignature
# keyUsage = critical,keyAgreement
basicConstraints = CA:FALSE
然后為了獲得我正在使用的證書請求:
openssl req -new -key private.pem -out certificateRequest.pem -config x509Version3.cnf -reqexts v3_req
這會生成一個證書請求,但是當我檢查它的內容時,例如這個 web ,我得到:
但是如果我自己創建證書,使用命令:
openssl req -x509 -new -key private.pem -out certificate.pem -days 365 -config x509Version3.cnf -extensions v3_req
我做錯了什么? 我一直在檢查 openssl 證書請求的參數,它們看起來都是正確的並且按預期進行。
是否可以在證書請求中使用版本 3? 或者只是創建了一個證書?
非常感謝!
目前,PKCS#10 CSR 只定義了一個版本,即版本 1(編碼為 0)。 您在 CSR 轉儲中看到的內容是正確的,符合設計和預期。
簽名證書是一個非常不同的 object(不是 PKCS#10),它有三個版本:v1(非常舊,只支持必填字段,不允許擴展),v2(很少使用)和 v3,當前的 X.509 證書格式支持證書擴展。
也就是說,您生成 V1 請求並在簽名后收到 V3 X.509 證書。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.