28 lines
974 B
Python
28 lines
974 B
Python
from src.lib.BitcoinECC import BitcoinECC
|
|
|
|
|
|
def newPrivatekey(uncompressed=True): # Return new private key
|
|
from src.lib.BitcoinECC import newBitcoinECC # Use new lib to generate WIF compatible addresses, but keep using the old yet for backward compatiblility issues
|
|
bitcoin = newBitcoinECC.Bitcoin()
|
|
d = bitcoin.GenerateD()
|
|
bitcoin.AddressFromD(d, uncompressed)
|
|
return bitcoin.PrivFromD(d, uncompressed)
|
|
|
|
|
|
def privatekeyToAddress(privatekey): # Return address from private key
|
|
bitcoin = BitcoinECC.Bitcoin()
|
|
bitcoin.BitcoinAddressFromPrivate(privatekey)
|
|
return bitcoin.BitcoinAddresFromPublicKey()
|
|
|
|
|
|
def sign(data, privatekey): # Return sign to data using private key
|
|
bitcoin = BitcoinECC.Bitcoin()
|
|
bitcoin.BitcoinAddressFromPrivate(privatekey)
|
|
sign = bitcoin.SignECDSA(data)
|
|
return sign
|
|
|
|
|
|
def verify(data, address, sign): # Verify data using address and sign
|
|
bitcoin = BitcoinECC.Bitcoin()
|
|
return bitcoin.VerifyMessageFromBitcoinAddress(address, data, sign)
|