Example #1
0
    def test_wif_encoding(self):
        active_chain = chainparams.get_active_chain()
        wif = bitcoin.SecretToASecret(self.privkey, compressed=True, addrtype = active_chain.wif_version)
        self.assertEqual('L3PoHZXjsvP91C8WuyiwzYKgjzthZD2Q39Wzrwfsndov6Cwcu8zX', wif)

        addr = bitcoin.address_from_private_key(wif, addrtype = active_chain.p2pkh_version, wif_version = active_chain.wif_version)
        self.assertEqual('1599aBMAHbgEkf4dzvd9jxBFgVyufZVVc1', addr)

        chainparams.set_active_chain('MZC')
        active_chain = chainparams.get_active_chain()
        wif = bitcoin.SecretToASecret(self.privkey, compressed=True, addrtype = active_chain.wif_version)
        self.assertEqual('aF4LB486ggLLYsQG1FcgRFQSdiBKhP4BfZKWaYvxvaAF7z6MGkAG', wif)

        addr = bitcoin.address_from_private_key(wif, addrtype = active_chain.p2pkh_version, wif_version = active_chain.wif_version)
        self.assertEqual('MC3JocFZncr3eL2yDuH5zDnb9is5GUzUJv', addr)
 def test_address_from_private_key(self):
     result = address_from_private_key(self.private_key)
     self.assertEqual(self.main_address, result)
Example #3
0
 def test_address_from_private_key(self):
     for priv_details in self.priv_pub_addr:
         addr2 = address_from_private_key(priv_details['priv'])
         self.assertEqual(priv_details['address'], addr2)
Example #4
0
 def test_address_from_private_key(self):
     result = address_from_private_key(self.private_key)
     self.assertEqual(self.main_address, result)
Example #5
0
 def test_address_from_private_key(self):
     for priv_details in self.priv_pub_addr:
         addr2 = address_from_private_key(priv_details['priv'])
         self.assertEqual(priv_details['address'], addr2)
Example #6
0
from lib import transaction, bitcoin, util
from lib.util import bfh, bh2u
from lib.transaction import Transaction

kmd_unsigned_tx_serialized = 'put unsigned kmd raw tx here'
wif = 'put your wif key here'

txin_type, privkey, compressed = bitcoin.deserialize_privkey(wif)
pubkey = bitcoin.public_key_from_private_key(privkey, compressed)

jsontx = transaction.deserialize(kmd_unsigned_tx_serialized)
inputs = jsontx.get('inputs')
outputs = jsontx.get('outputs')
locktime = jsontx.get('lockTime', 0)

for txin in inputs:
    txin['type'] = txin_type
    txin['x_pubkeys'] = [pubkey]
    txin['pubkeys'] = [pubkey]
    txin['signatures'] = [None]
    txin['num_sig'] = 1
    txin['address'] = bitcoin.address_from_private_key(wif)
    txin['value'] = 100000000  # required for preimage calc

tx = Transaction.from_io(inputs, outputs, locktime=locktime)
tx.sign({pubkey: (privkey, compressed)})

print(tx.serialize())