modified: Getting-Started-with-MMGen.md
modified: MMGen-command-help.md modified: Recovering-Keys-Without-MMGen.md modified: (manpages)
parent
2e11fea71e
commit
893b11a923
17 changed files with 589 additions and 393 deletions
|
|
@ -287,10 +287,9 @@ Import your ten addresses into the new tracking wallet with the command:
|
|||
These addresses will now be tracked: any BTC transferred to them will show up in
|
||||
your listing of address balances. Balances can be viewed using `mmgen-tool
|
||||
listaddresses` (the `showempty` option requests the inclusion of addresses with
|
||||
empty balances, and `showbtcaddrs` causes Bitcoin addresses to be displayed
|
||||
also).
|
||||
empty balances).
|
||||
|
||||
$ mmgen-tool listaddresses showempty=1 showbtcaddrs=1
|
||||
$ mmgen-tool listaddresses showempty=1
|
||||
MMGenID ADDRESS COMMENT BALANCE
|
||||
89ABCDEF:L:1 16bNmyYISiptuvJG3X7MPwiiS4HYvD7ksE Donations 0
|
||||
89ABCDEF:L:2 1AmkUxrfy5dMrfmeYwTxLxfIswUCcpeysc Storage 1 0
|
||||
|
|
|
|||
|
|
@ -3,11 +3,13 @@
|
|||
* [mmgen-keygen](man-keygen)
|
||||
* [mmgen-passchg](man-passchg)
|
||||
* [mmgen-passgen](man-passgen)
|
||||
* [mmgen-regtest](man-regtest)
|
||||
* [mmgen-tool](man-tool)
|
||||
* [mmgen-txbump](man-txbump)
|
||||
* [mmgen-txcreate](man-txcreate)
|
||||
* [mmgen-txdo](man-txdo)
|
||||
* [mmgen-txsend](man-txsend)
|
||||
* [mmgen-txsign](man-txsign)
|
||||
* [mmgen-txdo](man-txdo)
|
||||
* [mmgen-walletchk](man-walletchk)
|
||||
* [mmgen-walletconv](man-walletconv)
|
||||
* [mmgen-walletgen](man-walletgen)
|
||||
|
|
|
|||
|
|
@ -1,3 +1,15 @@
|
|||
## Table of Contents
|
||||
|
||||
* <a href='#a_i'>Introduction</a>
|
||||
* <a href='#a_rs'>Obtaining the binary seed</a>
|
||||
* <a href='#a_ss'>Convert the seed to binary (legacy addresses)</a>
|
||||
* <a href='#a_cs'>Cook the seed and save to binary (Segwit and compressed addresses)</a>
|
||||
* <a href='#a_gk'>Generating the keys</a>
|
||||
* <a href='#a_hw'>Hex to WIF by hand</a>
|
||||
* <a href='#a_mh'>Converting an MMGen mnemonic to hexadecimal format</a>
|
||||
|
||||
#### <a name='a_i'>Introduction</a>
|
||||
|
||||
If you're considering using MMGen and are a Bitcoiner with a normal, healthy
|
||||
degree of paranoia, then the following question will probably come to mind:
|
||||
“What if I have funds in an MMGen wallet and I lose the software? How do I
|
||||
|
|
@ -9,60 +21,103 @@ backup copies of the software, MMGen's project page has disappeared from Github
|
|||
Internet. The following tutorial will show you how to recover your keys in the
|
||||
event this unlikely combination of circumstances ever occurs.
|
||||
|
||||
#### Obtaining the raw seed
|
||||
#### <a name='a_rs'>Obtaining the binary seed</a>
|
||||
|
||||
To keep things simple, we'll assume you have a copy of your seed in hexadecimal
|
||||
(mmhex) format. If your only backup's in Base-58 (mmseed) or mnemonic format,
|
||||
an additional base-conversion step will be required. If your only backup is an
|
||||
MMGen wallet, it will need to be decrypted. Both of these cases will be covered
|
||||
in a future tutorial.
|
||||
(mmhex) format. If your backup's in mnemonic format, skip to the section
|
||||
'Converting an MMGen mnemonic to hexadecimal format' below and return here when you've
|
||||
finished. If your backup is an MMGen wallet, it will need to be decrypted.
|
||||
That case will be covered in a future tutorial.
|
||||
|
||||
Okay, so let's say we have a 128-bit seed with Seed ID FE3C6545, and funds in
|
||||
the first five addresses of this seed. Here are the addresses:
|
||||
Okay, so let's say you have a 128-bit seed with Seed ID FE3C6545 and funds in
|
||||
the first three legacy uncompressed ('L') addresses of this seed. Here are the
|
||||
addresses:
|
||||
|
||||
FE3C6545 {
|
||||
1 1JVi3qcNcjMM7cTR7y9ihKUG1yDLpKRJfL
|
||||
2 15EfKymfe3v7mqCaL174hTWSgBLFAHvtaR
|
||||
3 1CUDd6nPHdP5pT7nN8k2AA5WdKRaKPjmea
|
||||
4 1Kw2cPuBwY44iWJrzUk7bb2qfpaH6yZuyR
|
||||
5 1BNApVR8REhT1BzWP2CvAHKt6ZRxjpubew
|
||||
}
|
||||
|
||||
And here's the seed in hex format, which we've stored in some safe place (on
|
||||
Since you might have your funds in Segwit ('S') addresses, we'll consider that
|
||||
case too:
|
||||
|
||||
FE3C6545 SEGWIT {
|
||||
1 3LpkKqtGkcCukRrgEFWyCajSApioiEWeTw
|
||||
2 3FYZQyWqBJcCjaSjCV9ZVj3gKyB9u8AYCX
|
||||
3 37wM8hwt69qwH7hZHAMn6RVdc8vMuM1CwJ
|
||||
}
|
||||
|
||||
Keys for MMGen's compressed ('C') addresses are generated in a similar way as
|
||||
Segwit ones, as you'll see below, so we won't consider that case separately.
|
||||
|
||||
Here's the seed itself in mmhex format, which you've stored in some safe place (on
|
||||
paper in a safe-deposit box, for example):
|
||||
|
||||
afc3fe 456d 7f5f 1c4b fe3b c916 b875 60ae 6a3e
|
||||
|
||||
Now our task is to generate keys for the five addresses so we can spend our
|
||||
coins. This task is divided into two parts: 1) generating the keys in
|
||||
hexadecimal format, and 2) converting the hex keys to wallet interchange
|
||||
(WIF) format so they can be imported into Bitcoin Core or some other wallet.
|
||||
Now your task is to generate keys for the addresses so you can spend your coins.
|
||||
This task is divided into two parts:
|
||||
|
||||
1. generating the keys and converting them to hexadecimal format; and
|
||||
2. converting the hex keys to wallet interchange (WIF) format for importation
|
||||
into Bitcoin Core or some other wallet.
|
||||
|
||||
We'll solve this task using standard command-line utilities available on any
|
||||
Linux or other Unix-like system.
|
||||
|
||||
The first thing we must do is convert the seed to binary form and store it in a
|
||||
file. For that we use 'xxd', a handy tool for converting binary to hex and vice
|
||||
versa:
|
||||
> #### <a name='a_ss'>Convert the seed to binary (legacy addresses)</a>
|
||||
|
||||
$ echo 456d 7f5f 1c4b fe3b c916 b875 60ae 6a3e | xxd -r -p > myseed.bin
|
||||
> For the legacy addresses, we begin by converting the seed to binary form and
|
||||
> storing it in a file. For that we use 'xxd', a handy tool for converting binary
|
||||
> to hex and vice versa. Don't forget to omit the checksum from the seed and
|
||||
> remove the spaces:
|
||||
|
||||
Note that we've omitted the seed's checksum.
|
||||
$ echo 456d7f5f1c4bfe3bc916b87560ae6a3e | xxd -r -p > myseed.bin
|
||||
|
||||
#### Generating the keys
|
||||
> #### <a name='a_cs'>Cook the seed and save to binary (Segwit and compressed addresses)</a>
|
||||
|
||||
> For the other address types, we first “cook” the seed with an identifier
|
||||
> string using the HMAC-SHA256 algorithm, add ten rounds of SHA256, and save the
|
||||
> result in binary form. This can be done with the 'openssl' utility, also
|
||||
> included by default on Unix-based systems:
|
||||
|
||||
$ echo -n segwit | openssl dgst -r -sha256 -mac hmac -macopt hexkey:456d7f5f1c4bfe3bc916b87560ae6a3e | xxd -r -p > cooked-seed.bin
|
||||
|
||||
> If your addresses are of the compressed ('C') type, just use string 'compressed'
|
||||
> instead of 'segwit' as the 'echo' command's argument.
|
||||
|
||||
> Now add the ten rounds of sha256:
|
||||
|
||||
$ openssl dgst -sha256 -binary cooked-seed.bin > cooked-round1.bin
|
||||
$ openssl dgst -sha256 -binary cooked-round1.bin > cooked-round2.bin
|
||||
$ openssl dgst -sha256 -binary cooked-round2.bin > cooked-round3.bin
|
||||
$ openssl dgst -sha256 -binary cooked-round3.bin > cooked-round4.bin
|
||||
$ openssl dgst -sha256 -binary cooked-round4.bin > cooked-round5.bin
|
||||
$ openssl dgst -sha256 -binary cooked-round5.bin > cooked-round6.bin
|
||||
$ openssl dgst -sha256 -binary cooked-round6.bin > cooked-round7.bin
|
||||
$ openssl dgst -sha256 -binary cooked-round7.bin > cooked-round8.bin
|
||||
$ openssl dgst -sha256 -binary cooked-round8.bin > cooked-round9.bin
|
||||
$ openssl dgst -sha256 -binary cooked-round9.bin > myseed.bin
|
||||
|
||||
#### <a name='a_gk'>Generating the keys</a>
|
||||
|
||||
The MMGen key-generating algorithm uses a chain of SHA-512 hashes with double
|
||||
SHA-256 branches to generate the keys from which each address is derived. To
|
||||
obtain the chain's first link, we take a single SHA-512 hash of the seed, which
|
||||
we save in binary form:
|
||||
obtain the chain's first link, we make a single SHA-512 hash of the seed and
|
||||
save it in binary form:
|
||||
|
||||
$ sha512sum myseed.bin | xxd -r -p > link1.bin
|
||||
|
||||
A double SHA-256 hash of the link gives us the key of our first address:
|
||||
A double SHA-256 hash of the first link gives us the key of our first address:
|
||||
|
||||
$ sha256sum link1.bin | xxd -r -p | sha256sum
|
||||
05d7219524b983290138a60ada101370007f59a625c43a46f0f8d92950955e36 -
|
||||
|
||||
Or, in the Segwit case:
|
||||
|
||||
b8e58ded53e9ba5a9f4e279a956c061a7da5487bde6a95f1ede0722d287881a0 -
|
||||
|
||||
With 'mmgen-tool', we can easily generate the WIF key and address from this
|
||||
hexadecimal key and see that it's correct:
|
||||
|
||||
|
|
@ -70,14 +125,22 @@ hexadecimal key and see that it's correct:
|
|||
5HrrmMdQbELyW7iCns5kvSbN9GCPTqEfG7iP1PZiYk49yDDivTi
|
||||
|
||||
$ mmgen-tool wif2addr 5HrrmMdQbELyW7iCns5kvSbN9GCPTqEfG7iP1PZiYk49yDDivTi
|
||||
1JVi3qcNcjMM7cTR7y9ihKUG1yDLpKRJfL # matches FE3C6545:1 above
|
||||
1JVi3qcNcjMM7cTR7y9ihKUG1yDLpKRJfL # matches FE3C6545:L:1 above
|
||||
|
||||
But since we've lost the MMGen software, we must do the hex-to-WIF conversion
|
||||
some other way. We could use one of many key-manipulation tools available on
|
||||
the Internet, such as [this one][01], or [this one][02] (bear in mind that MMGen
|
||||
currently uses uncompressed public keys, and this must be specified when
|
||||
converting the hex key to WIF format). Or we could do it ourselves: that will
|
||||
be covered in the next section.
|
||||
Or, in the Segwit case:
|
||||
|
||||
$ mmgen-tool hex2wif b8e58ded53e9ba5a9f4e279a956c061a7da5487bde6a95f1ede0722d287881a0 compressed=1
|
||||
L3R8Fn21PsY3PWgT8BMggFwXswA2EZntwEGFS5mfDJpSiLq29a9F
|
||||
|
||||
# for a compressed ('C') address, leave out the 'segwit=1' argument
|
||||
$ mmgen-tool wif2addr L3R8Fn21PsY3PWgT8BMggFwXswA2EZntwEGFS5mfDJpSiLq29a9F segwit=1
|
||||
3LpkKqtGkcCukRrgEFWyCajSApioiEWeTw # matches FE3C6545:S:1 above
|
||||
|
||||
But since we're trying to do this without the MMGen software, we need to find
|
||||
some other way to convert our hex key to a WIF key. We could use one of many
|
||||
key-manipulation tools available on the Internet, such as [this one][01], or
|
||||
[this one][02]. Or we can do it ourselves: that will be covered in the next
|
||||
section.
|
||||
|
||||
Meanwhile, let's finish generating hex keys for the rest of our addresses. To
|
||||
get the next key, we generate the next link in the chain from the first link and
|
||||
|
|
@ -85,33 +148,46 @@ take its double SHA-256 hash, just as we did for the first one:
|
|||
|
||||
$ sha512sum link1.bin | xxd -r -p > link2.bin
|
||||
$ sha256sum link2.bin | xxd -r -p | sha256sum
|
||||
5db8fe3c8b52ccc98deab5afae780b6fbe56629e7ee1c6ed826fc2d6a81fb144 -
|
||||
5db8fe3c8b52ccc98deab5afae780b6fbe56629e7ee1c6ed826fc2d6a81fb144 - (uncompressed example)
|
||||
42f1b998f0f9b7b27b5d0b92ffa8c1c6b96d7202789c41b6e6a6a402e318a04d - (Segwit example)
|
||||
|
||||
And so on and so forth, until we've generated all five keys.
|
||||
And so on and so forth, until we've generated all the keys we need: three, in our case.
|
||||
|
||||
#### Hex to WIF the hard way
|
||||
#### <a name='a_hw'>Hex to WIF by hand</a>
|
||||
|
||||
If we've chosen to convert our hex keys to WIF format manually, then we have a
|
||||
bit of work ahead of us. Let's use our just-generated key #1 as an example:
|
||||
Since we've chosen to convert our hex keys to WIF format manually, we have a bit
|
||||
of work ahead of us. Let's begin with our just-generated key #1 from seed
|
||||
FE3C6545:
|
||||
|
||||
05d7219524b983290138a60ada101370007f59a625c43a46f0f8d92950955e36
|
||||
05d7219524b983290138a60ada101370007f59a625c43a46f0f8d92950955e36 (uncompressed example)
|
||||
b8e58ded53e9ba5a9f4e279a956c061a7da5487bde6a95f1ede0722d287881a0 (Segwit example)
|
||||
|
||||
WIF format prepends hex '80' to the beginning of the key. If the key is
|
||||
associated with a compressed public key, it also appends '01'. Since MMGen uses
|
||||
uncompressed public keys, we just prepend the '80':
|
||||
associated with a compressed public key, it also appends '01':
|
||||
|
||||
# uncompressed example:
|
||||
8005d7219524b983290138a60ada101370007f59a625c43a46f0f8d92950955e36
|
||||
|
||||
# Segwit example (Segwit uses compressed public keys):
|
||||
80b8e58ded53e9ba5a9f4e279a956c061a7da5487bde6a95f1ede0722d287881a001
|
||||
|
||||
The Base58Check format invented by Satoshi for Bitcoin addresses and keys
|
||||
contains a checksum, which we now generate by taking the first four bytes (eight
|
||||
characters) of the double SHA-256 of the above result:
|
||||
|
||||
|
||||
# uncompressed example:
|
||||
$ echo 8005d7219524b983290138a60ada101370007f59a625c43a46f0f8d92950955e36 | xxd -r -p | sha256sum | xxd -r -p | sha256sum | cut -c 1-8
|
||||
7b818629
|
||||
|
||||
# Segwit example:
|
||||
$ echo 80b8e58ded53e9ba5a9f4e279a956c061a7da5487bde6a95f1ede0722d287881a001 | xxd -r -p | sha256sum | xxd -r -p | sha256sum | cut -c 1-8
|
||||
89bba812
|
||||
|
||||
The checksum gets appended to the end, giving us the following final result:
|
||||
|
||||
8005d7219524b983290138a60ada101370007f59a625c43a46f0f8d92950955e367b818629
|
||||
8005d7219524b983290138a60ada101370007f59a625c43a46f0f8d92950955e367b818629 (uncompressed example)
|
||||
80b8e58ded53e9ba5a9f4e279a956c061a7da5487bde6a95f1ede0722d287881a00189bba812 (Segwit example)
|
||||
|
||||
The last step is to convert all this into Base 58. Satoshi created Base-58
|
||||
encoding for convenient and error-free writing down and dictating of Bitcoin
|
||||
|
|
@ -134,21 +210,28 @@ Now all that remains is to convert our hexadecimal key to decimal and then to
|
|||
Base 58 using this alphabet. This can be done in just four lines of code you can
|
||||
try out at the Python prompt:
|
||||
|
||||
# uncompressed example:
|
||||
$ python
|
||||
>>> b58a = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'
|
||||
>>> num = int('8005d7219524b983290138a60ada101370007f59a625c43a46f0f8d92950955e367b818629',16)
|
||||
>>> result = [b58a[num / 58**e % 58] for e in range(60)]
|
||||
>>> print ''.join(reversed(result)).lstrip('1')
|
||||
5HrrmMdQbELyW7iCns5kvSbN9GCPTqEfG7iP1PZiYk49yDDivTi
|
||||
5HrrmMdQbELyW7iCns5kvSbN9GCPTqEfG7iP1PZiYk49yDDivTi # matches key for FE3C6545:L:1 above
|
||||
|
||||
The variable 'b58a' holds the Base 58 alphabet, 'num' holds the key converted
|
||||
from hexidecimal to decimal using Python's `int()` function, the third line is
|
||||
the base conversion routine proper, and the last line formats the result by
|
||||
reversing it, converting it to a string and stripping off the leading zeroes
|
||||
('1's). As you can see, the output matches the WIF key we generated above.
|
||||
# Segwit example has the following differences:
|
||||
...
|
||||
>>> num = int('80b8e58ded53e9ba5a9f4e279a956c061a7da5487bde6a95f1ede0722d287881a00189bba812',16)
|
||||
...
|
||||
L3R8Fn21PsY3PWgT8BMggFwXswA2EZntwEGFS5mfDJpSiLq29a9F # matches key for FE3C6545:S:1 above
|
||||
|
||||
Those who know a bit of programming but are unfamiliar with Python might find
|
||||
the following base conversion code clearer:
|
||||
Explanation: the variable 'b58a' holds the Base 58 alphabet; 'num' holds the key
|
||||
converted from hexidecimal to decimal using Python's `int()` function; the third
|
||||
line is the base conversion routine proper; and the last line formats the result
|
||||
by reversing it, converting it to a string and stripping off the leading zeroes
|
||||
('1's).
|
||||
|
||||
Programmers unfamiliar with Python might find the following base conversion code
|
||||
clearer:
|
||||
|
||||
def numtob58(n):
|
||||
result = []
|
||||
|
|
@ -159,8 +242,8 @@ the following base conversion code clearer:
|
|||
|
||||
result = numtob58(num)
|
||||
|
||||
Putting our code into a file gives us have a handy conversion utility we can use
|
||||
by calling `hex2b58.py <hex key with chksum>`.
|
||||
Adapting our code a bit and putting it in a file gives us have a handy
|
||||
conversion utility we can use for any key:
|
||||
|
||||
$ cat hex2b58.py
|
||||
#!/usr/bin/env python
|
||||
|
|
@ -170,5 +253,110 @@ by calling `hex2b58.py <hex key with chksum>`.
|
|||
result = [b58a[num / 58**e % 58] for e in range(60)]
|
||||
print ''.join(reversed(result)).lstrip('1')
|
||||
|
||||
$ hex2b58.py 8005d7219524b983290138a60ada101370007f59a625c43a46f0f8d92950955e367b818629
|
||||
5HrrmMdQbELyW7iCns5kvSbN9GCPTqEfG7iP1PZiYk49yDDivTi
|
||||
|
||||
$ hex2b58.py 80b8e58ded53e9ba5a9f4e279a956c061a7da5487bde6a95f1ede0722d287881a00189bba812
|
||||
L3R8Fn21PsY3PWgT8BMggFwXswA2EZntwEGFS5mfDJpSiLq29a9F
|
||||
|
||||
#### <a name='a_mh'>Converting an MMGen mnemonic to hexadecimal format</a>
|
||||
|
||||
Our familiar base-10 system uses a series of ten symbols known as digits to
|
||||
represent numbers from zero to nine:
|
||||
|
||||
0, 1, 2, 3, 4, 5, 6, 7, 8, 9
|
||||
|
||||
If a number has more than one digit, its value is the sum of its digits
|
||||
multiplied by increasing powers of ten, beginning with the rightmost, least
|
||||
significant digit (the “ones column”).
|
||||
|
||||
Thus the number 1234, for example, can be summed as follows:
|
||||
|
||||
4 x 1 +
|
||||
3 x 10 +
|
||||
2 x 100 +
|
||||
1 x 1000
|
||||
|
||||
Or in exponential notation:
|
||||
|
||||
4 x 10^0 +
|
||||
3 x 10^1 +
|
||||
2 x 10^2 +
|
||||
1 x 10^3
|
||||
|
||||
An MMGen seed mnemonic is a number too, only the “digits” it's made up come from
|
||||
an alphabetically sorted series of 1626 words, the [Electrum wordlist][03],
|
||||
which begins like this:
|
||||
|
||||
able (0), about (1), above (2), abuse (3), accept (4) ...
|
||||
|
||||
and ends like this:
|
||||
|
||||
yet (1621), young (1622), yours (1623), yourself (1624), youth (1625)
|
||||
|
||||
(Type `mmgen-tool mn_printlist` to see the full list)
|
||||
|
||||
The words of the Electrum wordlist thus comprise a base-1626 numbering system,
|
||||
fully analogous to the digits of our familiar base-10 system.
|
||||
|
||||
Here's the mnemonic of our seed (FE3C6545):
|
||||
|
||||
dude foot desperate tie stood themselves trip descend cease suicide apple busy
|
||||
|
||||
To decode it, we begin by listing its words, from least to most significant,
|
||||
along with the value of each word corresponding to its position in the wordlist:
|
||||
|
||||
busy - 200
|
||||
apple - 59
|
||||
suicide - 1384
|
||||
cease - 221
|
||||
descend - 379
|
||||
trip - 1493
|
||||
themselves - 1433
|
||||
stood - 1348
|
||||
tie - 1459
|
||||
desperate - 386
|
||||
foot - 562
|
||||
dude - 439
|
||||
|
||||
All that remains is to multiply the values by increasing powers of 1626 and sum
|
||||
the results:
|
||||
|
||||
200 x 1626^0 +
|
||||
59 x 1626^1 +
|
||||
1384 x 1626^2 +
|
||||
221 x 1626^3 +
|
||||
379 x 1626^4 +
|
||||
1493 x 1626^5 +
|
||||
1433 x 1626^6 +
|
||||
1348 x 1626^7 +
|
||||
1459 x 1626^8 +
|
||||
386 x 1626^9 +
|
||||
562 x 1626^10 +
|
||||
439 x 1626^11
|
||||
|
||||
With a bit of Python code we can automate the process:
|
||||
|
||||
$ python
|
||||
>>> sum = power = 0
|
||||
>>> for word in 200,59,1384,221,379,1493,1433,1348,1459,386,562,439:
|
||||
>>> sum += word * 1626 ** power
|
||||
>>> power += 1
|
||||
>>> print sum
|
||||
92285275468192044354531703963345906238 # the value in decimal
|
||||
>>> print '{:x}'.format(sum)
|
||||
456d7f5f1c4bfe3bc916b87560ae6a3e # the value in hexadecimal: matches our original hex seed above
|
||||
|
||||
In case you're wondering why 1626 was chosen as the base: 1626 is just large
|
||||
enough to allow a 128-bit seed to be represented by twelve words. This can also
|
||||
be demonstrated at the Python prompt:
|
||||
|
||||
$ python
|
||||
>>> 1626**12 >= 2**128
|
||||
True
|
||||
>>> 1625**12 >= 2**128
|
||||
False
|
||||
|
||||
[01]: https://github.com/casascius/Bitcoin-Address-Utility
|
||||
[02]: https://github.com/matja/bitcoin-tool
|
||||
[03]: https://github.com/spesmilo/electrum/blob/1.9.5/lib/mnemonic.py
|
||||
|
|
|
|||
|
|
@ -2,31 +2,31 @@
|
|||
mnemonic, seed or brainwallet
|
||||
USAGE: mmgen-addrgen [opts] [seed source] <index list or range(s)>
|
||||
OPTIONS:
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-c, --print-checksum Print address list checksum and exit
|
||||
-d, --outdir d Output files to directory 'd' instead of working dir
|
||||
-e, --echo-passphrase Echo passphrase or mnemonic to screen upon entry
|
||||
-i, --in-fmt f Input is from wallet format 'f' (see FMT CODES below)
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-K, --key-generator m Use method 'm' for public key generation
|
||||
Options: 1:python-ecdsa 2:secp256k1 (default: 2)
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-P, --passwd-file f Get wallet passphrase from file 'f'
|
||||
-q, --quiet Produce quieter output; suppress some warnings
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from user
|
||||
(min=10, max=80, default=30)
|
||||
-S, --stdout Print addresses to stdout
|
||||
-t, --type t Choose address type. Options: see ADDRESS TYPES below
|
||||
(default: 'L' or 'legacy')
|
||||
-v, --verbose Produce more verbose output
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-c, --print-checksum Print address list checksum and exit
|
||||
-d, --outdir d Output files to directory 'd' instead of working dir
|
||||
-e, --echo-passphrase Echo passphrase or mnemonic to screen upon entry
|
||||
-i, --in-fmt f Input is from wallet format 'f' (see FMT CODES below)
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-K, --key-generator m Use method 'm' for public key generation
|
||||
Options: 1:python-ecdsa 2:secp256k1 (default: 2)
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-P, --passwd-file f Get wallet passphrase from file 'f'
|
||||
-q, --quiet Produce quieter output; suppress some warnings
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from user
|
||||
(min=10, max=80, default=30)
|
||||
-S, --stdout Print addresses to stdout
|
||||
-t, --type t Choose address type. Options: see ADDRESS TYPES below
|
||||
(default: 'L' or 'legacy')
|
||||
-v, --verbose Produce more verbose output
|
||||
|
||||
|
||||
NOTES FOR THIS COMMAND
|
||||
|
|
@ -37,8 +37,10 @@
|
|||
If available, the secp256k1 library will be used for address generation.
|
||||
|
||||
ADDRESS TYPES:
|
||||
'S', 'segwit'
|
||||
'L', 'legacy'
|
||||
'C','compressed' - Compressed Bitcoin P2PKH address
|
||||
'S','segwit' - Bitcoin Segwit P2SH-P2WPK address
|
||||
'L','legacy' - Legacy uncompressed Bitcoin address
|
||||
|
||||
|
||||
NOTES FOR ALL GENERATOR COMMANDS
|
||||
|
||||
|
|
@ -64,4 +66,4 @@
|
|||
SeedFile .mmseed mmseed,seed,s
|
||||
Wallet .mmdat wallet,w
|
||||
|
||||
MMGEN v0.9.2 July 2017 MMGEN-ADDRGEN(1)
|
||||
MMGEN v0.9.3 August 2017 MMGEN-ADDRGEN(1)
|
||||
|
|
|
|||
|
|
@ -2,20 +2,20 @@
|
|||
tracking wallet
|
||||
USAGE: mmgen-addrimport [opts] [mmgen address file]
|
||||
OPTIONS:
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-a, --address a Import the single Bitcoin address 'a'
|
||||
-b, --batch Import all addresses in one RPC call.
|
||||
-l, --addrlist Address source is a flat list of (non-MMGen) Bitcoin addresses
|
||||
-k, --keyaddr-file Address source is a key-address file
|
||||
-q, --quiet Suppress warnings
|
||||
-r, --rescan Rescan the blockchain. Required if address to import is
|
||||
on the blockchain and has a balance. Rescanning is slow.
|
||||
-t, --test Simulate operation; don't actually import addresses
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-a, --address a Import the single Bitcoin address 'a'
|
||||
-b, --batch Import all addresses in one RPC call.
|
||||
-l, --addrlist Address source is a flat list of (non-MMGen) Bitcoin addresses
|
||||
-k, --keyaddr-file Address source is a key-address file
|
||||
-q, --quiet Suppress warnings
|
||||
-r, --rescan Rescan the blockchain. Required if address to import is
|
||||
on the blockchain and has a balance. Rescanning is slow.
|
||||
-t, --test Simulate operation; don't actually import addresses
|
||||
|
||||
This command can also be used to update the comment fields of addresses already
|
||||
in the tracking wallet.
|
||||
|
||||
The --batch and --rescan options cannot be used together.
|
||||
|
||||
MMGEN v0.9.2 July 2017 MMGEN-ADDRIMPORT(1)
|
||||
MMGEN v0.9.3 August 2017 MMGEN-ADDRIMPORT(1)
|
||||
|
|
|
|||
|
|
@ -2,33 +2,33 @@
|
|||
mnemonic, seed or brainwallet
|
||||
USAGE: mmgen-keygen [opts] [seed source] <index list or range(s)>
|
||||
OPTIONS:
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-A, --no-addresses Print only secret keys, no addresses
|
||||
-c, --print-checksum Print address list checksum and exit
|
||||
-d, --outdir d Output files to directory 'd' instead of working dir
|
||||
-e, --echo-passphrase Echo passphrase or mnemonic to screen upon entry
|
||||
-i, --in-fmt f Input is from wallet format 'f' (see FMT CODES below)
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-K, --key-generator m Use method 'm' for public key generation
|
||||
Options: 1:python-ecdsa 2:secp256k1 (default: 2)
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-P, --passwd-file f Get wallet passphrase from file 'f'
|
||||
-q, --quiet Produce quieter output; suppress some warnings
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from user
|
||||
(min=10, max=80, default=30)
|
||||
-S, --stdout Print keys to stdout
|
||||
-t, --type t Choose address type. Options: see ADDRESS TYPES below
|
||||
(default: 'L' or 'legacy')
|
||||
-v, --verbose Produce more verbose output
|
||||
-x, --b16 Print secret keys in hexadecimal too
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-A, --no-addresses Print only secret keys, no addresses
|
||||
-c, --print-checksum Print address list checksum and exit
|
||||
-d, --outdir d Output files to directory 'd' instead of working dir
|
||||
-e, --echo-passphrase Echo passphrase or mnemonic to screen upon entry
|
||||
-i, --in-fmt f Input is from wallet format 'f' (see FMT CODES below)
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-K, --key-generator m Use method 'm' for public key generation
|
||||
Options: 1:python-ecdsa 2:secp256k1 (default: 2)
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-P, --passwd-file f Get wallet passphrase from file 'f'
|
||||
-q, --quiet Produce quieter output; suppress some warnings
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from user
|
||||
(min=10, max=80, default=30)
|
||||
-S, --stdout Print keys to stdout
|
||||
-t, --type t Choose address type. Options: see ADDRESS TYPES below
|
||||
(default: 'L' or 'legacy')
|
||||
-v, --verbose Produce more verbose output
|
||||
-x, --b16 Print secret keys in hexadecimal too
|
||||
|
||||
|
||||
NOTES FOR THIS COMMAND
|
||||
|
|
@ -41,8 +41,10 @@
|
|||
If available, the secp256k1 library will be used for address generation.
|
||||
|
||||
ADDRESS TYPES:
|
||||
'S', 'segwit'
|
||||
'L', 'legacy'
|
||||
'C','compressed' - Compressed Bitcoin P2PKH address
|
||||
'S','segwit' - Bitcoin Segwit P2SH-P2WPK address
|
||||
'L','legacy' - Legacy uncompressed Bitcoin address
|
||||
|
||||
|
||||
NOTES FOR ALL GENERATOR COMMANDS
|
||||
|
||||
|
|
@ -68,4 +70,4 @@
|
|||
SeedFile .mmseed mmseed,seed,s
|
||||
Wallet .mmdat wallet,w
|
||||
|
||||
MMGEN v0.9.2 July 2017 MMGEN-KEYGEN(1)
|
||||
MMGEN v0.9.3 August 2017 MMGEN-KEYGEN(1)
|
||||
|
|
|
|||
|
|
@ -1,31 +1,31 @@
|
|||
MMGEN-PASSCHG: Change the passphrase, hash preset or label of an MMGen wallet
|
||||
USAGE: mmgen-passchg [opts] [infile]
|
||||
OPTIONS:
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-d, --outdir d Output files to directory 'd' instead of working dir
|
||||
-e, --echo-passphrase Echo passphrases and other user input to screen
|
||||
-f, --force-update Force update of wallet even if nothing has changed
|
||||
-i, --in-fmt f Input from wallet format 'f' (see FMT CODES below)
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-k, --keep-passphrase Reuse passphrase of input wallet for output wallet
|
||||
-K, --keep-hash-preset Reuse hash preset of input wallet for output wallet
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths.
|
||||
-L, --label l Specify a label 'l' for output wallet
|
||||
-m, --keep-label Reuse label of input wallet for output wallet
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-P, --passwd-file f Get wallet passphrase from file 'f'
|
||||
-q, --quiet Produce quieter output; suppress some warnings
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from user
|
||||
(min=10, max=80, default=30)
|
||||
-S, --stdout Write wallet data to stdout instead of file
|
||||
-v, --verbose Produce more verbose output
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-d, --outdir d Output files to directory 'd' instead of working dir
|
||||
-e, --echo-passphrase Echo passphrases and other user input to screen
|
||||
-f, --force-update Force update of wallet even if nothing has changed
|
||||
-i, --in-fmt f Input from wallet format 'f' (see FMT CODES below)
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-k, --keep-passphrase Reuse passphrase of input wallet for output wallet
|
||||
-K, --keep-hash-preset Reuse hash preset of input wallet for output wallet
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths.
|
||||
-L, --label l Specify a label 'l' for output wallet
|
||||
-m, --keep-label Reuse label of input wallet for output wallet
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-P, --passwd-file f Get wallet passphrase from file 'f'
|
||||
-q, --quiet Produce quieter output; suppress some warnings
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from user
|
||||
(min=10, max=80, default=30)
|
||||
-S, --stdout Write wallet data to stdout instead of file
|
||||
-v, --verbose Produce more verbose output
|
||||
|
||||
For passphrases all combinations of whitespace are equal and leading and
|
||||
trailing space is ignored. This permits reading passphrase or brainwallet
|
||||
|
|
@ -43,4 +43,4 @@
|
|||
SeedFile .mmseed mmseed,seed,s
|
||||
Wallet .mmdat wallet,w
|
||||
|
||||
MMGEN v0.9.2 July 2017 MMGEN-PASSCHG(1)
|
||||
MMGEN v0.9.3 August 2017 MMGEN-PASSCHG(1)
|
||||
|
|
|
|||
|
|
@ -2,31 +2,31 @@
|
|||
mnemonic, seed or brainwallet for the given ID string
|
||||
USAGE: mmgen-passgen [opts] [seed source] <ID string> <index list or range(s)>
|
||||
OPTIONS:
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-b, --base32 Generate passwords in Base32 format instead of Base58
|
||||
-d, --outdir d Output files to directory 'd' instead of working dir
|
||||
-e, --echo-passphrase Echo passphrase or mnemonic to screen upon entry
|
||||
-i, --in-fmt f Input is from wallet format 'f' (see FMT CODES below)
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-L, --passwd-len l Specify length of generated passwords
|
||||
(default: 20 chars [base58], 24 chars [base32]).
|
||||
An argument of 'h' will generate passwords of half
|
||||
the default length.
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-P, --passwd-file f Get wallet passphrase from file 'f'
|
||||
-q, --quiet Produce quieter output; suppress some warnings
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from user
|
||||
(min=10, max=80, default=30)
|
||||
-S, --stdout Print passwords to stdout
|
||||
-v, --verbose Produce more verbose output
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-b, --base32 Generate passwords in Base32 format instead of Base58
|
||||
-d, --outdir d Output files to directory 'd' instead of working dir
|
||||
-e, --echo-passphrase Echo passphrase or mnemonic to screen upon entry
|
||||
-i, --in-fmt f Input is from wallet format 'f' (see FMT CODES below)
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-L, --passwd-len l Specify length of generated passwords
|
||||
(default: 20 chars [base58], 24 chars [base32]).
|
||||
An argument of 'h' will generate passwords of half
|
||||
the default length.
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-P, --passwd-file f Get wallet passphrase from file 'f'
|
||||
-q, --quiet Produce quieter output; suppress some warnings
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from user
|
||||
(min=10, max=80, default=30)
|
||||
-S, --stdout Print passwords to stdout
|
||||
-v, --verbose Produce more verbose output
|
||||
|
||||
|
||||
NOTES FOR THIS COMMAND
|
||||
|
|
@ -78,4 +78,4 @@
|
|||
SeedFile .mmseed mmseed,seed,s
|
||||
Wallet .mmdat wallet,w
|
||||
|
||||
MMGEN v0.9.2 July 2017 MMGEN-PASSGEN(1)
|
||||
MMGEN v0.9.3 August 2017 MMGEN-PASSGEN(1)
|
||||
|
|
|
|||
18
man-tool.md
18
man-tool.md
|
|
@ -1,14 +1,14 @@
|
|||
MMGEN-TOOL: Perform various MMGen- and Bitcoin-related operations
|
||||
USAGE: mmgen-tool [opts] <command> <command args>
|
||||
OPTIONS:
|
||||
-d, --outdir d Specify an alternate directory 'd' for output
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-P, --passwd-file f Get passphrase from file 'f'.
|
||||
-q, --quiet Produce quieter output
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from
|
||||
user (min=10, max=80)
|
||||
-v, --verbose Produce more verbose output
|
||||
-d, --outdir d Specify an alternate directory 'd' for output
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-P, --passwd-file f Get passphrase from file 'f'.
|
||||
-q, --quiet Produce quieter output
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from
|
||||
user (min=10, max=80)
|
||||
-v, --verbose Produce more verbose output
|
||||
|
||||
COMMANDS
|
||||
|
||||
|
|
@ -91,4 +91,4 @@
|
|||
|
||||
Type 'mmgen-tool help <command> for help on a particular command
|
||||
|
||||
MMGEN v0.9.2 July 2017 MMGEN-TOOL(1)
|
||||
MMGEN v0.9.3 August 2017 MMGEN-TOOL(1)
|
||||
|
|
|
|||
|
|
@ -1,46 +1,46 @@
|
|||
MMGEN-TXBUMP: Increase the fee on a replaceable (RBF) MMGen transaction, creating a new transaction, and optionally sign and send the new transaction
|
||||
USAGE: mmgen-txbump [opts] <MMGen TX file> [seed source] ...
|
||||
OPTIONS:
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-b, --brain-params l,p Use seed length 'l' and hash preset 'p' for
|
||||
brainwallet input
|
||||
-c, --comment-file f Source the transaction's comment from file 'f'
|
||||
-d, --outdir d Specify an alternate directory 'd' for output
|
||||
-e, --echo-passphrase Print passphrase to screen when typing it
|
||||
-f, --tx-fee f Transaction fee, as a decimal BTC amount or in
|
||||
satoshis per byte (an integer followed by 's')
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-i, --in-fmt f Input is from wallet format 'f' (see FMT CODES below)
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths.
|
||||
-k, --keys-from-file f Provide additional keys for non-MMGen addresses
|
||||
-K, --key-generator m Use method 'm' for public key generation
|
||||
Options: 1:python-ecdsa 2:secp256k1
|
||||
(default: 2)
|
||||
-M, --mmgen-keys-from-file f Provide keys for MMGen addresses in a key-
|
||||
address file (output of 'mmgen-keygen'). Permits
|
||||
online signing without an MMGen seed source. The
|
||||
key-address file is also used to verify MMGen-to-BTC
|
||||
mappings, so the user should record its checksum.
|
||||
-o, --output-to-reduce o Deduct the fee from output 'o' (an integer, or 'c'
|
||||
for the transaction's change output, if present)
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-P, --passwd-file f Get MMGen wallet or bitcoind passphrase from file 'f'
|
||||
-q, --quiet Suppress warnings; overwrite files without prompting
|
||||
-s, --send Sign and send the transaction (the default if seed
|
||||
data is provided)
|
||||
-v, --verbose Produce more verbose output
|
||||
-y, --yes Answer 'yes' to prompts, suppress non-essential output
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-b, --brain-params l,p Use seed length 'l' and hash preset 'p' for
|
||||
brainwallet input
|
||||
-c, --comment-file f Source the transaction's comment from file 'f'
|
||||
-d, --outdir d Specify an alternate directory 'd' for output
|
||||
-e, --echo-passphrase Print passphrase to screen when typing it
|
||||
-f, --tx-fee f Transaction fee, as a decimal BTC amount or in
|
||||
satoshis per byte (an integer followed by 's')
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-i, --in-fmt f Input is from wallet format 'f' (see FMT CODES below)
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths.
|
||||
-k, --keys-from-file f Provide additional keys for non-MMGen addresses
|
||||
-K, --key-generator m Use method 'm' for public key generation
|
||||
Options: 1:python-ecdsa 2:secp256k1
|
||||
(default: 2)
|
||||
-M, --mmgen-keys-from-file f Provide keys for MMGen addresses in a key-
|
||||
address file (output of 'mmgen-keygen'). Permits
|
||||
online signing without an MMGen seed source. The
|
||||
key-address file is also used to verify MMGen-to-BTC
|
||||
mappings, so the user should record its checksum.
|
||||
-o, --output-to-reduce o Deduct the fee from output 'o' (an integer, or 'c'
|
||||
for the transaction's change output, if present)
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-P, --passwd-file f Get MMGen wallet or bitcoind passphrase from file 'f'
|
||||
-q, --quiet Suppress warnings; overwrite files without prompting
|
||||
-s, --send Sign and send the transaction (the default if seed
|
||||
data is provided)
|
||||
-v, --verbose Produce more verbose output
|
||||
-y, --yes Answer 'yes' to prompts, suppress non-essential output
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
|
||||
FEE SPECIFICATION: Transaction fees, both on the command line and at the
|
||||
interactive prompt, may be specified as either absolute BTC amounts, using a
|
||||
plain decimal number, or as satoshis per byte, using an integer followed by
|
||||
interactive prompt, may be specified as either absolute BTC amounts, using
|
||||
a plain decimal number, or as satoshis per byte, using an integer followed by
|
||||
the letter 's'.
|
||||
|
||||
Transactions may contain both MMGen or non-MMGen input addresses.
|
||||
|
|
@ -77,4 +77,4 @@
|
|||
SeedFile .mmseed mmseed,seed,s
|
||||
Wallet .mmdat wallet,w
|
||||
|
||||
MMGEN v0.9.2 July 2017 MMGEN-TXBUMP(1)
|
||||
MMGEN v0.9.3 August 2017 MMGEN-TXBUMP(1)
|
||||
|
|
|
|||
|
|
@ -1,23 +1,23 @@
|
|||
MMGEN-TXCREATE: Create a transaction with outputs to specified Bitcoin or MMGen addresses
|
||||
USAGE: mmgen-txcreate [opts] <addr,amt> ... [change addr] [addr file] ...
|
||||
OPTIONS:
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-a, --tx-fee-adj f Adjust transaction fee by factor 'f' (see below)
|
||||
-B, --no-blank Don't blank screen before displaying unspent outputs
|
||||
-c, --comment-file f Source the transaction's comment from file 'f'
|
||||
-C, --tx-confs c Desired number of confirmations (default: 3)
|
||||
-d, --outdir d Specify an alternate directory 'd' for output
|
||||
-f, --tx-fee f Transaction fee, as a decimal BTC amount or in satoshis
|
||||
per byte (an integer followed by 's'). If omitted, fee
|
||||
will be calculated using bitcoind's 'estimatefee' call
|
||||
-i, --info Display unspent outputs and exit
|
||||
-m, --minconf n Minimum number of confirmations required to spend
|
||||
outputs (default: 1)
|
||||
-q, --quiet Suppress warnings; overwrite files without prompting
|
||||
-r, --rbf Make transaction BIP 125 replaceable (replace-by-fee)
|
||||
-v, --verbose Produce more verbose output
|
||||
-y, --yes Answer 'yes' to prompts, suppress non-essential output
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-a, --tx-fee-adj f Adjust transaction fee by factor 'f' (see below)
|
||||
-B, --no-blank Don't blank screen before displaying unspent outputs
|
||||
-c, --comment-file f Source the transaction's comment from file 'f'
|
||||
-C, --tx-confs c Desired number of confirmations (default: 3)
|
||||
-d, --outdir d Specify an alternate directory 'd' for output
|
||||
-f, --tx-fee f Transaction fee, as a decimal BTC amount or in satoshis
|
||||
per byte (an integer followed by 's'). If omitted, fee
|
||||
will be calculated using bitcoind's 'estimatefee' call
|
||||
-i, --info Display unspent outputs and exit
|
||||
-m, --minconf n Minimum number of confirmations required to spend
|
||||
outputs (default: 1)
|
||||
-q, --quiet Suppress warnings; overwrite files without prompting
|
||||
-r, --rbf Make transaction BIP 125 replaceable (replace-by-fee)
|
||||
-v, --verbose Produce more verbose output
|
||||
-y, --yes Answer 'yes' to prompts, suppress non-essential output
|
||||
|
||||
The transaction's outputs are specified on the command line, while its inputs
|
||||
are chosen from a list of the user's unpent outputs via an interactive menu.
|
||||
|
|
@ -40,8 +40,8 @@
|
|||
one address with no amount on the command line.
|
||||
|
||||
FEE SPECIFICATION: Transaction fees, both on the command line and at the
|
||||
interactive prompt, may be specified as either absolute BTC amounts, using a
|
||||
plain decimal number, or as satoshis per byte, using an integer followed by
|
||||
interactive prompt, may be specified as either absolute BTC amounts, using
|
||||
a plain decimal number, or as satoshis per byte, using an integer followed by
|
||||
the letter 's'.
|
||||
|
||||
MMGEN v0.9.2 July 2017 MMGEN-TXCREATE(1)
|
||||
MMGEN v0.9.3 August 2017 MMGEN-TXCREATE(1)
|
||||
|
|
|
|||
87
man-txdo.md
87
man-txdo.md
|
|
@ -1,46 +1,47 @@
|
|||
MMGEN-TXDO: Create, sign and send an MMGen transaction
|
||||
USAGE: mmgen-txdo [opts] <addr,amt> ... [change addr] [addr file] ... [seed source] ...
|
||||
OPTIONS:
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-a, --tx-fee-adj f Adjust transaction fee by factor 'f' (see below)
|
||||
-b, --brain-params l,p Use seed length 'l' and hash preset 'p' for
|
||||
brainwallet input
|
||||
-B, --no-blank Don't blank screen before displaying unspent outputs
|
||||
-c, --comment-file f Source the transaction's comment from file 'f'
|
||||
-C, --tx-confs c Desired number of confirmations (default: 3)
|
||||
-d, --outdir d Specify an alternate directory 'd' for output
|
||||
-e, --echo-passphrase Print passphrase to screen when typing it
|
||||
-f, --tx-fee f Transaction fee, as a decimal BTC amount or in
|
||||
satoshis per byte (an integer followed by 's').
|
||||
If omitted, bitcoind's 'estimatefee' will be used
|
||||
to calculate the fee.
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-i, --in-fmt f Input is from wallet format 'f' (see FMT CODES below)
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths.
|
||||
-k, --keys-from-file f Provide additional keys for non-MMGen addresses
|
||||
-K, --key-generator m Use method 'm' for public key generation
|
||||
Options: 1:python-ecdsa 2:secp256k1
|
||||
(default: 2)
|
||||
-m, --minconf n Minimum number of confirmations required to spend
|
||||
outputs (default: 1)
|
||||
-M, --mmgen-keys-from-file f Provide keys for MMGen addresses in a key-
|
||||
address file (output of 'mmgen-keygen'). Permits
|
||||
online signing without an MMGen seed source. The
|
||||
key-address file is also used to verify MMGen-to-BTC
|
||||
mappings, so the user should record its checksum.
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-P, --passwd-file f Get MMGen wallet passphrase from file 'f'
|
||||
-r, --rbf Make transaction BIP 125 (replace-by-fee) replaceable
|
||||
-q, --quiet Suppress warnings; overwrite files without prompting
|
||||
-v, --verbose Produce more verbose output
|
||||
-y, --yes Answer 'yes' to prompts, suppress non-essential output
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-A, --aug1hf Sign transaction for the Aug. 1 2017 UAHF chain
|
||||
-a, --tx-fee-adj f Adjust transaction fee by factor 'f' (see below)
|
||||
-b, --brain-params l,p Use seed length 'l' and hash preset 'p' for
|
||||
brainwallet input
|
||||
-B, --no-blank Don't blank screen before displaying unspent outputs
|
||||
-c, --comment-file f Source the transaction's comment from file 'f'
|
||||
-C, --tx-confs c Desired number of confirmations (default: 3)
|
||||
-d, --outdir d Specify an alternate directory 'd' for output
|
||||
-e, --echo-passphrase Print passphrase to screen when typing it
|
||||
-f, --tx-fee f Transaction fee, as a decimal BTC amount or in
|
||||
satoshis per byte (an integer followed by 's').
|
||||
If omitted, bitcoind's 'estimatefee' will be used
|
||||
to calculate the fee.
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-i, --in-fmt f Input is from wallet format 'f' (see FMT CODES below)
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths.
|
||||
-k, --keys-from-file f Provide additional keys for non-MMGen addresses
|
||||
-K, --key-generator m Use method 'm' for public key generation
|
||||
Options: 1:python-ecdsa 2:secp256k1
|
||||
(default: 2)
|
||||
-m, --minconf n Minimum number of confirmations required to spend
|
||||
outputs (default: 1)
|
||||
-M, --mmgen-keys-from-file f Provide keys for MMGen addresses in a key-
|
||||
address file (output of 'mmgen-keygen'). Permits
|
||||
online signing without an MMGen seed source. The
|
||||
key-address file is also used to verify MMGen-to-BTC
|
||||
mappings, so the user should record its checksum.
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-P, --passwd-file f Get MMGen wallet passphrase from file 'f'
|
||||
-r, --rbf Make transaction BIP 125 (replace-by-fee) replaceable
|
||||
-q, --quiet Suppress warnings; overwrite files without prompting
|
||||
-v, --verbose Produce more verbose output
|
||||
-y, --yes Answer 'yes' to prompts, suppress non-essential output
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
|
||||
The transaction's outputs are specified on the command line, while its inputs
|
||||
are chosen from a list of the user's unpent outputs via an interactive menu.
|
||||
|
|
@ -63,8 +64,8 @@
|
|||
one address with no amount on the command line.
|
||||
|
||||
FEE SPECIFICATION: Transaction fees, both on the command line and at the
|
||||
interactive prompt, may be specified as either absolute BTC amounts, using a
|
||||
plain decimal number, or as satoshis per byte, using an integer followed by
|
||||
interactive prompt, may be specified as either absolute BTC amounts, using
|
||||
a plain decimal number, or as satoshis per byte, using an integer followed by
|
||||
the letter 's'.
|
||||
|
||||
Transactions may contain both MMGen or non-MMGen input addresses.
|
||||
|
|
@ -101,4 +102,4 @@
|
|||
SeedFile .mmseed mmseed,seed,s
|
||||
Wallet .mmdat wallet,w
|
||||
|
||||
MMGEN v0.9.2 July 2017 MMGEN-TXDO(1)
|
||||
MMGEN v0.9.3 August 2017 MMGEN-TXDO(1)
|
||||
|
|
|
|||
|
|
@ -1,10 +1,11 @@
|
|||
MMGEN-TXSEND: Send a Bitcoin transaction signed by mmgen-txsign
|
||||
USAGE: mmgen-txsend [opts] <signed transaction file>
|
||||
OPTIONS:
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-d, --outdir d Specify an alternate directory 'd' for output
|
||||
-q, --quiet Suppress warnings; overwrite files without prompting
|
||||
-y, --yes Answer 'yes' to prompts, suppress non-essential output
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-d, --outdir d Specify an alternate directory 'd' for output
|
||||
-q, --quiet Suppress warnings; overwrite files without prompting
|
||||
-s, --status Get status of a sent transaction
|
||||
-y, --yes Answer 'yes' to prompts, suppress non-essential output
|
||||
|
||||
MMGEN v0.9.2 July 2017 MMGEN-TXSEND(1)
|
||||
MMGEN v0.9.3 August 2017 MMGEN-TXSEND(1)
|
||||
|
|
|
|||
|
|
@ -1,37 +1,38 @@
|
|||
MMGEN-TXSIGN: Sign Bitcoin transactions generated by mmgen-txcreate
|
||||
USAGE: mmgen-txsign [opts] <transaction file>... [seed source]...
|
||||
OPTIONS:
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-b, --brain-params l,p Use seed length 'l' and hash preset 'p' for
|
||||
brainwallet input
|
||||
-d, --outdir d Specify an alternate directory 'd' for output
|
||||
-D, --tx-id Display transaction ID and exit
|
||||
-e, --echo-passphrase Print passphrase to screen when typing it
|
||||
-i, --in-fmt f Input is from wallet format 'f' (see FMT CODES below)
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths.
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-k, --keys-from-file f Provide additional keys for non-MMGen addresses
|
||||
-K, --key-generator m Use method 'm' for public key generation
|
||||
Options: 1:python-ecdsa 2:secp256k1 (default: 2)
|
||||
-M, --mmgen-keys-from-file f Provide keys for MMGen addresses in a key-
|
||||
address file (output of 'mmgen-keygen'). Permits
|
||||
online signing without an MMGen seed source. The
|
||||
key-address file is also used to verify MMGen-to-BTC
|
||||
mappings, so the user should record its checksum.
|
||||
-P, --passwd-file f Get MMGen wallet or bitcoind passphrase from file 'f'
|
||||
-q, --quiet Suppress warnings; overwrite files without prompting
|
||||
-I, --info Display information about the transaction and exit
|
||||
-t, --terse-info Like '--info', but produce more concise output
|
||||
-v, --verbose Produce more verbose output
|
||||
-y, --yes Answer 'yes' to prompts, suppress non-essential output
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-A, --aug1hf Sign transaction for the Aug. 1 2017 UAHF chain
|
||||
-b, --brain-params l,p Use seed length 'l' and hash preset 'p' for
|
||||
brainwallet input
|
||||
-d, --outdir d Specify an alternate directory 'd' for output
|
||||
-D, --tx-id Display transaction ID and exit
|
||||
-e, --echo-passphrase Print passphrase to screen when typing it
|
||||
-i, --in-fmt f Input is from wallet format 'f' (see FMT CODES below)
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths.
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-k, --keys-from-file f Provide additional keys for non-MMGen addresses
|
||||
-K, --key-generator m Use method 'm' for public key generation
|
||||
Options: 1:python-ecdsa 2:secp256k1 (default: 2)
|
||||
-M, --mmgen-keys-from-file f Provide keys for MMGen addresses in a key-
|
||||
address file (output of 'mmgen-keygen'). Permits
|
||||
online signing without an MMGen seed source. The
|
||||
key-address file is also used to verify MMGen-to-BTC
|
||||
mappings, so the user should record its checksum.
|
||||
-P, --passwd-file f Get MMGen wallet or bitcoind passphrase from file 'f'
|
||||
-q, --quiet Suppress warnings; overwrite files without prompting
|
||||
-I, --info Display information about the transaction and exit
|
||||
-t, --terse-info Like '--info', but produce more concise output
|
||||
-v, --verbose Produce more verbose output
|
||||
-y, --yes Answer 'yes' to prompts, suppress non-essential output
|
||||
|
||||
Transactions may contain both MMGen or non-MMGen input addresses.
|
||||
|
||||
|
|
@ -67,4 +68,4 @@
|
|||
SeedFile .mmseed mmseed,seed,s
|
||||
Wallet .mmdat wallet,w
|
||||
|
||||
MMGEN v0.9.2 July 2017 MMGEN-TXSIGN(1)
|
||||
MMGEN v0.9.3 August 2017 MMGEN-TXSIGN(1)
|
||||
|
|
|
|||
|
|
@ -1,24 +1,24 @@
|
|||
MMGEN-WALLETCHK: Check validity of an MMGen wallet
|
||||
USAGE: mmgen-walletchk [opts] [infile]
|
||||
OPTIONS:
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-e, --echo-passphrase Echo passphrases and other user input to screen
|
||||
-i, --in-fmt f Input from wallet format 'f' (see FMT CODES below)
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths.
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-P, --passwd-file f Get wallet passphrase from file 'f'
|
||||
-q, --quiet Produce quieter output; suppress some warnings
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from user
|
||||
(min=10, max=80, default=30)
|
||||
-v, --verbose Produce more verbose output
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-e, --echo-passphrase Echo passphrases and other user input to screen
|
||||
-i, --in-fmt f Input from wallet format 'f' (see FMT CODES below)
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths.
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-P, --passwd-file f Get wallet passphrase from file 'f'
|
||||
-q, --quiet Produce quieter output; suppress some warnings
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from user
|
||||
(min=10, max=80, default=30)
|
||||
-v, --verbose Produce more verbose output
|
||||
|
||||
For passphrases all combinations of whitespace are equal and leading and
|
||||
trailing space is ignored. This permits reading passphrase or brainwallet
|
||||
|
|
@ -42,4 +42,4 @@
|
|||
SeedFile .mmseed mmseed,seed,s
|
||||
Wallet .mmdat wallet,w
|
||||
|
||||
MMGEN v0.9.2 July 2017 MMGEN-WALLETCHK(1)
|
||||
MMGEN v0.9.3 August 2017 MMGEN-WALLETCHK(1)
|
||||
|
|
|
|||
|
|
@ -1,34 +1,34 @@
|
|||
MMGEN-WALLETCONV: Convert an MMGen wallet from one format to another
|
||||
USAGE: mmgen-walletconv [opts] [infile]
|
||||
OPTIONS:
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-d, --outdir d Output files to directory 'd' instead of working dir
|
||||
-e, --echo-passphrase Echo passphrases and other user input to screen
|
||||
-i, --in-fmt f Convert from wallet format 'f' (see FMT CODES below)
|
||||
-o, --out-fmt f Convert to wallet format 'f' (see FMT CODES below)
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-J, --hidden-incog-output-params f,o Write hidden incognito data to file
|
||||
'f' at offset 'o' (comma-separated). File 'f' will be
|
||||
created if necessary and filled with random data.
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-k, --keep-passphrase Reuse passphrase of input wallet for output wallet
|
||||
-K, --keep-hash-preset Reuse hash preset of input wallet for output wallet
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths.
|
||||
-L, --label l Specify a label 'l' for output wallet
|
||||
-m, --keep-label Reuse label of input wallet for output wallet
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-P, --passwd-file f Get wallet passphrase from file 'f'
|
||||
-q, --quiet Produce quieter output; suppress some warnings
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from user
|
||||
(min=10, max=80, default=30)
|
||||
-S, --stdout Write wallet data to stdout instead of file
|
||||
-v, --verbose Produce more verbose output
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-d, --outdir d Output files to directory 'd' instead of working dir
|
||||
-e, --echo-passphrase Echo passphrases and other user input to screen
|
||||
-i, --in-fmt f Convert from wallet format 'f' (see FMT CODES below)
|
||||
-o, --out-fmt f Convert to wallet format 'f' (see FMT CODES below)
|
||||
-H, --hidden-incog-input-params f,o Read hidden incognito data from file
|
||||
'f' at offset 'o' (comma-separated)
|
||||
-J, --hidden-incog-output-params f,o Write hidden incognito data to file
|
||||
'f' at offset 'o' (comma-separated). File 'f' will be
|
||||
created if necessary and filled with random data.
|
||||
-O, --old-incog-fmt Specify old-format incognito input
|
||||
-k, --keep-passphrase Reuse passphrase of input wallet for output wallet
|
||||
-K, --keep-hash-preset Reuse hash preset of input wallet for output wallet
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths.
|
||||
-L, --label l Specify a label 'l' for output wallet
|
||||
-m, --keep-label Reuse label of input wallet for output wallet
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-P, --passwd-file f Get wallet passphrase from file 'f'
|
||||
-q, --quiet Produce quieter output; suppress some warnings
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from user
|
||||
(min=10, max=80, default=30)
|
||||
-S, --stdout Write wallet data to stdout instead of file
|
||||
-v, --verbose Produce more verbose output
|
||||
|
||||
For passphrases all combinations of whitespace are equal and leading and
|
||||
trailing space is ignored. This permits reading passphrase or brainwallet
|
||||
|
|
@ -52,4 +52,4 @@
|
|||
SeedFile .mmseed mmseed,seed,s
|
||||
Wallet .mmdat wallet,w
|
||||
|
||||
MMGEN v0.9.2 July 2017 MMGEN-WALLETCONV(1)
|
||||
MMGEN v0.9.3 August 2017 MMGEN-WALLETCONV(1)
|
||||
|
|
|
|||
|
|
@ -1,27 +1,27 @@
|
|||
MMGEN-WALLETGEN: Generate an MMGen wallet from a random seed
|
||||
USAGE: mmgen-walletgen [opts]
|
||||
OPTIONS:
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-d, --outdir d Output files to directory 'd' instead of working dir
|
||||
-e, --echo-passphrase Echo passphrases and other user input to screen
|
||||
-o, --out-fmt f Output to wallet format 'f' (see FMT CODES below)
|
||||
-J, --hidden-incog-output-params f,o Write hidden incognito data to file
|
||||
'f' at offset 'o' (comma-separated). File 'f' will be
|
||||
created if necessary and filled with random data.
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths.
|
||||
-L, --label l Specify a label 'l' for output wallet
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-P, --passwd-file f Get wallet passphrase from file 'f'
|
||||
-q, --quiet Produce quieter output; suppress some warnings
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from user
|
||||
(min=10, max=80, default=30)
|
||||
-S, --stdout Write wallet data to stdout instead of file
|
||||
-v, --verbose Produce more verbose output
|
||||
-h, --help Print this help message
|
||||
--longhelp Print help message for long options (common options)
|
||||
-d, --outdir d Output files to directory 'd' instead of working dir
|
||||
-e, --echo-passphrase Echo passphrases and other user input to screen
|
||||
-o, --out-fmt f Output to wallet format 'f' (see FMT CODES below)
|
||||
-J, --hidden-incog-output-params f,o Write hidden incognito data to file
|
||||
'f' at offset 'o' (comma-separated). File 'f' will be
|
||||
created if necessary and filled with random data.
|
||||
-l, --seed-len l Specify wallet seed length of 'l' bits. This option
|
||||
is required only for brainwallet and incognito inputs
|
||||
with non-standard (< 256-bit) seed lengths.
|
||||
-L, --label l Specify a label 'l' for output wallet
|
||||
-p, --hash-preset p Use the scrypt hash parameters defined by preset 'p'
|
||||
for password hashing (default: '3')
|
||||
-z, --show-hash-presets Show information on available hash presets
|
||||
-P, --passwd-file f Get wallet passphrase from file 'f'
|
||||
-q, --quiet Produce quieter output; suppress some warnings
|
||||
-r, --usr-randchars n Get 'n' characters of additional randomness from user
|
||||
(min=10, max=80, default=30)
|
||||
-S, --stdout Write wallet data to stdout instead of file
|
||||
-v, --verbose Produce more verbose output
|
||||
|
||||
For passphrases all combinations of whitespace are equal and leading and
|
||||
trailing space is ignored. This permits reading passphrase or brainwallet
|
||||
|
|
@ -45,4 +45,4 @@
|
|||
SeedFile .mmseed mmseed,seed,s
|
||||
Wallet .mmdat wallet,w
|
||||
|
||||
MMGEN v0.9.2 July 2017 MMGEN-WALLETGEN(1)
|
||||
MMGEN v0.9.3 August 2017 MMGEN-WALLETGEN(1)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue