Exemple #1
0
def test_bip32_descend():
    master = btc.bip32_master_key(b'\x07' * 32)
    end_key = btc.bip32_descend(master, [2, 3, 10000])
    assert end_key == binascii.unhexlify(
        "6856ef965940a1a7b1311dc041050ac0013e326c7ff4e2c677a7694b4f0405c901")
    end_key = btc.bip32_descend(master, 2, 5, 4, 5)
    assert end_key == binascii.unhexlify(
        "d2d816b6485103c0d7ff95482788f0e8e73fa11817079e006d47979d8196c4b101")
Exemple #2
0
def test_bip32_vector(vector):
    master = btc.bip32_master_key(vector['seed'])
    assert master == vector['keys'][0][0], 'failed: master xpriv'
    masterpub = btc.bip32_privtopub(master)
    assert masterpub == vector['keys'][0][1], 'failed: master xpub'
    currentkey = master
    for i in range(1, len(vector['depths'])):
        currentkey = btc.bip32_ckd(currentkey, vector['depths'][i])
        print(currentkey)
        print(vector['keys'][i][0])
        assert currentkey == vector['keys'][i][
            0], 'failed: child priv key, should be: ' + vector['keys'][i][0]
        pub = btc.bip32_privtopub(currentkey)
        print(pub)
        print(vector['keys'][i][1])
        assert pub == vector['keys'][i][
            1], 'failed: child pub key, should be: ' + vector['keys'][i][1]
Exemple #3
0
 def derive_bip32_master_key(cls, seed):
     # FIXME: slight encoding mess
     return btc.bip32_deserialize(
         btc.bip32_master_key(seed, vbytes=cls.BIP32_priv_vbytes))