From bae1f64d1cfa18b4e993eb3f9994f3447b49b973 Mon Sep 17 00:00:00 2001 From: asraa <asraa@google.com> Date: Thu, 7 Oct 2021 09:05:14 -0500 Subject: [PATCH] update go tuf for rsa key impl (#446) * update go tuf for rsa key impl Signed-off-by: Asra Ali <asraa@google.com> * fix Signed-off-by: Asra Ali <asraa@google.com> --- go.mod | 2 +- go.sum | 2 ++ pkg/pki/tuf/tuf.go | 30 ++++-------------------------- tests/tuf.go | 2 +- 4 files changed, 8 insertions(+), 28 deletions(-) diff --git a/go.mod b/go.mod index 5791c27..39951f3 100644 --- a/go.mod +++ b/go.mod @@ -44,7 +44,7 @@ require ( github.com/spf13/pflag v1.0.5 github.com/spf13/viper v1.9.0 github.com/tent/canonical-json-go v0.0.0-20130607151641-96e4ba3a7613 - github.com/theupdateframework/go-tuf v0.0.0-20210722233521-90e262754396 + github.com/theupdateframework/go-tuf v0.0.0-20211006142131-1dc15a86c64d github.com/tidwall/pretty v1.2.0 // indirect github.com/tilinna/clock v1.1.0 // indirect github.com/ulikunitz/xz v0.5.10 // indirect diff --git a/go.sum b/go.sum index 4b3755f..74e563e 100644 --- a/go.sum +++ b/go.sum @@ -1172,6 +1172,8 @@ github.com/tent/canonical-json-go v0.0.0-20130607151641-96e4ba3a7613 h1:iGnD/q91 github.com/tent/canonical-json-go v0.0.0-20130607151641-96e4ba3a7613/go.mod h1:g6AnIpDSYMcphz193otpSIzN+11Rs+AAIIC6rm1enug= github.com/theupdateframework/go-tuf v0.0.0-20210722233521-90e262754396 h1:j4odVZMwglHp54CYsNHd0wls+lkQzxloQU9AQjQu0W4= github.com/theupdateframework/go-tuf v0.0.0-20210722233521-90e262754396/go.mod h1:L+uU/NRFK/7h0NYAnsmvsX9EghDB5QVCcHCIrK2h5nw= +github.com/theupdateframework/go-tuf v0.0.0-20211006142131-1dc15a86c64d h1:6u8WdfsjnV7hMFBekqY6j9WrOLEzhWFOAWmb8Yys0J8= +github.com/theupdateframework/go-tuf v0.0.0-20211006142131-1dc15a86c64d/go.mod h1:oujGMqigj0NWDqeWBCzleayXXtux27r+kHAR2t5Yuk8= github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= diff --git a/pkg/pki/tuf/tuf.go b/pkg/pki/tuf/tuf.go index b5255eb..077863a 100644 --- a/pkg/pki/tuf/tuf.go +++ b/pkg/pki/tuf/tuf.go @@ -70,19 +70,8 @@ func (s Signature) CanonicalValue() ([]byte, error) { if s.signed == nil { return nil, fmt.Errorf("tuf manifest has not been initialized") } - - var decoded map[string]interface{} - if err := json.Unmarshal(s.signed.Signed, &decoded); err != nil { - return nil, err - } - - canonicalSigned, err := cjson.Marshal(decoded) - if err != nil { - return nil, err - } - canonical, err := cjson.Marshal(&data.Signed{ - Signed: canonicalSigned, - Signatures: s.signed.Signatures}) + // TODO(asraa): Should the Signed payload be canonicalized? + canonical, err := cjson.Marshal(s) if err != nil { return nil, err } @@ -154,22 +143,11 @@ func NewPublicKey(r io.Reader) (*PublicKey, error) { // CanonicalValue implements the pki.PublicKey interface func (k PublicKey) CanonicalValue() (encoded []byte, err error) { + // TODO(asraa): Should the Signed payload be canonicalized? if k.root == nil { return nil, fmt.Errorf("tuf root has not been initialized") } - - var decoded map[string]interface{} - if err := json.Unmarshal(k.root.Signed, &decoded); err != nil { - return nil, err - } - - canonicalSigned, err := cjson.Marshal(decoded) - if err != nil { - return nil, err - } - canonical, err := cjson.Marshal(&data.Signed{ - Signed: canonicalSigned, - Signatures: k.root.Signatures}) + canonical, err := cjson.Marshal(k.root) if err != nil { return nil, err } diff --git a/tests/tuf.go b/tests/tuf.go index f47fcd9..3714057 100644 --- a/tests/tuf.go +++ b/tests/tuf.go @@ -42,7 +42,7 @@ func generateTestRepo(t *testing.T, files map[string][]byte) tuf.LocalStore { for file := range files { repo.AddTarget(file, nil) } - repo.Snapshot(tuf.CompressionTypeNone) + repo.Snapshot() repo.Timestamp() repo.Commit() -- GitLab