Re: [Errata Held for Document Update] RFC7030 (4384)

Russ Housley <[email protected]>
Newsgroups gmane.ietf.x509
Message-ID <[email protected]>

> 
>> The following errata report has been held for document update for 
>> RFC7030, "Enrollment over Secure Transport".
>> 
>> --------------------------------------
>> You may review the report below and at:
>> https://www.rfc-editor.org/errata/eid4384
>> 
>> --------------------------------------
>> Status: Held for Document Update
>> Type: Technical
>> 
>> Reported by: Pierce Leonberger <[email protected]>
>> Date Reported: 2015-06-02
>> Held by: Roman Danyliw (IESG)
>> 
>> Section: 4.5.2
>> 
>> Original Text
>> -------------
>> CsrAttrs ::= SEQUENCE SIZE (0..MAX) OF AttrOrOID
>> 
>> AttrOrOID ::= CHOICE (oid OBJECT IDENTIFIER, attribute Attribute }
>> 
>> Attribute { ATTRIBUTE:IOSet } ::= SEQUENCE {
>>      type   ATTRIBUTE.&id({IOSet}),
>>      values SET SIZE(1..MAX) OF ATTRIBUTE.&Type({IOSet}{@type}) }
>> 
>> Corrected Text
>> --------------
>> AttrOrOID ::= CHOICE {
>>       oid OBJECT IDENTIFIER,
>>       attribute Attribute{YouNeedToDefineOrReferenceAnObjectSet}
>> }
>> 
>> Notes
>> -----
>> 1. The AttrOrOID CHOICE was started with a '(' versus a '{'.
>> 
>> 2. Attribute{} is a parameterized type and you are missing the parameter reference within the AttrOrOID CHOICE for "attribute".
> 
>   "YouNeedToDefined...." needs to be a list of OIDs I believe. Since this is a request to someone on how to generate a CSR, the OIDs should be the ones that would be useful when giving such instruction. For instance:
> 
> [JLS] YouNeedToDefined needs to be an ObjectSet of Attributes.  An attribute is going to have both an OID and a Type in it.
> 
>   - "Generate a CSR with a public key from p384, add your serialNumber
>      as an extReq, include challengePassword, and sign the whole thing
>      with ECDSA and SHA384"
> 
>   - "Generate a CSR with RSA and a key that is 4096 bits, include
>      challengePassword and sign the whole thing with RSA and SHA512"
> 
> So how about this:
> 
>   AttrOrOID ::= CHOICE {
>        oid OBJECT IDENTIFER,
>        attribute AttrSet
>   }
> 
>   AttrSet ATTRIBUTE ::= { challengePassword, id-ecPublicKey, rsaEncryption,
>                           extReq, ecdsa-with-SHA256, ecdsa-with-SHA384,
>                           ecdsa-with-SHA512, SHA256, SHA384, SHA512, ... }
> 
> [JLS]
> Items like challengePassword can be imported from RFC 2985.  However id-ecPublicKey is an OID so the ATTRIBUTE would need to be defined
> att-ecPublicKey ::= ATTRIBUTE ::= { WITH SYNTAX ECParameters ID id-ecPublicKey }
> 
> Making an ASN.1 module would shake out which are needed to be defined as attributes.  I would use SHA256 in the oid choice myself.  Having an value set there would be useful so that people know which values go in which choices.

Please see the ASN.1 module in draft-ietf-lamps-rfc7030est-clarify.

Russ
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.