12345678910111213141516171819202122232425262728 |
- # The secrets module is used for generating cryptographically strong random
- # numbers suitable for managing data such as passwords, account authentication,
- # security tokens, and related secrets.
- # In particularly, secrets should be used in preference to the default
- # pseudo-random number generator in the random module, which is designed for
- # modeling and simulation, not security or cryptography.
- #
- # Requires Python 3.6+
- # import secrets
- import random
- import string
- def ascii_string (
- length = 16,
- alphabet = string.ascii_letters + string.digits + string.punctuation):
-
- # return ''.join (secrets.choice (alphabet) for i in range (length))
- return ''.join (random.choice (alphabet) for i in range (length))
- def alphanumeric_string (length = 16):
- return ascii_string (length, string.ascii_letters + string.digits)
- def digit_string (length = 16):
- return ascii_string (length, alphabet = string.digits)
- def hex_string (length = 16):
- return ascii_string (length, alphabet = string.hexdigits)
|