wagu

Build Status

Pronounced like wagyu. Wagu is the wallet generation utility.

Wagu allows users to generate wallets for the following cryptocurrencies:

Quick Usage

Create a wallet for any currency like so:

wagu <currency>

The supported currencies are listed above. Specific examples are found below and in the docs folder.

Table of Contents

Documentation

Features

The following demonstrates the functionality of wagu. All examples are for the Bitcoin blockchain and more specific exampls can be found in the /docs folder.

Generate a wallet with default options

Generate an uncompressed mainnet private key and address with the following command:

wagu bitcoin

```bash ╰─ wagu bitcoin

    Private Key:    5JHwLmRafAxdtRddv3o2urYo2bfFUT2V29LSoDM3QFJPzoUoBJT
    Address:        1GMmaXUixBA2ZMqw9U1zX4cTCmhWtNhgTB
    Network:        Mainnet
    Compressed:     false

```

Generate testnet and mainnet wallets

Generate a testnet private key and address with the following command:

wagu bitcoin --network testnet

```bash ╰─ wagu bitcoin --network testnet

    Private Key:    92Rk56bU8atxbM9mUyNJtijc8XFyw7UHrDaasyTzcn9iLn4M9Le
    Address:        myPXYe7NrVpq8oYBugTFtHwamejxB6wNC8
    Network:        Testnet
    Compressed:     false

```

Generate wallets as JSON object

Generate an uncompressed mainnet private key and address with the following command:

wagu bitcoin -j OR wagu bitcoin --json

bash ╰─ wagu -j [ { "privateKey": { "wif": "5JZPS2WbS8A5jkZYtSvHibvNQMN6vU2Btht5YqAZze7zEiFtNDd", "network": "Mainnet", "compressed": false }, "address": { "wif": "1NuPmGDSsCFcSZCuAccq6zJTvXi2vNzRwg", "network": "Mainnet", "address_type": "P2PKH" } } ]

Generate multiple wallets of the same kind

Generate a multiple wallets with the following command:

wagu bitcoin --count 3 OR wagu bitcoin -n 3

```bash ╰─ wagu bitcoin -n 3

    Private Key:    5JsktgmsNQh3MbHMcwNWG3gd5awH59dnUa64Uih6rAssCsdjjU9
    Address:        1N4Ezyuo4K4FFvBnbeyPv5qPA93mBVi5P9
    Network:        Mainnet
    Compressed:     false


    Private Key:    5JzxKHZNEqN9zNgxkjJQASnpCYvBj5NQMs6HfEgMRsQ84VXJpyU
    Address:        1AzoF4Cw8fS7JdFocmsVoKJdv1j4a81Tf9
    Network:        Mainnet
    Compressed:     false


    Private Key:    5JxRr7Evz4YSKRWvMLzAtg7WZHg7uEfpM6D6TK4w3HUE3aSQbF7
    Address:        19uxwixdfxdYVJ4HjrLKT31EakWCqrhb1r
    Network:        Mainnet
    Compressed:     false

```

Generate a P2WPKH_P2SH (SegWit) Wallet

Generate a SegWit mainnet private key and address with the following command:

wagu bitcoin --segwit

```bash ╰─ wagu --segwit

    Private Key:    L13EzQBa7izHyXHdhAwBzApAPL1Q8rdVRpY7CASWXyFPyHTuPJxs
    Address:        3Qz5gtJ4GKoeSHHErF8Nvs9bDp5TQDw89o
    Network:        Mainnet
    Compressed:     true

```

Generate compressed and uncompressed (default) wallets

Generate a compressed mainnet private key and address with the following command:

wagu bitcoin --compressed OR wagu bitcoin -c

```bash ╰─ wagu bitcoin -c

    Private Key:    KzpvjTPuU7p2GZFki2FRnnTceDn5jdVAYZkVvDBptWrHMcLeGWFn
    Address:        1G75ZLkSbTr6wBzr4pthM7eV9NzenMyZPC
    Network:        Mainnet
    Compressed:     true

```

Help

The cli contains useful help text, displayed below.

``` wagu v0.5.0 Argus Observer team@argus.observer Generate a wallet for any cryptocurrency

Supported Currencies: Bitcoin, Ethereum, Monero, Zcash (t-address)

USAGE: wagu [FLAGS] [OPTIONS]

FLAGS: -c, --compressed Enabling this flag generates a wallet which corresponds to a compressed public key -h, --help Prints help information -j, --json Enabling this flag prints the wallet in JSON format --segwit Enabling this flag generates a wallet with a SegWit address -V, --version Prints version information

OPTIONS: -n, --count Number of wallets to generate -N, --network Network of wallet(s) to generate (e.g. mainnet, testnet) [values: mainnet, testnet]

ARGS: Name of the currency to generate a wallet for (e.g. bitcoin, ethereum, monero, zcash) ```