-
Notifications
You must be signed in to change notification settings - Fork 19
Tool API
The MMGen Project edited this page Jan 25, 2023
·
5 revisions
The tool API provides a convenient interface to selected methods in the
mmgen.tool module. Type pydoc3 mmgen.tool.api
for available methods and
call signatures.
from mmgen.tool.api import tool_api
tool = tool_api()
# List available coins:
print(' '.join(tool.coins))
# Initialize a coin/network pair:
proto = tool.init_coin('btc','mainnet')
# Print the available address types for current coin/network, along with a
# description. If tool.addrtype is unset, the first-listed will be used:
tool.print_addrtypes()
# Set the address type to P2PKH with compressed public key:
tool.addrtype = 'compressed'
# Skip user entropy gathering (not recommended)
tool.usr_randchars = 0
# Generate a random hex secret:
hexsec = tool.randhex()
# Generate the key and address:
wif = tool.hex2wif(hexsec)
addr = tool.wif2addr(wif)
# Generate an LTC regtest Segwit key and address:
proto = tool.init_coin('ltc','regtest')
tool.addrtype = 'segwit'
wif = tool.hex2wif(hexsec)
addr = tool.wif2addr(wif)
# Generate a random LTC regtest Bech32 key/address pair:
tool.addrtype = 'bech32'
wif,addr = tool.randpair()
# Generate an MMGen native mnemonic seed phrase:
mmgen_seed = tool.hex2mn(hexsec)
# Generate a BIP39 mnemonic seed phrase:
bip39_seed = tool.hex2mn(hexsec,fmt='bip39')
# Reverse the hex string:
hexsec_rev = tool.hexreverse(hexsec)
# Get the HASH160 of the value:
sec_hash160 = tool.hash160(hexsec)
# Convert the value to base58 format:
sec_b58 = tool.hextob58(hexsec)
# Convert the value to base58 check format:
sec_b58chk = tool.hextob58chk(hexsec)
# Convert the byte specification '4G' to an integer:
four_g = tool.bytespec('4G')
# Convert the byte specification '4GB' to an integer:
four_gb = tool.bytespec('4GB')
Homepage:
Clearnet |
I2P |
Onion
Code repository:
Clearnet |
I2P |
Onion
Code repository mirrors:
Github |
Gitlab |
Gitflic
Keybase |
Twitter |
Reddit |
Bitcointalk
PGP Signing Key: 5C84 CB45 AEE2 250F 31A6 A570 3F8B 1861 E32B 7DA2
Donate:
⊙ BTC: bc1qxmymxf8p5ckvlxkmkwgw8ap5t2xuaffmrpexap
⊙ BCH: 15TLdmi5NYLdqmtCqczUs5pBPkJDXRs83w
⊙ XMR: 8B14zb8wgLuKDdse5p8f3aKpFqRdB4i4xj83b7BHYABHMvHifWxiDXeKRELnaxL5FySfeRRS5girgUvgy8fQKsYMEzPUJ8h