Skip to content

theQRL/offline-wallet-generator

Repository files navigation

QRL Offline Wallet Generator

Use (the quick version)

  • Download the latest qrl-offline-wallet.zip release
  • Unarchive

Either:

or:

  • Run a local web server pointing to the index.html file, eg:
npm i -g http-server
http-server offline-wallet-generator/

then:

  • Generate a wallet with the required settings (see docs.theqrl.org)
  • Save JSON/print/save PDF and print later
  • No internet connection required

Help is available:

Verify integrity (optional but recommended step prior to use)

gpg --verify shasum.256.pgp.asc
  • This should display gpg: Good signature from "Security team security@theqrl.org"
  • From downloaded qrl-offline-wallet.zip, check the shasum of the index of shasums:
shasum shasum.256.asc
  • This should match the shasum shown in the PGP signed message verified above
  • Finally, check the shasum of the offline-wallet files:
shasum --check shasum.256.pgp.asc
  • All files should be OK

Use (the longer version - with pictures)

This software will allow you to generate a wallet for use on the QRL network. For security, it is designed to be used in an offline environment. It is recommended to use this software from a bootable OS (e.g. Desktop Ubuntu distribution) without any network connection.

Screenshot 1

The software uses the core QRL library (QRLLIB) which requires a modern browser with webassembly capabilities. If the software has loaded correctly, the version of QRLLIB and a check mark will be shown as in the picture above.

Screenshot 2

You can configure the settings of the wallet to be generated by adjusting the dropdowns. The defaults are fine for most users. You can read more about the tree height and hash function options at the QRL docs site. Bear in mind that large tree heights will need longer to generate, especially on older computers. Once the options have been reviewed, click Generate to begin.

Screenshot 3

A spinner will show while the wallet is being created. Please be patient: the generation of an address may take up to 30 mins on old hardware if the largest tree height has been selected. On modern hardware and with default options, wallet generation usually takes only a couple of seconds.

Screenshot 4

The generated wallet can be printed, saved as a PDF or exported as JSON, in both password protected and unprotected formats. Both the protected and unprotected JSON files can be use in the QRL web wallet. The unprotected format can also be used in a QRL node. If you select the password protected option, which is recommended in most cases, do not forget the password as funds may be lost if you do.

Screenshot 5

The Save encrypted option becomes available when the password boxes contain matching passwords.

Screenshot 6

If you untick the option to use the password protected file format, the Save unencrypted option becomes available.

Whichever option for saving the wallet details you choose, be careful to guard the mnemonic phrase, hexseed (and private key in the JSON files) carefully: sharing these details could result in loss of funds.

Developing/Building from source

Dependencies

Project setup

npm install

Compiles and hot-reloads for development

npm run serve

Compiles and minifies for production

npm run build

Run tests

npm run test

Lints and fixes files

npm run lint

Run end-to-end tests

npm run test:e2e

Run unit tests

npm run test:unit