Ethereum is often mentioned in the same breath as Bitcoin, but it’s rather different. Bitcoin is a cryptocurrency and decentralized payment network that allows Bitcoin tokens to be transferred between users.The Ethereum project has larger goals. As the Ethereum website puts it, “Ethereum is a decentralized platform that runs smart contracts.” These contracts run on the “Ethereum Virtual Machine,” a distributed computing network made up of all the devices running Ethereum nodes.
The “decentralized platform” part means that anyone can set up and run an Ethereum node, the same way anyone can run a Bitcoin node. Anyone who wants to run a “smart contract” on the nodes has to pay the operators of those nodes in Ether, which is a cryptocurrency token tied to Ethereum. Thus, people who run Ether nodes provide computing power and are paid in Ether, in a similar way to how people who run Bitcoin nodes provide hashing power and are paid in Bitcoin.
A blockchain is a distributed ledger stored in multiple locations, so this means that the smart contract data is stored by those Ethereum nodes. If you create a “smart contract”—also known as an application—on the blockchain, it’s stored and run in a decentralized manner.
For comparison, think of many of the applications we use today. This includes email apps like Gmail, note-taking apps like Microsoft OneNote, and anything else where you use an app and store your data on a company’s servers. If the company storing your data bans your accounts, shuts down the app, or goes out of business, you’d lose all the data you had in that app unless you had an offline backup copy.
Smart contracts are applications that run on the Ethereum Virtual Machine. This is a decentralized “world computer” where the computing power is provided by all those Ethereum nodes. Any nodes providing computing power are paid for that resource in Ether tokens.
They’re named smart contracts because you can write “contracts” that are automatically executed when the requirements are met.
For example, imagine building a Kickstarter-like crowdfunding service on top of Ethereum. Someone could set up an Ethereum smart contract that would pool money to be sent to someone else. The smart contract could be written to say that when $100,000 of currency is added to the pool, it will all be sent to the recipient. Or, if the $100,000 threshold hasn’t been met within a month, all the currency will be sent back to the original holders of the currency. Of course, this would use Ether tokens instead of US dollars.
This all would happen according to the smart contract code, which automatically executes the transactions without the need for a trusted third party to hold the money and sign off on the transaction. For example, Kickstarter takes a 5% fee on top of a 3% to 5% payment processing fee, which would mean $8000 to $10000 in fees on a $100,000 crowdfunding project. A smart contract wouldn’t require paying fees to a third-party like Kickstarter.