Journal of Cryptographic Engineering

, Volume 8, Issue 1, pp 85–91 | Cite as

Regulating the pace of von Neumann correctors

  • Houda Ferradi
  • Rémi Géraud
  • Diana Maimuţ
  • David Naccache
  • Amaury de Wargny
Regular Paper


In a famous paper published in 1951 (Natl Bur Stand Appl Math Ser 12:36–38, 1951), von Neumann presented a simple procedure allowing to correct the bias of random sources. This procedure introduces latencies between the random outputs. On the other hand, algorithms such as stream ciphers, block ciphers, or even modular multipliers usually run in a number of clock cycles which are independent of the operands’ values: feeding such hardware blocks with the inherently irregular output of such de-biased sources frequently proves tricky and is challenging to model at the HDL level. We propose an algorithm to compensate these irregularities, by storing or releasing numbers at given intervals of time. This algorithm is modeled as a special queue that achieves zero blocking probability and a near-deterministic service distribution (i.e., of minimal variance). While particularly suited to cryptographic applications, for which it was designed, this algorithm also applies to a variety of contexts and constitutes an example of queue for which the buffer allocation problem can be solved.


Random number generation Queuing theory HDL Statistics 


  1. 1.
    Balsamo, S., de Nitto Personé, V., Onvural, R.: Analysis of Queueing Networks with Blocking, vol. 31. Springer, Berlin (2013)zbMATHGoogle Scholar
  2. 2.
    Demir, L., Tunali, S., Eliiyi, D.T.: The state of the art on buffer allocation problem: a comprehensive survey. J. Intell. Manuf. 25(3), 371–392 (2014)CrossRefGoogle Scholar
  3. 3.
    Ganesh, A.J., O’Connell, N., Wischik, D.J.: Big Queues. Springer, Berlin (2004)CrossRefzbMATHGoogle Scholar
  4. 4.
    Kendall, D.G.: Stochastic processes occurring in the theory of queues and their analysis by the method of the imbedded Markov chain. Ann. Math. Stat. 23(3), 338–354 (1953)Google Scholar
  5. 5.
    Khinchine, A.: Mathematical theory of a stationary queue. Mat. Sb. 39, 73–84 (1932)Google Scholar
  6. 6.
    Kleinrock, L.: Queuing Systems, vol. 1. Wiley, New York (1975)zbMATHGoogle Scholar
  7. 7.
    Little, J.D.: A proof for the queuing formula: \(l= \lambda w\). Oper. Res. 9(3), 383–387 (1961)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    MacGregor Smith, J., Cruz, F.: The buffer allocation problem for general finite buffer queueing networks. IIE Trans. 37(4), 343–365 (2005)CrossRefGoogle Scholar
  9. 9.
    Nahas, N., Ait-Kadi, D., Nourelfath, M.: A new approach for buffer allocation in unreliable production lines. Int. J. Prod. Econ. 103(2), 873–881 (2006)CrossRefzbMATHGoogle Scholar
  10. 10.
    Pollaczek, F.: Über eine aufgabe der wahrscheinlichkeitstheorie. I. Math. Z. 32(1), 64–100 (1930)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Pollaczek, F.: Über eine aufgabe der wahrscheinlichkeitstheorie. II. Math. Z. 32(1), 729–750 (1930)MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Seong, D., Chang, S., Hong, Y.: Heuristic algorithms for buffer allocation in a production line with unreliable machines. Int. J. Prod. Res. 33(7), 1989–2005 (1995)CrossRefzbMATHGoogle Scholar
  13. 13.
    Spinellis, D.D., Papadopoulos, C.T.: A simulated annealing approach for buffer allocation in reliable production lines. Ann. Oper. Res. 93(1–4), 373–384 (2000)MathSciNetCrossRefzbMATHGoogle Scholar
  14. 14.
    von Neumann, J.: Various techniques used in connection with random digits. Natl. Bur. Stand. Appl. Math. Ser. 12, 36–38 (1951)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2017

Authors and Affiliations

  1. 1.École normale supérieureParis Cedex 05France
  2. 2.Ingenico LabsParisFrance
  3. 3.NTT Secure Platform LaboratoriesTokyoJapan

Personalised recommendations