hashlib找不到ripemd160

时间:2017-03-04 21:39:45

标签: python python-2.7 ubuntu

当我尝试将ripemd160hashlib一起使用时,它说无法找到它。

我使用安装了hashlib的easy_install hashlib,但仍然无法找到ripemd160。

我正在使用Ubuntu和python2.7

def hexHash(str, withHash = None):
    h = hashlib.new('ripemd160')
    h.update(str)
    if withHash != None:
        return h.hexdigest()[0:6]
    else:
        return '#'+h.hexdigest()[0:6]
  

ValueError:不支持的哈希类型

1 个答案:

答案 0 :(得分:1)

Hashlib是Python标准库的一部分,因此您无需安装它。

但是,唯一保证可用的哈希算法是md5,sha1,sha224,sha256,sha384和sha512。

其他可能可用,具体取决于您平台上使用的SSL库。

您可以在终端中运行openssl list-message-digest-algorithms以查看哪些算法可用。

或者来自Python:

import hashlib

print hashlib.algorithms_available

如果ripemd160不可用,您应该考虑使用不同的选项重新安装SSL库。

如果要将SSL库更改为具有不同版本号的SSL库,则还必须重建依赖于它的任何内容。