Browse Source

Link RPCs to their docs

main
Duke Leto 2 years ago
parent
commit
226a86b076
  1. 14
      README.md

14
README.md

@ -31,7 +31,7 @@ We have a document that explains a lot of terminology [here](https://git.hush.is
Every single Hush RPC is documented on the web at https://faq.hush.is/rpc/
For instance the docs for `z_listunspent` RPC are here: https://faq.hush.is/rpc/z_listunspent.html
For instance the docs for [z_listunspent](https://faq.hush.is/rpc/z_listunspent.html) RPC
# Config changes for exchanges and pools
@ -69,31 +69,31 @@ consolidation=1
* Occasionally process the output of `z_listunspent`, such as once per hour via cron
* If a certain zaddr has more than 30 zutxos (items in the array output of `z_listunspent`) it's likely they are mining to the exchange, or sending many small deposits
* You can then manually inspect these user accounts or send them a message to not mine to the exchange
* The `rescan` RPC in Hush 3.9.1 can be used to rescan from any block height, which minimizes downtime.
* The [rescan](https://faq.hush.is/rpc/rescan.html) RPC in Hush 3.9.1 can be used to rescan from any block height, which minimizes downtime.
* Example usage: `hush-cli rescan 123456`
* Another important way to minimize downtime is the use the `-keepnotewitnesscache` option to hushd, for instance:
* `hushd -keepnotewitnesscache -rescanheight 123456` will greatly speed up rescanning by only updating the Sapling zaddr witness cache instead of calculating it from scratch
* It's best to only send payouts a few times per day (such as 2 or 3) instead of when they are above a threshold.
* This will make pool wallets smaller and faster, miner wallets smaller and faster, and exchange wallets smaller and faster (because miners often mine directly to pools)
* For exchanges, you can limit how many withdrawals a user can do per day, such as 3, and show them how many they have left. This will help keep wallets small and fast.
* 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
* To see the balances of all zaddrs use [z_getbalances](https://faq.hush.is/rpc/z_getbalances.html)
* Do not use [z_getbalance](https://faq.hush.is/rpc/z_getbalance.html) for each zaddr in the wallet, that will be drastically slower
* HUSH has the unique feature of allowing a z2z transcation to spend from any zaddr with enough balance
* This means you do not need to hardcode a zaddr in the "from" part of a z_sendmany and/or move funds around from various zaddrs
* To use this feature, use a single lowercase "z" as the "from" in z_sendmany, such as: `z_sendmany "z" ...`
* When using this, funds will be spent from any zaddr that has enough funds
* Note that to use `z_sendmany` a single zaddr must have enough funds to make the transaction, funds from multiple zaddrs cannot be used. `z_mergetoaddress` can be used to spend funds from multiple zaddrs at one time.
* Note that to use `z_sendmany` a single zaddr must have enough funds to make the transaction, funds from multiple zaddrs cannot be used. [z_mergetoaddress](https://faq.hush.is/rpc/z_mergetoaddress.html) can be used to spend funds from multiple zaddrs at one time.
* Sometimes there are unconfirmed transactions waiting to be relayed to the network. The wallet will resend them periodically but this can be forced with the [resendwallettransactions](https://faq.hush.is/rpc/resendwallettransactions.html) RPC
# 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 at least a few seconds and potentially hundreds of seconds for very large transactions, 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` or `getrawtransaction txid 1` to see those details
* 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](https://faq.hush.is/rpc/z_viewtransaction.html) or [getrawtransaction txid 1](https://faq.hush.is/rpc/getrawtransaction.html) to see those details
* Shielded transactions are larger than transparent transactions, because more data is stored
* Very roughly, the smallest shielded transactions are about 1KB, some can be very large up to the transaction size limit of 200KB
* RPCs which work with zaddrs usually begin with `z_` such as `z_listunspent`. The very common `sendmany` RPC is called `z_sendmany` for zaddrs
* To generate a new zaddr use `z_getnewaddress`
* To generate a new zaddr use [z_getnewaddress](https://faq.hush.is/rpc/z_getnewaddress.html)
# GUI wallets

Loading…
Cancel
Save