mirror of https://github.com/zcash/zips.git
Improvements to Requirements language from review
Co-authored-by: Daira-Emma Hopwood <daira@jacaranda.org>
This commit is contained in:
parent
beeaa53342
commit
0d33eee0a2
31
zip-0315.rst
31
zip-0315.rst
|
@ -38,6 +38,12 @@ Transaction output (TXO)
|
|||
An output (transparent coin or shielded note) of a transaction on the consensus
|
||||
block chain or in the mempool visible to a wallet.
|
||||
|
||||
TODO: Add informal definitions of:
|
||||
* known-spendable and confirmed-spendable TXOs;
|
||||
* trusted and untrusted TXOs.
|
||||
|
||||
These should forward-reference the specification section with the formal definitions.
|
||||
|
||||
|
||||
Motivation
|
||||
==========
|
||||
|
@ -88,24 +94,29 @@ share some of their keys.
|
|||
Prompt accessibility of funds
|
||||
-----------------------------
|
||||
|
||||
Wallets need to take account of two concerns:
|
||||
Wallets need to take account of two main concerns with respect to
|
||||
accessibility of funds:
|
||||
|
||||
* enabling funds to be spent as quickly as possible to reduce latency;
|
||||
* waiting long enough before spending TXOs to ensure that the
|
||||
confirmed-spendable balance is not overestimated, and so can be trusted
|
||||
by the user.
|
||||
* ensuring that the confirmed-spendable balance is not overestimated,
|
||||
and so can be trusted by the user.
|
||||
|
||||
These concerns affect the way that balances should be computed, which
|
||||
notes are selected for spending, and how the wallet should ensure that
|
||||
sufficient notes are available to cover multiple spends within a short
|
||||
period.
|
||||
|
||||
To support this we define two kinds of TXOs:
|
||||
|
||||
* A trusted TXO is a TXO received from a party where the wallet trusts a
|
||||
double-spend not to occur, e.g. TXOs created by the wallet's internal TXO
|
||||
handling.
|
||||
* A trusted TXO is a TXO received from a party where the wallet trusts that
|
||||
it will remain mined in its original transaction, such as TXOs created by
|
||||
the wallet's internal TXO handling.
|
||||
* An untrusted TXO is a TXO received by the wallet that is not trusted.
|
||||
|
||||
|
||||
Wallets can then require that untrusted TXOs need more confirmations before
|
||||
they become spendable than trusted TXOs. This provides an improved trade-off
|
||||
between latency on the one hand, and reliability and safety on the other.
|
||||
they become confirmed-spendable than trusted TXOs. This provides an improved
|
||||
trade-off between latency on the one hand, and reliability and safety on the
|
||||
other.
|
||||
|
||||
|
||||
Specification
|
||||
|
|
Loading…
Reference in New Issue