@@ -163,10 +163,28 @@ When loading a compiled LVS model, the following sanity check should be made bef
163163The following sanity checks are recommended but not required.
164164
165165- After the application finishes providing user functions, check all user functions used in the programs are given.
166- - If the implementation chooses not to do so, it should let the verifcation fail whenever an unknown user function is triggered.
167- - After the application finishes providing trust anchors, check all leaf nodes without signing constraint are provided with a trust anchor.
168- - If the implementation chooses not to do so, it should let the verifcation fail whenever reaches a leaf node without sign constraint.
169- - No unreachable nodes. (python-ndn does not check this)
166+
167+ + If the implementation chooses not to do so, it should let the verifcation fail whenever an unknown user function is triggered.
168+
169+ - After the application finishes providing trust anchors, check all roots of signing constraint are provided with a trust anchor.
170+
171+ + A node is a *root of signing constraint * if it is both
172+
173+ * (a) specified as a signing constraint of another node, and
174+ * (b) a node without any signing constraint attached to it
175+
176+ + If the implementation chooses not to do so, it should let the verifcation fail whenever reaches a leaf node without sign constraint.
177+
178+ - *[Optional] * No unreachable nodes from the tree root. (python-ndn does not check this)
179+
180+
181+ .. note ::
182+ In the current version, there are some nodes that neither have signing constraints nor be specified as signing constraints.
183+ They exist due to the limitation of current compiler.
184+ No packet should match them.
185+ The checker may optionally remove them from the tree.
186+ Please make sure the checker does not misconsider them as trust anchors.
187+
170188
171189User Functions
172190~~~~~~~~~~~~~~
0 commit comments