Blockchain-Ethereum-Solidity

Section 1 - What is Ethereum?

History

October 31, 2008 - Bitcoin: A Peer-to-Peer Electronic Cash System

  • "White paper" describing a system to allow peer to peer payments without a financial intermediary (like a bank)
  • Cited transaction reversals as an issue with online commerce - the ability of customers to 'charge back' a purchase

December 2013 - Ethereum: The Ultimate Smart Contract and Decentralized Application Platform

  • "White paper" discusses need for more programmatic control over transactions
  • Wanted to enable creation of 'decentralized autonomous corporations' (DAC)
  • Introduces the idea of 'Smart Contracts' as an entity that can send and receive currency, beyond just humans

Original Bitcoin White Paper

What is Ethereum?

  • Ethereum networks are used to transfer money and store data
  • There are many different Ethereum networks
  • Networks are formed by one or more nodes
  • Anyone can run a node
  • Each node can contain a full copy of the blockchain
  • The 'blockchain' is a database that stores a record of every transaction that has ever taken place

Interfacing with Ethereum Networks

  • Technologies For Developers - web3.js
  • Technologies For Consumers - Metamask, Mist Browser

Metamask Setup

Ethereum Accounts

Account in Ethereum Network

  • Account Address (like an email or username)
  • Public Key
  • Private Key

Ethereum Networks

  • Main
  • Ropsten
  • Kovan
  • Rinkeby

Receiving Ether

What's a Transaction?

nonce How many times the sender has sent a transaction
to Address of account this money is going to
value Amount of ether to send to the target address
gasPrice Amount of ether the sender is willing to pay per unit gas to get this transaction processed
startGas/gasLimit Units of gas that this transaction can consume
v, r, s Cryptographic pieces of data that can be used to generate the senders account address. Generated from the sender's private key

Basic Blockchains

Section 2 - Smart Contracts with Solidity

Section 3 - Advanced Smart Contracts

Section 4 - Building Interactive Front-Ends

Section 5 - Real Projects with Ethereum

Section 6 - Ethereum Project Infrastructure

Section 7 - Advanced Multi-Page Front-Ends

Appendix - Basic React

References