Skip to content

Commit 26a24e7

Browse files
committed
Raise error when status list size does not meet minimum threshold.
1 parent 93f2861 commit 26a24e7

File tree

1 file changed

+24
-7
lines changed

1 file changed

+24
-7
lines changed

index.html

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -244,15 +244,16 @@ <h3>Conceptual Framework</h3>
244244
data format since, in the average case, large numbers of credentials will
245245
remain unrevoked. This will ensure long sections of bits that are the same
246246
value and thus highly compressible using run-length compression techniques
247-
such as GZIP [[RFC1952]]. The default bitstring size is 16KB (131,072 entries),
248-
and when only a handful of <a>verifiable credentials</a> are revoked, the
249-
compressed bitstring size is reduced down to a few hundred bytes.
247+
such as GZIP [[RFC1952]]. The default status list size is 131,072 entries,
248+
equivalent to 16KB of single bit values. When only a handful of <a>verifiable
249+
credentials</a> are revoked, the compressed bitstring size is reduced down to a
250+
few hundred bytes.
250251
</p>
251252

252253
<p>
253254
Another benefit of using a bitstring is that it enables large numbers of
254-
<a>verifiable credential</a> statuses to be placed in the same list.
255-
This specification utilizes a minimum bitstring length of 131,072 (16KB). This
255+
<a>verifiable credential</a> statuses to be placed in the same list.
256+
This specification utilizes a minimum list length of 131,072. This
256257
population size ensures an adequate amount of herd privacy in the average case.
257258
If better herd privacy is required, the bitstring can be made to be larger.
258259
</p>
@@ -744,6 +745,11 @@ <h3>Validate Algorithm</h3>
744745
<a href="#bitstring-expansion-algorithm">Bitstring Expansion Algorithm</a>.
745746
</li>
746747
<li>
748+
If the length of the |revocation bitstring| divided by
749+
<a href="#size">`size`</a> is less than 131,072, raise a
750+
<a href="#STATUS_LIST_LENGTH_ERROR">STATUS_LIST_LENGTH_ERROR</a>.
751+
</li>
752+
<li>
747753
Let |status| be the value at the position indicated by the
748754
|credentialIndex| times the |size| in the |bitstring|.
749755
</li>
@@ -852,16 +858,27 @@ <h3>Processing Errors</h3>
852858
</ul>
853859

854860
<dl>
855-
<dt id="STATUS_RETRIEVAL_ERROR">STATUS_RETRIEVAL_ERROR (-128)</dt>
861+
<dt id="STATUS_RETRIEVAL_ERROR">
862+
STATUS_RETRIEVAL_ERROR (-128)
863+
</dt>
856864
<dd>
857865
Retrieval of the status list failed. See Section
858866
<a href="#validate-algorithm"></a>.
859867
</dd>
860-
<dt id="STATUS_VALIDATION_ERROR">STATUS_VALIDATION_ERROR (-129)</dt>
868+
<dt id="STATUS_VALIDATION_ERROR">
869+
STATUS_VALIDATION_ERROR (-129)
870+
</dt>
861871
<dd>
862872
Validation of the status entry failed. See Section
863873
<a href="#validate-algorithm"></a>.
864874
</dd>
875+
<dt id="STATUS_LIST_LENGTH_ERROR">
876+
STATUS_LIST_LENGTH_ERROR (-130)
877+
</dt>
878+
<dd>
879+
The status list does not meet the minimum herd privacy length requirements.
880+
See Section <a href="#validate-algorithm"></a>.
881+
</dd>
865882
</dl>
866883
</section>
867884
</section>

0 commit comments

Comments
 (0)