Обнаружение доступных нестандартных алгоритмов хеширования с использованием hashlib в Python
Согласно документации Python, модуль hashlib гарантированно поддерживает только несколько алгоритмов хеширования (MD5 и SHA***). Как мне узнать, доступны ли другие алгоритмы? (как RIPEMD-160) Конечно, я мог бы попытаться использовать его, используя пример RIPEMD-160 из документации, но я не уверен, как он будет жаловаться. Будет ли это исключение, если да, какое исключение?
1 ответ
Решение
Просто попробуйте в оболочке:
>>> 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