Elixir's underlying DPoS infrastructure is decentralized and high-throughput. The network reaches consensus for orders placed on an exchange. The infrastructure is similar to Arbitrum's security model, with fraud proofs posted on-chain.
Exchange feeds hold read-only credentials for each exchange, and individually subscribe to a single update stream, broadcasting that data to the data aggregators. For more information about how Elixir connects to the central limit orderbooks on exchanges, please take a look at the "Exchange Orderbook Connections" sub-section.
The data aggregator collects data from multiple exchange feeds and combines them into a deterministic data frame, signs them, and broadcasts them to the validators and auditors. This piece of the Elixir tech stack enables validators to act upon accurate data related from the exchange feeds.
Validator Network (DPoS)
Elixir's validator network operates off of a decentralized proof of stake system with 66% consensus required, which is enforced at the relay node. End users delegate their stake to validators, and the top-staked validators will receive the largest portion of rewards.
Relay nodes hold trading keys for individual exchanges and tally order proposal frames from the individual validators. After a the order proposal has expired, it is passed to an auditor to verify correctness. Long term, API keys will be protected via SGX + Shamir's Secret Sharing within these nodes.
Dispute Resolution (Auditor + Controller Nodes)
The dispute resolution layer (comprised of the Auditor, Controller, and Provable.xyz infrastructure) works to ensure that the network is acting honestly, and to resolve any conflicts should they arise. Specifically, this layer ensures that the validators are running the market making algorithm, with properly set parameters based on the initial guidance. Furthermore, auditors also work to incentivize honest behavior from validators via a bounty, while penalizing dishonesty.
Provable is invoked on-chain by our controller smart contract to execute and organize the algorithm execution. Upon completed execution, the result is provided on-chain via a callback to the controller smart contract, along with a cryptographic proof.