It is a common observation that as the world is moving towards complete digitalization, everything that has value will be tokenized. Tokens are unique digital assets that a person can own and store in a digital wallet, and in the future, someone’s house verification will be a token stored in an online wallet instead of a paper.
We are already seeing fiat currencies and securities getting tokenized. For example, US Dollar is now available on digital tokens called stablecoins like Tether (USDT), TrueUSD, and USDC. According to an estimate, there is a total of $256 trillion worth of assets in the world, everything from property to art, to stocks to oil. With the help of blockchain technology, they all can be tokenized.
The idea of tokens began to take shape during the 2017/2018 ICO boom. At that same time, a team believed that there will be thousands of Ethereum tokens in the future and there will be a need to trustingly and efficiently exchange them. That team, led by Will Warren and Amir Bandeali, created a protocol on Ethereum with a tokenized future in mind. The protocol is named 0x Protocol. In the following text, Crypto Economy will provide you a brief overview of 0x Protocol.
What Is 0x Protocol?
0x whitepaper describes 0x as an open protocol for decentralized exchange on the Ethereum blockchain. The project is the brainchild of Will Warren, co-founder and current CEO, and Amir Bandeali, co-founder and current CTO of 0x. The protocol is developed by 0x Labs and the team is based in San Francisco, California.
0x Protocol aims at powering the decentralized exchange where all kinds of assets, stocks, currencies, precious metals, could be traded publicly on the blockchain as tokens. It uses Ethereum smart contracts for anyone in the world to operate a decentralized exchange. With 0x Protocol, 0x Labs is creating an open-source infrastructure that will enable frictionless peer to peer (P2P) exchange of tokens.
0x is fundamentally a network protocol used to facilitate signaling between buyers and sellers rather than a crypto-economic protocol. It is a publically accessible smart contract that any dApp that incorporates exchange functionality can hook into.
What is Inside 0x?
0x refers to their model as an “off-chain order relay with on-chain settlement” that combines the efficiency of state channels with the fast settlement of on-chain order books.
0x is implemented with Ethereum smart contracts. The main idea for 0x is to be used by other projects as a back-end transaction protocol. Thus, the 0x protocol itself is application-agnostic and helps decouple the transaction protocol layer from the application layer.
The meaning of “off-chain order relay with on-chain settlement” means that order books are hosted and maintained by separate entities called Relayers. Only the transactions are settled on the Ethereum network.
DEX Smart Contract:
The 0x’s decentralized exchange (DEX) contract processes the exchange on the blockchain. According to the whitepaper, the entire 0x DEX contract is approximately 100 lines of code and it costs approximately 90k gas to fill an order. 0x DEX serves two relatively simple functions: fill and cancel.
Makers and Takers:
In 0x, the one who creates order is called “Maker” and the person who fills that order is called “Taker.”
By combing these things, one can explain the 0x workflow as:
- Maker approves the decentralized exchange (DEX) contract to access his balance of token.
- Maker creates an order to exchange token A for token B, specifying the desired exchange rate, expiration time, and signs the order with his private key.
- Maker sends the order directly to the taker or broadcast order to Relayers.
- The taker intercepts the order.
- Taker approves the DEX contract to access their balance of token.
- Taker submits the maker’s signed order to the DEX contract.
- Finally, The DEX contract authenticates the maker’s 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.
How Does 0x Protocol Work?
Tokens on 0x Protocol are traded in two types of order: Point-to-Point order and Broadcast orders.
These trade orders are just like peer-to-peer messaging that allows two parties to directly exchange tokens with each other using just about any communication medium they prefer to relay messages.
In 0x Protocol, if a maker wants to trade Etherem token with a taker whom he knows to trade with, he can simply send a 0x order via instant message or email. A taker just has to accept the trade and trade will be executed. According to the 0x whitepaper, these orders are called point-to-point orders.
0x messages are similar to the SWIFT messaging system that banks use to communicate with each other about money transfers. This P2P exchange of tokens is powered by a consumer-facing product called 0x OTC. Since 0x order messages are relayed off-chain, the link can be sent through any method the person issuing the order prefers, ranging from email to Twitter to even writing it down on a piece of paper.
Each point-to-point order message contains order parameters and an associated signature. Order parameters are concatenated and hashed to 32 bytes via the Keccak SHA3 function. The order originator signs the order hash with their private key to produce an ECDSA signature.
Broadcast orders are used when there are no direct takers. In broadcast orders, buyers and sellers post orders on decentralized marketplaces called Relayers in 0x Protocol.
If a direct taker is not available, Makers can visit 0x Relayers. Relayers are marketplaces that connect buyers and sellers. On Relayers, anyone can place their buy or sell orders. Every order on these marketplaces contains everything needed to make a transaction happen. When a taker finds an order he likes, he just has to confirm it with his crypto wallet and 0x Protocol securely completes the trade.
Several kinds of Relayer exist in the 0x ecosystem, each with their different kind of marketplace. Any developer can create its Relayer by using 0x’s open-source software. The benefit of these relayers is that they can serve an endless number of communities. For example, a music fan can create a marketplace for concert tickets or a game relayer can create a marketplace for in-game items. In this way, the 0x team hopes to create millions of unique global marketplaces, thus enabling a truly global economy. Thanks to blockchain technology, this is now possible to create a more secure and efficient global economy.
Relayers host and maintain an off-chain order book in exchange for transaction fees.
0x (ZRX) Token
ZRX is a native token of 0x Protocol. It is primarily a governance token but is also used for relayers to charge fees for hosting broadcast orders. Transaction fees are moved from the Maker and/or Taker to the Relayer upon settlement of a trade.
Token holders can also participate in decentralized governance where they can vote on upgrade proposals. In October of 2019, the team released Version 3.0 of 0x that also featured a new ZRX staking mechanism.
In ZRX Staking, market makers can create staking pools. Market makers in 0x are a special category of traders that provide a significant amount of orders in 0x orderbooks. Their function is to make it possible to have liquid markets with tight spreads between bid and ask, and low slippage when executing large orders.
Market makers are entitled to receive rewards in exchange for their activity, which is crucial for the good functioning of 0x markets. To collect these rewards, they need to stake ZRX tokens. To do so, they create staking pools, which allow them to stake their ZRX and attract other tokenholders’ ZRX, provided that they share a portion of rewards with them.
ZRX staking mechanism gives market makers monetary rewards in ether and additional ZRX voting power for providing liquidity.