-
Notifications
You must be signed in to change notification settings - Fork 171
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #437 from ergoplatform/i392
Update fee and economy model
- Loading branch information
Showing
2 changed files
with
42 additions
and
18 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
\section{Economic survivability} | ||
|
||
We outline following two properties required for long-term survivability of the chain: | ||
|
||
\begin{itemize} | ||
\item{} Coins with lost keys should be returned into circulation. | ||
Otherwise, after the end of the initial coins emission period, amount of the coins | ||
in the circulation always decrease and eventually reach zero. | ||
\item{} Nothing should be kept in the state forever and for free. | ||
Otherwise, the size of the state is always increasing, thus reducing clients performance. | ||
\end{itemize} | ||
|
||
To achieve this, we propose the following modifications to the consensus rules. | ||
Register $R2$ of the box will contain tuple $(tx\_id, out\_num, | ||
last\_height)$. $last\_height$ field is used to determine the block height | ||
at the moment of transaction generation. Transaction can only be put in the | ||
block of height $h$ if for every created box $R2.last\_height < h$. | ||
|
||
Once the subsidized period for the box ends (that is, | ||
$current\_block\_height \ge R2.last\_height + SP$), anyone (presumably a miner) can | ||
create the new box with the exactly the same content (including the guarding | ||
script) except the monetary value and $R2$ content. The monetary value is | ||
reduced by $K \cdot B$, where $B$ is the box size and $K$ is the storage cost of one byte. | ||
Thus, $K \cdot B$ coins are to be paid to the miner. | ||
If box value is less that $K \cdot B$, all box content including tokens goes to miner. | ||
$R2.tx\_id$ and $R2.out\_num$ content of created box should contain correct transaction id | ||
and index, while $R2.last\_height$ should be set to $R2.last\_height$ of spending box | ||
plus $SP$, to ensure that subsidized period starts over. | ||
|
||
We propose the following concrete parameters: | ||
\begin{itemize} | ||
\item{} $K$ - cost of storage of 1 byte of data in a State for 1 block. | ||
Should be determined by miner votes, $10^{-6} (Ergo/byte)$ by default. | ||
\item{} $SP$ - number of blocks, box can be stored in a State for free untouched. | ||
Since Ergo have tokens as a first-class citizens, it might be possible that tokens value | ||
sufficiently exceed Ergo value in a box, thus $SP$ should be big enough to protect users | ||
that only keep tokens in their boxes. | ||
However, $SP$ should not exceed emission length to reward miners. | ||
It is predefined $SP = 1051200 = 4$ years. | ||
\end{itemize} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters