What are the differences between Codius and Ethereum?


Dear Interledger community (leaders),

I came across Evan Schwartz’ outstanding “Interledger vs. Lightning” summary on this wonderful forum and was wondering if Evan, or anyone with the same skillset, could do the same for Codius vs. Ethereum. I believe this would be an excellent educational piece complementing the former.

Thanks to anyone for his/her input!


This post does some comparison of the two:

I’d say most of the differences stem from the fact that Ethereum is a blockchain and Codius is not, which results in Ethereum imposing more restrictions on network participants (miners and users):


  • Ethereum - Users spend ETH to pay for decentralized application (dapp) execution. Miners are likewise paid in ETH.
  • Codius - Users and hosts transact in the Interledger-enabled assets of their respective choice.

Programming Language

  • Ethereum - Dapps must be written in a programming language that compiles to Ethereum Virtual Machine bytecode, which enforces deterministic execution.
  • Codius - Application developers can choose any programming language that can run in a Docker container, allowing for non-deterministic execution.

Node selection

  • Ethereum - Dapps are stored and run by all nodes on the network (or shard)
  • Codius - Users can select the specific host(s) they want to run their application

The node selection distinction produces additional differences:


  • Ethereum - Users pay the amount determined by miners, based on network block size and transaction volume.
  • Codius - Users pay the amount determined by selected hosts, likely based on available supply of host resources. Users can decide how many hosts they want to use (and pay) based on application decentralization needs; they decide between cost & decentralization.

Censorship resistance

  • Ethereum - 51% attack by miners can block dapp execution.
  • Codius - Dependent of the set/topology of selected hosts for the particular application

Great post! We’re leveraging Codius hosts to run the Flare Network core servers as if it was a contract, and using the built-in Interledger integration to handle node remuneration instead of issuing a native token on our blockchain. Codius makes perfect sense for us to use because of its flexibility, and because Codius hosts can run under mutually adversarial conditions.