Function vdf::create_discriminant
source · Expand description
Create a discriminant from a seed (a byte string) and a bit length (a
u16
). The discriminant is guaranteed to be a negative prime number that
fits in length
bits, except with negligible probability (less than
2^(-100)). It is also guaranteed to equal 7 modulo 8.
This function uses sha256 to expand the seed. Therefore, different seeds
will result in completely different discriminants with overwhelming
probability, unless length
is very small. However, this function is
deterministic: if it is called twice with identical seeds and lengths, it
will always return the same discriminant.
This function is guaranteed not to panic for any inputs whatsoever, unless memory allocation fails and the allocator in use panics in that case.