I am looking for a cryptographically secure number generator for node.js. Afaik. Math.random()
does not meet these requirements. Is there any nodejs lib which can generate cryptographically secure numbers?
2 Answers
You are correct that Math.random()
is not secure. If you want a CSPRNG in Node.js, crypto.randomBytes()
is what you're looking for.
There are a few libs available, but I need to be certain whether they are really true random.
Any one who considers arithmetical methods of producing random digits is, of course, in a state of sin.
Basically, no library can generate any "really true random"s. Lately some processors include support for hardware RNGs, which allows (hopefully) "really true random"s to be generated.
That being said, there are -very- few applications for which a CSPRNG will not suffice. In fact, CSPRNGs offer such good quality randomness that I can't think of any.
-
Thanks! Then it was a misunderstanding. What I meant is cryptographically secure instead of true random.– inf3rnoCommented Dec 6, 2016 at 6:20
-
Math.random()
does not meet those requirements? You have not described your actual requirements so we can't really know what would be needed for your solution.