On 08/25/2017 09:36 AM, Kent Watsen wrote:



On the openssl-user list, the claim was made that concatinating DER
certs for a cert chain like you do with PEM does not work with
applications.  You have to use PKCS#12, but that includes the private
key and is passworded.  I should be able to get the pointer to Viktor's
post about this.
Concatenating PEM encodings into a single file is a hack, albeit a super
convenient one.  Instead of PKCS#12, have you looked into PKCS#7? - this
is what is used in the netconf-zerotouch draft for binary certificate
chains.

Please read:

https://mta.openssl.org/pipermail/openssl-users/2017-August/006374.html

VIktor gives his views of what works in the field. I have found Viktor to be a great help, and tends to really know what works. Besides on the openssl-user list, he is on the postfix-user list.


Here is where you'd find objects in BRSKI:

1) TLS ClientCertificate.
     This should be just the IDevID blob, and in TLS, it's in DER format,
     if the Registrar needs anything else in the chain, it must chase them down
     itself.
FWIW, the netconf-zerotouch draft specifies that the device possesses the
IDevID cert *and* all the intermediate certs leading to the manufacturer's
well-known trust-anchor, all of which it provides during crypto handshake.

Most systems running netconf have the storage capacity for this. I would think.

In my auto meetings, many of the devices they are discussing do not have this option.



2) TLS ServerCertificate.
     https://tools.ietf.org/html/rfc5246#section-7.4.2
       Note: PKCS #7 [PKCS7] is not used as the format for the certificate
       vector because PKCS #6 [PKCS6] extended certificates are not used.
       Also, PKCS #7 defines a SET rather than a SEQUENCE, making the task
       of parsing the list more difficult.
I don't understand how this relates to PKCS#6.  True about the SET, but this
is minor relative to the tradeoffs.  Can you say some more about this?


3) The plege's Voucher Request may be signed using JOSE (using the IDevID)
     The IDevID is not sent, it's the one from ClientCertificate.

4) The registar's Voucher Request may be signed using JOSE, using the
     Domain Owner's key.  That might not be the same key the Registrar uses
     to form the EST connection to the MASA (if the Registrar uses client
     authentication at all).
     The Domain Owner is within the pinned-domain-cert field.
     We define it as being DER binary.  In JSON format, that turns into base64
     encoded.  The reason we go there is that we do not want the
     ----BEGIN... stuff in there for JSON, in another encoding (CBOR), binary
     is just fine.
Correct, putting PEM-text into protocols is inappropriate.


5) The resulting voucher also uses pinned-domain-cert as well, now signed
     by the MASA.

      > What format are the various bootstrap objects (eg vouchers)?  Has
      > anyone built any of these for PoC?

PoC?
Aren't the formats defined in the drafts?  E.g., the voucher draft
says it’s a PKCS#7.

I think PKCS is mentioned twice in the bootstrap draft. Nothing about iDevID format, for example. 802.1AR does not say anything about iDevID (or lDevID) format.

Regarding PoC, here's some code to create/validate vouchers:
https://github.com/netconf-wg/zero-touch/tree/master/openssl-test.

For next week.

Bob

_______________________________________________
Anima mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/anima

Reply via email to