- What is Ethereum:
- Previous approaches towards a consensus protocol:
- Two main applications on top of Ethereum:
- Further Applications Include:
- Application potential on Ethereum:
- What is Ethereum:
The intent of Ethereum is to merge together, and improve upon the concepts of scripting, altcoins and on chain meta protocols, and allow developers to create arbitrary consensus based applications that have the scalability, standardisation, future completeness, ease of development and interoperability offered by these different paradigms all at the same time. Ethereum does this by building, essentially the ultimate abstract foundational layer: a blockchain with a built-in complete programming language, allowing anyone to write smart contracts, and decentralised applications where they can create their own arbitrary rules for ownership, transaction formats, and state transition functions.
- Previous approaches towards a consensus protocol:
Previously, there have been two approaches towards building a consensus protocol:
1) building an independent network
2) building a protocol on top of Bitcoin.
The first approach, while successful for applications like Namecoin, is hard to implement: each individual implementation needs to bootstrap an independent blockchain, as well as building and testing all of the necessary state transition and networking code. We predict that the set of applications for decentralised consensus technology will follow a power law distribution, where the vast majority of applications would be too small to warrant their own blockchain, and we note that there exists large classes of decentralised applications, that need to interaction with each other.
Ethereum solves this by building, essentially the ultimate abstract foundational layer: a blockchain with a built-in complete programming language.
- Two main applications on top of Ethereum:
In general, there are three types of applications on top of Ethereum.
- The first, is financial applications, providing users with more powerful ways of managing and entering into contracts using their money. This includes sub-currencies, financial derivatives, hedging contracts, saving wallets, wills, and even some classes of full scale employment contracts.
The second category is semi financial applications, where money is involved but there is also a heavy non-monetary side to what is being done; a perfect example is self-enforcing bounties for solutions to computational problems. Also, applications such as online voting, and decentralised governance that are not financial at all.
- Application potential on Ethereum:
Token systems:
On blockchain token systems have many applications ranging from sub currencies representing assets such as USD, to gold, or company stocks, individual tokens representing smart property, coupons, and even token systems with no ties to conventional value at all, used as point systems for incentivisation. Token systems are easy to implement in ETH. All a currency, or token system, fundamentally is, is a database with one operation: subtract X units from A, and give X units to B. All that takes to implement a token system is to implement this logic into a contract.
Financial derivatives:
Financial derivatives are the most common application of a smart contract, and one of the simplest to implement in code. The main challenge in implementing financial contracts is that many of them require references to an external price ticker. The simple way to do this is through a data feed, contract maintained by a specific party designed so that the party has the ability to update the contract as needed, and providing an interface that allows other contracts to send a message to that contract and get back a response that provides the price.
One of the main problems cited about cryptocurrency is that crypto is volatile. The common solution has been issuer backed assets, the idea that an issuer creates a sub currency in which they have the right to issue, and revoke units, and provides one unit of the currency to anyone who provides them with one unit of a specified underlying assets.
The issuer then promises to provide one unit of the underlying asset to anyone who sends back one unit of the crypto asset. This mechanism allows any non-cryptographic asset to be uplifted into a cryptographic asset, provided that the issuer can be trusted. In practice, issuers are not always trustworthy, and in some cases the banking infrastructure is too weak, or too hostile for services to exist.
Financial derivatives provide an alternative. Here, instead of a single issuers providing the funds to bank up an asset, a decentralised market of speculators betting that the price of a cryptographic reference asset will go up, plays that role. Unlike issuers, speculators have no option to default on their side of the bargain because the hedging contract holds their funds escrow. This approach is not fully decentralised, as a trusted sources still is needed to provide the price ticker, although arguably this is still a massive improvement in terms of reducing infrastructure requirements, and reduction of potential for fraud
Identity and Reputation Systems:
The earliest cryptocurrency of all, Namecoin, attempted to use a Bitcoin like blockchain to provide a name registration system – users can register their names in a public database alongside other data. The major use case for DNS systems, mapping domain names like bitcoin.org, to an IP address. Other use cases include email authentication, and potential more advanced reputation systems.
The contract is very simple: all it is is a database inside the ETH network, that can be added to, but not modified or removed from. Anyone can register a name with some value, and that registration then sticks forever. A more sophisticated name registration system contract will also have a function clause, allowing other contracts to query it, as well as a mechanism for the owner of a name to chance the data or transfer ownership. One can even add reputation and web-of-trust functionality on top.
Decentralized File Storage:
Over the past few years, there has emerged a range of online file storage start-ups, for example Dropbox, seeking to allow users to upload a backup of their hard drive and have the service store the backup and allow users to access in exchange for a monthly fee. However, at this point the file storage market is inefficient: because when within the 20-200GB level, in which no discounts kick in, monthly prices for mainstream file storage costs are such that you are paying for more than the cost of the entire hard drive in a single month. ETH can allow for the development of a decentralised file storage ecosystem, in which individuals can earn small quantities of money by renting out their own hard drives and unused space can be used to further drive down the cost of file storage.
This is termed the decentralised Dropbox contract, which works as follows:
Firstly – one splits the desired data up into blocks, encrypting each block for privacy, and builds a Merkle tree out of it. One then makes a contract with the rule that every N blocks, the contract would pick a random index in the Merkle tree, and give X ether to the first entity to supply a transaction with a simplified payment verification like proof ownership of the block at that particular index in the tree. When a user wants to redownload their file, they use micropayment channel protocol to recover the file; the most fee efficient approach is for the payer not to publish the transaction until the end, instead replacing the transaction with a slightly more lucrative one with the same nonce after every 32 kilobytes.
An important feature of the protocol is that, although it may seem one is trusting many random nodes not to decide to forget the file, one can reduce that risk down to near zero by splitting the file into many pieces via secret sharing, and watching the contracts to see each piece is still in some nodes possession. If a contract is still paying out money, that provides cryptographic proof that someone out there is still storing the file.
Decentralised Autonomous Organisations:
A decentralized autonomous organization (DAO) is an entity with no central leadership. Decisions get made from the bottom-up, governed by a community organized around a specific set of rules enforced on a blockchain. DAOs are internet-native organizations collectively owned and managed by their members. A “decentralised organisation” is that of a virtual entity, which has a certain set of members or shareholders which, perhaps with 67% majority, have the right to spend the entities funds, and modify its code.
Members would collectively decide on how the organisations should allocate funds. Methods of allocation of DAOs funds, could range from bounties, salaries, to even an internal currency rewarding network. A more sophisticated method would also include: built in voting abilities, adding members and removing members, and providing Liquid Democracy Style voting delegation. This would allow organic growth, whilst also enabling decentralisation – allowing people to eventually delegate the task of filtering out who is a member, and who is a specialist, although unlike in the current system specialists can easily pop in and out of existence over time as individual community members change their alignments.
Further Applications Include:
1. Savings wallets.
2. Insurance.
3. A decentralized feed.
4. Smart multi-signature.
5. Cloud computing.
6. Peer-to-peer gambling.