0x (ZRX) is a protocol that allows for decentralized exchange of tokens and assets issued on the Ethereum blockchain. Developers can use 0x to create their own applications for cryptocurrency exchange with a wide range of functions, for example, the ability to conduct over-the-counter trading of tokens issued on the Ethereum blockchain. The ZRX tokens are used to implement decentralized governance of the 0x protocol, which allows users to vote on improvements to the underlying smart contracts.