From 1014f1b104105dc7495f39943074d27a2a7e3c1c Mon Sep 17 00:00:00 2001 From: Vladimir Diaz Date: Wed, 11 Oct 2017 12:05:11 -0400 Subject: [PATCH 1/2] Add ecdsa-sha2-nistp256 to specification --- docs/tuf-spec.md | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/docs/tuf-spec.md b/docs/tuf-spec.md index 5bd66b95f7..1f91e51503 100644 --- a/docs/tuf-spec.md +++ b/docs/tuf-spec.md @@ -470,16 +470,21 @@ Version: **1.0 (Draft)** although TUF is not restricted to any particular signature scheme, key type, or cryptographic library: - "RSASSA-PSS-SHA256" : RSA Probabilistic signature scheme with appendix. - The underlying hash function is SHA256. + "rsassa-pss-sha256" : RSA Probabilistic signature scheme with appendix. + The underlying hash function is SHA256. "ed25519" : Elliptic curve digital signature algorithm based on Twisted - Edwards curves. + Edwards curves. - RSASSA-PSS: https://tools.ietf.org/html/rfc3447#page-29 + "ecdsa-sha2-nistp256" : Elliptic Curve Digital Signature Algorithm + with NIST P-256 curve signing and SHA-256 hashing. + + rsassa-pss: https://tools.ietf.org/html/rfc3447#page-29 ed25519: https://ed25519.cr.yp.to/ + ecdsa: https://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm + All keys have the format: { "keytype" : KEYTYPE, @@ -491,9 +496,9 @@ Version: **1.0 (Draft)** used to sign documents. The type determines the interpretation of KEYVAL. - We define two keytypes below: 'rsa' and 'ed25519'. However, TUF places no - restrictions on cryptographic keys. Adopters can use any particular keytype, - signing scheme, and cryptographic library. + We define three keytypes below: 'rsa', 'ed25519', and 'ecdsa'. However, TUF + places no restrictions on cryptographic keys. Adopters can use any + particular keytype, signing scheme, and cryptographic library. The 'rsa' format is: @@ -514,6 +519,15 @@ Version: **1.0 (Draft)** where PUBLIC is a 32-byte string. + The 'ecdsa' format is: + + { "keytype" : "ecdsa-sha2-nistp256", + "scheme" : "ecdsa-sha2-nistp256", + "keyval" : { "public" : PUBLIC} + } + + where PUBLIC is in PEM format and a string. + The KEYID of a key is the hexdigest of the SHA-256 hash of the canonical JSON form of the key. From c2f9d63f12d6d34449589e6ec1ab5b076ec30b02 Mon Sep 17 00:00:00 2001 From: Vladimir Diaz Date: Wed, 11 Oct 2017 12:20:12 -0400 Subject: [PATCH 2/2] Update Last Modified --- docs/tuf-spec.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/tuf-spec.md b/docs/tuf-spec.md index 1f91e51503..494cd2ec9d 100644 --- a/docs/tuf-spec.md +++ b/docs/tuf-spec.md @@ -1,6 +1,6 @@ #

The Update Framework Specification -Last modified: **2 June 2017** +Last modified: **11 October 2017** Version: **1.0 (Draft)**