Sé que ya existen herramientas para generar números aleatorios criptográficos, pero me preguntaba si usar AES podría hacer lo mismo.
Por ejemplo, tengo una clave secreta para AES en mi servidor y un contador en mi base de datos. Cada vez que quiero generar un número aleatorio, incremento el contador y luego lo cifro con AES usando la clave secreta de mi servidor y luego transformo los bits resultantes en el número correcto.
¿Esto no produciría un número aleatorio seguro mientras no se encuentre mi clave secreta?
N.B .: Si quiere decir que almacenar una contraseña en su servidor no es seguro, explique en qué se diferencia de almacenar su clave SSL privada en su servidor.
Editar
Encontré algo de información en wikipedia
Un cifrado de bloque seguro se puede convertir en un CSPRNG ejecutándolo modo contador Esto se hace eligiendo una clave aleatoria y cifrando un 0, luego cifrar un 1, luego cifrar un 2, etc. El contador también puede iniciarse en un número arbitrario distinto de cero. Obviamente, la el período será 2n para un cifrado de bloque de n bits; igualmente obvio, el Los valores iniciales (es decir, clave y "texto simple") no deben ser conocidos por un atacante, por muy buena que sea esta construcción CSPRNG. De otra manera, Toda la seguridad se perderá.
Por lo tanto, se usó antes para construir CSPRNG.