Ethereum introduction

James Ray edited this page Jan 5, 2018 · 85 revisions

This is not maintained any more here, it is maintained at [https://github.com/Ethereum-community/Ethereum-introduction/wiki/Ethereum-introduction], for a more community-friendly look.

Ethereum Homestead gold ingots

Note that due to the lightning-fast pace of development in the Ethereum space with core development and dapps continually being launched, certain parts of this article may be outdated. You can help by keeping it up to date!

Table of Contents

About Ethereum

Ethereum is a decentralized blockchain platform for "building unstoppable applications", while Ether is the cryptocurrency used on this platform. Ethereum has been described in several ways, such as (the third and third resources are good introductions, while the second is a good technological introduction, although all are outdated. Another introduction is available here, but again, it is outdated. Despite being outdated, Ethereum has maintained backwards compatibility thus far up till January 1 2018, so the info is still relevant.):

Let's briefly breakdown what those terms mean.

Decentralized technology uses peer-to-peer computer networks (there's a picture below), and are not subject to the whims of a central authority such as a government or server administrator (like Google or Facebook) which can help to achieve better decision making for public good. Blockchain means that the currency is built and secured by adding and verifying blocks of transactions to blocks made previously, thus forming a "chain". Blocks added to the chain become harder and harder to crack over time, as they are verified by more nodes in the blockchain peer-to-peer network. Blockchain technology has been referred to as the Web 3.0. The world wide web (retroactively the Web 1.0) consisted of websites publishing content and users passively reading/viewing it. The Web 2.0 used user interaction, such as forums (with upvoting and commenting), reaction buttons (e.g. the Facebook reactions: likes 👍, love ❤️ , laughter 😆, wow 😲, sad 😢, angry 😠), sharing (republishing), however these interactions have no direct economic effect on the host website; users do not share in the value generated from the website. The Web 3.0 is starting to be defined as the movement away from centralisation of computation power in servers which provide services to clients (known as the client-server network model) to peer-to-peer networks and blockchains, and from centralisation of authority and sovereignty from nation-states and corporations to the networked individual.

server-based-network p2p-network

Cryptocurrency refers to a a digital currency that secures transactions with cryptographic code, which is solved through hardware computational power (known as mining or proof of work) or other less energy-intensive ways such as proof-of-stake. (There are more details on that below.)

Zero knowledge proofs like ZK SNARKs can also be used to make cryptocurrency transactions more private 🕵️ or secret 🤐 (which is different to being secure 🔒), thus negating the need to run applications on a permissioned private network like the Ethereum Enterprise Alliance. Ethereum uses precompiled contracts for addition and scalar multiplication on the elliptic curve alt_bn128, for pairing checks, which permit zk-SNARKs, also see here, as implemented in the Byzantium hard fork. There is also the Zerocoin protocol which is demonstrated by Zcoin (which plans to integrate Ethereum).

Uses

The platform part of Ethereum makes it much more useful than just a cryptocurrency. With it, you can create any decentralized application (known as a dapp, which works over a peer-to- peer network rather than a centralized client-server network 💻🕸️), so the functionality is only limited by what programs could potentially do and not do, and by consequence, what programmers develop, 👨‍💻 but it can theoretically be used for any economic or governance activity.

List of dapps

For a list of dapps, visit here.


However, there are several issues that will need to be resolved to help Ethereum be used to its full potential, which are described below.

Market analysis

As of the 1st of December 2017, the market capitalisation of Ethereum is $32.6 billion USD (refer to the link for the latest figure), and it has been in circulation possibly since 30 July 2015, with the first transaction using Ethereum on 8 August 2015. Compare this with the next largest and the current largest cryptocurrency, Bitcoin, with a market cap of $41.0 b. US, where it has been in circulation since January 2009. Technically, Ethereum has had a much faster growth rate, while more importantly for long term investment (I do not encourage speculation as that only causes volatility as has been seen) the fundamentals are much better than Bitcoin. While it is true that Bitcoin has more of a market and currency, e.g. in terms of more entities that will accept it as a form of payment, the creator of this wiki expects that time will change that (indeed the market cap of Ethereum recently surpassed half that of Bitcoin, around May 2017). Also, the number of transactions of Ethereum surpassed that of several cryptocurrencies combined on 22 Nov 2017. However, note this retort.

Issues

There also several issues with Ethereum, such as not being scalable enough, not being full decentralized, energy consumption with mining, if quantum computing advances it would be insecure (but this is being fixed). With its large storage database (I have to provide a Reddit link as a source as the original link doesn't have the graph any more, while Wayback doesn't render it either.), mining and architecture requiring to run a full node to mine or validate transactions, it is not decentralized enough. More (outdated but still applicable) info on that is e.g. here, as well as here.

Scalability

Ethereum will need to scale to process far more transactions per second (to become a "world computer") than Visa, Mastercard and American Express combined (which process on the order of tens of thousands of transactions per second [in the link, CTRL+F 24,000]), while Ethereum 1.0, the current version as of December 30 2017, processed a record of 1103523 transactions on Friday, December 22, 2017, or 12.77 transactions per second.

Note that Ripple claims that it's Consensus Ledger can process a thousand transactions per second, while it could process more with payment channels. "Although payment channels achieve practically infinite scalability by decoupling payment from settlement, they do so without incurring the risk typically associated with delayed settlement." Further note that Ripple achieves this by trading off on decentralization, through a distributed network of validators or distributed servers, while it has been described as a federation protocol.

There are even more scalable blockchains that use a delegated proof of stake (DPOS) consensus protocol, such as Bitshares and Steem. Bitshares can apparently process 100,000 TPS.

More generally, in order to have faster payments or higher transaction throughput, you need to reduce the number of validators (miners are a kind of validator that perform energy intensive computational work, finding a random nonce or sequence number in a large set of numbers) in the consensus protocol, or reduce the other (i.e. for faster payments you can reduce transaction throughput or reduce validators, while for higher transaction throughput you can reduce validators or have payments take longer to finalize). This is a trade-off triangle. You could potentially have one blockchain with heterogeneous sharding, with different shards with a different degree of balance between these properties. Ethereum is working on sharding, which includes using stateless clients (while more on that is here).

If you increase scalability in an instant via some blockchain or shard, while keeping latency constant (or reducing it) you need to reduce decentralization, which reduces the number of points of attack needed to compromise the whole network, i.e. reducing decentralization reduces security.

Proof of work / proof of stake / other proving methods

The mining process to crack cryptographic code (specifically to discover the nonce, a very large number, for each block by trial and error) requires a lot of computation power. Nevertheless, I'm guessing that the computation power should be less when you consider the energy consumption of incumbent financial systems. (Think of extracting and processing resources to make coins and notes, minting and printing, energy consumption of banks and tiers of related energy consumption in the life cycle of fiat money.) Still, developers of some cryptocurrencies such as Ethereum are transitioning to (as is the case for Ethereum), or already using, a different way of maintaining and creating blocks, known as proof of stake. For more information, you can see this Proof of Stake Wikipedia article here (although note the header warning about the article potentially not being verifiable or neutral due to relying heavily on sources too closely associated to the subject). The tricky part is in getting proof methods to work better than proof of work, as outlined here in the criticism section of the PoS Wiki.

Public permissionless blockchains vs. private permissioned blockchains

Running on top of the public Ethereum blockchain (with a token) is better than using a private blockchain, or worse, not running on a blockchain at all (thus requiring a trusted third party which increases transaction costs). Running on the public Ethereum blockchain is more secure than a private chain, since the public chain is much longer and has many nodes mining and verifying it. A private chain is more prone to different kinds of attacks, particularly a 51% attack. Having open-source code is important to verify the security and performance of the software, as well as being able to innovate, e.g. with enhancements.

No technological artefacts can be a panacea

For the continual improvement of humanity, there needs to be balance in life between things that benefit us materially and things that benefit us on higher levels, particularly spiritually. There is a risk that technology can make some people better off, and others worse off. So there needs to be consideration for how technology can be implemented to maximise utility. One consideration of that is here.

How do you buy and sell Ether, the currency of Ethereum?

Summary: compare deals with buying and sell through different exchanges such as P2P ones with an arbitrator like LocalEthereum, or with centralized exchanges (which vary with your local jurisdiction, e.g. in Australia there is BTCmarkets and in the US plus worldwide there is Coinbase, which also allows you to spend cryptocurrencies e.g. with a debit card. For more see the table below, here).

The simplest way may be to use LocalEthereum, where you don't need to go through KYC processes. The creator of this wiki has found that "I can sell Ether for a better deal than I can find with an exchange, without any trading or withdrawal fees, apart from those associated with different payment methods". I like that it has lower fees compared to exchanges. The maker fee (which is what the party of the trade that puts up the offer) is 0.25% while the taker fee is 0.75%. BTCmarkets has higher fees compared to the maker fee, and higher than the taker fee if the amount is below $3000. I also read about how the platform works, and it seems pretty secure. Additionally, there have been hacks with exchanges like Mt. Gox and Bithumb. That's harder to achieve with localethereum since they can't get access to your funds, they can only settle disputes (if they arise) by sending the funds in the escrow to the buyer or the seller. However, I have been able to find a better deal, at least at certain times, with buying Ether if I buy through BTCmarkets, although that would be slower via BPAY with bank transfer than paying via cash deposit via an ATM or bank."

More information about Ether is here.

Disclaimer from the creator of this wiki: I have put most of my funds in Ether, the currency of Ethereum. Does that shock you? 😲 Yep, it's risky, but I've done due diligence 🔍 with fundamental analysis, and a little bit of sentiment and technical analysis, and I think that the market cap of Ether will continue to grow 🌱🌳 and increase, albeit with some volatility 📈. I consider it a digital currency that is in a pioneering, rapid growth stage of development (fuelled by a lot of genuine uptake of the currency as well as speculation about its future value, if not its current value), not just an asset. I hope my post will outline why investing in Ether is a good idea (and not just investing a small percentage of your cash, unless you are tied up with a mortgage 🏠 or have other monetary or non-monetary ties or circumstances that limit your investable capital).

Based on my research below, if you're in Australia 🇦🇺 (otherwise skip to the next paragraph), I recommend creating an account with BTCmarkets.net, verifying your ID, and using BPAY or PoliPayments to deposit AUD. Note that the rest of the following info in this paragraph is outdated since MEBank used to not support BPAY publicly, but now they do. If your bank doesn't support PoliPayments and you want to use that instead of BPAY, although I can't think of any good reason why you'd want to use PoliPayments over BPAY, then you can set up a bank account with BOQ (or any other bank that supports POLi Payments, doesn't invest in fossil fuels and has no fees for transaction and savings accounts [note that Bendigo doesn't have an Ultimate Everyday account any more]. You can probably ignore the interest rate since it is so marginal compared to other bank's rates and the gains that you are likely to make by holding funds with Ether instead. However, when I did research for interest rates I found that ME Bank savings rates were second only to UBank, which invests in fossil fuels indirectly as it is owned by NAB.

Table of exchanges

If you're not in Australia 🇦🇺, then here's a comparison of exchange rates 💱 for fiat to crypto- and crypto- to crypto- currencies (note that there is still a focus on Australia, but you can click on the links to get more information of the fees):

 Exchange link (may go to a fees page) Fiat to crypto exchange fee buy/sell spread
BTCmarkets AUD is the only fiat currency. 0.85% trading fee. Funds available to deposit, withdraw, buy and sell are: AUD, ETH, ETC, BTC and LTC. To deposit AUD, you need to verify your account and then use POLi Payments (available banks are here. My bank is ME Bank, which doesn't support POLi Payments. I applied with BOQ because they do support POLi Payments, they don't invest in fossil fuels [like ME Bank] and they have transaction and savings accounts with no fees [like ME Bank].)
GDAX 0.25/.3% maker fee low volume, 0% taker fee BTC for USD/EUR/GBP, ETH/LTC for USD/BTC/EUR
Coinjar 1.00% AUD/BTC (and only AUD/BTC)
Coinbase In Aus: 3.99% credit/debit card only (no other transaction method accepted). Other fiat and crypto currencies are available.
CEX 7% BTC/ETH for USD/EUR/GBP/RUB
ice3x 1% ZAR/BTC
Luno ZAR/BTC fee not easy to find
okcoin CNY/USD for BTC/LTC, fee not easy to find
Maicoin TN/BTC Fee not shown, claimed none
Crypto to crypto exchange fee / buy/sell spread
Poloniex 0.15/.25% BTC/ETH “maker-taker” (presumably the same as buy-sell)
gdax.com/fees/ 0.25/.3% maker fee low volume, 0% taker fee ETH/LTC for BTC
Exodus ~0.4720–.528% BTC/ETH variable. Desktop app. Sometimes currencies are not available for exchange!
NVO Decentralised. ICO 05/27/17 02:00 UTC to 06/27/17 02:00 UTC

Exchanges are listed in this article, which I've copied and pasted (repetition is OK):

America, US dollars

https://www.coinbase.com

https://gemini.com/

Australian Dollar

https://btcmarkets.net/

Canadian Dollar

https://www.quadrigacx.com

Chinese Yuan

https://www.huobi.com

https://www.okcoin.com

https://yunbi.com

European Euros

https://www.kraken.com

Mexican Peso

https://bitso.com

South Korean Won

https://coinone.co.kr/

https://www.bithumb.com/

More details about what I've tried (not very necessary to know)

I bought BTC in a different way. Step 2 worked for me. I will try step 1 next time I buy more BTC.

I created an account on btcmarkets.net, verified my email address, tried to login, but couldn't. I tried to disable two factor authentication, but it asked for my mobile number, which I didn't enter when I created my account. I tried to reset my password and log in again, but that didn't work. I entered my email address correctly. I sent a message to support to ask for help. I figured out that my password was too long, and have notified btcmarkets.net. After creating a password of 23 characters, I was able to log in. I created another password of 56 characters using Chinese characters, emojis and ASCII characters, and was able to log in. (Incidentally, it is a hassle to do this, so a decentralised, private password generator would be wonderful.)

The following steps are what I have tried so far, in detail.

  1. Convert AUD to Bitcoin (BTC) via an exchange like Coinjar. I left a review of Coinjar here. Fee: 1%. While this step is tailored for Australia, it can be adapted to any country that has a bitcoin exchange.
  2. I created a Poloniex account, sent funds from got the Bitcoin deposit address, then sent my BitGo funds to that address. Once the transaction completed, I then used Poloniex Exchange to convert to Eth, with a maker-taker fee of: 0.15/0.25%.
Before step 2 above, I tried the following:
  1. Create an Ethereum Wallet 👛 like MyEtherWallet. Unfortunately Mist, a program being developed by Ethereum that has a browser and a wallet is still a pre-release, so it may not be very suitable for end users just yet.
  2. Convert BTC to Ether (ETH) via a cryptocurrency exchange like Shapeshift. Use a precise transaction, make sure the amount is within the min. and max. deposit. Copy and paste the bitcoin address in Coinjar by signing in (if you aren't already) and going to Accounts > Everyday Bitcoin > View address. Put this address as the refundable address. Copy and paste the address from MyEtherWallet. Put this as the destination address. Tick the box to save the destination address for future payments. However, this didn't work.
I also sent an email to Coinjar to suggest that they develop functionality for purchasing Ether directly using AUD. You can do the same with the exchange of your choice.

I have been able to deposit funds into Coinjar (needing to be less than the transaction limits) but have not been able to get Eth funds as of yet. I have also tried to create an account on BitGo, send coins from Coinjar to BitGo, and use Shapeshift with that account and still with MyEtherWallet, however that didn't work.

I will not discuss trading (which I mean buying with the intention to sell most or all of the purchase at any future time particularly in the short term in order to realize a profit) as I am not very interested in trying to guess the short-term direction of markets (although I admit that trading helps to provide liquidity).

Development

Are you interested in learning to develop smart contracts with Ethereum, and maybe develop a really useful dapp and become a millionaire?

Check out the Ethereum website! Then, you can read the Solidity docs.

If you want to help contribute to core development, there is also:

Concluding remarks

Ether certainly seems like a good investment, and a good alternative to using fiat currencies, as well as an enabler for otherwise uneconomical business, due to lower transaction costs. It's more decentralized nature than central banks has advantages for trade from a local to global scale. With governance applications and systems on top Ethereum, it is even possible to do away with the hindering borders surmounted by nation-states. By doing away with these borders, society can be more open, inclusive and equitable.

However, all technology can only help mankind and the world to a certain extent. What is more important is for each and every person to become increasingly blissful. Each person must go within and enter a stillness of body and mind, which is when that bliss starts to manifest, and practice balanced living. Practicing certain techniques such as those given by Self-Realization Fellowship, such as daily Kriya yoga meditation, developing unconditional love that starts in the heart, keeping the mind at the point between the eyebrows, and moral living, helps each person manifest that bliss within, and from there, express that bliss outwardly at all times.

Further reading

This article was originally created here in May 2017, and has been regularly updated since then: https://sustergy.wordpress.com/2017/05/18/why-buy-ether-and-how/. Feel free to send a donation to the initial author at jamesray.eth, or make edits to it yourself, or fork it!

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.