Paper wallet for Hush, which you can use with no internet access while wearing a tinfoil hat inside of a Faraday cage. https://hush.is
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

154 lines
6.4 KiB

# SilentDragonPaper
4 years ago
SilentDragonPaper is a paper wallet generator that can be run completely offline.
4 years ago
You can run it on an air-gapped computer to generate your shielded z-addresses, which will allow you to keep your keys completely offline.
5 years ago
4 years ago
*Example:*
4 years ago
![screenshot](SilentDragonPaper.png?raw=true)
5 years ago
## Download
5 years ago
Two options for Download, either a [pre-built binary](https://git.hush.is/hush/SilentDragonPaper#binary-installation) or [you compile it yourself](https://git.hush.is/hush/SilentDragonPaper#source-code-installation).
### Binary installation
SilentDragonPaper is available as pre-built binaries from our [release page](https://git.hush.is/hush/SilentDragonPaper/releases). Download the zip file for your platform, extract it and run the `./SilentDragonPaper` binary.
5 years ago
### Source code installation
If you decide to compile from source, then first use git to get the source code as follows:
```
git clone https://git.hush.is/hush/SilentDragonPaper
```
Then choose one of these two source compilation options to build the SilentDragonPaper CLI.
5 years ago
#### Recommended Option : Compile using "embedded" rust
Here we do not need a system installed Rust to compile. The build.sh script pulls Rust version 1.51.0 down for us and builds with it.
4 years ago
```
cd SilentDragonPaper
./build.sh
4 years ago
```
5 years ago
#### Advanced Option : Compile using system installed rust
SilentDragonPaper is built with Rust. **To compile from source, you must [install at least Rust 1.51.0](https://www.rust-lang.org/tools/install).** Please report any issues if a particular version of Rust does not compile this, but I have successfully built this with `rustc 1.64.0 (a55dd71d5 2022-09-19)`.
5 years ago
```
cd SilentDragonPaper/cli
cargo vendor
cargo build --release --offline
```
4 years ago
**After building, the completed binary will be available in the `cli/target/release` folder.**
5 years ago
## Usage Instructions
5 years ago
### Generating wallets
To generate a Hush paper wallet, simply run one of the following below as the exact command will depend on the method you used to install or compile it.
```
./SilentDragonPaper
./target/release/SilentDragonPaper
./cli/target/release/SilentDragonPaper
```
4 years ago
You'll be asked to type some random characters that will add entropy to the random number generator. Run with `--help` to see all options
4 years ago
### Saving as PDFs
To generate a Hush paper wallet and save it as a PDF, run:
4 years ago
5 years ago
```
./SilentDragonPaper -z 3 --format pdf sdp.pdf
5 years ago
```
This will generate 3 shielded z-addresses and their corresponding private keys, and save them in a PDF file called `sdp.pdf`
### Vanity Addresses
You can generate a "vanity address" (that is, an address starting with a given prefix) by specifying a `--vanity` argument with the prefix you want.
Note that generating vanity addresses with a prefix longer than 4-5 characters is computationally expensive. You can run it on multiple CPUs on your computer by specifying the `--threads` option.
5 years ago
5 years ago
## Ensuring Security
4 years ago
5 years ago
When generating paper wallets that will store large amounts of crypto, please take special care to ensure the keys are generated and kept completely offline.
4 years ago
1. `SilentDragonPaper` supports ARMv8 (Raspberry Pi 3+). You can put one in a Faraday cage along with a printer, and print out the PDFs securely.
1. Please ensure you supply random entropy when you run `SilentDragonPaper`. Your entropy is mixed in with system-provided entropy to generate keys.
1. If you can, run with `unshare`, which will disable all network interfaces to a process, providing you with an additional layer of safety. (See next section)
1. After you've generated the keys, you can tear off the Address potion of the wallet and take it to your online computer/phone to send the address funds. Please always keep the private key offline.
1. When you're ready to spend the cold storage keys, import the private key into a full node, then don't re-use the key again.
5 years ago
### Run without network
4 years ago
If you are running a newish version of Linux, you can be doubly sure that the process is not contacting the network by running SilentDragonPaper without the network namespace.
5 years ago
```
sudo unshare -n ./target/release/SilentDragonPaper
5 years ago
```
`unshare -n` runs the process without a network interface which means you can be sure that your data is not being sent across the network.
5 years ago
## Help options
5 years ago
```
USAGE:
SilentDragonPaper [FLAGS] [OPTIONS] [output]
5 years ago
FLAGS:
-h, --help Prints help information
-n, --nohd Don't reuse HD keys. Normally, SilentDragonPaper will use the same HD key to derive multiple
5 years ago
addresses. This flag will use a new seed for each address
-V, --version Prints version information
OPTIONS:
5 years ago
-e, --entropy <entropy> Provide additional entropy to the random number generator. Any random string,
containing 32-64 characters
5 years ago
-f, --format <FORMAT> What format to generate the output in [default: json] [possible values: pdf, json]
5 years ago
-t, --taddrs <t_addresses> Numbe rof T addresses to generate [default: 0]
5 years ago
--threads <threads> Number of threads to use for the vanity address generator. Set this to the number of
CPUs you have [default: 1]
--vanity <vanity> Generate a vanity address with the given prefix.
Note that ['b', 'i', 'o', '1'] are not allowed in addresses.
5 years ago
-z, --zaddrs <z_addresses> Number of Z addresses (Sapling) to generate [default: 1]
ARGS:
<output> Name of output file.
```
4 years ago
## Support and Socials
Please feel free to join us on Telegram for official support:
* Main group: https://hush.is/tg
* Support group: https://hush.is/telegram_support
* Mining group: https://hush.is/telegram_mining
If you prefer Matrix, then please join our Matrix chatrooms which are bridged to the above Telegram rooms:
* Main group: [#hush_main:matrix.org](https://hush.is/matrix)
* Support group: [#hush_support:matrix.org](https://matrix.to/#/#hush_support:matrix.org)
* Mining group: [#hush_mining:matrix.org](https://matrix.to/#/#hush_mining:matrix.org)
Other socials:
* PeerTube: [videos.hush.is](https://hush.is/peertube)
* Twitter: [@hushisprivacy](https://hush.is/twitter)
* Mastodon: [@myhushteam@fosstodon.org](https://hush.is/mastodon)
* Reddit: [@Myhush](https://hush.is/reddit)
4 years ago
## Copyright
Released under the [GNU Public License Version 3](https://www.gnu.org/licenses/gpl-3.0.en.html) or later.
4 years ago
Copyright (c) 2019-2023 The Hush Developers
4 years ago
Copyright (c) 2019 adityapk00
## License
GPLv3 or later.
4 years ago
See [LICENSE](LICENSE) file for details.