2019-05-27 09:34:21 +00:00
|
|
|
#!/usr/bin/env python3
|
|
|
|
|
#
|
|
|
|
|
# mmgen = Multi-Mode GENerator, command-line Bitcoin cold storage solution
|
2021-02-19 20:09:06 +03:00
|
|
|
# Copyright (C)2013-2021 The MMGen Project <mmgen@tuta.io>
|
2019-05-27 09:34:21 +00:00
|
|
|
|
|
|
|
|
"""
|
|
|
|
|
test.objtest_py_d.ot_ltc_testnet: LTC testnet test vectors for MMGen data objects
|
|
|
|
|
"""
|
|
|
|
|
|
|
|
|
|
from mmgen.obj import *
|
|
|
|
|
from .ot_common import *
|
|
|
|
|
|
2020-05-28 09:53:34 +00:00
|
|
|
from mmgen.protocol import init_proto
|
|
|
|
|
proto = init_proto('ltc',network='testnet')
|
|
|
|
|
|
2020-04-09 19:34:24 +00:00
|
|
|
tests = {
|
|
|
|
|
'CoinAddr': {
|
2020-05-28 09:53:34 +00:00
|
|
|
'bad': (
|
|
|
|
|
{'addr':1, 'proto':proto},
|
|
|
|
|
{'addr':'x', 'proto':proto},
|
|
|
|
|
{'addr':'я', 'proto':proto},
|
|
|
|
|
),
|
|
|
|
|
'good': (
|
|
|
|
|
{'addr':'n2D3joAy3yE5fqxUeCp38X6uPUcVn7EFw9', 'proto':proto},
|
|
|
|
|
{'addr':'QN59YbnHsPQcbKWSq9PmTpjrhBnHGQqRmf', 'proto':proto},
|
|
|
|
|
),
|
2020-04-09 19:34:24 +00:00
|
|
|
},
|
|
|
|
|
'WifKey': {
|
2020-05-28 09:53:34 +00:00
|
|
|
'bad': (
|
|
|
|
|
{'proto':proto, 'wif':1},
|
|
|
|
|
{'proto':proto, 'wif':[]},
|
|
|
|
|
{'proto':proto, 'wif':'\0'},
|
|
|
|
|
{'proto':proto, 'wif':'\1'},
|
|
|
|
|
{'proto':proto, 'wif':'я'},
|
|
|
|
|
{'proto':proto, 'wif':'g'},
|
|
|
|
|
{'proto':proto, 'wif':'gg'},
|
|
|
|
|
{'proto':proto, 'wif':'FF'},
|
|
|
|
|
{'proto':proto, 'wif':'f00'},
|
|
|
|
|
{'proto':proto, 'wif':r16.hex()},
|
|
|
|
|
{'proto':proto, 'wif':'2MspvWFjBbkv2wzQGqhxJUYPCk3Y2jMaxLN'},
|
|
|
|
|
),
|
|
|
|
|
'good': (
|
|
|
|
|
{'proto':proto, 'wif':'936Fd4qs3Zy2ZiYHH7vZ3UpT23KtCAiGiG2xBTkjHo7jE9aWA2f', 'ret_idx':1},
|
|
|
|
|
{'proto':proto, 'wif':'cQY3EumdaSNuttvDSUuPdiMYLyw8aVmYfFqxo9kdPuWbJBN4Ny66', 'ret_idx':1},
|
|
|
|
|
)
|
2020-04-09 19:34:24 +00:00
|
|
|
},
|
|
|
|
|
'PrivKey': {
|
2019-05-27 09:34:21 +00:00
|
|
|
'bad': (
|
2020-05-28 09:53:34 +00:00
|
|
|
{'proto':proto, 'wif':1},
|
|
|
|
|
{'proto':proto, 'wif':'1'},
|
|
|
|
|
{'proto':proto, 'wif':'5KXEpVzjWreTcQoG5hX357s1969MUKNLuSfcszF6yu84kpsNZKb'},
|
|
|
|
|
{'proto':proto, 's':r32,'wif':'5KXEpVzjWreTcQoG5hX357s1969MUKNLuSfcszF6yu84kpsNZKb'},
|
|
|
|
|
{'proto':proto, 'pubkey_type':'std'},
|
|
|
|
|
{'proto':proto, 's':r32},
|
|
|
|
|
{'proto':proto, 's':r32,'compressed':'yes'},
|
|
|
|
|
{'proto':proto, 's':r32,'compressed':'yes','pubkey_type':'std'},
|
|
|
|
|
{'proto':proto, 's':r32,'compressed':True,'pubkey_type':'nonstd'},
|
|
|
|
|
{'proto':proto, 's':r32+b'x','compressed':True,'pubkey_type':'std'}
|
2019-05-27 09:34:21 +00:00
|
|
|
),
|
|
|
|
|
'good': (
|
2020-05-28 09:53:34 +00:00
|
|
|
{'proto':proto, 'wif':'92iqzh6NqiKawyB1ronw66YtEHrU4rxRJ5T4aHniZqvuSVZS21f',
|
2019-05-27 09:34:21 +00:00
|
|
|
'ret':'95b2aa7912550eacdd3844dcc14bee08ce7bc2434ad4858beb136021e945afeb'},
|
2020-05-28 09:53:34 +00:00
|
|
|
{'proto':proto, 'wif':'cSaJAXBAm9ooHpVJgoxqjDG3AcareFy29Cz8mhnNTRijjv2HLgta',
|
2019-05-27 09:34:21 +00:00
|
|
|
'ret':'94fa8b90c11fea8fb907c9376b919534b0a75b9a9621edf71a78753544b4101c'},
|
2020-05-28 09:53:34 +00:00
|
|
|
{'proto':proto, 's':r32,'compressed':False,'pubkey_type':'std','ret':r32.hex()},
|
|
|
|
|
{'proto':proto, 's':r32,'compressed':True,'pubkey_type':'std','ret':r32.hex()}
|
2019-05-27 09:34:21 +00:00
|
|
|
)
|
2020-04-09 19:34:24 +00:00
|
|
|
},
|
|
|
|
|
}
|