Update dependency sigstore to v4 - autoclosed#475
Closed
renovate[bot] wants to merge 1 commit intomainfrom
Closed
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
<2-><5Release Notes
sigstore/sigstore-python (sigstore)
v4.1.0Compare Source
Added
--instance URL.New instances are trusted with new top level command
trust-instance ROOTFILE.#1548
Changed
(#1544)
(#1569)
Fixed
default encoding was used: the issue has existed for a while, but became more visible
with signature bundles that contain rekor2 entries.
#1553
v4.0.0Compare Source
This is a major release with a host of API and functionality changes. The major new feature
is Rekor v2 support but many other changes are also included, see list below.
Added
--rekor-versiontosigncommand arguments: This can be usefulif Sigstore instance provides multiple Rekor versions and user wants to
override the default choice
#1471
requests are submitted in parallel: this is especially useful with Rekor v2.
#1468, #1478,
#1485
#1402
#1370, #1422,
#1432
#1496
Changed
#1510
#1470
#1515
production()andstaging()helpers. Similar methods were removed fromSigningConfig, TrustedRoot, SigningContext and Issuer. Use TrustConfig everywhere in code base.
#1363
sigstore instance the client uses.
SigningConfigclass now has methods to return actual clients(like RekorClient) instead of just URLs for that sigstore instance. The
--trust-configcli option nowexpects the trust config to contain a v0.2 SigningConfig.
#1358, #1407
ed25519keys in trusted root#1377
Fixed
#1458
#1514
#1382
#1366
#1463
#1373
#1424
the timestamp)
#1482
#1385
#1381
#1368
v3.6.6Compare Source
Changed
(#1565)
(#1566)
v3.6.5Compare Source
Fixed
otherwise valid signature bundles (#1492)
Changed
(#1498)
v3.6.4Compare Source
Fixed
rfc3161-clientdependency to>=1.0.3to fix a securityvulnerability (#1451)
v3.6.3Compare Source
Fixed
may succeed without that key).
#1425
v3.6.2Compare Source
Fixed
Now any rekor key listed in the trust root is considered good to verify entries
#1350
Changed
now use system certificates (instead of certifi) and have automatic
retries
v3.6.1Compare Source
Fixed
cryptographyto allow v43 and v44to be resolved
(#1251)
v3.6.0Compare Source
Added
API: The DSSE
Envelopeclass now performs automatic validation(#1211)
API: Added
signatureproperty toEnvelopeclass for accessing rawsignature bytes (#1211)
Signed timestamps embedded in bundles are now automatically verified
against Timestamp Authorities provided within the Trusted Root ([#1206]
(#1206))
Bundles are now generated with signed timestamps when signing if the
Trusted Root contains one or more Timestamp Authorities
(#1216)
Removed
sigstore-python with other sigstore clients
(#1236)
Fixed
Fixed a CLI parsing bug introduced in 3.5.1 where a warning about
verifying legacy bundles was never shown
(#1198)
Strengthened the requirement that an inclusion promise is present
if no other source of signed time is present
(#1247)
v3.5.6Compare Source
This is the last planned release in 3.5.x series: All users should upgrade to a newer release series.
Fixed
v3.5.3Compare Source
Fixed
v3.5.1Compare Source
Fixed
to suppress irrelevant warnings
(#1192)
v3.5.0Compare Source
Added
sigstore plumbing update-trust-rootcommand has been added.Like other plumbing-level commands, this is considered unstable and
changes are not subject to our semver policy until explicitly noted
(#1174)
Fixed
.crt/.siginputs (#1179)
v3.4.0Compare Source
Changed
CLI: When verifying, the
--offlineflag now fully disables all onlineoperations, including routine local TUF repository refreshes
(#1143)
sigstore-python's minimum supported Python version is now 3.9Fixed
sigstore verifysubcommands now always check for a matchinginput file, rather than unconditionally falling back to matching on a
valid
sha256:...digest pattern(#1152)
v3.3.0Compare Source
Added
CLI: The
sigstore verifycommand now outputs the inner in-toto statementwhen verifying DSSE envelopes. If verification is successful, the output
will be the inner in-toto statement. This allows the user to see the
statement's predicate, which
sigstore-pythondoes not verify and should beverified by the user.
CLI: The
sigstore attestsubcommand has been added. This command issimilar to
cosign attestin that it signs over an artifact and apredicate using a DSSE envelope. This commands requires the user to pass
a path to the file containing the predicate, and the predicate type.
Currently only the SLSA Provenance v0.2 and v1.0 types are supported.
CLI: The
sigstore verifycommand now supports verifying digests. This meansthat the user can now pass a digest like
sha256:aaaa....instead of thepath to an artifact, and
sigstore-pythonwill verify it as if it was theartifact with that digest.
v3.2.0Compare Source
Added
API:
models.Bundle.BundleTypeis now a public API(#1089)
CLI: The
sigstore plumbingsubcommand hierarchy has been added. Thishierarchy is for developer-only interactions, such as fixing malformed
Sigstore bundles. These subcommands are not considered stable until
explicitly documented as such.
(#1089)
Changed
stderr, rather thanstdout(#1089)
v3.1.0Compare Source
Added
API:
dsse.StatementBuilderhas been added. It can be used to construct anin-toto
Statementfor subsequent enveloping and signing.This API is public but is not considered stable until the next major
release.
(#1077)
API:
dsse.Digest,dsse.DigestSet, anddsse.Subjecthave been added.These types can be used with the
StatementBuilderAPI as part of in-totoStatementconstruction.These API are public but are not considered stable until the next major
release.
(#1078)
Changed
verify_dssenow rejects bundles with DSSE envelopes that have more thanone signature, rather than checking all signatures against the same key
(#1062)
v3.0.0Compare Source
Maintainers' note: this is a major release, with significant public API and CLI
changes. We strongly recommend you read the entries below to fully
understand the changes between
2.xand3.x.Added
API:
Signer.sign_artifact()has been added, replacing the removedSigner.sign()APIAPI:
Signer.sign_dsse()has been added. It takes an in-totoStatementas an input, producing a DSSE-formatted signature rather than a "bare"
signature (#804)
API: "v3" Sigstore bundles are now supported during verification
(#901)
API:
Verifier.verify(...)can now take aHashedas an input, performingsignature verification on a pre-computed hash value
(#904)
API: The
sigstore.dssemodule has been been added, including APIsfor representing in-toto statements and DSSE envelopes
(#930)
CLI: The
--trust-configflag has been added as a global option,enabling consistent "BYO PKI" uses of
sigstorewith a single flag(#1010)
CLI: The
sigstore verifysubcommands can now verify bundles containingDSSE entries, such as those produced by
GitHub Artifact Attestations
(#1015)
Removed
BREAKING API CHANGE:
SigningResulthas been removed.The public signing APIs now return
sigstore.models.Bundle.BREAKING API CHANGE:
VerificationMaterialshas been removed.The public verification APIs now accept
sigstore.models.Bundle.BREAKING API CHANGE:
Signer.sign(...)has been removed. Useeither
sign_artifact(...)orsign_dsse(...), depending on whetheryou're signing opaque bytes or an in-toto statement.
BREAKING API CHANGE:
VerificationResulthas been removed.The public verification and policy APIs now raise
sigstore.errors.VerificationErroron failure.BREAKING CLI CHANGE: The
--rekor-urland--fulcio-urlflags have been entirely removed. To configure a custom PKI, use
--trust-config(#1010)
Changed
BREAKING API CHANGE:
Verifier.verify(...)now takes abytes | Hashedas its verification input, rather than implicitly receiving the input through
the
VerificationMaterialsparameter(#904)
BREAKING API CHANGE:
VerificationMaterials.rekor_entry(...)now takesa
Hashedparameter to convey the digest used for Rekor entry lookup(#904)
BREAKING API CHANGE:
Verifier.verify(...)now takes asigstore.models.Bundle,instead of a
VerificationMaterials(#937)BREAKING CLI CHANGE:
sigstore signnow emits{input}.sigstore.jsonby default instead of
{input}.sigstore, per the client specification(#1007)
sigstore-python now requires inclusion proofs in all signing and verification
flows, regardless of bundle version of input types. Inputs that do not
have an inclusion proof (such as detached materials) cause an online lookup
before any further processing is performed
(#937)
sigstore-python now generates "v3" bundles by default during signing
(#937)
CLI: Bundles are now always verified offline. The offline flag has no effect.
(#937)
CLI: "Detached" materials are now always verified online, due to a lack of
an inclusion proof. Passing
--offlinewith detached materials will causean error (#937)
API:
sigstore.transparencyhas been removed, and its pre-existing APIshave been re-homed under
sigstore.models(#990)
API:
oidc.IdentityToken.expected_certificate_subjecthas been renamedto
oidc.IdentityToken.federated_issuerto better describe what it actuallycontains. No functional changes have been made to it
(#1016)
API:
policy.Identitynow takes an optional OIDC issuer, rather than arequired one (#1015)
CLI:
sigstore verify githubnow requires--cert-identityor--repository, not just--cert-identity(#1015)
v2.1.5Compare Source
v2.1.3Compare Source
v2.1.2Compare Source
This is a corrective release for [2.1.1].
v2.1.0Compare Source
Added
sigstore verify's subcommands now discover{input}.sigstore.jsonby default, in addition to the previous
{input}.sigstore. The former nowtakes precedence over the latter, and supplying both results in an error
(#820)
v2.0.1Compare Source
Fixed
--certificate-chain, read asbytesinstead ofstras expected by the underlying API (#796)
v2.0.0Compare Source
Added
CLI:
sigstore signandsigstore get-identity-tokennow support the--oauth-force-ooboption; which has the same behavior as thepreexisting
SIGSTORE_OAUTH_FORCE_OOBenvironment variable(#667)
Version
0.2of the Sigstore bundle format is now supported(#705)
API addition:
VerificationMaterials.to_bundle()is a new public API forproducing a standard Sigstore bundle from
sigstore-python's internalrepresentation (#719)
API addition: New method
sign.SigningResult.to_bundle()allows signingapplications to serialize to the bundle format that is already usable in
verification with
verify.VerificationMaterials.from_bundle()(#765)
Changed
sigstore verifynow performs additional verification of Rekor's inclusionproofs by cross-checking them against signed checkpoints
(#634)
A cached copy of the trust bundle is now included with the distribution
(#611)
Stopped emitting .sig and .crt signing outputs by default in
sigstore sign.Sigstore bundles are now preferred
(#614)
Trust root configuration now assumes that the TUF repository contains a trust
bundle, rather than falling back to deprecated individual targets
(#626)
API change: the
sigstore.oidc.IdentityTokenAPI has been stabilized asa wrapper for OIDC tokens
(#635)
API change:
Signer.signnow takes asigstore.oidc.IdentityTokenforits
identityargument, rather than a "raw" OIDC token(#635)
API change:
Issuer.identity_tokennow returns asigstore.oidc.IdentityToken, rather than a "raw" OIDC token(#635)
sigstore verifyis not longer a backwards-compatible alias forsigstore verify identity, as it was during the 1.0 release series(#642)
API change: the
SignerAPI has been broken up intoSigningContextand
Signer, allowing aSigningContextto create individualSignerinstances that correspond to a single
IdentityToken. This new APIalso enables ephemeral key and certificate reuse across multiple inputs,
reducing the number of cryptographic operations and network roundtrips
required when signing more than one input
(#645)
sigstore signnow uses an ephemeral P-256 keypair, rather than P-384(#662)
API change:
RekorClientErrordoes not try to always parse responsecontent as JSON
(#694)
API change:
LogEntry.inclusion_promisecan now beNone, but onlyif
LogEntry.inclusion_proofis notNone(#705)
sigstore-python's minimum supported Python version is now 3.8(#745)
Fixed
Fixed a case where
sigstore verifywould fail to verify an otherwise validinclusion proof due to an incorrect timerange check
(#633)
Removed an unnecessary and backwards-incompatible parameter from the
sigstore.oidc.detect_credentialAPI(#641)
Fixed a case where
sigstore sign(andsigstore verify) could fail whileusing a private instance due to a missing due to a missing
ExtendedKeyUsagein the CA. We now enforce the fact that the TBSPrecertificate signer must be
a valid CA (#658)
Fixed a case where identity token retrieval would produce an unhelpful
error message (#767)
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.