tl; dr Comment doit-on effectuer Hash160, en utilisant la plupart des outils python de base?Obtenir l'adresse Hash160 bitcoin en python
============================================== ======
Salut,
J'essaie de comprendre, comment les transactions fonctionnent en Bitcoin. Lorsque je choisis des entrées pour un nouveau tx, je veux m'assurer qu'elles appartiennent à une adresse spécifique. Cependant, les tx existants ne spécifient pas les adresses des sorties précédentes, mais plutôt le hash de l'adresse.
par exemple:
>> bx fetch-tx 11a1b7ac0a65bd50b7094c720aecd77cfd83d84b1707960fd00dd82a888aab5c --config /home/theo/Desktop/bx-testnet.cfg
{
hash 11a1b7ac0a65bd50b7094c720aecd77cfd83d84b1707960fd00dd82a888aab5c
inputs
{
input
{
address_hash f3b7278583827a049d6be894bf7f516178a0c8e6
previous_output
{
hash 4a3532061d43086299ae9b2409a456bb9638dff32e0858c4ccda27203fb2e4f6
index 1
}
script "[30440220146b8b5b014245a9e27e21122d4dded04c3f39c3a49ac2494743d6f6ae8efff602206d417a4be9c7431ea69699132438510ade1cf8d746607f77d114907762ed1eb301] [023dd2e892290e41bb78efce6ea30a97015ef13eaaa9ebb7b0514485fc365cc391]"
sequence 4294967295
}
}
lock_time 0
outputs
{
output
{
address_hash a73706385fffbf18855f2aee2a6168f29dbb597e
script "dup hash160 [a73706385fffbf18855f2aee2a6168f29dbb597e] equalverify checksig"
value 130000000
}
output
{
address_hash ad6e80394af99ece5d7701bf2f457480b93965b7
script "dup hash160 [ad6e80394af99ece5d7701bf2f457480b93965b7] equalverify checksig"
value 49525957813
}
}
version 1
}
Dites, je veux vérifier que des sorties peuvent être envoyées à partir de l'adresse mvm74FACaagz94rjWbNmW2EmhJdmEGcxpa
donc je prends son Hash160 en Python:
>> hashlib.new('ripemd160', hashlib.sha256("mvm74FACaagz94rjWbNmW2EmhJdmEGcxpa".encode('utf-8')).digest()).hexdigest()
'748598cd9b004aecf8a2d97464fb1f2a90562ffe'
Ce n'est pas le résultat Je m'attendais: a73706385fffbf18855f2aee2a6168f29dbb597e
Pendant ce temps, le service en ligne this calcule correctement le hachage.
Comment hacher160 une adresse bitcoin en Python?
Bon travail! Merci d'avoir posté votre solution! – viraptor