The problem of identity has attracted a whole flock of developers in the blockchain and distributed ledger space who see these technologies as a way to scoop up all the scraps of an individual’s online identity, consolidate them and put them under the individual’s control. These include Sovrin, Civic, ShoCard and uPort among others. This talk discusses some of the challenges with identity on the internet and the potential benefits that blockchain technology can offer. It also outlines the concepts of creating identities on a blockchain and attaching trusted endorsements or seals to those identities that can be used to provide evidence that some due diligence or verification event has been carried out by a trusted organization without storing “Personal Data” or “Personally Identifiable Information (PII)” on a shared distributed ledger.
2. 2
• Introduction to Ethereum (10 mins)
• Hands on – create a token (30 mins)
• Join private Ethereum network (10 mins)
• Deploy and interact with token on Testnet (10 mins)
3. 3
• Second biggest blockchain, after Bitcoin
• Contains a virtual machine that allows powerful Smart Contracts
• Ambitious goal: to become the ‘World Computer’
5. 5
An Initial Coin Offering (ICO) is a new way of fund raising.
It is similar to an IPO, but investors buy digital coins or tokens instead of stocks in a
company.
Ethereum itself raised $17 m through an ICO in 2014.
In Q2 2017 $1.4 billion was raised through ICOs
• Tezos - $232 m
• Bancor - $153 m
• Status - $95 m
• TenX - $83 m
ICOs have been criticized for having no regulation, although in the US the SEC have said
that they will treat certain ICO tokens as securities.
6. 6
• Bitcoin has a limited scripting language.
• Ethereum has Turing-complete programming language.
• Smart Contracts are written in Solidity.
• Smart Contracts are analogous to classes.
• Calling a Smart Contract costs money.
8. 8
Bugs in Smart Contracts can have serious financial repercussions!
June 2016, a bug in the DAO contract caused a loss of $70 million
July 2017, a bug in the Parity wallet allowed an attacker to steal $32 million
13. 13
Truffle is a development framework for Ethereum.
Testrpc is an Ethereum simulator for testing and development.
1. Run testrpc in another console: ./node_modules/.bin/testrpc
2. ./node_modules/.bin/truffle deploy
3. ./node_modules/.bin/truffle test
14. 14
Web3 is a javascript library that communicates with a local Ethereum node.
1. ./node_modules/.bin/webpack
2. Start a webserver e.g. php -S localhost:8000 -t build/app
3. Open http://localhost:8000/ in a browser
15. 15
Geth is an Ethereum client, included in Mist.
To join a private network, you need the genesis file and the network ID.
1. cd rtcnet
2. ./rtcnet_console.sh
3. personal.newAccount()
4. (optional) ./rtcnet_miner.sh