PKHash RipeMD160 в питоне

Я пытаюсь понять, как работают криптоалгоритмы RIPEMD и SHA256. Методом биткойнов для вычисления PKHash является RIPEMD160(SHA256(PublicKey)).

Я пытаюсь сначала реализовать RIPEMD SHA256(PublicKey).

pkHashStep1=hashlib.sha256(public_key.decode('hex')).digest()
print 'MyTransaction pkHashStep1 {}'.format(pkHashStep1)

MyTransaction pkHashStep1 ▒▒▒so▒/▒▒e▒▒▒¡▒7▒?9▒▒.▒ӟ!n▒h

Это выводит строку, которую я не могу использовать напрямую, но библиотека hashlib может использовать это. Попытка pkHashStep1.decode('hex') и bin(pkHashStep1) выдает ошибку. Как он преобразует хэш в полезную строку /bin?

В настоящее время у меня есть publicKey в качестве входных данных для моего метода RipeMD вместо pkHashStep1, и я должен сделать отдельно

input=hashlib.sha256(publicKey.decode('hex')).hexdigest()

К вашему сведению: я знаю, что в hashlib есть метод RIMEMD. Предположение, что я использую это, не является ответом /questions/33392037/chto-ne-tak-s-moim-kodom-python-pinemd160/33392052#33392052

1 ответ

Решение

Комментарий Глибдуд заставил меня ответить.

hashlib.sha256(public_key.decode('hex')).digest().encode('hex')=
hashlib.sha256(public_key.decode('hex')).hexdigest()
Другие вопросы по тегам