Estoy buscando un generador de números seguro criptográficamente para node.js. Hasta donde se. Math.random()
no cumple con estos requisitos. ¿Hay alguna biblioteca de nodejs que pueda generar números criptográficamente seguros?
Tienes razón en que Math.random()
no es seguro. Si desea un CSPRNG en Node.js, crypto.randomBytes()
es lo que estás buscando.
Hay algunas bibliotecas disponibles, pero necesito asegurarme de que sean realmente aleatorias.
Cualquiera que considere métodos aritméticos para producir dígitos al azar está, por supuesto, en un estado de pecado.
Básicamente, ninguna biblioteca puede generar ningún "s aleatorio realmente verdadero". Últimamente, algunos procesadores incluyen soporte para RNG de hardware, lo que permite (con suerte) generar "realmente aleatorios".
Dicho esto, hay muy pocas aplicaciones para las cuales un CSPRNG no será suficiente. De hecho, los CSPRNG ofrecen una aleatoriedad de tan buena calidad que no se me ocurre ninguna.