Your browser does not fully support modern features. Please upgrade for a smoother experience.
Submitted Successfully!
Thank you for your contribution! You can also upload a video entry or images related to this topic. For video creation, please contact our Academic Video Service.
Version Summary Created by Modification Content Size Created at Operation
1 handwiki Sirius Huang -- 2537 2022-10-19 01:39:06

Video Upload Options

We provide professional Academic Video Service to translate complex research into visually appealing presentations. Would you like to try it?
Cite
If you have any further questions, please contact Encyclopedia Editorial Office.
HandWiki. Cryptographically-Secure Pseudorandom Number Generator. Encyclopedia. Available online: https://encyclopedia.pub/entry/30451 (accessed on 28 September 2026).
HandWiki. Cryptographically-Secure Pseudorandom Number Generator. Encyclopedia. Available at: https://encyclopedia.pub/entry/30451. Accessed September 28, 2026.
HandWiki. "Cryptographically-Secure Pseudorandom Number Generator" Encyclopedia, https://encyclopedia.pub/entry/30451 (accessed September 28, 2026).
HandWiki. (2022, October 20). Cryptographically-Secure Pseudorandom Number Generator. In Encyclopedia. https://encyclopedia.pub/entry/30451
HandWiki. "Cryptographically-Secure Pseudorandom Number Generator." Encyclopedia. Web. 20 October, 2022.
Cryptographically-Secure Pseudorandom Number Generator
Edit

A cryptographically secure pseudorandom number generator (CSPRNG) or cryptographic pseudorandom number generator (CPRNG) is a pseudorandom number generator (PRNG) with properties that make it suitable for use in cryptography. It is also loosely known as a cryptographic random number generator (CRNG) (see Random number generation § "True" vs. pseudo-random numbers). Most cryptographic applications require random numbers, for example:

  • key generation
  • nonces
  • salts in certain signature schemes, including ECDSA, RSASSA-PSS

The "quality" of the randomness required for these applications varies. For example, creating a nonce in some protocols needs only uniqueness. On the other hand, the generation of a master key requires a higher quality, such as more entropy. And in the case of one-time pads, the information-theoretic guarantee of perfect secrecy only holds if the key material comes from a true random source with high entropy, and thus any kind of pseudorandom number generator is insufficient. Ideally, the generation of random numbers in CSPRNGs uses entropy obtained from a high-quality source, generally the operating system's randomness API. However, unexpected correlations have been found in several such ostensibly independent processes. From an information-theoretic point of view, the amount of randomness, the entropy that can be generated, is equal to the entropy provided by the system. But sometimes, in practical situations, more random numbers are needed than there is entropy available. Also, the processes to extract randomness from a running system are slow in actual practice. In such instances, a CSPRNG can sometimes be used. A CSPRNG can "stretch" the available entropy over more bits.

random number generator pseudorandom number perfect secrecy

References

  1. Katz, Jonathan; Lindell, Yehuda (2008). Introduction to Modern Cryptography. CRC press. p. 70. ISBN 978-1584885511. https://archive.org/details/Introduction_to_Modern_Cryptography. 
  2. Andrew Chi-Chih Yao. Theory and applications of trapdoor functions. In Proceedings of the 23rd IEEE Symposium on Foundations of Computer Science, 1982. https://www.di.ens.fr/users/phan/secuproofs/yao82.pdf
  3. Goldreich, Oded (2001), Foundations of cryptography I: Basic Tools, Cambridge: Cambridge University Press, ISBN 978-0-511-54689-1 , def 3.3.1.
  4. Goldreich, Oded (2001), Foundations of cryptography I: Basic Tools, Cambridge: Cambridge University Press, ISBN 978-0-511-54689-1 , Theorem 3.3.7.
  5. Dodis, Yevgeniy, Lecture 5 Notes of Introduction to Cryptography, http://cs.nyu.edu/courses/fall08/G22.3210-001/lect/lecture5.pdf, retrieved 3 January 2016 , def 4.
  6. Miklos Santha, Umesh V. Vazirani (1984-10-24). "Generating quasi-random sequences from slightly-random sources". University of California. pp. 434–440. ISBN 0-8186-0591-X. http://www.cs.berkeley.edu/~vazirani/pubs/quasi.pdf. Retrieved 2006-11-29. 
  7. John von Neumann (1963-03-01). "Various techniques for use in connection with random digits". The Collected Works of John von Neumann. Pergamon Press. pp. 768–770. ISBN 0-08-009566-6. 
  8. Adam Young, Moti Yung (2004-02-01). Malicious Cryptography: Exposing Cryptovirology. sect 3.2: John Wiley & Sons. pp. 416. ISBN 978-0-7645-4975-5. http://eu.wiley.com/WileyCDA/WileyTitle/productCd-0764549758.html. 
  9. "CVS log of arc4random.c". CVS. October 1, 2013. http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib/libc/crypt/arc4random.c?rev=1.25&content-type=text/x-cvsweb-markup. 
  10. "CVS log of arc4random.c". CVS. November 16, 2014. http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/gen/arc4random.c?rev=1.26&content-type=text/x-cvsweb-markup&only_with_tag=MAIN. 
  11. "FreeBSD 12.0-RELEASE Release Notes: Runtime Libraries and API". 5 March 2019. https://www.freebsd.org/releases/12.0R/relnotes.html#userland-libraries. 
  12. "Github commit of random.c". Github. July 2, 2016. https://github.com/torvalds/linux/blob/e192be9d9a30555aae2ca1dc3aad37cba484cd4a/drivers/char/random.c. 
  13. "A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications". NIST. April 2010. http://csrc.nist.gov/publications/nistpubs/800-22-rev1a/SP800-22rev1a.pdf. 
  14. Poorghanad, A.; Sadr, A.; Kashanipour, A. (May 2008). "Generating High Quality Pseudo Random Number Using Evolutionary Methods". IEEE Congress on Computational Intelligence and Security 9: 331–335. http://www.computer.org/csdl/proceedings/cis/2008/3508/01/3508a331.pdf. 
  15. Kleidermacher, David; Kleidermacher, Mike (2012). Embedded Systems Security: Practical Methods for Safe and Secure Software and Systems Development. Elsevier. p. 256. ISBN 9780123868862. https://books.google.com/books?id=E9hBXN-HK1cC. 
  16. Cox, George; Dike, Charles; Johnston, DJ (2011). Intel's Digital Random Number Generator (DRNG). http://www.hotchips.org/wp-content/uploads/hc_archives/hc23/HC23.18.2-security/HC23.18.210-Random-Numbers-Cox-Intel-e.pdf. 
  17. Menezes, Alfred; van Oorschot, Paul; Vanstone, Scott (1996). "Chapter 5: Pseudorandom Bits and Sequences". Handbook of Applied Cryptography. CRC Press. http://www.cacr.math.uwaterloo.ca/hac/about/chap5.pdf. 
  18. Young, Adam; Yung, Moti (2004-02-01). Malicious Cryptography: Exposing Cryptovirology. sect 3.5.1: John Wiley & Sons. ISBN 978-0-7645-4975-5. http://eu.wiley.com/WileyCDA/WileyTitle/productCd-0764549758.html. 
  19. Kan, Wilson (September 4, 2007). "Analysis of Underlying Assumptions in NIST DRBGs". https://eprint.iacr.org/2007/345.pdf. 
  20. Ye, Katherine Qinru (April 2016). "The Notorious PRG: Formal verification of the HMAC-DRBG pseudorandom number generator". https://www.cs.cmu.edu/~kqy/resources/thesis.pdf. 
  21. Campagna, Matthew J. (November 1, 2006). "Security Bounds for the NIST Codebook-based Deterministic Random Bit Generator". http://eprint.iacr.org/2006/379.pdf. 
  22. Perlroth, Nicole (September 10, 2013). "Government Announces Steps to Restore Confidence on Encryption Standards". The New York Times. http://bits.blogs.nytimes.com/2013/09/10/government-announces-steps-to-restore-confidence-on-encryption-standards/. 
  23. James Borger; Glenn Greenwald (6 September 2013). "Revealed: how US and UK spy agencies defeat internet privacy and security". The Guardian. https://www.theguardian.com/world/2013/sep/05/nsa-gchq-encryption-codes-security. 
  24. Nicole Perlroth (5 September 2013). "N.S.A. Able to Foil Basic Safeguards of Privacy on Web". The New York Times. https://www.nytimes.com/2013/09/06/us/nsa-foils-much-internet-encryption.html?pagewanted=all&_r=0. 
  25. Bruce Schneier (15 November 2007). "Did NSA Put a Secret Backdoor in New Encryption Standard?". Wired. https://www.wired.com/politics/security/commentary/securitymatters/2007/11/securitymatters_1115. Retrieved 7 September 2013. 
  26. Matthew Green. "RSA warns developers not to use RSA products". http://blog.cryptographyengineering.com/2013/09/rsa-warns-developers-against-its-own.html. 
  27. Joseph Menn (20 December 2013). "Exclusive: Secret contract tied NSA and security industry pioneer". Reuters. https://www.reuters.com/article/us-usa-security-rsa-idUSBRE9BJ1C220131220. 
  28. "Practical state recovery attacks against legacy RNG implementations". https://duhkattack.com/paper.pdf. 
  29. "DUHK Crypto Attack Recovers Encryption Keys, Exposes VPN Connections". https://it.slashdot.org/story/17/10/25/0047224/duhk-crypto-attack-recovers-encryption-keys-exposes-vpn-connections. 
More
Upload a video for this entry
Information
Contributor MDPI registered users' name will be linked to their SciProfiles pages. To register with us, please refer to https://encyclopedia.pub/register :
View Times: 2.7K
Entry Collection: HandWiki
Revision: 1 time (View History)
Update Date: 20 Oct 2022
Notice
You are not a member of the advisory board for this topic. If you want to update advisory board member profile, please contact office@encyclopedia.pub.
OK
Confirm
Only members of the Encyclopedia advisory board for this topic are allowed to note entries. Would you like to become an advisory board member of the Encyclopedia?
Yes
No
${ textCharacter }/${ maxCharacter }
Submit
Cancel
There is no comment~
${ textCharacter }/${ maxCharacter }
Submit
Cancel
${ selectedItem.replyTextCharacter }/${ selectedItem.replyMaxCharacter }
Submit
Cancel
Confirm
Are you sure to Delete?
Yes No
Academic Video Service