Can you create cryptographically secure pseudorandom number generators algorithmically, or is special hardware required?

42 Views Asked by At

Can you create cryptographically secure pseudorandom number generators algorithmically, or is special hardware required?

Ive researched various PRNGs in the past and they arent too hard to understand, but in my research on cryptography I keep coming across CSPRNGs, but no mention on what makes the cryptographically secure and no reference seems to explain how to implement them in code.

I know that encryption such as AES is "cryptographically secure", for whatever that term is supposed to mean, and I know that hash functions are cryptographically secure. These are implemented algorithmically. But every reference to CSPRNG's I come across seems to imply an external physical processes is required. Is this true or is this just one way to do it?

If you require special hardware to measure physical processes, then what makes hash and AES "cryptographically secure" but a PRNG cannot be made so?

If you can create CSPRNG's algorithmically, why is it so hard to find any clear implementation or algorithm? Can someone provide me a link to one?


Update:

To be clear, Im looking to recreate the code and implement the algorithm myself. Im not looking for a simple "yes" or "no" answer, nor am I looking to be referred to untrusted, unvetted, patented and proprietary software, which in no way helps me understand HOW its done. The HOW is the point of the question, which Id hope REAL mathematicians can appreciate more than just a simple anti-intellectual "yes, it can be done, here's a program that can do it for you without having to put any thought into it". Please, what's the point of this site...