Duke Leto
34a0b2d5e3
|
2 years ago | |
---|---|---|
LICENSE | 4 years ago | |
README.md | 2 years ago |
README.md
Hush Full Node Integration Docs
This document will help you install and maintain a Hush Full Node. It is mainly geared towards exchanges and mining pools, but will be useful to any service provider adding Hush, such as a tipbot or exchange or mining pool.
Installing Hush from source
On Ubuntu/Linux systems, you can install Hush from source with these commands:
# install build depedencies
sudo apt-get install build-essential pkg-config libc6-dev m4 g++-multilib \
autoconf libtool ncurses-dev unzip git python zlib1g-dev wget \
bsdmainutils automake curl unzip nano libsodium-dev
git clone https://git.hush.is/hush/hush3.git
cd hush3
./build.sh -j4 #4 for use 4 cores
More details can be found here
Installing Hush from a binary
You can also install a binary from an official release
Terminology
We have a document that explains a lot of terminology here
Config changes for exchanges and pools
The default location on Linux for the HUSH config file is ~/.hush/HUSH3/HUSH3.conf
. This file will have a username and password for RPC
access, so don't show the contents to untrusted people. The legacy location used to be ~/.komodo/HUSH3/HUSH3.conf
. You can move the old legacy directory to the new location and it will be found and used.
An advanced feature exchanges & pools can use is called consolidation=1
which keeps wallets small and hence fast.
This feature will always make small transactions in the background, "consolidating" funds into very efficient amounts. This
makes future transactions fast by spending small amounts of time consolidating funds in the background. We note that turning on consolidation for an already very large wallet will have performance issues.
Here is an example config file for HUSH which is recommended for exchanges and mining pools:
rpcuser=someuser
rpcpassword=agoodpassword
rpcport=18031
server=1
txindex=1
rpcworkqueue=256
rpcallowip=127.0.0.1
rpcbind=127.0.0.1
# if you have servers with slow CPUs or very large existing wallets, comment out the next line
consolidation=1
How Shielded Addresses (zaddrs) Are Different
- Change from a zaddr goes back to itself! Not a different address, like in transparent addresses (taddrs).
- Making zaddr transactions are slower, taking a few seconds instead of a few milliseconds
- Shielded transactions do not show the sender address, receiver address or amounts on the public explorer. You will need to use local RPC methods such as
z_viewtransaction
to see those details - Shielded transactions are larger than transparent transactions, because more data is stored
- RPCs which work with zaddrs usually begin with
z_
such asz_listunspent
. The very commonsendmany
RPC is calledz_sendmany
for zaddrs - To generate a new zaddr use
z_getnewaddress
- To see the balances of all zaddrs use
z_getbalances
- Do not use
z_getbalance
for each zaddr in the wallet, that will be drastically slower
- Do not use
GUI wallets
Hush full node GUI wallet: SilentDragon
Hush lite wallet: SilentDragonLite
Android wallet (pairs with SilentDragon or SilentDragonLite): SilentDragonAndroid