跳到主要内容

2.16. 新增 Section 5.3.19.16 - Certificate Request Template

2.16. 新增 Section 5.3.19.16 - Certificate Request Template

以下小节引入使用 id-it-certReqTemplate 的 PKI general message. 细节见 Lightweight CMP Profile [RFC9483] Section 4.3.

在新的 Section 5.3.19.15 之后插入本节:

5.3.19.16. Certificate Request Template

client MAY 使用此项获取一个 template, 其中包含对 certificate request attribute 和 extension 的要求. control id-regCtrl-algId 和 id-regCtrl-rsaKeyLen MAY 包含 CA 愿意认证的 subject public key 类型细节.

id-regCtrl-algId control MAY 用于标识 rsaEncryption 以外的 cryptographic algorithm (见 [RFC5280] Section 4.1.2.7). algorithm 字段 SHALL 标识一个 cryptographic algorithm. optional parameters 字段的内容会随所标识的算法而变化. 例如, 当 algorithm 设置为 id-ecPublicKey 时, parameters 标识要使用的 elliptic curve; 参见 [RFC5480].

id-regCtrl-rsaKeyLen control SHALL 用于 algorithm rsaEncryption, 并且 SHALL 包含 RSA key 预期的 modulus bit length.

GenMsg:    {id-it 19}, < absent >
GenRep: {id-it 19}, CertReqTemplateContent | < absent >
CertReqTemplateValue  ::= CertReqTemplateContent

CertReqTemplateContent ::= SEQUENCE {
certTemplate CertTemplate,
keySpec Controls OPTIONAL }

Controls ::= SEQUENCE SIZE (1..MAX) OF AttributeTypeAndValue

id-regCtrl-algId OBJECT IDENTIFIER ::= { iso(1)
identified-organization(3) dod(6) internet(1) security(5)
mechanisms(5) pkix(7) pkip(5) regCtrl(1) 11 }

AlgIdCtrl ::= AlgorithmIdentifier{ALGORITHM, {...}}

id-regCtrl-rsaKeyLen OBJECT IDENTIFIER ::= { iso(1)
identified-organization(3) dod(6) internet(1) security(5)
mechanisms(5) pkix(7) pkip(5) regCtrl(1) 12 }

RsaKeyLenCtrl ::= INTEGER (1..MAX)

CertReqTemplateValue 包含预填充的 certTemplate, 供未来的 certificate request 使用. certTemplate 中的 publicKey 字段 MUST NOT 使用. 如果 PKI management entity 希望指定支持的 public-key algorithm, 则 MUST 使用 keySpec 字段. 每个 supported algorithm 或 RSA key length MUST 使用一个 AttributeTypeAndValue.

Note: controls ASN.1 类型定义于 CRMF [RFC4211] Section 6.