Merge branch 'CURA-8401_use_secrets_instead_of_random'

This commit is contained in:
Ghostkeeper 2021-09-03 16:06:23 +02:00
commit d5481e4ce8
No known key found for this signature in database
GPG Key ID: D2A8871EE34EC59A

View File

@ -3,7 +3,7 @@
from datetime import datetime from datetime import datetime
import json import json
import random import secrets
from hashlib import sha512 from hashlib import sha512
from base64 import b64encode from base64 import b64encode
from typing import Optional from typing import Optional
@ -139,11 +139,11 @@ class AuthorizationHelpers:
def generateVerificationCode(code_length: int = 32) -> str: def generateVerificationCode(code_length: int = 32) -> str:
"""Generate a verification code of arbitrary length. """Generate a verification code of arbitrary length.
:param code_length:: How long should the code be? This should never be lower than 16, but it's probably :param code_length:: How long should the code be in bytes? This should never be lower than 16, but it's probably
better to leave it at 32 better to leave it at 32
""" """
return "".join(random.choice("0123456789ABCDEF") for i in range(code_length)) return secrets.token_hex(code_length)
@staticmethod @staticmethod
def generateVerificationCodeChallenge(verification_code: str) -> str: def generateVerificationCodeChallenge(verification_code: str) -> str: