Commit graph

279 commits

Author SHA1 Message Date
d49c8627aa
Support 40-character UTF-8 tracking wallet comments 2018-03-09 18:16:20 +03:00
896c7fe996
Support UTF-8 filenames and paths 2018-03-09 16:16:10 +03:00
b230b43d4b
MMGEN_DEBUG_ALL env var; tw display and other fixes 2018-03-09 14:29:58 +03:00
351f5f9118
Use new-style string formatting 2018-03-07 12:59:35 +03:00
b80b059815
Use map() instead of list comprehension where possible 2018-03-07 12:55:06 +03:00
a201aeae94
Minor fixes, cleanups 2018-03-07 12:51:24 +03:00
3cfcd45d59
test/gentest.py: add p2sh-segwit wallet dump 2018-03-06 10:31:57 +03:00
27c3196269
TX size estimation: --vsize-adj fixes, tests 2018-03-06 10:29:20 +03:00
6f572cddde
Bech32: additional tests 2018-03-06 10:28:41 +03:00
165f0483e8
Display long addresses correctly 2018-03-06 10:27:51 +03:00
9b109fec58
Minor fixes 2018-03-06 10:26:41 +03:00
e4114eedf3
Bech32 address support
- Address type code is 'B'
- Generate with `--type=B` or `--type=bech32`
2018-03-05 12:46:35 +03:00
ed2b94caca
tx size estimation: reworked code, bugfixes, --vsize-adj option
- Estimated vsize is compared with actual vsize after signing.
  If estimate is off by more than 5%, the program aborts, asking
  the user to re-create the tx using --vsize-adj
- Estimated and actual vsizes will differ meaningfully only in the
  rare situation where non-MMGen addrs with uncompressed pubkeys
  are used as inputs
2018-03-05 11:59:50 +03:00
e9385725cf
Add g.proto.witness_ver_num, minor fixes and changes 2018-03-05 09:29:20 +03:00
cf20311af5
tx: max_tx_file_size, additional checks during parsing
Since the tx file is potentially untrusted data, be strict about what we allow:
- check data size against max_tx_file_size (defaults to 100000 bytes)
- check for ascii encoding
- check line lengths
- reject extraneous keys in inputs and outputs (done by MMGenListItem)

max_tx_file_size can be overridden in config file
2018-03-03 10:00:42 +03:00
e2d51469e6
scrambletest.py: add coverage support
test.py altcoin_ref: enable internal ed25519
2018-02-26 20:01:20 +03:00
ebabea39ce
tw.add_label(): code cleanups, tests 2018-02-26 15:34:59 +03:00
d5d81b8c02
test/test.py: no_msg option for MMGenPexpect 2018-02-26 15:31:47 +03:00
282fec8054
addrgen,keygen: use internal ed25519 module by user request 2018-02-24 21:43:55 +03:00
96b337e493
A few minor fixes 2018-02-24 21:29:16 +03:00
8fe92de627
Coverage support for tests via Python trace module 2018-02-24 14:39:49 +03:00
4009e1794f
test-release.sh: indentation fixes 2018-02-24 14:34:30 +03:00
e53c9bbf53
mmgen-tool listaddresses, twview: formatting fixes 2018-02-23 18:59:46 +03:00
6aca0f2986
use estimatesmartfee if the daemon supports it 2018-02-22 23:13:20 +03:00
d457259fcf
rpc.py: on_fail='raise', RPCFailure exception 2018-02-22 21:54:46 +03:00
MMGen
1510419780
Add DSA signing key 2018-02-20 16:55:16 +03:00
MMGen
3d89a9e236
Version 0.9.7 v0.9.7 2018-02-17 18:37:58 +03:00
MMGen
58f4af6966
Update documentation from wiki (mostly formatting) 2018-02-17 18:36:04 +03:00
MMGen
6b9df0ea44
Change all eval() calls to ast.literal_eval()
- closes an exploit whereby an infected online MMGen installation could craft
  a special TX file to trick an offline signing MMGen into executing an
  arbitrary expression
- update TX file format (to v3) to permit calling literal_eval() on unmodified
  inputs and outputs data (old v2 file format continues to be supported)
- new TX file conversion script: `scripts/tx-v2-to-v3.py`
- `scripts/tx-old2new.py` modified and renamed to `scripts/tx-v1-to-v3.py`
2018-02-17 15:35:45 +03:00
MMGen
f7e54cce93
Minor fixes and improvements
- mmgen-tool listaddresses: add 'show_age','show_days' options
- init_fail(): make 'silent' override 'MMGEN_TRACEBACK', fixing regression
  introduced by 3909339
- test/test.py: improve formatting of --list output
- test/{test,objtest,scrambletest}.py, mmgen/tool.py: indentation (whitespace) fixes
2018-02-17 12:34:15 +03:00
MMGen
65e2db0512
Monero,autosign: minor improvements
- Monero (create,sync): specify addr range; display total balance for all wallets
- autosign: improve exception handling, launch the standard way
2018-02-10 19:54:17 +03:00
MMGen
258651a531
Monero: new automated wallet syncing utility
- mmgen-tool: `syncmonerowallets`: batch-sync Monero wallets non-interactively
- mmgen-tool: `keyaddrlist2monerowallet` -> `keyaddrlist2monerowallets`
2018-01-21 19:18:00 +03:00
MMGen
83e9899b38
Version 0.9.6 v0.9.6 2018-01-14 17:24:36 +03:00
MMGen
d3e96744fe
Monero: add tests to test-release.sh 2017-12-28 21:40:06 +03:00
MMGen
df0385160b
XMR (Monero) key/address generation support and wallet generating utility
- Monero key-address files include spendkey, viewkey and wallet password
- Wallet password is first 16 bytes of SHA256x2(spendkey)
- Generate Monero wallets either by hand with:
    1) `monero-wallet-cli --generate-from-spend-key walletfile`, using the keyaddrfile data,
  or automatically, using:
    2) `mmgen-tool keyaddrlist2monerowallet keyaddrfile`
  The utility will generate a wallet for each key/address pair in the keyaddrfile and encrypt
  it using the password.  The password is supplied via stdin.

- Other feature: 32-byte hexadecimal password generation with `mmgen-passgen --hex`
2017-12-28 16:03:28 +03:00
MMGen
279e8872ef
Improve coin selection logic, allow coin disabling 2017-12-25 09:48:59 +03:00
MMGen
91ac2effb3
Key/address generation support for 144 altcoins
Support for these coins is EXPERIMENTAL, use at your own risk

    EXAMPLE: generate 10 Dogecoin key/address pairs with your default wallet:

        `mmgen-keygen --coin=doge 1-10`

    Keys for different coins are distinct, so users needn't worry about key reuse.

    Supported alts: 2give,42,611,ac,acoin,alf,anc,apex,arco,arg,aur,b2x,bcf,bch,blk,bmc,bqc,bsty,btcd,btq,bucks,cann,cash,cat,cbx,ccn,cdn,chc,clam,con,cpc,crps,csh,dash,dcr,dfc,dgb,dgc,doge,doged,dope,dvc,efl,emc,emd,enrg,esp,etc,eth,fai,fc2,fibre,fjc,flo,flt,fst,ftc,gcr,good,grc,gun,ham,html5,hyp,icash,infx,inpay,ipc,jbs,judge,lana,lat,ldoge,lmc,ltc,mars,mcar,mec,mint,mobi,mona,moon,mrs,mue,mxt,myr,myriad,mzc,neos,neva,nka,nlg,nmc,nto,nvc,ok,omc,omni,onion,onx,part,pink,pivx,pkb,pnd,pot,ppc,ptc,pxc,qrk,rain,rbt,rby,rdd,ric,sdc,sib,smly,song,spr,start,sys,taj,tit,tpc,trc,ttc,tx,uno,via,vpn,vtc,wash,wdc,wisc,wkc,wsx,xcn,xgb,xmg,xpm,xpoke,xred,xst,xvc,zec,zet,zlq,zoom,zrc

	Test the new functionality with `scripts/test-release.sh -Pn master alts`

B2X support disabled pending further testing
2017-12-24 15:26:23 +03:00
MMGen
4876ee47ed
View key support for Zcash z-addresses
- view keys are included in key-address lists
- tests updated to test the new functionality

- mmgen-tool: `compressed` and `segwit` args replaced by --type option
2017-12-18 20:19:01 +03:00
MMGen
1cc64e1eb9
Zcash z-address generation with custom sha256 implementation
- Tests have been updated, test with `scripts/test-release.sh -Pn master alts`
2017-12-16 12:48:47 +03:00
MMGen
bafea57134
Key/address generation for Ethereum, Eth Classic, DASH, and Zcash
- supported commands:
  - mmgen-addrgen
  - mmgen-keygen (decrypt encrypted key-addr files with `mmgen-tool decrypt`)
  - mmgen-tool addrfile_chksum, keyaddrfile_chksum

- ETH and ETC keys are distinct, so users needn't worry about key reuse
- Only Zcash-t addresses supported for now (but z-addresses coming soon)

- Test the new functionality with `scripts/test-release.sh -Pn master alts`
2017-12-16 09:31:00 +03:00
MMGen
71058479a1
crypto.py: code tidy-ups 2017-12-16 09:29:51 +03:00
MMGen
e1fb918588
mmgen-split: code cleanups 2017-12-16 09:17:55 +03:00
philemon
420d0e9699
B2X support, locktime-based coin splitting utility
- full support for B2X fork
- `mmgen-split` coin splitting utility for replayable forks
- `mmgen-regtest fork` command for testing forking scenarios
- `regtest_split` command added to `test/test.py` test suite
- timelock support for `txcreate` and `txdo`
- nlocktime and nsequence checks after signing and before sending
2017-11-13 22:50:35 +03:00
philemon
207632cb40
txcreate(tx) -> tx.create() (delete txcreate.py) 2017-11-13 22:42:50 +03:00
philemon
e836601324
mmgen-autosign: gen_key: create /dev/shm/autosign if not present 2017-10-31 10:47:09 +03:00
philemon
333278ce35
new conversion utility: scripts/tx-btc2bch.py
- Beginning with v0.9.5, BCH and BTC transaction files differ.
  This utility converts old BCH transaction files to the new format.
2017-10-31 08:57:05 +03:00
philemon
e42aeb94ba
Version 0.9.5 v0.9.5 2017-10-30 12:18:44 +03:00
philemon
41460cb2fd
Documentation updates 2017-10-29 18:29:19 +03:00
philemon
8fb3efd99c
mmgen-autosign: encrypt signing wallet with session key on removable device 2017-10-29 15:06:16 +03:00
philemon
35d1091159
Basic altcoin framework, full Litecoin support
- LTC: tested on mainnet, full test suite support
- simultaneous autosigning for all supported coins (BTC,BCH,LTC)
2017-10-28 00:11:00 +03:00