Setting MASQ Wallets

Initial Set-Up

MASQ Node is configured to have wallets stored, sensitive information encrypted in the node-data.db database file and remain unmodified so the Node user can satisfy all debts and earnings from routing traffic in and out across the network.

For a security-first approach, wallets cannot be configured unless a database password (--db-password) has been set.

There are two Node commands available to load wallets into MASQ Node:

You won't be able to use the generate-wallets or recover-wallets commands if the database already has wallet information, or if the database doesn't have a password set (seedb-password and setting password )

Derivation Paths:

generate-wallets

This command will generate and return an earning and consuming wallet using BIP39 mnemonic cryptography securely within the Node software. If you want to reference the wallet derivations and algorithms go to Ian Coleman's BIP39 Mnemomic Code Converter page - its a great resource!

You shouldn't be able to supply any erroneous information (for example, requesting a 10-word phrase, or supplying an invalid derivation path like 'booga'). If you supply the same derivation path for both consuming and earning wallets, you should get the same address back for both of them.

generate-wallets -h HELP Output

recover-wallets

The recover-wallets command will load any existing wallets you may have already set up, deriving it from the mnemonic phrase seed words provided and specific derivation paths for the earning and consuming wallets

In masq, type recover-wallets and press Enter to see the help message that describes how it should be used.

The format for the command is:

--mnemonic-phrase - Can be right, or missing, or have an unacceptable number of words, or contain words that aren't among the 2048 that are valid for the selected language. Remember to put it in double quotes; otherwise the single quotes will cause problems

--earning-address - Can be specified, or absent, or invalid--that is, not 0x followed by 40 hexadecimal digits.

Also: you should be forced to specify exactly one of --earning-path and --earning-address. Specifying neither of them should be an error, and specifying both of them should also be.

recover-wallets -h HELP Output

In case it matters, command validation happens in masq, and only if the command is valid does it get sent to the Node, where parameter validation happens. What this means, for example, is that if you specify an invalid --consuming-path and no --mnemonic-phrase, the error you receive will be from masq, complaining of a missing required parameter: masq has no idea what a valid derivation path is. In order to get that error, the command will need to be correct enough to make masq accept it and send it on to the Node.

Last updated