Paper 2017/298

An Investigation of Sources of Randomness Within Discrete Gaussian Sampling

Séamus Brannigan, Neil Smyth, Tobias Oder, Felipe Valencia, Elizabeth O’Sullivan, Tim Güneysu, and Francesco Regazzoni

Abstract

This paper presents a performance and statistical analysis of random number generators and discrete Gaussian samplers implemented in software. Most Lattice-based cryptographic schemes utilise discrete Gaussian sampling and will require a quality random source. We examine a range of candidates for this purpose, including NIST DRBGs, stream ciphers and well-known PRNGs. The performance of these random sources is analysed within 64-bit implementations of Bernoulli, CDT and Ziggurat sampling. In addition we perform initial statistical testing of these samplers and include an investigation into improper seeding issues and their effect on the Gaussian samplers. Of the NIST approved Deterministic Random Bit Generators (DRBG), the AES based CTR-DRBG produced the best balanced performance in our tests.

Note: Clarification of use of 64-bit precision. The author's would like to thank Michael Walter for his very helpful and insightful comments.

Metadata
Available format(s)
PDF
Category
Implementation
Publication info
Preprint. MINOR revision.
Keywords
Lattice-based cryptographyDiscrete Gaussian samplingrandomnesssoftware
Contact author(s)
e osullivan @ qub ac uk
History
2017-04-25: revised
2017-04-07: received
See all versions
Short URL
https://ia.cr/2017/298
License
Creative Commons Attribution
CC BY

BibTeX

@misc{cryptoeprint:2017/298,
      author = {Séamus Brannigan and Neil Smyth and Tobias Oder and Felipe Valencia and Elizabeth O’Sullivan and Tim Güneysu and Francesco Regazzoni},
      title = {An Investigation of Sources of Randomness Within Discrete Gaussian Sampling},
      howpublished = {Cryptology {ePrint} Archive, Paper 2017/298},
      year = {2017},
      url = {https://eprint.iacr.org/2017/298}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.