Skip to content
thellimist /bitses_public
  • Watch

    Notifications

    Get push notifications on iOS or Android.
Open in github.dev
Permalink
master
Switch branches/tags
Go to file
@demiculus
Latest commit 84894da on Jul 1, 2018 History
1 contributor

Users who have contributed to this file

Loading
39 lines (25 sloc) 2.77 KB

0x

An open protocol for decentralized exchange on the Ethereum blockchain

Technology

0x Protocol provides 0 fees allowing Relayers(exchanges) to be built on top of it.

How it works

Maker is order creator.
Taker is order filler.

  1. Maker approves the decentralized exchange (DEX) contract to access their balance of Token A2.
  2. Maker creates an order to exchange Token A for Token B, specifying a desired exchange rate, expiration time (beyond which the order cannot be filled), and signs the order with their private key.
  3. Maker broadcasts the order over any arbitrary communication medium.
  4. Taker intercepts the order and decides that they would like to fill it.
  5. Taker approves the DEX contract to access their balance of Token B.
  6. Taker submits the makers signed order to the DEX contract.
  7. The DEX contract authenticates makers signature, verifies that the order has not expired, verifies that the order has not already been filled, then transfers tokens between the two parties at the specified exchange rate.

The figure explains how this will work by sharing the data via email, message (or other communication channels) directly to the seller. The second (and important) way 0x works is through a Relayer which is an exchange owner who acts as a middle man. Relayers own an exchange and adds the Makers request to their order book. If the transaction goes smootly in step 7 gives the Relayer the fee the was agreed upon with the Maker.

Protocol is safe including side chain interactions with the Relayer. The code is really simple (100LoC) and the Gas cost is really low (~90k gas).

ZRX Token Value

Token gets value from:

  1. Paying Relayers Fee
  2. Governce of the protocol

For case #1, this can be handled by ETH alone. There is no need for ZRX token. For case #2, the community still couldn't figure out how to do this. Current implementation is through a Proxy where people can vote to change the protocol scripts dynamically. It works in a simple way but it doesn't give the value we'd be looking for a token.

Currently there is a discussion where adding "Coin Burn" or "Staking" which will allow Relayers to commincate with each other. The market incentives are still really elementary however the community is working on it to figure out how the market dynamics will work.

Future Projections

If the community adds coin staking/burning or a better way to give the coin a value then there would be incentive to hold the coin. Ultimately, the vision for 0x is to be a blockchain-agnostic platform that facilitates cross-chain token exchange. Having a governance system is paramount to support this evolution.