Home / The record / The general model
5.2.2
The randomizer range is not one rule
A sentence is added to the note on producing the randomizer. It says a mechanism can allow a wider range for the randomizer, or require a particular algebraic form. An implementation must therefore not impose one uniform range across every mechanism.
- What it asks
- Read the randomizer rule for the mechanism in front of you rather than applying one house rule. Where the mechanism permits a wider range or an algebraic form, record which form your implementation produces, and test the boundary values that the mechanism allows.
- What the amendment does
- Adds a sentence to Note 2 under 5.2.2. So this is new text rather than a change to wording.
- Who it binds
- The implementer of the signing operation, and the test owner.
- Evidence an auditor samples
- The per-mechanism randomizer rule, quoted to its clause and applied in code (design note)
- The boundary tests for the randomizer of each mechanism (test suite)
- The code review record that shows the uniform rule was removed (review log)
- The test you can run
- Present the minimum, the maximum and one value outside the range to each mechanism. If every mechanism rejects and accepts at the same numbers, the house rule is still in place.
- Common failures
- A single randomizer range is applied to every mechanism because it is convenient.
- The randomizer is generated but its form is never asserted in a test.
- How to close it
- Write the randomizer rule next to the mechanism in the approved list. The point of the amendment is that the model is general and the mechanisms differ, so the record has to show where the difference lives. Put the per-mechanism randomizer rule, quoted to its clause and applied in code in the register first, then work down the evidence list until every line has a date.
- Where it sits against the base standard
- The base standard does not carry this text. The amendment adds it, so an estate working from the 2018 edition alone will not find it. The citation has to name the amendment, and the record for 5.2.2 is the only place a reader can see it.