Rilevazione di algoritmi di hash non standard disponibili con Hashlib in Python
-
14-12-2019 - |
Domanda
Secondo la documentazione Python, solo alcuni algoritmi hash sono garantiti per essere supportati dal modulo HASHLIB (MD5 e SHA ***).Come dovrei andare a rilevare se sono disponibili altri algoritmi?(Come Ripemd-160), naturalmente, potrei provare a usarlo usando l'esempio Ripemd-160 dalla documentazione, ma non sono sicuro di come sarebbe lamentata.Ci vorrebbe un'eccezione, se sì, quale eccezione?
Soluzione
Basta provalo in una shell:
>>> h = hashlib.new('ripemd161')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/hashlib.py", line 124, in __hash_new
return __get_builtin_constructor(name)(string)
File "/usr/lib/python2.7/hashlib.py", line 91, in __get_builtin_constructor
raise ValueError('unsupported hash type %s' % name)
ValueError: unsupported hash type ripemd161
. Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow