Skip to content

Commit c43d256

Browse files
committed
Re-order the client workflow
This commit moves the rollback checks for delegated roles to after the description of multi-role delegations to make it clear that these checks should be done for each role in the multi-role delegation. Signed-off-by: Marina Moore <[email protected]>
1 parent e9d70fc commit c43d256

File tree

1 file changed

+12
-11
lines changed

1 file changed

+12
-11
lines changed

tuf-spec.md

+12-11
Original file line numberDiff line numberDiff line change
@@ -1485,10 +1485,17 @@ it in the next step.
14851485
2. Otherwise, recursively search the list of delegations in
14861486
order of appearance.
14871487

1488-
1. Let DELEGATEE denote
1488+
1. If the current delegation is a multi-role delegation,
1489+
recursively visit each delegated role, and check that each has signed
1490+
exactly the
1491+
same non-custom metadata (i.e., length and hashes) about the target (or
1492+
the lack of any such metadata). Otherwise, abort the update cycle, and
1493+
report the failure.
1494+
1495+
2. Let DELEGATEE denote
14891496
the current target role DELEGATOR is delegating to.
14901497

1491-
2. **Download the DELEGATEE targets metadata file**, up to either
1498+
3. **Download the DELEGATEE targets metadata file**, up to either
14921499
the number of bytes specified in the snapshot metadata file, or some Z
14931500
number of bytes. The value for Z is set by the authors of the application
14941501
using TUF. For example, Z may be tens of kilobytes. IF DELEGATEE cannot be
@@ -1501,29 +1508,23 @@ it in the next step.
15011508
in the snapshot metadata file. In either case, the client MUST write the
15021509
file to non-volatile storage as FILENAME.EXT.
15031510

1504-
3. **Check against snapshot metadata.** The hashes (if any), and
1511+
4. **Check against snapshot metadata.** The hashes (if any), and
15051512
version number of the new DELEGATEE metadata file MUST match the trusted
15061513
snapshot metadata, if any. This is done, in part, to prevent a mix-and-match
15071514
attack by man-in-the-middle attackers. If the new DELEGATEE metadata file
15081515
does not match, abort the update cycle, and report the failure.
15091516

1510-
4. **Check for an arbitrary software attack.** The new DELEGATEE
1517+
5. **Check for an arbitrary software attack.** The new DELEGATEE
15111518
metadata file MUST have been signed by a threshold of keys specified in the
15121519
DELEGATOR metadata file. If the new DELEGATEE metadata file is not signed
15131520
as required, abort the update cycle, and report the failure.
15141521

1515-
5. **Check for a freeze attack.** The latest known time
1522+
6. **Check for a freeze attack.** The latest known time
15161523
should be lower than the expiration timestamp in the new DELEGATEE
15171524
metadata file. If so, the new DELEGATEE file becomes the trusted DELEGATEE
15181525
file. If the new DELEGATEE metadata file is expired, abort the update
15191526
cycle, and report the potential freeze attack.
15201527

1521-
6. If the current delegation is a multi-role delegation,
1522-
recursively visit each role, and check that each has signed exactly the
1523-
same non-custom metadata (i.e., length and hashes) about the target (or
1524-
the lack of any such metadata). Otherwise, abort the update cycle, and
1525-
report the failure.
1526-
15271528
7. If the current delegation is a terminating delegation,
15281529
then jump to step [[#fetch-target]].
15291530

0 commit comments

Comments
 (0)