Re: [Trans] RFC6962 BIS Log file encodings.

Rob Stradling <rob.stradling@comodo.com> Mon, 31 March 2014 09:54 UTC

Return-Path: <rob.stradling@comodo.com>
X-Original-To: trans@ietfa.amsl.com
Delivered-To: trans@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 72F1C1A0844 for <trans@ietfa.amsl.com>; Mon, 31 Mar 2014 02:54:03 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.29
X-Spam-Level:
X-Spam-Status: No, score=-1.29 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_MISMATCH_NET=0.611, SPF_PASS=-0.001] autolearn=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Skhuz0TNwwrW for <trans@ietfa.amsl.com>; Mon, 31 Mar 2014 02:54:00 -0700 (PDT)
Received: from ian.brad.office.comodo.net (eth5.brad-fw.brad.office.ccanet.co.uk [178.255.87.226]) by ietfa.amsl.com (Postfix) with ESMTP id 1993B1A0820 for <trans@ietf.org>; Mon, 31 Mar 2014 02:53:59 -0700 (PDT)
Received: (qmail 17106 invoked by uid 1000); 31 Mar 2014 09:53:56 -0000
Received: from nigel.brad.office.comodo.net (HELO [192.168.0.58]) (192.168.0.58) (smtp-auth username rob, mechanism plain) by ian.brad.office.comodo.net (qpsmtpd/0.40) with (AES128-SHA encrypted) ESMTPSA; Mon, 31 Mar 2014 10:53:56 +0100
Message-ID: <53393B33.7050106@comodo.com>
Date: Mon, 31 Mar 2014 10:53:55 +0100
From: Rob Stradling <rob.stradling@comodo.com>
User-Agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.4.0
MIME-Version: 1.0
To: Rick Andrews <Rick_Andrews@symantec.com>, "David A. Cooper" <david.cooper@nist.gov>
References: <CAMm+Lwjy7gMphsfByROYP2WDTvP4nVkCQPj=oHkVFr=AQv=qjw@mail.gmail.com> <5322131A.2080507@comodo.com> <CAMm+Lwhz7KM44kMgn8mdFtR6Ow=aMik-5GD-Wge+JZUKz751mA@mail.gmail.com> <CALzYgEdSs0+SJrL9uzem1NnWv=jPAFr_dxrqvLkSqyd_nX+yGg@mail.gmail.com> <544B0DD62A64C1448B2DA253C011414607C85F39F4@TUS1XCHEVSPIN33.SYMC.SYMANTEC.COM> <5335B76C.4050303@nist.gov> <544B0DD62A64C1448B2DA253C011414607C85F3A8F@TUS1XCHEVSPIN33.SYMC.SYMANTEC.COM> <53393621.30901@comodo.com>
In-Reply-To: <53393621.30901@comodo.com>
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 8bit
Archived-At: http://mailarchive.ietf.org/arch/msg/trans/WfXT_kIyR6RMq1LeM3fn5Cl_ltw
Cc: "trans@ietf.org" <trans@ietf.org>
Subject: Re: [Trans] RFC6962 BIS Log file encodings.
X-BeenThere: trans@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Public Notary Transparency working group discussion list <trans.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/trans>, <mailto:trans-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/trans/>
List-Post: <mailto:trans@ietf.org>
List-Help: <mailto:trans-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/trans>, <mailto:trans-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 31 Mar 2014 09:54:03 -0000

On 31/03/14 10:32, Rob Stradling wrote:
> Hi Rick.  Dave's analysis is correct.  6962, interpreted in the light of
> X.509/5280, is unambiguous.  That said, I think we could make life
> easier for implementers by improving the text in RFC6962-bis.
>
> We should certainly add at least one example of an encoded SCTList
> extension.

http://trac.tools.ietf.org/wg/trans/trac/ticket/14

> On 28/03/14 18:00, Rick Andrews wrote:
>> Thanks, Dave, I’ll forward this on. But are you saying that the
>> descriptions in 6962 are precise enough? Would you have any objections
>> to defining structures in 6962 using the same syntax as 5280?
>>
>> -Rick
>>
>> *From:*David A. Cooper [mailto:david.cooper@nist.gov]
>> *Sent:* Friday, March 28, 2014 10:55 AM
>> *To:* Rick Andrews
>> *Cc:* trans@ietf.org
>> *Subject:* Re: [Trans] RFC6962 BIS Log file encodings.
>>
>> Rick,
>>
>> I haven't read RFC 6962 in detail, but the ASN.1 experts you spoke with
>> may not be familiar with the definition of Extension in certificates.
>> X.509 defines it as:
>>
>> *   Extension ::= SEQUENCE {
>>              extnId EXTENSION.&id ({ExtensionSet}),
>>              critical BOOLEAN DEFAULT FALSE,
>>              extnValue OCTET STRING
>>     (CONTAINING EXTENSION.&ExtnType({ExtensionSet}{@extnId})
>>                                                      ENCODED BY der)}
>>
>>     der OBJECT IDENTIFIER ::= {joint-iso-itu-t asn1(1) ber-derived(2)
>> distinguished-encoding(1)}
>> *
>> In RFC 5280 it is:
>> *   Extension  ::=  SEQUENCE  {
>>          extnID      OBJECT IDENTIFIER,
>>          critical    BOOLEAN DEFAULT FALSE,
>>          extnValue   OCTET STRING
>>                      -- contains the DER encoding of an ASN.1 value
>>                      -- corresponding to the extension type identified
>>                      -- by extnID
>>          }*
>>
>> It is my understanding that the two definitions are based on different
>> versions of ASN.1, but are considered to be equivalent. The important
>> point is that both indicate that the extension value must contain the
>> DER encoding of some ASN.1 value. So, the only way to interpret the RFC
>> 6962 text in a manner that is consistent with X.509 is that the
>> extnValue contains the tag for OCTET STRING followed by a length then a
>> second OCTET STRING tag and a second length and then the (non-ASN.1)
>> encoded SignedCertificateTimestampList structure. Given that the
>> SignedCertificateTimestampList structure is not ASN.1, and so it cannot
>> be DER encoded, this seems the only reasonable way to include it in a
>> certificate.
>>
>> This is similar to the subjectKeyIdentifier extension. The
>> subjectKeyIdentifier just contains a string of bits, such as the SHA-1
>> hash of the subject public key. It is defined in RFC 5280 as follows:
>>
>> *     KeyIdentifier ::= OCTET STRING
>>
>>       -- subject key identifier OID and syntax
>>
>>       id-ce-subjectKeyIdentifier OBJECT IDENTIFIER ::=  { id-ce 14 }
>>
>>       SubjectKeyIdentifier ::= KeyIdentifier*
>>
>> and here is an example of an encoded subjectKeyIdentifier extension:
>> *SEQUENCE {**
>>           SEQUENCE {
>>             OBJECT IDENTIFIER subjectKeyIdentifier (2 5 29 14)
>>             OCTET STRING, encapsulates {
>>               OCTET STRING
>>                 08 68 AF 85 33 C8 39 4A 7A F8 82 93 8E 70 6A 4A
>>                 20 84 2C 32
>>               }
>>             }*
>>
>> RFC 5912 shows the extensions in the newer ASN.1 syntax.
>>
>> Dave
>>
>> On 03/28/2014 01:31 PM, Rick Andrews wrote:
>>
>>     In addition, our ASN.1 experts have asked for the syntax to be
>>     described in “ASN.1-like” syntax, as is used in RFCs 3280 and 5280.
>>
>>     For example, 3280/5280 defines an Extension like this:
>>
>>     Extension  ::=  SEQUENCE  {
>>
>>           extnID      OBJECT IDENTIFIER,
>>
>>           critical    BOOLEAN DEFAULT FALSE,
>>
>>           extnValue   OCTET STRING  }
>>
>>     so the extnValue is defined as an OCTET STRING, yet 6962 says
>>     “…encoding the SignedCertificateTimestampList structure as an ASN.1
>>     OCTET STRING and inserting the resulting data in the TBSCertificate
>>     as an X.509v3 certificate extension…”. The ASN.1 folks say it’s not
>>     clear if that means that the Extension contains the OCTET STRING
>>     data type (for extnValue) and length followed by another OCTET
>>     STRING data type identifier and length of the SCT. Or is the second
>>     OCTET STRING identifier redundant?
>>
>>     Those updating existing cert generation code will probably be
>>     dealing with ASN.1 compilers, so a precise definition of structures
>>     in ASN.1-like syntax will go a long way. In addition, defining OIDs
>>     as arc plus extension (like this: id-kp-serverAuth  OBJECT
>>     IDENTIFIER ::= { id-kp 1 }) would help.
>>
>>     -Rick
>>
>>     *From:*Trans [mailto:trans-bounces@ietf.org] *On Behalf Of *Eran
>> Messeri
>>     *Sent:* Friday, March 14, 2014 3:01 AM
>>     *To:* Phillip Hallam-Baker
>>     *Cc:* Rob Stradling; trans@ietf.org <mailto:trans@ietf.org>
>>     *Subject:* Re: [Trans] RFC6962 BIS Log file encodings.
>>
>>     I strongly support clarifying the description of the file format.
>>     When I started implementing aspects of RFC6962 (with no background
>>     in TLS encoding or ASN.1) it was very unclear.
>>
>>      From other posts
>>
>> <https://groups.google.com/forum/#%21topic/certificate-transparency/T9CDwnsercQ>
>>
>>     on the list it seems this was unclear to others as well.
>>
>>     On Thu, Mar 13, 2014 at 10:50 PM, Phillip Hallam-Baker
>>     <hallam@gmail.com <mailto:hallam@gmail.com>> wrote:
>>
>>     On Thu, Mar 13, 2014 at 4:20 PM, Rob Stradling
>>     <rob.stradling@comodo.com <mailto:rob.stradling@comodo.com>> wrote:
>>
>>     (Inspired by RFC5280 Appendix C)
>>
>>     Would it help to include one or more example SCTs in the text?
>>
>>     I think we definitely need that for Proposed. But right now I am
>>     trying to see how complete the description is.
>>
>>     --
>>     Website: http://hallambaker.com/
>>
>>
>>     _______________________________________________
>>     Trans mailing list
>>     Trans@ietf.org <mailto:Trans@ietf.org>
>>     https://www.ietf.org/mailman/listinfo/trans
>>
>>
>>
>>
>>     _______________________________________________
>>
>>     Trans mailing list
>>
>>     Trans@ietf.org  <mailto:Trans@ietf.org>
>>
>>     https://www.ietf.org/mailman/listinfo/trans
>>
>>
>>
>> _______________________________________________
>> Trans mailing list
>> Trans@ietf.org
>> https://www.ietf.org/mailman/listinfo/trans
>>
>

-- 
Rob Stradling
Senior Research & Development Scientist
COMODO - Creating Trust Online
Office Tel: +44.(0)1274.730505
Office Fax: +44.(0)1274.730909
www.comodo.com

COMODO CA Limited, Registered in England No. 04058690
Registered Office:
   3rd Floor, 26 Office Village, Exchange Quay,
   Trafford Road, Salford, Manchester M5 3EQ

This e-mail and any files transmitted with it are confidential and 
intended solely for the use of the individual or entity to whom they are 
addressed.  If you have received this email in error please notify the 
sender by replying to the e-mail containing this attachment. Replies to 
this email may be monitored by COMODO for operational or business 
reasons. Whilst every endeavour is taken to ensure that e-mails are free 
from viruses, no liability can be accepted and the recipient is 
requested to use their own virus checking software.