Ethereum 101

Ethereum is an open-source, public, blockchain-based distributed computing platform and operating system featuring smart contract (scripting) functionality. It supports a modified version of Nakamoto consensus via transaction-based state transitions.

Ether is the cryptocurrency generated by the Ethereum platform as a reward to mining nodes for computations performed and is the only currency accepted in the payment of transaction fees.

Ethereum provides a decentralized virtual machine, the Ethereum Virtual Machine (EVM), which can execute scripts using an international network of public nodes. The virtual machine’s instruction set, in contrast to others like Bitcoin Script, is Turing-complete. “Gas”, an internal transaction pricing mechanism, is used to mitigate spam and allocate resources on the network.

Ethereum was proposed in late 2013 by Vitalik Buterin, a cryptocurrency researcher and programmer. Development was funded by an online crowdsale that took place between July and August 2014. The system then went live on 30 July 2015, with 72 million coins minted. This accounts for about 68 percent of the total circulating supply in 2019.[non-primary source needed]

In 2016, as a result of the exploitation of a flaw in The DAO project’s smart contract software, and subsequent theft of $50 million worth of ether, Ethereum was split into two separate blockchains – the new separate version became Ethereum (ETH) with the theft reversed, and the original continued as Ethereum Classic (ETC).

Vitalik Buterin picked the name Ethereum after browsing Wikipedia articles about elements and science fiction, when he found the name, noting, “I immediately realized that I liked it better than all of the other alternatives that I had seen; I suppose it was the fact that sounded nice and it had the word ‘ether’, referring to the hypothetical invisible medium that permeates the universe and allows light to travel.”

Ethereum was initially described in a white paper by Vitalik Buterin, a programmer and co-founder of Bitcoin Magazine, in late 2013 with a goal of building decentralized applications. Buterin had argued that Bitcoin needed a scripting language for application development. Failing to gain agreement, he proposed the development of a new platform with a more general scripting language.:88

Ethereum was announced at the North American Bitcoin Conference in Miami, in January 2014. During the same time as the conference, a group of people rented a house in Miami: Gavin Wood, Charles Hoskinson, and Anthony Di Iorio, a Torontonian who financed the project. Di Iorio invited friend Joseph Lubin, who invited reporter Morgen Peck, to bear witness. Six months later the founders met again in a house in Zug, Switzerland, where Buterin told the founders that the project would proceed as a non-profit. Hoskinson left the project at that time.

Ethereum has an unusually long list of founders. Anthony Di Iorio wrote “Ethereum was founded by Vitalik Buterin, Myself, Charles Hoskinson, Mihai Alisie, & Amir Chetrit (the initial 5) in December 2013. Joseph Lubin, Gavin Wood, & Jeffrey Wilke were added in early 2014 as founders.” Formal development of the Ethereum software project began in early 2014 through a Swiss company, Ethereum Switzerland GmbH (EthSuisse).
The basic idea of putting executable smart contracts in the blockchain needed to be specified before the software could be implemented; this work was done by Gavin Wood, then chief technology officer, in the Ethereum Yellow Paper that specified the Ethereum Virtual Machine.
Subsequently, a Swiss non-profit foundation, the Ethereum Foundation (Stiftung Ethereum), was created as well. Development was funded by an online public crowdsale during July-August 2014, with the participants buying the Ethereum value token (ether) with another digital currency, Bitcoin.

While there was early praise for the technical innovations of Ethereum, questions were also raised about its security and scalability.

In 2019, an Ethereum foundation employee named Virgil Griffith was arrested by the US government for presenting at a blockchain conference in North Korea.

In March 2017, various blockchain start-ups, research groups, and Fortune 500 companies announced the creation of the Enterprise Ethereum Alliance (EEA) with 30 founding members. By May, the nonprofit organization had 116 enterprise members—including ConsenSys, CME Group, Cornell University’s research group, Toyota Research Institute, Samsung SDS, Microsoft, Intel, J. P. Morgan, Cooley LLP, Merck KGaA, DTCC, Deloitte, Accenture, Banco Santander, BNY Mellon, ING, and National Bank of Canada. By July 2017, there were over 150 members in the alliance, including recent additions MasterCard, Cisco Systems, Sberbank and Scotiabank.

Several codenamed prototypes of the Ethereum platform were developed by the Ethereum Foundation, as part of their Proof-of-Concept series, prior to the official launch of the Frontier network. “Olympic” was the last of these prototypes, and public beta pre-release. The Olympic network provided users with a bug bounty of 25,000 ether for stress testing the limits of the Ethereum blockchain. “Frontier” marked the tentative experimental release of the Ethereum platform in July 2015.

Since the initial launch, Ethereum has undergone several planned protocol upgrades, which are important changes affecting the underlying functionality and/or incentive structures of the platform.[non-primary source needed]

Protocol upgrades are accomplished by means of a hard fork.

The Ethereum Difficulty bomb is the difficulty of the blockchain mining algorithm puzzle which began increasing in November 2016, from block 200,000. The onset of the Difficulty Bomb is referred to as Ethereum’s Ice Age, as the Ethereum network started the transition from Proof of Work (PoW) to Proof of Stake (PoS). A difficulty bomb was scheduled in February 2019 but was pushed back by developers.

In 2016 a decentralized autonomous organization called The DAO, a set of smart contracts developed on the platform, raised a record US$150 million in a crowdsale to fund the project. The DAO was exploited in June when US$50 million in ether were taken by an unknown hacker. The event sparked a debate in the crypto-community about whether Ethereum should perform a contentious “hard fork” to reappropriate the affected funds. As a result of the dispute, the network split in two. Ethereum (the subject of this article) continued on the forked blockchain, while Ethereum Classic continued on the original blockchain. The hard fork created a rivalry between the two networks.

After the hard fork related to The DAO, Ethereum subsequently forked twice in the fourth quarter of 2016 to deal with other attacks. By the end of November 2016, Ethereum had increased its DDoS protection, de-bloated the blockchain, and thwarted further spam attacks by hackers.[unbalanced opinion?]

As with other cryptocurrencies, the validity of each ether is provided by a blockchain, which is a continuously growing list of records, called blocks, which are linked and secured using cryptography. By design, the blockchain is inherently resistant to modification of the data. It is an open, distributed ledger that records transactions between two parties efficiently and in a verifiable and permanent way. Unlike Bitcoin, Ethereum operates using accounts and balances in a manner called state transitions. This does not rely upon unspent transaction outputs (UTXOs). The state denotes the current balances of all accounts and extra data. The state is not stored on the blockchain, it is stored in a separate Merkle Patricia tree. A cryptocurrency wallet stores the public and private “keys” or “addresses” which can be used to receive or spend ether. These can be generated through BIP 39 style mnemonics for a BIP 32 “HD Wallet”. In Ethereum, this is unnecessary as it does not operate in a UTXO scheme. With the private key, it is possible to write in the blockchain, effectively making an ether transaction.

To send ether to an account, you need the Keccak-256 hash of the public key of that account. Ether accounts are pseudonymous in that they are not linked to individual persons, but rather to one or more specific addresses.

Ether is a fundamental token for the operation of Ethereum, which thereby provides a public distributed ledger for transactions. It is used to pay for gas, a unit of computation used in transactions and other state transitions. Mistakenly, this currency is also referred to as Ethereum.

It is listed under the ticker symbol ETH and traded on cryptocurrency exchanges, and the Greek uppercase Xi character (K) is generally used for its currency symbol. It is also used to pay for transaction fees and computational services on the Ethereum network.

Ethereum addresses are composed of the prefix “0x”, a common identifier for hexadecimal, concatenated with the rightmost 20 bytes of the Keccak-256 hash (big endian) of the ECDSA public key (the curve used is the so-called secp256k1, the same as Bitcoin). In hexadecimal, 2 digits represent a byte, meaning addresses contain 40 hexadecimal digits. An example of an Ethereum address is 0xb794f5ea0ba39494ce839613fffba74279579268. Contract addresses are in the same format, however, they are determined by sender and creation transaction nonce. User accounts are indistinguishable from contract accounts given only an address for each and no blockchain data. Any valid Keccak-256 hash put into the described format is valid, even if it does not correspond to an account with a private key or a contract. This is unlike Bitcoin, which uses base58check to ensure that addresses are properly typed.

Ethereum is different from Bitcoin (the cryptocurrency with the largest market capitalization as of June 2018) in several aspects:

The total supply of ether was around K106.7 million as of 5 July 2019. In 2017, mining generated 9.2 million new ether, corresponding to a 10% increase in its total supply. Casper the Friendly Finality Gadget (FFG), which is a hybrid Proof of Work and Proof of Stake scheme, and Casper Correct-By-Construction (CBC), a separate Proof of Stake design of Casper, are expected to reduce the inflation rate to between 0.5% to 2%. There is no currently implemented hard cap on the total supply of ETH.

Ether can be traded by regular currency brokers, cryptocurrency exchanges, as well as many online cryptocurrency wallets.

The Ethereum Virtual Machine (EVM) is the runtime environment for smart contracts in Ethereum. It is a 256-bit register stack, designed to run the same code exactly as intended. It is the fundamental consensus mechanism for Ethereum. The formal definition of the EVM is specified in the Ethereum Yellow Paper. Ethereum Virtual Machines have been implemented in C++, C#, Go, Haskell, Java, JavaScript, Python, Ruby, Rust, Elixir, Erlang, and soon, WebAssembly (currently under development).

Ethereum’s smart contracts are based on different computer languages, which developers use to program their own functionalities. Smart contracts are high-level programming abstractions that are compiled down to EVM bytecode and deployed to the Ethereum blockchain for execution. They can be written in Solidity (a language library with similarities to C and JavaScript), Serpent (similar to Python, but deprecated), LLL (a low-level Lisp-like language), and Mutan (Go-based, but deprecated). There is also a research-oriented language under development called Vyper (a strongly-typed Python-derived decidable language).

Smart contracts can be public, which opens up the possibility to prove functionality, e.g. self-contained provably fair casinos.

One issue related to using smart contracts on a public blockchain is that bugs, including security holes, are visible to all but cannot be fixed quickly. One example of this is the 17 June 2016 attack on The DAO, which could not be quickly stopped or reversed.

There is ongoing research on how to use formal verification to express and prove non-trivial properties. A Microsoft Research report noted that writing solid smart contracts can be extremely difficult in practice, using The DAO hack to illustrate this problem. The report discussed tools that Microsoft had developed for verifying contracts, and noted that a large-scale analysis of published contracts is likely to uncover widespread vulnerabilities. The report also stated that it is possible to verify the equivalence of a Solidity program and the EVM code.

Ethereum apps are written in one of seven different Turing-complete languages. Developers use the language to create and publish applications that they know will run inside Ethereum. The stablecoin Tether and the prediction market Augur are two examples of applications that run on Ethereum.

Many uses have been proposed for the Ethereum platform, including ones that are impossible or unfeasible. Use case proposals have included finance, the internet-of-things, farm-to-table produce, electricity sourcing and pricing, and sports betting. Ethereum is (as of 2017) the leading blockchain platform for initial coin offering projects, with over 50% market share.

Ethereum-based customized software and networks, independent from the public Ethereum chain, are being tested by enterprise software companies. Interested parties include Microsoft, IBM, JPMorgan Chase, Deloitte, R3, Innovate UK (cross-border payments prototype). Barclays, UBS and Credit Suisse are experimenting with Ethereum.

Ethereum-based permissioned blockchain variants are used and being investigated for various projects.

In Ethereum all smart contracts are stored publicly on every node of the blockchain, which has costs. Being a blockchain means it is secure by design[clarification needed] and is an example of a distributed computing system with high Byzantine fault tolerance. The downside is that performance issues arise in that every node is calculating all the smart contracts in real-time, resulting in lower speeds. As of January 2016, the Ethereum protocol could process about 25 transactions per second. In comparison, the Visa payment platform processes 45,000 payments per second leading some to question the scalability of Ethereum. On 19 December 2016, Ethereum exceeded one million transactions in a single day for the first time.

Ethereum engineers have been working on sharding the calculations, and the next step (called Ethereum 2) was presented at Ethereum’s Devcon 3 in November 2017.

Ethereum’s blockchain uses Merkle trees, for security reasons, to improve scalability, and to optimize transaction hashing. As with any Merkle tree implementation, it allows for storage savings, set membership proofs (called “Merkle proofs”), and light client synchronization. The Ethereum network has at times faced congestion problems, for example, congestion occurred during late 2017 in relation to Cryptokitties.

Vlad Zamfir, Ethereum core developer, The New Yorker

In October 2015, a development governance was proposed as Ethereum Improvement Proposal, aka EIP, standardized on EIP-1. The core development group and community were to gain consensus by a process regulated EIP.

Izabella Kaminska, the editor of FT Alphaville, pointed out in 2017 that criminals were using Ethereum to run Ponzi schemes and other forms of investment fraud. The article was based on a paper from the University of Cagliari, which placed the number of Ethereum smart contracts that facilitate Ponzi schemes at nearly 10% of 1384 smart contracts examined. However, it also estimated that only 0.05% of the transactions on the network were related to such contracts.

Tags: , ,
 
Next Post

Initial Coin Offering Definition