Skip to content

Commit 86d39b8

Browse files
committed
Expand on consistency proof evaluation
1 parent 83bc984 commit 86d39b8

1 file changed

Lines changed: 7 additions & 1 deletion

File tree

draft-davidben-tls-merkle-tree-certs.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1778,7 +1778,13 @@ In the first case, `fn` will equal `sn` after truncation. Step 5 will then initi
17781778

17791779
In the second case, `fn` is less than `sn`. Step 6 will then initialize the hashes to the first value in the consistency proof.
17801780

1781-
From there, step 7 incorporates the consistency proof into `sr` as in inclusion proof evaluation. In parallel, step 7.2.1 incorporates a subset of the hashes into `fr`, ony of those subtrees are contained within `[start, end)`. Specifically, it incorporates only those hashes to the left of the path, and stops incorporating when `fn` and `sn` have no longer diverged.
1781+
From there, step 7 incorporates the consistency proof into `fr` and `sr`:
1782+
1783+
* All hashes are incorporated into `sr`, with hashing on the left or right determined the same as in inclusion proof evaluation.
1784+
1785+
* A subset of the hashes are incorporated into `fr`. It skips any hash on the right because those contain elements greater than `end - 1`. It also stops incorporating when `fn` and `sn` have converged.
1786+
1787+
This reconstructs the hashes of the subtree and full tree, which are then compared to expected values in step 8.
17821788

17831789
In the case when `fn` is `sn` in step 5, the condition in step 7.2.1 is always false, and `fr` is always equal to `node_hash` in step 8. In this case, steps 6 through 8 are equivalent to verifying an inclusion proof for the truncated subtree `[fn, sn + 1)` and truncated tree `tn + 1`.
17841790

0 commit comments

Comments
 (0)