diff options
author | Jessica Tallon <jessica@megworld.co.uk> | 2014-07-08 00:02:16 +0100 |
---|---|---|
committer | Jessica Tallon <jessica@megworld.co.uk> | 2014-07-08 21:32:31 +0100 |
commit | c5eb24b8349be7659a87123e792747b1a67cc269 (patch) | |
tree | f02dc1aecfa4b4e26f6d926aae7ad1bbf7321dd5 /mediagoblin/tools/crypto.py | |
parent | 27f99327313bda0dc5cebdb56d29a3347be1ac34 (diff) | |
download | mediagoblin-c5eb24b8349be7659a87123e792747b1a67cc269.tar.lz mediagoblin-c5eb24b8349be7659a87123e792747b1a67cc269.tar.xz mediagoblin-c5eb24b8349be7659a87123e792747b1a67cc269.zip |
Allow crypto.random_string to take optional alphabet param
Diffstat (limited to 'mediagoblin/tools/crypto.py')
-rw-r--r-- | mediagoblin/tools/crypto.py | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/mediagoblin/tools/crypto.py b/mediagoblin/tools/crypto.py index 917e674c..b219a484 100644 --- a/mediagoblin/tools/crypto.py +++ b/mediagoblin/tools/crypto.py @@ -27,8 +27,7 @@ from mediagoblin import mg_globals _log = logging.getLogger(__name__) # produces base64 alphabet -alphabet = string.ascii_letters + "-_" -base = len(alphabet) +ALPHABET = string.ascii_letters + "-_" # Use the system (hardware-based) random number generator if it exists. # -- this optimization is lifted from Django @@ -117,8 +116,9 @@ def get_timed_signer_url(namespace): return itsdangerous.URLSafeTimedSerializer(__itsda_secret, salt=namespace) -def random_string(length): +def random_string(length, alphabet=ALPHABET): """ Returns a URL safe base64 encoded crypographically strong string """ + base = len(alphabet) rstring = "" for i in range(length): n = getrandbits(6) # 6 bytes = 2^6 = 64 |