[go: up one dir, main page]

skip to main content
research-article

Scrambled Linear Pseudorandom Number Generators

Published: 28 September 2021 Publication History

Abstract

F2-linear pseudorandom number generators are very popular due to their high speed, to the ease with which generators with a sizable state space can be created, and to their provable theoretical properties. However, they suffer from linear artifacts that show as failures in linearity-related statistical tests such as the binary-rank and the linear-complexity test. In this article, we give two new contributions. First, we introduce two new F2-linear transformations that have been handcrafted to have good statistical properties and at the same time to be programmable very efficiently on superscalar processors, or even directly in hardware. Then, we describe some scramblers, that is, nonlinear functions applied to the state array that reduce or delete the linear artifacts, and propose combinations of linear transformations and scramblers that give extremely fast pseudorandom number generators of high quality. A novelty in our approach is that we use ideas from the theory of filtered linear-feedback shift registers to prove some properties of our scramblers, rather than relying purely on heuristics. In the end, we provide simple, extremely fast generators that use a few hundred bits of memory, have provable properties, and pass strong statistical tests.

References

[1]
David Blackman and Sebastiano Vigna. 2020. A new test for Hamming-weight dependencies.
[2]
Joppe W. Bos, Simon Friedberger, Marco Martinoli, Elisabeth Oswald, and Martijn Stam. 2018. Fly, you fool! Faster Frodo for the ARM Cortex-M4. Cryptology ePrint Archive, Report 2018/1116. Retrieved from https://eprint.iacr.org/2018/1116.
[3]
Nicolas Bourbaki. 1989. Algebra: Elements of Mathematics. Springer.
[4]
An Braeken and Igor A. Semaev. 2005. The ANF of the composition of addition and multiplication mod with a Boolean function. In Proceedings of the 12th International Workshop on Fast Software Encryption. Henri Gilbert and Helena Handschuh (Eds.), Revised Selected Papers (Lecture Notes in Computer Science), Vol. 3557. Springer, 112–125.
[5]
Sergio Caracciolo, Alan D. Sokal, and Andrea Sportiello. 2009. Noncommutative determinants, Cauchy–Binet formulae, and Capelli-type identities I. Generalizations of the Capelli and Turnbull identities. Electron. J. Comb. 16, 1 (2009), 103.
[6]
G. D. Carter. 1989. Aspects of Local Linear Complexity. Ph.D. Dissertation. University of London.
[7]
A. Chervov, G. Falqui, and V. Rubtsov. 2009. Algebraic properties of Manin matrices 1. Adv. Appl. Math. 43, 3 (2009), 239–315.
[8]
Aaldert Compagner. 1991. The hierarchy of correlations in random binary sequences. J. Stat. Phys. 63, 5–6 (1991), 883–896.
[9]
E. D. Erdmann. 1992. Empirical tests of binary keystreams. Department of Mathematics, Royal Holloway and Bedford New College, University of London.
[10]
Frans Grd and Mssa Rossi. 2019. An Efficient and Provable Masked Implementation of qTESLA. Cryptology ePrint Archive, Report 2019/606. Retrieved from https://eprint.iacr.org/2019/606.
[11]
Hiroshi Haramoto, Makoto Matsumoto, Takuji Nishimura, François Panneton, and Pierre L’Ecuyer. 2008. Efficient jump ahead for -linear random number generators. INFORMS J. Comput. 20, 3 (2008), 385–390.
[12]
OEIS Foundation Inc.2017. The On-Line Encyclopedia of Integer Sequences. Retrieved from http://oeis.org/.
[13]
Andreas Klein. 2013. Stream Ciphers. Springer, London.
[14]
Donald E. Knuth. 1992. Two notes on notation. Amer. Math. Monthly 99, 5 (May 1992), 403–422.
[15]
Donald E. Knuth. 1997. The Art of Computer Programming, Volume 1, Fundamental Algorithms (3rd ed.). Addison-Wesley, Reading, MA. xix+650 pages.
[16]
Nicholas Kolokotronis, Konstantinos Limniotis, and Nicholas Kalouptsidis. 2007. Improved bounds on the linear complexity of keystreams obtained by filter generators. In Proceedings of the International Conference on Information Security and Cryptology.Dingyi Pei, Moti Yung, Dongdai Lin, and Chuankun Wu (Eds.), Inscrypt (Lecture Notes in Computer Science), Vol. 4990. Springer, 246–255.
[17]
Pierre L’Ecuyer. 1996. Maximally equidistributed combined tausworthe generators. Math. Comp. 64, 213 (1996), 203–213.
[18]
Pierre L’Ecuyer and Jacinthe Granger-Piché. 2003. Combined generators with components from different families. Math. Comput. Simul. 62, 3 (2003), 395–404.
[19]
Pierre L’Ecuyer and François Panneton. 2005. Fast random number generators based on linear recurrences modulo 2: overview and comparison. In Proceedings of the 2005 Winter Simulation Conference. IEEE, 110–119.
[20]
Pierre L’Ecuyer and François Panneton. 2009. -linear random number generators. In Advancing the Frontiers of Simulation. Christos Alexopoulos, David Goldsman, and James R. Wilson (Eds.). International Series in Operations Research & Management Science, Vol. 133. Springer US, 169–193.
[21]
Pierre L’Ecuyer and Richard Simard. 2007. TestU01: A C library for empirical testing of random number generators. ACM Trans. Math. Softw. 33, 4 (2007).
[22]
Robert H. Lewis. 2018. Fermat: A Computer Algebra System for Polynomial and Matrix Computation. Retrieved from http://home.bway.net/lewis/.
[23]
Rudolf Lidl and Harald Niederreiter. 1994. Introduction to Finite Fields and their Applications. Cambridge University Press, Cambridge.
[24]
George Marsaglia. 2003. Xorshift RNGs. J. Stat. Softw. 8, 14 (2003), 1–6.
[25]
George Marsaglia and Liang-Huei Tsay. 1985. Matrices and the structure of random number sequences. Linear Algebra Appl. 67 (1985), 147–156.
[26]
Makoto Matsumoto and Takuji Nishimura. 1998. Mersenne twister: A 623-dimensionally equidistributed uniform pseudo-random number generator. ACM Trans. Model. Comput. Simul. 8, 1 (1998), 3–30.
[27]
Makoto Matsumoto, Isaku Wada, Ai Kuramoto, and Hyo Ashihara. 2007. Common defects in initialization of pseudorandom number generators. ACM Trans. Model. Comput. Simul. 17, 4 (2007).
[28]
Joseph I. Naus. 1968. An extension of the birthday problem. Am Stat 22, 1 (1968), 27–29.
[29]
Harald Niederreiter. 1995. The multiple-recursive matrix method for pseudorandom number generation. Finite Fields App. 1, 1 (1995), 3–30.
[30]
Takuji Nishimura. 2000. Tables of 64-bit mersenne twisters. ACM Trans. Model Comput. Simul. 10, 4 (2000), 348–357.
[31]
François Panneton, Pierre L’Ecuyer, and Makoto Matsumoto. 2006. Improved long-period generators based on linear recurrences modulo 2. ACM Trans. Math. Softw. 32, 1 (2006), 1–16.
[32]
Mutsuo Saito and Makoto Matsumoto. 2009. A PRNG specialized in double precision floating point numbers using an affine transition. In Monte Carlo and Quasi-Monte Carlo Methods 2008. Pierre L’Ecuyer and Art B. Owen (Eds.). Springer, 589–602.
[33]
Mutsuo Saito and Makoto Matsumoto. 2014. XSadd (Version 1.1). Retrieved from http://www.math.sci.hiroshima-u.ac.jp/ m-mat/MT/XSADD/.
[34]
Mutsuo Saito and Makoto Matsumoto. 2015. Tiny Mersenne Twister (Version 1.1). Retrieved from http://www.math.sci.hiroshima-u.ac.jp/ m-mat/MT/TINYMT/.
[35]
Nat Sothanaphan. 2017. Determinants of block matrices with noncommuting blocks. Linear Algebra Appl. 512, Supplement C (2017), 202–218.
[36]
Guy L. Steele, Jr., Doug Lea, and Christine H. Flood. 2014. Fast splittable pseudorandom number generators. In Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications (OOPSLA’14). ACM, New York, NY, 453–472.
[37]
Dan Terpstra, Heike Jagode, Haihang You, and Jack Dongarra. 2010. Collecting performance data with papi-c. In Tools for High Performance Computing 2009, Matthias S. Müller, Michael M. Resch, Alexander Schulz, and Wolfgang E. Nagel (Eds.). Springer, 157–173.
[38]
The Sage Developers. 2018. SageMath, the Sage Mathematics Software System (Version 8.0). Retrieved from http://www.sagemath.org.
[39]
Sebastiano Vigna. 2016. An experimental exploration of Marsaglia’s xorshift generators, scrambled. ACM Trans. Math. Software 42, 4 (2016).
[40]
Sebastiano Vigna. 2016. Further scramblings of Marsaglia’s xorshift generators. J. Comput. Appl. Math. 315 (2016), 175–181.
[41]
Sebastiano Vigna. 2019. It is high time we let go of the Mersenne Twister. CoRR abs/1910.06437 (2019).
[42]
Sebastiano Vigna. 2020. On the probability of overlap of random subsequences of pseudorandom number generators. Inform. Process. Lett. 158 (2020).

Cited By

View all
  • (2024)Probabilistic Cellular Automata Monte Carlo for the Maximum Clique ProblemMathematics10.3390/math1218285012:18(2850)Online publication date: 13-Sep-2024
  • (2024)Nonlinear integrated optical resonators for optical fibre data recoveryOptics Express10.1364/OE.52949932:20(34223)Online publication date: 9-Sep-2024
  • (2024)Mitigating MEV attacks with a two-tiered architecture utilizing verifiable decryptionEURASIP Journal on Wireless Communications and Networking10.1186/s13638-024-02390-42024:1Online publication date: 13-Aug-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Mathematical Software
ACM Transactions on Mathematical Software  Volume 47, Issue 4
December 2021
242 pages
ISSN:0098-3500
EISSN:1557-7295
DOI:10.1145/3485138
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 28 September 2021
Accepted: 01 April 2021
Revised: 01 February 2021
Received: 01 August 2019
Published in TOMS Volume 47, Issue 4

Permissions

Request permissions for this article.

Check for updates

Author Tag

  1. Pseudorandom number generators

Qualifiers

  • Research-article
  • Refereed

Funding Sources

  • Google Focused Research Award

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)86
  • Downloads (Last 6 weeks)11
Reflects downloads up to 03 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Probabilistic Cellular Automata Monte Carlo for the Maximum Clique ProblemMathematics10.3390/math1218285012:18(2850)Online publication date: 13-Sep-2024
  • (2024)Nonlinear integrated optical resonators for optical fibre data recoveryOptics Express10.1364/OE.52949932:20(34223)Online publication date: 9-Sep-2024
  • (2024)Mitigating MEV attacks with a two-tiered architecture utilizing verifiable decryptionEURASIP Journal on Wireless Communications and Networking10.1186/s13638-024-02390-42024:1Online publication date: 13-Aug-2024
  • (2024)Mitigating Debugger-based Attacks to Java Applications with Self-debuggingACM Transactions on Software Engineering and Methodology10.1145/363197133:4(1-38)Online publication date: 18-Apr-2024
  • (2024)Hardware/Software Cooperative Design Against Power Side-Channel Attacks on IoT DevicesIEEE Internet of Things Journal10.1109/JIOT.2024.335541711:9(16758-16768)Online publication date: 1-May-2024
  • (2024)Lightweight Multicast Authentication in NoC-based SoCs2024 25th International Symposium on Quality Electronic Design (ISQED)10.1109/ISQED60706.2024.10528746(1-8)Online publication date: 3-Apr-2024
  • (2024)Quantics Tensor Cross Interpolation for High-Resolution Parsimonious Representations of Multivariate FunctionsPhysical Review Letters10.1103/PhysRevLett.132.056501132:5Online publication date: 29-Jan-2024
  • (2024)A novel enhanced chaos based present lightweight cipher schemePhysica Scripta10.1088/1402-4896/ad156099:1(016004)Online publication date: 2-Jan-2024
  • (2024)Fast event-driven simulations for soft spheres: from dynamics to Laves phase nucleationThe Journal of Chemical Physics10.1063/5.0209178161:2Online publication date: 12-Jul-2024
  • (2024)Efficient generation of grids and traversal graphs in compositional spaces towards exploration and path planningnpj Unconventional Computing10.1038/s44335-024-00012-21:1Online publication date: 5-Nov-2024
  • Show More Cited By

View Options

Get Access

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media