Pages:
Author

Topic: [ANN] MMGen, a complete Bitcoin command-line online/offline wallet solution - page 4. (Read 35760 times)

member
Activity: 112
Merit: 27
Announcing MMGenLive, a fully functional Linux system on a USB stick with the MMGen online/offline Bitcoin wallet, Bitcoin Core and related programs preinstalled!

MMGenLive gives you, out of the box:

  • A completely installed, upgradeable and configurable Ubuntu Linux system
  • Full disk encryption (entire filesystem is read/write)
  • The latest Bitcoin Core
  • The MMGen wallet system and documentation

MMGenLive can be used both as an online or offline wallet.

Everything’s ready to go.  Just download and copy to a USB stick.  No installation required!

For Linux users who wish to “roll their own”, an automated build script is also available.

As the MMGen Windows port isn’t being actively maintained, MMGenLive is now the recommended way for non-Linux users to use the MMGen wallet system.


MMGenLive project page: https://github.com/mmgen/MMGenLive
MMGen project page: https://github.com/mmgen/mmgen
Support the MMGen project: 15TLdmi5NYLdqmtCqczUs5pBPkJDXRs83w
member
Activity: 112
Merit: 27
Announcing MMGen version 0.8.4

New features/improvements:
  • Dynamic transaction fees!

Fee is calculated using Bitcoin Core’s 'estimatefee' RPC call and can be overridden interactively by the user.


MMGen project page: https://github.com/mmgen/mmgen
Support the MMGen project: 15TLdmi5NYLdqmtCqczUs5pBPkJDXRs83w
member
Activity: 112
Merit: 27
Announcing MMGen version 0.8.3

New features/improvements:
  • New native Bitcoin RPC library.
  • Support for cookie-based RPC authentication (new in Bitcoin Core v0.12.0).
  • Batch mode available when listing and importing addresses.
  • mmgen-tool listaddresses: 'addrs' argument allows you to specify an address or range of addresses.

NOTE: if MMGen is already installed on your system, you must remove your existing installation by hand before installing this new version.  On Linux, this means deleting everything under the directory '/usr/local/lib/python2.7/dist-packages/mmgen/'.  Also, if you did a 'git pull' instead of a fresh clone, you must delete the 'build' directory in the repository root before installing.

The 'mmgen-pywallet' utility has been removed.  It's no longer needed, as the 'bitcoin-cli dumpwallet' command (available since Core v0.9.0) provides equivalent functionality.

The Windows port isn't being actively maintained at the moment.  Use at your own risk, and report any problems on this forum.

To make sure everything's installed and working properly, run 'test/test.py -s' in the repository root.


MMGen project page: https://github.com/mmgen/mmgen
Support the MMGen project: 15TLdmi5NYLdqmtCqczUs5pBPkJDXRs83w
member
Activity: 112
Merit: 27
Announcing MMGen version 0.8.2

This is a minor code cleanup and bugfix release.  Upgrade recommended, testers welcome!


MMGen project page: https://github.com/mmgen/mmgen
Support the MMGen project: 15TLdmi5NYLdqmtCqczUs5pBPkJDXRs83w
member
Activity: 112
Merit: 27
Announcing MMGen version 0.8.1

New features:
  • New utility, mmgen-walletconv, converts to and from all MMGen wallet formats.
  • All wallet-related scripts now use the new object-oriented wallet library seed.py and share a simpler, more logical command-line interface.
  • More thoroughly tested than ever, thanks to a greatly expanded test suite, test/test.py.
  • A subset of the test suite now runs under Windows; some user interaction required.
  • mmgen-pywallet functional again.


MMGen project page: https://github.com/mmgen/mmgen
Support the MMGen project: 15TLdmi5NYLdqmtCqczUs5pBPkJDXRs83w
member
Activity: 112
Merit: 27
Announcing MMGen version 0.8.0

Bugfix release.  Users are strongly advised to upgrade.


MMGen project page: https://github.com/mmgen/mmgen
Support the MMGen project: 15TLdmi5NYLdqmtCqczUs5pBPkJDXRs83w
member
Activity: 112
Merit: 27
Very nice looking program, I'll have to try it out later.
Thanks!  Please get back to me when you do.
hero member
Activity: 854
Merit: 658
rgbkey.github.io/pgp.txt
Very nice looking program, I'll have to try it out later.
member
Activity: 112
Merit: 27
Announcing MMGen version 0.7.9

New feature:
  • An automated, pexpect-based test suite, 'test/test.py', that tests the MMGen scripts in a variety of use cases.  The test suite is Linux-only due to dependencies required by the pexpect module.


MMGen project page: https://github.com/mmgen/mmgen
Support the MMGen project: 15TLdmi5NYLdqmtCqczUs5pBPkJDXRs83w
member
Activity: 112
Merit: 27
Announcing MMGen version 0.7.8

New features:
  • Updated incognito format now includes a checksum for password verification.  The legacy format continues to be supported with '--old-incog-fmt' option
  • mmgen-txsign: '--mmgen-keys-from-file' option (supersedes '--all-keys-from-file' option) allows online signing of transactions with both MMGen and non-MMGen inputs.
  • mmgen-addrimport: '--keyaddr-file' option allows using key-address file (optionally encrypted) as an address source.


MMGen project page: https://github.com/mmgen/mmgen
Support the MMGen project: 15TLdmi5NYLdqmtCqczUs5pBPkJDXRs83w
member
Activity: 112
Merit: 27
Announcing MMGen version 0.7.7

New features since the project's debut on April 11th, 2014:

General:
  • Option for online signing with individual keys, making MMGen a convenient tool for small, day-to-day Bitcoin transactions too
  • Multiple transaction signing in one operation
  • Incognito wallets for hiding wallet data in insecure locations
  • Option to skip blockchain rescan for new addresses

An mmgen-tool utility with commands too numerous to mention. For a full list, see the previous post.
Some highlights:
  • a full suite of Bitcoin address/key manipulation utilities with compressed public key support
  • file encryption tool with strong encryption
  • random-data-to-file tool with optional added user entropy
  • search tool for hidden incognito data
  • wallet-tracking commands getbalance and listaddresses

Unique feature: The user may now supply additional entropy in all cases where random data is needed.  This user entropy (typed symbols + keystroke intervals) is hashed into a key with Scrypt and used to encrypt all random data acquired from the OS during the command run.


MMGen project page: https://github.com/mmgen/mmgen
Support the MMGen project: 15TLdmi5NYLdqmtCqczUs5pBPkJDXRs83w
member
Activity: 112
Merit: 27
New commands for the mmgen-tool utility:

  Bitcoin address/key operations (compressed public keys supported):
  addr2hexaddr - convert Bitcoin address from base58 to hex format
  b58randenc   - generate a random 32-byte number and convert it to base 58
  b58tohex     - convert a base 58 number to hexadecimal
  hex2wif      - convert a private key from hex to WIF format
  hexaddr2addr - convert Bitcoin address from hex to base58 format
  hextob58     - convert a hexadecimal number to base 58
  privhex2addr - generate Bitcoin address from private key in hex format
  pubkey2addr  - convert Bitcoin public key to address
  pubkey2hexaddr - convert Bitcoin public key to address in hex format
  randpair     - generate a random private key/address pair
  randwif      - generate a random private key in WIF format
  strtob58     - convert a string to base 58
  wif2addr     - generate a Bitcoin address from a key in WIF format
  wif2hex      - convert a private key from WIF to hex format


  Wallet/TX operations (bitcoind must be running):
  getbalance    - like 'bitcoind getbalance' but shows confirmed/unconfirmed,
                  spendable/unspendable balances for individual MMGen wallets
  listaddresses - list MMGen addresses and their balances
  viewtx        - show raw/signed MMGen transaction in human-readable form


  General utilities:
  bytespec     - convert a byte specifier such as '1GB' into a plain integer
  hexdump      - encode data into formatted hexadecimal form (file or stdin)
  hexlify      - display string in hexadecimal format
  hexreverse   - reverse bytes of a hexadecimal string
  rand2file    - write 'n' bytes of random data to specified file
  randhex      - print 'n' bytes (default 32) of random data in hex format
  sha256x2     - compute a double sha256 hash of data
  unhexdump    - decode formatted hexadecimal data (file or stdin)


  File encryption:
  encrypt      - encrypt a file
  decrypt      - decrypt a file
  MMGen encryption suite:
    * Key: Scrypt (user-configurable hash parameters, 32-byte salt)
    * Enc: AES256_CTR, 16-byte rand IV, sha256 hash + 32-byte nonce + data
    * The encrypted file is indistinguishable from random data


  MMGen-specific operations:
  check_addrfile - compute checksum and address list for MMGen address file
  find_incog_data - Use an Incog ID to find hidden incognito wallet data
  id6          - generate 6-character MMGen ID checksum for file (or stdin)
  id8          - generate 8-character MMGen ID checksum for file (or stdin)


  Mnemonic operations (choose "electrum" (default), "tirosh" or "all" wordlists):
  mn_rand128   - generate random 128-bit mnemonic
  mn_rand192   - generate random 192-bit mnemonic
  mn_rand256   - generate random 256-bit mnemonic
  mn_stats     - show stats for mnemonic wordlist
  mn_printlist - print mnemonic wordlist



MMGen project page: https://github.com/mmgen/mmgen
Support the MMGen project: 15TLdmi5NYLdqmtCqczUs5pBPkJDXRs83w
member
Activity: 112
Merit: 27
New mmgen-tool utility with the following commands:

  General operations:
  hexdump      - encode binary data in formatted hexadecimal form
  unhexdump    - decode formatted hexadecimal data


  Bitcoin operations:
  strtob58     - convert a string to base 58
  hextob58     - convert a hexadecimal number to base 58
  b58tohex     - convert a base 58 number to hexadecimal
  b58randenc   - generate a random 32-byte number and convert it to base 58
  randwif      - generate a random private key in WIF format
  randpair     - generate a random private key/address pair
  wif2addr     - generate a Bitcoin address from a key in WIF format


  Mnemonic operations ("electrum" and "tirosh" wordlists):
  mn_rand128   - generate random 128-bit mnemonic
  mn_rand192   - generate random 192-bit mnemonic
  mn_rand256   - generate random 256-bit mnemonic
  mn_stats     - show stats for mnemonic wordlist
  mn_printlist - print mnemonic wordlist



MMGen project page: https://github.com/mmgen/mmgen
Support the MMGen project: 15TLdmi5NYLdqmtCqczUs5pBPkJDXRs83w
member
Activity: 112
Merit: 27
New feature: export wallet to incognito format

Incognito wallet is 56, 64 or 72 bytes of apparently random data.

Allows user to hide wallet data in a pre-existing file or on a disk partition (preferably filled in advance with random data).

Can be used to hide wallet securely in unencrypted cloud storage or on paper, without revealing the nature of the data.

Data may be written at a user-specified offset into the file or partition, in which case user must remember the offset.

Each export operation uses a new random init vector to create different data each time.  This allows the user to hide wallets at different locations on the Net without detection.

User must remember hash preset in addition to passphrase (though trial and error can be used if it's forgotten).

Fully integrated with address generation and tx signing operations.


MMGen project page: https://github.com/mmgen/mmgen
Support the MMGen project:  15TLdmi5NYLdqmtCqczUs5pBPkJDXRs83w
member
Activity: 112
Merit: 27
MMGen = Multi-Mode GENerator, a complete online/offline Bitcoin wallet solution for the command line

MMGen is a Bitcoin cold-storage system implemented as a suite of lightweight Python command-line scripts that work together with the reference Bitcoin Core daemon (bitcoind) to create a complete system for storing, tracking, sending and receiving Bitcoins.

The MMGen system is completely self-contained, requiring no external server. No third party will know which addresses you're tracking.

Like all deterministic wallets, MMGen can generate a virtually unlimited number of address/key pairs from a single seed. Since the seed never changes, your wallet needs to be backed up only once.

At the heart of the MMGen system is the seed, the "master key" providing access to all your Bitcoins.  The seed can be stored in five different ways:

  1. as a wallet, encrypted with the crack-resistant scrypt function;
  2. as a one-line unencrypted seed file;
  3. as an Electrum-like mnemonic of 12, 18 or 24 words;
  4. as a brainwallet password; or
  5. as an "incognito wallet" consisting of random-looking data (72 bytes by default) suitable for hiding in a file or on a disk partition.

Furthermore, all these methods can be combined. If you forget your mnemonic, for example, you can regenerate it and your keys from a saved wallet or seed file. Correspondingly, a lost wallet can be regenerated from a mnemonic or seed or a lost seed from a wallet or mnemonic.

All of MMGen's wallet formats are short, plain ASCII text files suitable for printing on paper or even writing out by hand. This makes MMGen an ideal paper wallet system. Just choose the wallet format that best suits your security needs and print or write it out.

MMGen runs on Linux and Windows.

For more information, see the MMGen project page: https://github.com/mmgen/mmgen

Support the MMGen project: 15TLdmi5NYLdqmtCqczUs5pBPkJDXRs83w
Pages:
Jump to: