Skip to content

Commit

Permalink
Clairified that a DSSE envelope in a sigstore bundle MUST have exactly
Browse files Browse the repository at this point in the history
one signature.
  • Loading branch information
kommendorkapten committed May 9, 2024
1 parent 0a028ad commit da32cef
Show file tree
Hide file tree
Showing 7 changed files with 34 additions and 3 deletions.
2 changes: 1 addition & 1 deletion gen/jsonschema/schemas/Bundle.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
"dsseEnvelope": {
"$ref": "#/definitions/io.intoto.Envelope",
"additionalProperties": false,
"description": "A DSSE envelope can contain arbitrary payloads. Verifiers must verify that the payload type is a supported and expected type. This is part of the DSSE protocol which is defined here: \u003chttps://github.com/secure-systems-lab/dsse/blob/master/protocol.md\u003e"
"description": "A DSSE envelope can contain arbitrary payloads. Verifiers must verify that the payload type is a supported and expected type. This is part of the DSSE protocol which is defined here: \u003chttps://github.com/secure-systems-lab/dsse/blob/master/protocol.md\u003e DSSE envelopes in a bundle MUST have exactly one signture. This is a limitation from the DSSE spec, as it can contain multiple signatures. There are two primary reasons: 1. It simplfies the verification logic and policy 2. The bundle (currently) can only contain a single instance of the required verification materials During verification a client MUST reject an envelope if it the number of signatures is not equal to one."
}
},
"additionalProperties": false,
Expand Down
2 changes: 1 addition & 1 deletion gen/jsonschema/schemas/Input.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@
"dsseEnvelope": {
"$ref": "#/definitions/io.intoto.Envelope",
"additionalProperties": false,
"description": "A DSSE envelope can contain arbitrary payloads. Verifiers must verify that the payload type is a supported and expected type. This is part of the DSSE protocol which is defined here: \u003chttps://github.com/secure-systems-lab/dsse/blob/master/protocol.md\u003e"
"description": "A DSSE envelope can contain arbitrary payloads. Verifiers must verify that the payload type is a supported and expected type. This is part of the DSSE protocol which is defined here: \u003chttps://github.com/secure-systems-lab/dsse/blob/master/protocol.md\u003e DSSE envelopes in a bundle MUST have exactly one signture. This is a limitation from the DSSE spec, as it can contain multiple signatures. There are two primary reasons: 1. It simplfies the verification logic and policy 2. The bundle (currently) can only contain a single instance of the required verification materials During verification a client MUST reject an envelope if it the number of signatures is not equal to one."
}
},
"additionalProperties": false,
Expand Down
9 changes: 9 additions & 0 deletions gen/pb-go/bundle/v1/sigstore_bundle.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,14 @@ pub mod bundle {
/// supported and expected type. This is part of the DSSE
/// protocol which is defined here:
/// <<https://github.com/secure-systems-lab/dsse/blob/master/protocol.md>>
/// DSSE envelopes in a bundle MUST have exactly one signture.
/// This is a limitation from the DSSE spec, as it can contain
/// multiple signatures. There are two primary reasons:
/// 1. It simplfies the verification logic and policy
/// 2. The bundle (currently) can only contain a single
/// instance of the required verification materials
/// During verification a client MUST reject an envelope if
/// it the number of signatures is not equal to one.
#[prost(message, tag = "4")]
DsseEnvelope(super::super::super::super::super::io::intoto::Envelope),
}
Expand Down
Binary file not shown.
8 changes: 8 additions & 0 deletions protos/sigstore_bundle.proto
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,14 @@ message Bundle {
// supported and expected type. This is part of the DSSE
// protocol which is defined here:
// <https://github.com/secure-systems-lab/dsse/blob/master/protocol.md>
// DSSE envelopes in a bundle MUST have exactly one signture.
// This is a limitation from the DSSE spec, as it can contain
// multiple signatures. There are two primary reasons:
// 1. It simplfies the verification logic and policy
// 2. The bundle (currently) can only contain a single
// instance of the required verification materials
// During verification a client MUST reject an envelope if
// it the number of signatures is not equal to one.
io.intoto.Envelope dsse_envelope = 4 [(google.api.field_behavior) = REQUIRED];
}
// Reserved for future additions of artifact types.
Expand Down

0 comments on commit da32cef

Please sign in to comment.