From c24d8f7464a22c2ea041bae4cf711e5dfa592751 Mon Sep 17 00:00:00 2001 From: Alex Cameron Date: Wed, 13 Dec 2023 16:45:50 +1100 Subject: [PATCH] pyproject: bump `sigstore-rekor-types` Signed-off-by: Alex Cameron --- pyproject.toml | 3 +-- sigstore/_internal/rekor/client.py | 6 +++--- sigstore/sign.py | 16 ++++++++-------- sigstore/verify/models.py | 16 ++++++++-------- 4 files changed, 20 insertions(+), 21 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 85bd98cd4..b6a1b78dd 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -36,8 +36,7 @@ dependencies = [ "rich ~= 13.0", "securesystemslib", "sigstore-protobuf-specs ~= 0.2.2", - # NOTE(ww): Under active development, so strictly pinned. - "sigstore-rekor-types == 0.0.11", + "sigstore-rekor-types == 0.0.12", "tuf >= 2.1,< 4.0", ] requires-python = ">=3.8" diff --git a/sigstore/_internal/rekor/client.py b/sigstore/_internal/rekor/client.py index 5227cb4d3..ab70ed1b7 100644 --- a/sigstore/_internal/rekor/client.py +++ b/sigstore/_internal/rekor/client.py @@ -24,8 +24,8 @@ from typing import Any, Dict, NewType, Optional from urllib.parse import urljoin +import rekor_types import requests -import sigstore_rekor_types from sigstore._internal.ctfe import CTKeyring from sigstore._internal.keyring import Keyring @@ -137,7 +137,7 @@ def get( def post( self, - proposed_entry: sigstore_rekor_types.Hashedrekord, + proposed_entry: rekor_types.Hashedrekord, ) -> LogEntry: """ Submit a new entry for inclusion in the Rekor log. @@ -170,7 +170,7 @@ class RekorEntriesRetrieve(_Endpoint): def post( self, - expected_entry: sigstore_rekor_types.Hashedrekord, + expected_entry: rekor_types.Hashedrekord, ) -> Optional[LogEntry]: """ Retrieves an extant Rekor entry, identified by its artifact signature, diff --git a/sigstore/sign.py b/sigstore/sign.py index bbde5cd29..0f2a89e38 100644 --- a/sigstore/sign.py +++ b/sigstore/sign.py @@ -46,7 +46,7 @@ from typing import IO, Iterator, Optional import cryptography.x509 as x509 -import sigstore_rekor_types +import rekor_types from cryptography.hazmat.primitives import hashes, serialization from cryptography.hazmat.primitives.asymmetric import ec from cryptography.hazmat.primitives.asymmetric.utils import Prehashed @@ -211,19 +211,19 @@ def sign( ) # Create the transparency log entry - proposed_entry = sigstore_rekor_types.Hashedrekord( + proposed_entry = rekor_types.Hashedrekord( kind="hashedrekord", api_version="0.0.1", - spec=sigstore_rekor_types.HashedrekordV001Schema( - signature=sigstore_rekor_types.Signature1( + spec=rekor_types.hashedrekord.HashedrekordV001Schema( + signature=rekor_types.hashedrekord.Signature( content=b64_artifact_signature, - public_key=sigstore_rekor_types.PublicKey1( + public_key=rekor_types.hashedrekord.PublicKey( content=b64_cert.decode() ), ), - data=sigstore_rekor_types.Data( - hash=sigstore_rekor_types.Hash( - algorithm=sigstore_rekor_types.Algorithm.SHA256, + data=rekor_types.hashedrekord.Data( + hash=rekor_types.hashedrekord.Hash( + algorithm=rekor_types.hashedrekord.Algorithm.SHA256, value=input_digest.hex(), ) ), diff --git a/sigstore/verify/models.py b/sigstore/verify/models.py index 53118ae48..ad5ce8410 100644 --- a/sigstore/verify/models.py +++ b/sigstore/verify/models.py @@ -25,7 +25,7 @@ from textwrap import dedent from typing import IO -import sigstore_rekor_types +import rekor_types from cryptography.hazmat.primitives.serialization import Encoding from cryptography.x509 import ( Certificate, @@ -406,19 +406,19 @@ def rekor_entry(self, client: RekorClient) -> LogEntry: # This "expected" entry is used both to retrieve the Rekor entry # (if we don't have one) *and* to cross-check whatever response # we receive. See below. - expected_entry = sigstore_rekor_types.Hashedrekord( + expected_entry = rekor_types.Hashedrekord( kind="hashedrekord", api_version="0.0.1", - spec=sigstore_rekor_types.HashedrekordV001Schema( - signature=sigstore_rekor_types.Signature1( + spec=rekor_types.hashedrekord.HashedrekordV001Schema( + signature=rekor_types.hashedrekord.Signature( content=base64.b64encode(self.signature).decode(), - public_key=sigstore_rekor_types.PublicKey1( + public_key=rekor_types.hashedrekord.PublicKey( content=base64_encode_pem_cert(self.certificate) ), ), - data=sigstore_rekor_types.Data( - hash=sigstore_rekor_types.Hash( - algorithm=sigstore_rekor_types.Algorithm.SHA256, + data=rekor_types.hashedrekord.Data( + hash=rekor_types.hashedrekord.Hash( + algorithm=rekor_types.hashedrekord.Algorithm.SHA256, value=self.input_digest.hex(), ), ),