Skip to content

Commit

Permalink
Sigstore, Spx: Add notes about metadata format stability
Browse files Browse the repository at this point in the history
Both of these metadata formats (e.g. the data encoding and field names)
are bsaically invented in securesystemslib: there is no community
consensus on them yet.
  • Loading branch information
jku committed Sep 1, 2023
1 parent 357f4d9 commit 6b34803
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 3 deletions.
10 changes: 8 additions & 2 deletions securesystemslib/signer/_sigstore_signer.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,10 @@
class SigstoreKey(Key):
"""Sigstore verifier.
NOTE: unstable API - routines and metadata formats may change!
NOTE: The Sigstore key and signature metadata formats are not part of the
TUF specification and are not considered stable in securesystemslib. They
may change in future releases and may not be supported by other
implementations.
"""

DEFAULT_KEY_TYPE = "sigstore-oidc"
Expand Down Expand Up @@ -87,7 +90,10 @@ def verify_signature(self, signature: Signature, data: bytes) -> None:
class SigstoreSigner(Signer):
"""Sigstore signer.
NOTE: unstable API - routines and metadata formats may change!
NOTE: The Sigstore key and signature metadata formats are not part of the
TUF specification and are not considered stable in securesystemslib. They
may change in future releases and may not be supported by other
implementations.
All signers should be instantiated with ``Signer.from_priv_key_uri()``.
Unstable ``SigstoreSigner`` currently requires opt-in via
Expand Down
13 changes: 12 additions & 1 deletion securesystemslib/signer/_spx_signer.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,13 @@ def generate_spx_key_pair() -> Tuple[bytes, bytes]:


class SpxKey(Key):
"""SPHINCS+ verifier."""
"""SPHINCS+ verifier.
NOTE: The SPHINCS+ key and signature metadata formats are not part of the
TUF specification and are not considered stable in securesystemslib. They
may change in future releases and may not be supported by other
implementations.
"""

DEFAULT_KEY_TYPE = "sphincs"
DEFAULT_SCHEME = "sphincs-shake-128s"
Expand Down Expand Up @@ -89,6 +95,11 @@ def verify_signature(self, signature: Signature, data: bytes) -> None:
class SpxSigner(Signer):
"""SPHINCS+ signer.
NOTE: The SPHINCS+ key and signature metadata formats are not part of the
TUF specification and are not considered stable in securesystemslib. They
may change in future releases and may not be supported by other
implementations.
Usage::
public_bytes, private_bytes = generate_spx_key_pair()
Expand Down

0 comments on commit 6b34803

Please sign in to comment.