ó
    |ch]  ã                   ón   • S SK r S SKJr  S SKJr  \R                  rS\4S jr	S\S\
4S jrS\S\4S jrg)	é    N)Úurandom)Úknox_settingsÚreturnc                  ó�   • [         R                  " [        [        [        R
                  S-  5      5      5      R                  5       $ )Né   )ÚbinasciiÚhexlifyÚgenerate_bytesÚintr   ÚAUTH_TOKEN_CHARACTER_LENGTHÚdecode© ó    ÚT/var/www/djangovue.mamus.xyz/django/venv/lib/python3.13/site-packages/knox/crypto.pyÚcreate_token_stringr   	   s4   € Ü×ÒÜ”sœ=×DÑDÀqÑHÓIÓJóç�fƒhðr   Útokenc                 ój   • [         R                  " [         R                  " [        U S5      5      5      $ )z}
We need to make sure that the token, that is send is hex-compatible.
When a token prefix is used, we cannot guarantee that.
zutf-8)r   Ú	unhexlifyr	   Úbytes)r   s    r   Úmake_hex_compatibler      s'   € ô
 ×Òœh×.Ò.¬u°U¸GÓ/DÓEÓFÐFr   c                 ój   • [        5       nUR                  [        U 5      5        UR                  5       $ )z
Calculates the hash of a token.
Token must contain an even number of hex digits or
a binascii.Error exception will be raised.
)Ú	hash_funcÚupdater   Ú	hexdigest)r   Údigests     r   Ú
hash_tokenr      s,   € ô ‹[€FØ
‡M�MÔ% eÓ,Ô-Ø×ÑÓÐr   )r   Úosr   r
   Úknox.settingsr   ÚSECURE_HASH_ALGORITHMr   Ústrr   r   r   r   r   r   r   Ú<module>r!      sN   ðÛ Ý (å 'à×/Ñ/€	ð˜Sô ðG˜sð G uô Gð�cð ˜cõ r   