有限的TRNG均匀分布的无偏4位简约范围映射
我正在尝试为C应用程序的TRNG输出文件实现一个范围映射器,范围最大为4位。由于信鸽偏差问题,我决定使用丢弃算法。
我对简约算法的想法是:
-从文件中读取16个字节并将其存储为索引的128位无符号整数bitbucket,以一次将其屏蔽为n位。
-尽可能预先确定每个输入并存储在数组中所需的范围/存储桶。
-对于位桶中的每个n位,请从阵列中选择一个输入,如果存在,则该输入将不会丢弃。如果2位找不到输入,则尝试3位,如果找不到输入,则尝试4位。首先,当有很多输入时,应该很容易不丢弃,但是随着输入的选择变少,丢弃将...