Skip to content

Commit 57e35a7

Browse files
authored
gen, protos: remove ExtendedVerificationMaterials, embed its members (#36)
* gen, protos: rename `VerificationData` to `ExtendedVerificationMaterials` Signed-off-by: William Woodruff <william@trailofbits.com> * gen, protos: remove `ExtendedVerificationMaterials` entirely ...and embed its contents into the `Bundle` message. Signed-off-by: William Woodruff <william@trailofbits.com> * gen, protos: move VerificationMaterials, embed "extended" materials Signed-off-by: William Woodruff <william@trailofbits.com> Signed-off-by: William Woodruff <william@trailofbits.com>
1 parent 924b30a commit 57e35a7

File tree

6 files changed

+243
-337
lines changed

6 files changed

+243
-337
lines changed

gen/pb-go/bundle/v1/sigstore_bundle.pb.go

Lines changed: 140 additions & 97 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

gen/pb-go/common/v1/sigstore_common.pb.go

Lines changed: 66 additions & 180 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

gen/pb-python/sigstore_protobuf_specs/dev/sigstore/bundle/v1/__init__.py

Lines changed: 19 additions & 20 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

gen/pb-python/sigstore_protobuf_specs/dev/sigstore/common/v1/__init__.py

Lines changed: 0 additions & 13 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

protos/sigstore_bundle.proto

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -44,39 +44,39 @@ message TimestampVerificationData {
4444
repeated dev.sigstore.common.v1.RFC3161SignedTimestamp rfc3161_timestamps = 1;
4545
}
4646

47-
// VerificationData contains extra data that can be used to verify things
48-
// such as transparency and timestamp of the signature creation.
49-
// As this message can be either empty (no inclusion proof or timestamps), or a combination of
50-
// an arbitrarily number of transparency log entries and signed timestamps,
51-
// it is the client's responsibility to implement any required verification
52-
// policies.
53-
message VerificationData {
47+
// VerificationMaterial captures details on the materials used to verify
48+
// signatures.
49+
message VerificationMaterial {
50+
oneof content {
51+
dev.sigstore.common.v1.PublicKeyIdentifier public_key = 1;
52+
dev.sigstore.common.v1.X509CertificateChain x509_certificate_chain = 2;
53+
}
5454
// This is the inclusion promise and/or proof, where
5555
// the timestamp is coming from the transparency log.
56-
repeated dev.sigstore.rekor.v1.TransparencyLogEntry tlog_entries = 1;
56+
repeated dev.sigstore.rekor.v1.TransparencyLogEntry tlog_entries = 3;
5757
// Timestamp verification data, over the artifact's signature.
58-
TimestampVerificationData timestamp_verification_data = 2;
58+
TimestampVerificationData timestamp_verification_data = 4;
5959
}
6060

6161
message Bundle {
6262
// MUST be application/vnd.dev.sigstore.bundle+json;version=0.1
6363
// when encoded as JSON.
6464
string media_type = 1;
65-
// When a signer is identified by a X.509 certiicate, a verifier MUST
65+
// When a signer is identified by a X.509 certificate, a verifier MUST
6666
// verify that the signature was computed at the time the certificate
67-
// was valid as descbribed in the Sigstore client spec: "Verification
67+
// was valid as described in the Sigstore client spec: "Verification
6868
// using a Bundle".
69-
// https://docs.google.com/document/d/1kbhK2qyPPk8SLavHzYSDM8-Ueul9_oxIMVFuWMWKz0E/edit#heading=h.x8bduppe89ln
70-
VerificationData verification_data = 2;
71-
dev.sigstore.common.v1.VerificationMaterial verification_material = 3;
69+
// <https://docs.google.com/document/d/1kbhK2qyPPk8SLavHzYSDM8-Ueul9_oxIMVFuWMWKz0E/edit#heading=h.x8bduppe89ln>
70+
VerificationMaterial verification_material = 2;
7271
oneof content {
73-
dev.sigstore.common.v1.MessageSignature message_signature = 4;
72+
dev.sigstore.common.v1.MessageSignature message_signature = 3;
7473
// A DSSE envelope can contain arbitrary payloads.
7574
// Verifiers must verify that the payload type is a
7675
// supported and expected type. This is part of the DSSE
77-
// protocol which is defined here https://github.com/secure-systems-lab/dsse/blob/master/protocol.md
78-
io.intoto.Envelope dsse_envelope = 5;
76+
// protocol which is defined here:
77+
// <https://github.com/secure-systems-lab/dsse/blob/master/protocol.md>
78+
io.intoto.Envelope dsse_envelope = 4;
7979
}
8080
// Reserved for future additions of artifact types.
81-
reserved 6 to 50;
81+
reserved 5 to 50;
8282
}

protos/sigstore_common.proto

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -182,15 +182,6 @@ message X509CertificateChain {
182182
repeated X509Certificate certificates = 1;
183183
}
184184

185-
// VerificationMaterial captures details on the materials used to verify
186-
// signatures.
187-
message VerificationMaterial {
188-
oneof content {
189-
PublicKeyIdentifier public_key = 1;
190-
X509CertificateChain x509_certificate_chain = 2;
191-
}
192-
}
193-
194185
// The time range is half-open and does not include the end timestamp,
195186
// i.e [start, end).
196187
// End is optional to be able to capture a period that has started but

0 commit comments

Comments
 (0)