Proof of Burn - Migrating Fiat to the Blockchain

Written by denispetrovcic | Published 2018/06/24
Tech Story Tags: blockchain | ethereum | cryptocurrency | fiat-to-the-blockchain | proof-of-burn

TLDRvia the TL;DR App

While the United States celebrated the glorious Fourth of July, a new ERC20 token has come to existence. eUSD is certainly not the first stablecoin attempt out there, but has a fair chance to become the last — it’s success rests in the hands of the crypto community.

It’s no coincidence the new dollar-pegged stablecoin has been quietly deployed on the 242nd independence day. The need to bring fiat currency into the blockchain space is BIG and many have been making loads of money providing solutions that fail to fulfill blockchain’s fundamental vision — giving people control over wealth without central authority. The fact is, most cryptocurrency users don’t like the idea of going back to traditional banking systems, and the lack of an open-source, reliable and transparent on-chain fiat solution anyone can trust and understand certainly doesn’t help in this regard.

So we decided to create one — eFIAT.

eFIAT protocol

eFIAT is a not-for-profit, fully transparent, publicly auditable protocol to migrate USD, EUR, CHF, GBP, JPY and other world currencies to the Ethereum blockchain — no banks, no escrow, no reserves, just code!

Currently the eFIAT protocol provides USD currency migration to the Ethereum blockchain. The migrated currency is an ERC20 token named eUSD.

In the future migration protocols for other fiat currencies such as EUR, CHF, GBP, JPY, CNY might be created, but also for other blockchains like EOS, NEO, Stellar and others. We are also considering creating contracts to burn other tokens with low market liquidity and enable investors to cut their loses and exchange them to eUSD.

Unlike other fiat- or crypto-backed stablecoins, eUSD relies on Proof of Burn and can only be created by burning Ether at market value.

Because Ether is essentially bought with USD (whether its miners paying for electricity bills or the regular Joe buying it on exchanges), the burning of Ether can be easily regarded as burning of US Dollars, where Ether serves only as the medium of value transfer and verifiable proof that actual value has been permanently migrated and not replicated.

eUSD can never be used to redeem any Ether burned in the eUSD creation process, meaning eUSD is actual US Dollars represented in ERC20 token format.

Before we go on to explain the details of eUSD and how its creation process works, assume the following to be true:

  • eUSD is always worth $1 each
  • eUSD can be freely traded like any other ERC20 token
  • anyone with an Ethereum wallet can own, accept, and transfer eUSD
  • eUSD can be exchanged without any middleman
  • no individual person or company has control over eUSD
  • no government or authority can shut it down

This enables several features that were previously impossible. US Dollars can now be transferred instantly, across borders, and with almost no fees (ETH gas only). Merchants can accept eUSD with all the benefits of blockchain technology without the enormous risk of cryptocurrency volatility. With eUSD merchants can process payments directly without middleman, as if they were receiving cash. There is no need for a third-party to process payments or temporarily hold funds — the blockchain itself can handle everything. No one can shut off the merchant’s ability to receive payment. Similarly, customers no longer have to worry about spending a cryptocurrency that consistently fluctuates in value and needs careful exchange rate considerations prior spending it.

Finally, some may ask why we need something like eUSD at all, when we have a dollar-backed coin like Tether? Tether, and any other centralized stablecoin provider, can be quickly shutdown by banks or governments, needs to be highly trusted and can hardly prove its trustworthiness. Indeed, there is an enormous amount of speculation that Tether is operating fraudulently. With eUSD, as a true decentralized stablecoin, you only need to trust the blockchain!

eUSD issuance

The ONLY way to issue new eUSD is to send Ether to the provided eUSD smart contract. Ether will get burned and the newly created eUSD will be minted to the sender’s Ethereum wallet, increasing circulating eUSD supply.

Burning Ether at market value ensures new eUSD is always created at a valuation of $1. The eUSD smart contract retrieves live ETHUSD pricing data from a list of sources and determines the exchange rate at which new eUSD tokens will be created. The protocol checks multiple sources to provide pricing data to reduce risk in case any one source is compromised.

How it works:

  1. anyone can receive eUSD by making a transaction to 0x8F46325B00536da3714Eb8646B10ED653D5b17f2
  2. the smart contract checks the current ETHUSD market price using an oracle to verify multiple sources
  3. it then uses the returned value to calculate how much eUSD needs to be returned to the sender
  4. received ETH is burned (i.e. locked forever) in the LockEther smart contract

Example:

  1. You make a transaction of 10 ETH,
  2. the current ETHUSD market price is 534 USD,
  3. you receives 10 x 534 USD = 5340 eUSD tokens,
  4. while the 10 ETH is burned in the process.

Burned ETH can always be verified here, while the creation process is fully transparent and auditable on Etherscan

I want some eUSD, what do I need to do?

We have currently applied eUSD to get listed on exchanges. In the meantime you can do a simple ETH transaction to become one of the first eUSD holders.

Here is how:

  1. Use an Ethereum wallet (MyEtherWallet, MyCrypto, Metamask, Mist…)
  2. Set TO address: 0x8F46325B00536da3714Eb8646B10ED653D5b17f2
  3. Set the desired amount of Ether (minimum is 0.02 ETH)
  4. Set transaction gas to 300,000 and gas price to 50 Gwei (depending on network congestion, a lower gas price might also work — check Gastracker on Etherscan for current gas price recommendations)
  5. Send the transaction and wait for your eUSD! (note that it might take some time for your eUSD to appear in your wallet, as Ethereum network congestions are very high lately)

NOTE: By sending Ether to the above address you will receive eUSD in return. The received eUSD amount is based on ETHUSD exchange rate at time of transaction.

Although the creation process is as simple as sending ETH to a smart contract address, most users will never need to create eUSD as they will most likely acquire it on exchanges listing eUSD.

ETHUSD exchange rate

Since this information is external to the blockchain, the eUSD protocol must implement what is known as an oracle system. Oracles serve to push outside information to a blockchain smart contract. While this can be implemented in several ways, we foresee the eFIAT protocol’s evolving through three development phases:

1. Trusted feed: Securely bootstrapping the protocol

The simplest approach is to have a single feed that uploads the real-world exchange rate to the blockchain, say from Coinbase, Kraken, or any other trustworthy source with a reputable track record. This is obviously a point of centralization with single point of failure risk. To mitigate risk, the eFIAT protocol works with multiple sources to determine the correct exchange rate. The protocol calculates the percent variance between Benchmark value and Comparison value. If the variance between pricing values is higher then 1.5%, it looks for a new Comparison value. If the variance is within limits it confirms the first price, while if higher, it looks for another value from the next source. To accept an exchange rate at least two values need to be within the given variance threshold.

Currently used trusted feed sources:

  • Coinbase
  • Etherscan
  • Kraken
  • Cryptocompare
  • Bittrex
  • Poloniex

2. Delegated decentralized feed: moving towards decentralization

As adoption of eUSD grows, a semi-decentralized approach where a small group of feed uploaders is selected by vote from holders of eUSD might be adopted. Given this set of feed uploaders, the system can choose the median exchange rate from them at fixed intervals. If any bad actor is consistently identified as trying to corrupt the feed, they can be voted out of the system by eUSD-holders who have an incentive to preserve the system’s long-term value. This captures most of the benefits of decentralization. For example, a similar scheme called Delegated Proof of Stake (DPoS) is used in some blockchain protocols to generate entire blocks.

3. Schelling point scheme: fully decentralized price feed

The ultimate goal is to update eUSD to a fully decentralized protocol. A possible approach is to use a Schelling point scheme to determine the exchange rate. A Schelling point scheme operates something like this:

  • an exchange rate time interval is determined (e.g. 5 minutes),
  • anyone on the network can vote on what they think the average exchange rate was in the given time interval,
  • the votes are aggregated and weighted by the number of eUSD possessed by each voter,
  • the weighted median is taken as the true exchange rate,
  • those who voted between the 25th and 75th percentiles are rewarded with a preset amount of ETH,
  • the ETH reward is put aside in the eUSD creation process and encourages voting with the consensus.

The trusted feed and delegated decentralized feed approaches are easy ways to securely bootstrap the protocol, with some sacrifices to decentralization. The Schelling point scheme is more novel, but can make the protocol more robust by properly engineering its incentives.

Either way, all of these implementations are valid alternatives for providing the eUSD protocol with a feed of ETHUSD prices.

eUSD stability

Ensuring the value of eUSD is maintained comes down to simple economic incentives for arbitrage providers.

When demand for eUSD is high driving the price above $1, anyone can create eUSD by burning Ether through the eUSD smart contract, gain on the spread by selling it on an exchange, subsequently driving prices back to $1.

eUSD being worth over $1 simply encourages more eUSD to be created.

In the opposite situation, when demand for eUSD is low and prices go below $1, market makers can seize the opportunity to gain on the spread by acquiring eUSD and holding it.

Holding eUSD effectively decreases its market supply, pushing the price back towards $1 as demand raises.

Proof of Burn

“Burning” means sending a tranche of cryptocurrency like Ether to an address or smart contract which is unspendable.

The process has many times been used to decrease circulating supplies of a token or coin with a fixed supply. Proof of Burn is also sometimes used as a tool for managing an orderly transition from one cryptocurrency (e.g. “oldcoin”) to another (“newcoin”). Analogously, the eFIAT system manages the orderly transition from a fiat currency like US Dollars to a digital token like eUSD.

All ETH burned in the eUSD cration process is held in a fully auditable tamper proof smart contract and can never be retrieved nor sent to another address. The smart contract address can be viewed on Etherscan

Other attempts for on-chain fiat

To fully recognize the value of the eFIAT protocol that uses Proof of Burn to create eUSD, it is important to understand other currently available methodologies for stablecoins found on the market today. Below, we enumerate several stablecoin attempts that we are aware of. We describe the basic principles of how they work, list the pros and cons, and provide a few examples that utilize it.

Currently three methods how fiat like USD is copied to a blockchain as tokens:

1. Fiat-backed

The blockchain-based “USD-token” is backed 1:1 by fiat holdings on an escrow or private bank account. When new fiat is deposited on the bank account, the same amount of tokens is issued into circulation. When fiat is withdrawn, tokens are burned and taken out of circulation.

Pros:

  • easy to understand
  • simple to convert from fiat to token and back

Cons:

  • highly centralized
  • high possibility for fraud
  • token issuance (i.e. printing of money) can be easily manipulated
  • fiat reserves held in escrow need regular audits by trustworthy 3rd party companies
  • such audits are very costly
  • reserves can be seized
  • highly bank dependant
  • risk that the company taking fiat reserves is shut down
  • single point of failure
  • can never become independent

Examples:

  • Tether
  • TrueUSD
  • Stably

2. Crypto-backed

The blockchain-based token is pegged to a fiat currency like e.g. USD through an elaborate smart contract system backed by Ether holdings. Simply put, it is a loan against Ether. The “USD-token” can be created by any advanced user through a decentralized application, where users can take loans out in “USD-tokens” against their ETH holdings. When the “USD-token” is worth above $1, mechanisms work to decrease the price, when it is worth below $1, mechanisms work to increase the price. The rational actors that take part in these mechanisms do so because they earn money anytime the “USD-token” is not perfectly worth $1.

Pros:

  • decentralized
  • auditable
  • community driven incentive

Cons:

  • complex mechanism for maintaining price stability
  • difficult to understand
  • hard to scale
  • risk of crypto reserves suffering a black swan crash
  • counterparty risk

Examples:

  • MakerDAO
  • Bitshares

3. Seigniorage Shares

Seigniorage Shares is a paper written in late 2014, and last updated in April 2015, that introduces the idea of expanding and contracting coin supply to maintain a peg. The system’s philosophy of adjusting coin supply to match coin demand mirrors that used by central banks around the world. In the Seigniorage Shares system, when coin price drops, “shares” are auctioned off for coins, destroying coins in the process. When coin price rises, coins are auctioned off for shares, creating coins in the process.

Pros:

  • transparent
  • auditable
  • supply control

Cons:

  • hard to price a Seigniorage Share
  • maintains a peg by auctioning coins for shares and shares for coins
  • very important that investors feel comfortable pricing shares
  • no recovery from death spirals
  • if share price hits 0, the system can no longer contract
  • when coin demand drops, the Seigniorage Shares system creates more and more shares, causing share price to fall
  • share price can be restored only if coin demand is restored

Examples:

  • Basis
  • Carbon
  • Kowala

An open, not-for-profit, fiat migration protocol for the crypto community

eFIAT is a system created to migrate fiat currencies onto the blockchain, not copy them. By design it does not generate any direct profits to its creators. However, eUSD’s conceptual simplicity has the potential to gain an important role and adoption throughout the crypto community, as it provides a transparent and auditable on-chain fiat migration process.

To help eUSD on its road to adoption — spread the word, tell your crypto friends, tweet about it, discuss it on forums, ask to list it on exchanges, use it for payments. The eFIAT protocol offers all of us to finally have a fair, simple and transparent “on-chain fiat” solution we can trust.

Let’s put fiat on the block!

eUSD is certainly not the first stablecoin attempt out there, but may as well be the last — it’s success rests in the hands of the crypto community.

How to help eUSD gain adoption?

➡️ Ask your geek friend(s) to check our Github!➡️ Convert some ETH at 0x8f46325b00536da3714eb8646b10ed653d5b17f2️➡️ Tweet about eUSD and make it go viral! #eUSD #eFIAT➡️ Clap the s**t out of this article (like 50x)!➡️ Introduce eUSD to big exchanges and ask if they could list it (for free).➡️ Accept eUSD instead of Ether for your ICO.➡️ Translate this article into a different language (for free).➡️ Sell some of your USDT for ETH and convert it to eUSD.➡️ Write an article about it (for free).➡️ Provide market making services.➡️ Buy and sell eUSD using arbitrage.


Published by HackerNoon on 2018/06/24