Lune

CRYPTO2021Top-tier venue

No Time to Hash: On Super-Efficient Entropy Accumulation

Yevgeniy Dodis, Siyao Guo, Noah Stephens-Davidowitz, Zhiye Xie

2021Year
7Citations

Abstract

Real-world random number generators (RNGs) cannot afford to use (slow) cryptographic hashing every time they refresh their state RR with a new entropic input XX. Instead, they use ``superefficient'' simple entropy-accumulation procedures, such as R←rotα,n(R)⊕X,R \leftarrow \mathsf{rot}_{\alpha, n}(R) \oplus X, where rotα,n\mathsf{rot}_{\alpha,n} rotates an nn-bit state RR by some fixed number α\alpha. For example, Microsoft's RNG uses α=5\alpha=5 for n=32n=32 and α=19\alpha=19 for n=64n=64. Where do these numbers come from? Are they good choices? Should rotation be replaced by a better permutation π\pi of the input bits?

In this work we initiate a rigorous study of these pragmatic questions, by modeling the sequence of successive entropic inputs X1,X2,…X_1,X_2,\ldots as independent (but otherwise adversarial) samples from some natural distribution family D{\mathcal D}. Our contribution is as follows.

  • We define 22-monotone distributions as a rich family D{\mathcal D} that includes relevant real-world distributions (Gaussian, exponential, etc.), but avoids trivial impossibility results.

  • For any α\alpha with gcd⁡(α,n)=1\gcd(\alpha,n)=1, we show that rotation accumulates Ω(n)\Omega(n) bits of entropy from nn independent samples X1,…,XnX_1,\ldots,X_n from any (unknown) 22-monotone distribution with entropy k>1k > 1.

  • However, we also show that some choices of α\alpha perform much better than others for a given nn. E.g., we show α=19\alpha=19 is one of the best choices for n=64n=64; in contrast, α=5\alpha=5 is good, but generally worse than α=7\alpha=7, for n=32n=32.

  • More generally, given a permutation π\pi and k≥1k\ge 1, we define a simple parameter, the covering number Cπ,kC_{\pi,k}, and show that it characterizes the number of steps before the rule (R1,…,Rn)←(Rπ(1),…,Rπ(n))⊕X(R_1,\ldots,R_n)\leftarrow (R_{\pi(1)},\ldots, R_{\pi(n)})\oplus X accumulates nearly nn bits of entropy from independent, 22-monotone samples of min-entropy kk each.

  • We build a simple permutation π∗\pi^*, which achieves nearly optimal Cπ∗,k≈n/kC_{\pi^*,k}\approx n/k for all values of kk simultaneously, and experimentally validate that it compares favorably with all rotations rotα,n\mathsf{rot}_{\alpha,n}.

Ask about this paper

Ask your agent about it.

Lune has read the top-tier papers around this one, so every answer names the papers it rests on.

Questions to start from

Your agent calls

Lunesearch_papers

Ask in Lune

Free to start. No credit card required.

lune papers get 4b1ff4eb-f934-45c2-a750-fb9ab9d1b8bc

Related papers

Dusk over the sea between two cliffs drawn in fine vertical lines