Post
Topic
Board Mining et Hardware
Topic OP
Question sur le padding des donnees dans la fonction de Hash pour miner.
by
Asterion
on 18/07/2015, 12:21:04 UTC
Bonjour

Je cherche a comprendre le fonctionnement et aussi a améliorer mes connaissances.

Je fais mes tests en python 3 et normalement les 2 méthodes devraient avoir des résultats identiques.

Mon problème et mes questions concernent le padding , j ai du faire une erreur mais je ne la trouve pas ou je n ai pas bien compris.

Y aurait une personne expérimentée pour me corriger ? Et éventuellement a qui je pourrais poser des question ?

1) Algo utilise

def Dhash(Data):
    import binascii
    import hashlib
    header_bin = binascii.unhexlify(Data)
    hash = hashlib.sha256(hashlib.sha256(header_bin).digest()).digest()

    print("-" * 80)
    print( binascii.hexlify(hash))
    print(binascii.hexlify(hash[::-1]))
    print("-" * 80)

def main():
    #-------------------------------------------------------------------
    # Block 125552
    #hashMid:   b'7efabb8b1edb35a50a5432415c71d67ba031a89f4edc1303b5e53c7cda54ab25'
    #hash:      b'1dbd981fe6985776b644b173a4d0385ddc1aa2a829688d1e0000000000000000'
    #hash-rev:  b'00000000000000001e8d6829a8a21adc5d38d0a473b144b6765798e61f98bd1d'
    #-------------------------------------------------------------------
    padding =       ("80000000"+"00000000"+"00000000"+"00000000"+
                     "00000000"+"00000000"+"00000000"+"00000000"+
                     "00000000"+"00000000"+"00000000"+"80020000")

    header_hex = (  "01000000"+
                    "81cd02ab7e569e8bcd9317e2fe99f2de44d49ab2b8851ba4a308000000000000" +
                    "e320b6c2fffc8d750423db8b1eb942ae710e951ed797f7affc8892b0f1fc122b" +
                               "c7f5d74d"+"f2b9441a"+"42a14695"+
                    padding)

    Dhash(header_hex[0:160])
    Dhash(header_hex)