jeudi 29 avril 2021

Seedable CSPRNG for python?

With the random module, you are able to seed it to get the same values every time.

import random

random.seed(1)
print(random.randint(1,100)) # outputs 18 every time

Is there a CSPRNG that can do this? For example, according to this question How can I create a random number that is cryptographically secure in python?, random.SystemRandom is secure. But seeding it doesn't return the same thing.

from random import SystemRandom

s = SystemRandom()
s.seed(1)
print(s.randint(1,100)) # 81, 16, 100, 58

Does such a CSPRNG exist? or does this negate the security aspect?




Aucun commentaire:

Enregistrer un commentaire