Getting Started with Ethereum

Getting started with Ethereum

Ethereum is second only to Bitcoin in the world of cryptocurrencies. Launched in 2015 following a white paper by cryptocurrency programmer Vitalik Buterin, Ethereum has its own terminology that can be daunting to newcomers, such as Ethereum Classic, Casper, Solidity and Metropolis. This article will demystify some of the key terms.

Ethereum’s value rose by around 3,600 per cent in 2017 and is expected to keep growing. However, like all cryptocurrencies it has been highly volatile and there are occasional sharp drops in value. It makes sense to keep an eye on the value for a while before buying your first Ether (ETH). The value of a single Ether was several hundred dollars in early 2018 but you do not have to buy a whole coin. It is possible to buy fractions of a cryptocurrency token.

How to buy Ethereum
To buy ETH you will need an account with an exchange or cryptocurrency broker, such as Coinbase or Kraken. These vary in the service they offer, but most will require you to submit your personal details and then connect your traditional bank account. Some will require you to verify your identity with appropriate documentation, just as a stockbroker or bank would.

Once you have an account you will be able to buy ETH. Digital currency, being virtual, must be stored somewhere and your wallet is the place to do this. Some exchanges will offer a wallet as part of their service. Others will require you to use a third party. Your wallet holds the private key that allows you to access your ETH and which you will use to ‘sign’ your transactions. It will also make it possible for you to move between marketplaces or other wallets.

Cryptocurrency transactions are not reversible. If you accidentally transfer coins to the wrong place or if your coins are stolen, then you will not be able to get them back. Security is vital.

There are software and hardware wallets for storing cryptocurrencies. The former are apps that store your information or that connect you to virtual services where your ETH are stored. These are easy to use but less secure. Some online services have been targeted by hackers and people have lost their coins.

Hardware wallets are usually memory stick-like devices that store your private key information. They are more secure than software wallets because they can be disconnected from the internet.

Wallets can also be encrypted with password protection and backed-up, protecting you from a computer failure or human error. Both steps are important measures to take to protect your ETH.

ETH can be spent on a range of online goods and services, but it is worth keeping in mind that if you want to change it back into local currency at any point, this can be difficult in some parts of the world. If this is likely to be an issue for you then you should check local regulations before you buy.

Ethereum Classic v Ethereum
The split between Ethereum Classic and Ethereum is one that goes to the very heart of the philosophy underpinning the blockchain. The idea behind the blockchain is that transactions, once made, cannot be undone by anyone. The split between two factions of Ethereum users hinged on a disagreement with that concept.

Ethereum was designed as a platform for decentralised applications (DApps), something that was not supported by Bitcoin. DApps can be anything from games to identity management systems – the key is that they are decentralised.

In 2016, as part of a plan to support DApps, the Distributed Autonomous Organisation (DAO) was created. This was a set of smart contracts intended to create a kind of venture capital fund to support DApps. Four weeks after the launch, the DAO had accumulated $150M in ETH. However, the plan went wrong when someone exploited a loophole to withdraw $50M in ETH from the fund.

What happened next is crucial. The community voted for a ‘hard fork’ of the Ethereum platform, that would effectively devalue the $50M ETH taken by the hacker to the point of worthlessness. The community would move to the new chain, be given the equivalent amount of ETH to match what they had lost and the hacker would be left on the old chain with their funds now worthless. The fork went ahead in July 2016.

The problem is that those who see the blockchain as inviolable felt that this measure was wrong. Even though the fork was the result of the vote, those who oppose it argue that the community should not be able to alter the blockchain just because they disagree with something that has happened. On the other side, those supporting the fork argue that the community should have the right to make these decisions democratically.

Those who objected to the fork remained behind and retitled their blockchain ‘Ethereum Classic’, while the new fork continues to be known as ‘Ethereum’.

In terms of choosing between the two currencies, Ethereum has outperformed Classic since the split. This makes sense, given that Classic will not be compatible with any future upgrades and Classic has not developed at the same pace as Ethereum. That said, those who subscribe to the ethics that led to the creation of Classic might well prefer to stay with that currency.

Ethereum Metropolis
The first prototype of Ethereum, Olympic, was released in May 2015 and followed two months later by Version 1 – Frontier. In March 2016, Version 2, Homestead, followed, which was the final version before the split between Ethereum and Classic. Metropolis was the first version after the split. Metropolis Part 1: Byzantium, was released in October 2017 and is Version 3. Version 3.5 is known as Metropolis Part 2: Constantinople but has not yet been released.

At the time of writing, Metropolis Part 1 is the current version of Ethereum. It introduced several measures to increase flexibility for smart contract developers, most notably by introducing something called ‘zk-SNARKS’, an acronym for Zero-Knowledge Succinct Non-Interactive Argument of Knowledge. Before we get to what that means, let’s briefly consider smart contracts.

A smart contract is like any other contract in which two or more parties agree to do something under certain terms. For example, Alice will paint Bob’s house and Bob will pay Alice once the job is complete. A smart contract is a kind of escrow system – Bob would put Alice’s money into the contract and Alice would automatically be paid when the terms of the contract are satisfied. At scale – imagine Bob has lots of contractors working on lots of houses – this means payments are managed automatically, without Bob needing to handle the admin.

What zk-SNARKS brings to the system is the ability to verify a contract in a ‘zero-knowledge’ environment. Imagine that Bob hires Alice to perform confidential work. Zk-Snarks could verify that the work has been carried out without revealing the confidential steps that might be useful to Bob’s competitors. There isn’t space to explain in detail how it does that (it involves several algorithms), but you can read more here.

The other notable change in Metropolis Part 1 was to prepare the ground for a move to ‘proof of stake’ verification, which is where Casper comes in.

Ethereum Casper
You can read more about the difference between ‘proof of work’ and ‘proof of stake’ here, but these are the basic points. Blockchain systems are designed to be decentralised, which means that there is no central authority to verify that a transaction has been made, or that the same coins have not been spent more than once. That verification still needs to happen, so blockchain technology gives the task to the network.

In a proof of work system, nodes on the network compete to be the first to provide a cryptographic hash – a kind of digital fingerprint – that verifies all the transactions in a block. The winner is rewarded with new coins – a process known as ‘mining’. The downside of this is that it wastes a lot of energy – every miner is working to solve the same problem and all but one have wasted the computing power used to do so.

Also, the verification process gets harder over time, requiring more computing power and effectively putting mining in the hands of a small number of groups, or pools of groups, that can afford the hardware. The risk is that this recreates the centralisation that blockchains are designed to avoid.

Under a ‘proof of stake’ system, miners are replaced by ‘validators’. Each validator gives up some of their ETH as a stake and then effectively places a bet on a group of transactions that can be added to the blockchain. If that block is added to the chain, then you get a reward proportional to your stake. Validators that try to submit false chains will lose their stake.

This should be cheaper for everyone and remove the need to have the fastest computing equipment. It should also make Ethereum faster and more scalable.

One risk is that when the blockchain forks to allow proof of stake, some people decide to stay on the old, proof of work, version of Ethereum. To prevent this, Metropolis implements measures that will make mining progressively harder until it becomes virtually impossible.

And where does Casper come into all this? Casper is the name of the algorithm that is the chosen method for Ethereum’s proof of stake system.

Ethereum Solidity
Unlike the other two terms, ‘Solidity’ does not refer to a version of the blockchain or an algorithm used within it. Solidity is the computer programming language used for writing smart contracts. Though it isn’t the only language used on Ethereum, it is currently the most common one. It was proposed for Ethereum by Gavin Wood, Ethereum’s former chief technology officer, in August 2014.

Solidity was designed with a syntax similar to that of JavaScript, which is widely used by web developers, and C. The intention was that this familiarity would make it easier to take up. That doesn’t mean Solidity is easy for novices – some experience in programming and some knowledge of Ethereum and how it works would be useful for anyone getting started.

Developers who don’t want to use Solidity, for whatever reason, could use one of the alternative languages, including ‘LLL’ – a low-level Lisp-like language – and ‘Viper’, which is derived from Python. Other languages were once used on the platform but are no longer supported, including Mutan, which was based on Go, and Serpent, which was based on Python.

Solidity is now widely supported, including on Microsoft’s Visual Studio. This support is indicative of Microsoft’s interest in Ethereum and its potential as a business tool.

Coinschedule
This post is provided for informational purposes only. None of the information presented here should be considered investment advice. Everyone should always do their own research and due diligence before sending funds to any third party.