Pregunta

De acuerdo con la documentación de Python, solo se garantiza que se admiten algunos algoritmos de hash apoyados por el módulo Hashlib (MD5 y SHA ***).¿Cómo voy a detectar si otros algoritmos están disponibles?(Al igual que RIPEMD-160), por supuesto, podría intentar usarlo usando el ejemplo RIPEMD-160 de la documentación, pero no estoy seguro de cómo se quejaría.¿Lanzaría una excepción, en caso afirmativa, qué excepción?

¿Fue útil?

Solución

Solo inténtalo en una cáscara:

>>> 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

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top