{"id":11241,"date":"2011-11-10T09:56:03","date_gmt":"2011-11-10T09:56:03","guid":{"rendered":"https:\/\/www.techopedia.com\/definition\/pseudo-random-number-generator\/"},"modified":"2017-02-01T14:34:27","modified_gmt":"2017-02-01T14:34:27","slug":"pseudo-random-number-generator","status":"publish","type":"definition","link":"https:\/\/www.techopedia.com\/definition\/25842\/pseudo-random-number-generator-prng","title":{"rendered":"Pseudo Random Number Generator"},"content":{"rendered":"
A pseudo random number generator (PRNG) refers to an algorithm that uses mathematical formulas to produce sequences of random numbers. PRNGs generate a sequence of numbers approximating the properties of random numbers. This is determined by a small group of initial values. PRNGs are fundamental to the use of cryptographic mechanisms and key generation as they ensure message uniqueness.<\/p>\n
\n\tThis term is also known as deterministic random number generator.\n<\/p>\n
Widely used PRNG algorithms include: linear congruential generators, lagged Fibonacci generators, linear feedback shift registers, Blum Blum Shub, Fortuna and Mersenne Twister.<\/p>\n
\n\tA pseudo random number generator starts from an arbitrary starting state using a seed state. Many numbers are generated in a short time and can also be reproduced later, if the starting point in the sequence is known. Hence, the numbers are deterministic and efficient.<\/p>\n
\n\tPRNGs used in cryptographic purposes are called cryptographically secure PRNGs (CSPRNGs). This includes stream ciphers and block ciphers. The essential requirement for a CSPRNG is that it should pass all statistical tests restricted to polynomial time in the size of the seed.<\/p>\n","protected":false},"excerpt":{"rendered":"
What Does Pseudo Random Number Generator Mean? A pseudo random number generator (PRNG) refers to an algorithm that uses mathematical formulas to produce sequences of random numbers. PRNGs generate a sequence of numbers approximating the properties of random numbers. This is determined by a small group of initial values. PRNGs are fundamental to the use […]<\/p>\n","protected":false},"author":7813,"featured_media":0,"comment_status":"open","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_lmt_disableupdate":"","_lmt_disable":"","om_disable_all_campaigns":false,"footnotes":""},"definitioncat":[244,228,216],"class_list":["post-11241","definition","type-definition","status-publish","format-standard","hentry","definitioncat-programming-languages","definitioncat-risk-management","definitioncat-software-development"],"acf":[],"yoast_head":"\n