Skip to content

Commit

Permalink
Merge pull request #915 from ShieldedLabs/zip-235-nsm-tx-fees
Browse files Browse the repository at this point in the history
[ZIP 235] Burn 60% Transaction Fees
  • Loading branch information
nuttycom authored Nov 6, 2024
2 parents 5c3711f + 0917899 commit 284554c
Showing 1 changed file with 151 additions and 0 deletions.
151 changes: 151 additions & 0 deletions zips/zip-0235.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,151 @@
```
ZIP: 235
Title: Burn 60% of Transaction Fees
Owners: Jason McGee <[email protected]>
Zooko Wilcox <[email protected]>
Tomek Piotrowski <[email protected]>
Mariusz Pilarek <[email protected]>
Paul Dann <[email protected]>
Original-Authors: Nathan Wilcox
Credits:
Status: Draft
Category: Ecosystem
Created: 2023-09-21
License: BSD-2-Clause
```

# Terminology

The key words “MUST”, “SHOULD”, “SHOULD NOT”, “MAY”, “RECOMMENDED”, “OPTIONAL”,
and “REQUIRED” in this document are to be interpreted as described in RFC 2119.
[1]

The term “network upgrade” in this document is to be interpreted as described in
ZIP 200. [2]

"Block Subsidy” - the algorithmic issuance of ZEC on block creation. Part of the
consensus rules. Split between the miner and the Dev Fund. Also known as Block
Reward.

"Issuance" - The method by which ZEC becomes available for circulation on the
network.

“We” - the ZIP authors, owners listed in the above front matter

# Abstract

We propose to burn 60% of transaction fees, while the remaining 40% be directed
as before, providing a deflationary effect, and building the groundwork for
long-term support of the Zcash network via the new block subsidy rules proposed
by ZIP-234.

# Motivation

ZIP-233 ("Network Sustainability Mechanism: Burning") describes a method by
which ZEC can be burned to support network sustainability.

By introducing a requirement that a certain proportion of transaction fees be
burned, we ensure that ZEC will be removed from circulating supply to contribute
to the long-term sustainability of the network as described below:

## Benefits to the Network

1. **Network Sustainability**: This mechanism involves temporarily reducing the
supply of ZEC, similar to asset burning in Ethereum’s EIP-1559, but with
long-term sustainability benefits, as the burned funds effectively boost
future mining rewards, making it an attractive option for current and future
Zcash users.
2. **Incentivizing Transaction Inclusion**: By maintaining a 40% share of
transaction fees for miners, we continue incentivizing miners to prioritize
including transactions in their blocks. This helps ensure the continued
efficient processing of transactions and supports a robust and responsive
network.
3. **Aligning Interests:** Burning transaction fees aligns the interests
of miners with the long-term health of the network, incentivizing them
to prioritize security and efficiency. As miners focus on maintaining a
robust network, overall adoption and usage can increase, leading to higher
transaction volumes in the long run. This structure discourages short-term
profit-seeking behaviors, as miners benefit more from a stable and thriving
ecosystem than from engaging in malicious activities that could undermine the
network's reputation and security.
4. **Future-Proofing the Network**: Burning a portion of transaction fees
is a forward-looking approach that prepares the Zcash network for future
challenges and opportunities. It establishes a financial buffer that can be
instrumental in addressing unforeseen issues and seizing strategic advantages
as the Zcash ecosystem evolves.

# Requirements

* For each block, at least 60% (rounded down) of the total fees are to be
burned.
* No restrictions are placed on the destination of the remaining proportion of
fees.
* Any fractions are rounded in favor of the miner.

# Specification

## Consensus Rule Changes

For a given block, the coinbase transaction MUST have a `burnAmount` that is
greater than or equal to `floor(transactionFees * 6 / 10)`.

Previous transaction versions are not supported for coinbase transactions, due
to there being no explicit mechanism to burn the required funds.

# Deployment

The implementation of this ZIP MUST be deployed at the same time or after
ZIP-233 ("NSM: Burning"), and ZIP-234 ("NSM: Issuance Smoothing").

# Rationale

We believe the proposed changes to be relatively low-impact in terms of
implementation and protocol changes. Additionally, transaction fees are
currently small enough that the reduction in miner fees is unlikely to be a
concern.

## Estimated impact on miners

Over 100,000 blocks starting at block 2235515, there were 316130 transactions.
60608 of them are categorized as 'sandblasting' transactions. The remaining
transactions have an average of 5.46 logical actions (see ZIP-317 [4]).

The total fees paid to miners from those transactions, assuming the ZIP-317
regime, would be 87.86 ZEC. 100,000 blocks is approximately 3 months of blocks.
Extrapolating to a year, we would expect 351.44 ZEC in fees paid to miners over
a year.

If 60% of these fees burned, that would be 210.864 ZEC per year. [5]

## Considerations for the Future

If transaction fees were to increase, further modifications can easily be
proposed to alter the 60%/40% split. Finding the optimal fee split may require
an iterative approach involving adjustments based on real-world data and network
dynamics.

Looking further into the future, there may come a time when the transaction fees
become greater than the block subsidy issuance. At that time we may need to
reconsider the 60/40 split. However, this will likely not be the case for the
next 8-10 years due to forecasts based on issuance models and network traffic.

Further ZIPs may be proposed to burn ZEC in various ways to support network
sustainability, including but not limited to:

- ZSA fees
- Fees and donations specific to decentralized applications
- “Storage fees” for any future data availability
- Cross-chain bridge usage / Cross-chain messaging
- Note sorting micro-transactional fees

# References

[1] RFC-2119: https://datatracker.ietf.org/doc/html/rfc2119

[2] ZIP 200: [Network Upgrade Mechanism](zip-0200.rst)

[3] ZIP 233: [Establish the Zcash Sustainability Fund on the Protocol Level](zip-0233.md)

[4] ZIP 317: [Proportional Transfer Fee Mechanism](zip-0317.rst)

[5] https://github.com/eigerco/zsf-fee-estimator

0 comments on commit 284554c

Please sign in to comment.