Motivation
Transaction fees for blockchain networks can be very simple constructions for sub-optimal social and economic outcomes but transaction fees become some of the most difficult technical components if implemented in a sophisticated and wholistic manner.
For example, if transaction fees are expressed as a fixed fraction of the base coin, then volatility in the coin price is felt as volatility in the transaction fee. Thus it would be of importance for a utility coin to set the transaction fee against some FIAT currency such as the USD, or some other pricing currency or basket until such time as the digital GDP of the currency allows the TX fee to couple to its base coin price.
Thus a “don’t trust, verify” exchange rate oracle could reduce the volatility of the TX fee and system users could establish a FIAT based OPEX budget. Two technologies would be needed for a full solution. A data input sanitizer and a UTXO price calculator. PoCs for both are found in UTXOracle and BITVM.
Next one must consider which nodes and actors in the network need a TX fee component such as relay nodes, core developers, miners and also to consider things like the Burn Policy.
In this AIP we consider the porting of UTXOracle into our environment only, but it is important to bare in mind the higher level usage and need.
Vanilla UTXOracle
UTXOracle was developed as a Python script by Steve Jeffress for the BTC main-net. His project and visualizers can be found here:
UTXO.live
His python script here:
UTXOracle.py
A generally politically charged podcast can be found here. Jump to 1:37:55. They interview Steve on some of the thinking about why UTXOracle is the ONLY price oracle that should be used and when it differs from other prices and why.
The Café Bitcoin Podcast