File tree Expand file tree Collapse file tree 1 file changed +23
-3
lines changed Expand file tree Collapse file tree 1 file changed +23
-3
lines changed Original file line number Diff line number Diff line change @@ -34,11 +34,12 @@ The signature format is a JSON message of the following form:
34
34
"signatures" : [{
35
35
"keyid" : " <KEYID>" ,
36
36
"sig" : " <Base64(Sign(PAE([UTF8(PAYLOAD_TYPE), SERIALIZED_BODY])))>"
37
- }, … ]
37
+ }]
38
38
}
39
39
```
40
40
41
- Empty fields may be omitted. Multiple signatures are allowed.
41
+ Empty fields may be omitted. [ Multiple signatures] ( #multiple-signatures ) are
42
+ allowed.
42
43
43
44
Definitions:
44
45
@@ -150,6 +151,25 @@ This scheme is safe from rollback attacks because the first byte of
150
151
SERIALIZED_BODY must be 0x7b (` { ` ) in backwards compatibility mode and 0x02 in
151
152
regular mode.
152
153
154
+ ### Multiple signatures
155
+
156
+ A file may have more than one signature, which is equivalent to separate files
157
+ with individual signatures.
158
+
159
+ ``` json
160
+ {
161
+ "payload" : " <Base64(SERIALIZED_BODY)>" ,
162
+ "payloadType" : " <PAYLOAD_TYPE>" ,
163
+ "signatures" : [{
164
+ "keyid" : " <KEYID_1>" ,
165
+ "sig" : " <SIG_1>"
166
+ }, {
167
+ "keyid" : " <KEYID_2>" ,
168
+ "sig" : " <SIG_2>"
169
+ }]
170
+ }
171
+ ```
172
+
153
173
### Optional changes to wrapper
154
174
155
175
The standard wrapper is JSON with an explicit ` payloadType ` . Optionally,
@@ -286,7 +306,7 @@ used by TUF and in-toto has a BODY that is a regular JSON object and a signature
286
306
"signatures" : [{
287
307
"keyid" : " <KEYID>" ,
288
308
"sig" : " <Hex(Sign(CanonicalJson(BODY)))>"
289
- }, … ]
309
+ }]
290
310
}
291
311
```
292
312
You can’t perform that action at this time.
0 commit comments