SlideShare a Scribd company logo
1 of 61
Blockchain, Ethereum and
Business Applications
@ZimMatthias Matthias Zimmermann
BSI Business Systems Integration AG
Crypto Currencies Market
Bitcoin
First decentralized digital currency
• By «Satoshi Nakamoto»
• White Paper 2008
• Open Source Software 2009
Coffee at Bob‘s
Address
Amount [B]
Name Recipient
1GdK9UzpHBzqzX2A9JFP3Di4weBwqgmoQA
0.015
Bob's Café
Source: «Mastering Bitcoin», Andreas M. Antonopoulos
Addresses corresponds to «Accounts»
Encoded Numbers
 Example: 1GdK9UzpHBzqzX2A9JFP3Di4weBwqgmoQA
 Derived from a private Key
 Private key is 256-Bit random number
Getting, using and loosing Accounts
 Create your account with «Coin, Paper and Pencil»
 No ID required, no showing up at local branch, …
 To send Bitcoins you need your private Key
 You loose your private key  you loose your money
What is a Bitcoin Address?
 Bitcoin network
confirms coffee TX
after ~ 10 min.
 TX Elements
The Coffee Transaction
Bob’s Address Coffee Price
My Address
Link to TX Block
Screenshot: blockchain.info
Change (back to me)
TX Fee
Coffee TX
 Block #277316
includes coffee TX
 Block Elements
Genesis Block
TX Blocks and the Blockchain
419 TX (€495,000)
Link to revious Block#277316
#277315
#2
#1
Screenshot: blockchain.info
Block Hash – do you see the
leading zeros?
From Transactions to Blocks (Mining)
1. New TX are propagatet through Bitcoin peer-to-peer network
2. Bitcoin client verifies new TX and adds it to local «mempool»
3. Client starts to «mine» transactions:
− Assemble TX from mempool to block candidate
− Starts to solve the block candidate’s crypto challenge
− Computes MANY hashes to solve the crypto challenge
− Client solving the challenge first, gets block reward and all TX fees
3. Winning client sends the new block to its peers
4. Arrival of new block triggers the next challenge
From Transactions to Blocks (Mining)
Creation of new Bitcoins
1.5 x 1018
IGraph: blockchain.info
Bitcoin Mining Today
 Mining-pools: Include many ASIC computers (PC way too slow)
 AntMiner: 10,000x faster than PC, burns 10x more electricity
 Energy Costs: # of hashes per KWh is central criteria + cooling(!)
Hashing Power over the Years
The Challenge
 Mining clients build block candidates independently
 Several new blocks might be found at the «same» time
 Clients may receive new blocks that are inconsistent
 The local copy of the blockchain may have forks
The Solution
 The «true» blockchain is defined by the highest cumulative PoW (difficulty)
 By selecting the greatest-difficulty chain, eventual consensus is achieved
 Miner majority vote defines the true chain
 Miners «vote» for the true chain by deciding which block/fork to extend
Distributed Consensus Mechanism
Preventing Forks
? ?
Attacking Bitcoin (any PoW Blockchain)
1. Install more mining capacity than the rest of the world (>= 51%)
2. Censor/suppress unwanted TX
3. Mine a secret branch containing acceptable TX
4. Continue to mine until PoW of secret branch exceeds official branch
5. Broadcast secret branch to Bitcoin network
6. All Bitcoin clients will switch to this new branch
Ok, this is kind of hard – but:
 Miners earn ~1.2bn/year
 HW cost to match Bitcoin mining capacity: ~ $400m (Antminer 9s)
«Unhappy with some TX?»
The 51% Attack
Current Issues
 Increasing TX backlogs
 TX confirmation can take hours (instead of 10’)
 Increasing TX fees
 «War» between Bitcoin Core and Bitcoin Unlimited (Scaling Debate)
 Decreasing market share
Bitcoin Challenges
Bitcoin Market Share
Bitcoin Price
Bitcoin Success
 Completely decentral currency (no need for central banks)
 Open Source (GitHub) and Open Data (complete TX history)
 First successful implementation of any crypto currency
 «Gold Standard» since 2009
 Record price levels
Bitcoin Challenges
 Declining market share
 Scaling debate/war
Bitcoin Recap
Bitcoin Resources
Ethereum
Decentralized Smart Contracts
• 2014 by Vitalik Buterin
• Distributed Turing complete VM
• Open source software 2014
• Is crypto currency too
Ethereum vs Bitcoin
Common Traits
 Local clients/nodes with complete blockchain (open data)
 Concepts of addresses, transactions, mining
 Virtual currency Ether
 Open source
Main Differences
 Specification with different implementations (Bitcoin: single client)
 Turing complete scripting (Bitcoin: very limited scripting)
 Ether is currency unit (1 Ether ~ 87$ 17.05.17)
 Wei is smallest denomination (10-18 Ether)
 TX mining: Proof of Work (PoW)
 Distributed consensus like Bitcoin (true chain == highest cumulative PoW)
Storing Information
 Ethereum clients: Maintain blockchain data + state data
 State data: Account balances + nonces
 Transaction data: Ether transfers
Ethereum as Virtual Currency Platform
Ethereum and App Integration
Ethereum Client
Geth/TestRPC/…
Ethereum
Peer-to-Peer Network
Interface
http://localhost:8545 JSON-RPC
JavaScript
web3 web3j
Java
Ideal Development Setup
 Offline, repeatable, fast
 Java (this is a JUG talk after all)
We can have all this 
 Docker (repeatable, shareable)
 TestRPC (offline + local blockchain /w immediate TX confirmations)
 Web3j (Ethereum Java Library)
Ethereum Hands-on
TestRPC Docker Image
Running TestRPC
container
Open shell in container
Start node.js
TestRPC initial accounts
Get initial balance
New balance
Send 123456789 Weis
 Java implementation of JSON-RPC client API
 A couple of other features
 Android support
web3j: Ethereum and Java
web3j: Creating and Sending TX
How nonces are used
 Each account has a nonce value (account state data)
 Accounts start with nonce value 0
 TX: includes sender address and its nonce value
 TX can only be mined if:
− Account has sufficient funds
− TX nonce == current account nonce
 If TX is mined successfully: Nonce increased by 1
Ethereum Accounts and Nonces
What is gas?
 Special unit to pay fees to mining nodes
 Gas has price in Ethers (decouples computing costs and Ether price)
What fees?
 Computations performed by Ethereum Virtual Machine (EVM)
 EVM is working as long as there is gas
 Example 1: SHA3 computation costs 30 gas
 Example 2: EVM always terminates (stays in infinite loop until gas runs out)
Ethereum, Gas and TX Fees
Smart Contracts
What is a Smart Contract?
 Piece of (byte) code
 Is executed by the Ethereum Virtual Machine (EVM)
 Has an owner
 Has a life cycle
 Might have some purpose
Examples
1. The DAO
2. Flight delay insurance
3. «Truly» autonomous cars
Ethereum Smart Contracts
 Distributed venture capital fund
 Amount raised $150,000,000
 Largest crowdfunding project
 Successfully «attacked»
Attack Result: Ethereum hard fork
 ETH «true» blockchain
 ETC «forked» blockchain
The DAO (2016)
 Involves Oraclize service to access flightstats.com
Flight Delay App
 Smart contract to ordering vehicle to transport goods/people
 Smart contract to pay for energy/services
«Truly» Autonomous Cars
Deploying and using Smart Contracts
1. Write contract in high level language (eg. Solidity)
2. Compile contract to EVM byte-code
3. Pack byte code into a contract creation TX and sent to the network
4. The TX gets ist own contract account
5. Contract account has address, balance, nonce and holds byte code
6. Invoke methods using calls (free) or transactions (cost gas)
Smart Contracts Life Cycle
«Hello World» (greeter.sol)
greeter.sol ++
- additional state
- ‘payable’
Solidity Compiler (online)
byte code (EVM)
to deploy contract
Deploy script (JS)
Deploy (Console)
Contract address
Successs 
From Solidity to Java Contract Class
1. Compile greeter.sol (e.g using online compiler)
 greeter.bin, greeter.abi
2. Create contract wrapper class (use Web3j command line tool)
 Greeter.java
1. Use Greeter.java in your Java code
web3j: greeter.sol  Greeter.java
Generated Contract Wrapper
Live Cycle in Java
Deployment
Trading-Network Demo
Ethereum, web3j, Eclipse Scout
Use Case
 Currency Hedging: Buy orders and Sell orders (€ / US$)
 Classical Business App
− Idendity Management for mapping real persons BC addresses
− User Interface
 Blockchain Benefits
− Efficiency: No central organization/infrastructure
− Trust: Tampering-proof ledger, trust by blockchain
Trading Network Demo
 Plain Java Application Model
 Multi-Device Support
 HTML5/CSS3 Rendering
Eclipse Scout
Business Application Framework
PostgreSQLEthereum Client
TestRPC
web3
Eclipse Scout
Backend
web3j JDBC
Eclipse Scout
UI (web application)
Resources
What next?
Gist
 Cool new technology, including much hype 
 Internet of decentralized trust
Blockchain Technology is great for
 Efficient value exchange for untrusted environments
 Pushes distributed business models
 Option for the «unbanked»
Current Challenges
 Privacy
 Scalability
 Maturity (blockchain still in ist infancy)
Blockchain Summary
Socalizing
 Go to talks
 Join meetups (Bitcoin Meetup Switzerland, Blockchain Meetup Switzerland,
Crypto Valley Forum, …)
Increase Context
 Youtube, Blogs, Twitter, …
Doing
 GitHub (web3j/web3j, matthiaszimmermann/web3j_demo, …)
Next Steps
«Recipe»
1. Curious about new technologies? Take yourself seriously!
2. Invest some of your time
3. Take advantage of your education options (time, money, …)
4. Building small teams makes it even more fun
5. Create value for your employer (internal, external)
6. Do it!
Everybody can do this 
Thanks!
@ZimMatthias

More Related Content

What's hot

20170620 MEETUP intro to blockchain and smart contracts (1)
20170620 MEETUP intro to blockchain and smart contracts (1)20170620 MEETUP intro to blockchain and smart contracts (1)
20170620 MEETUP intro to blockchain and smart contracts (1)Brussels Legal Hackers
 
Introduction to blockchain and smart contracts
Introduction to blockchain and smart contractsIntroduction to blockchain and smart contracts
Introduction to blockchain and smart contractsValidity Labs
 
Blockchain - Presentacion Betabeers Galicia 10/12/2014
Blockchain - Presentacion Betabeers Galicia 10/12/2014Blockchain - Presentacion Betabeers Galicia 10/12/2014
Blockchain - Presentacion Betabeers Galicia 10/12/2014WeKCo Coworking
 
Blockchain overview, use cases, implementations and challenges
Blockchain overview, use cases, implementations and challengesBlockchain overview, use cases, implementations and challenges
Blockchain overview, use cases, implementations and challengesSébastien Tandel
 
Bitcoin: What You Need to Know
Bitcoin: What You Need to KnowBitcoin: What You Need to Know
Bitcoin: What You Need to KnowPortia Burton
 
Bitcoin, Banking and the Blockchain
Bitcoin, Banking and the BlockchainBitcoin, Banking and the Blockchain
Bitcoin, Banking and the Blockchainseancarmody
 
Payment Protocols - Block Chain & Beyond
Payment Protocols - Block Chain & BeyondPayment Protocols - Block Chain & Beyond
Payment Protocols - Block Chain & BeyondAlexander Kiriakou
 
Ethereum Blockchain with Smart contract and ERC20
Ethereum Blockchain with Smart contract and ERC20Ethereum Blockchain with Smart contract and ERC20
Ethereum Blockchain with Smart contract and ERC20Truong Nguyen
 
Blockchain Technology: A Technical Introduction to Non-Technical People
Blockchain Technology: A Technical Introduction to Non-Technical PeopleBlockchain Technology: A Technical Introduction to Non-Technical People
Blockchain Technology: A Technical Introduction to Non-Technical PeopleMecklerMedia
 
Understanding blockchain
Understanding blockchainUnderstanding blockchain
Understanding blockchainPriyab Satoshi
 
The Blockchain - The Technology behind Bitcoin
The Blockchain - The Technology behind Bitcoin The Blockchain - The Technology behind Bitcoin
The Blockchain - The Technology behind Bitcoin Jérôme Kehrli
 
The curious case of Blockchain Technology
The curious case of Blockchain TechnologyThe curious case of Blockchain Technology
The curious case of Blockchain TechnologyRitesh Mehrotra
 
Definition of Cryptocurrency
Definition of CryptocurrencyDefinition of Cryptocurrency
Definition of Cryptocurrencyterihagh
 
Blockchain Ecosystem and Cryptocurrency Regulations
Blockchain Ecosystem and Cryptocurrency RegulationsBlockchain Ecosystem and Cryptocurrency Regulations
Blockchain Ecosystem and Cryptocurrency RegulationsAmir Rafati
 
Blockchain - A Solution For Nothing
Blockchain - A Solution For NothingBlockchain - A Solution For Nothing
Blockchain - A Solution For NothingYash Gadhiya
 
CBGTBT - Part 1 - Workshop introduction & primer
CBGTBT - Part 1 - Workshop introduction & primerCBGTBT - Part 1 - Workshop introduction & primer
CBGTBT - Part 1 - Workshop introduction & primerBlockstrap.com
 
Blockchain, cryptography, and consensus
Blockchain, cryptography, and consensusBlockchain, cryptography, and consensus
Blockchain, cryptography, and consensusITU
 
Namecoin Primecoin Potcoin
Namecoin Primecoin Potcoin Namecoin Primecoin Potcoin
Namecoin Primecoin Potcoin PiotrMatuszak3
 
Blockchain And Cryptocurrency : How Blockchain And Cryptocurrency Relate To E...
Blockchain And Cryptocurrency : How Blockchain And Cryptocurrency Relate To E...Blockchain And Cryptocurrency : How Blockchain And Cryptocurrency Relate To E...
Blockchain And Cryptocurrency : How Blockchain And Cryptocurrency Relate To E...Blockchain Council
 
Demysitifying Bitcoin and Blockchain
Demysitifying Bitcoin and Blockchain Demysitifying Bitcoin and Blockchain
Demysitifying Bitcoin and Blockchain Ganesh Kondal
 

What's hot (20)

20170620 MEETUP intro to blockchain and smart contracts (1)
20170620 MEETUP intro to blockchain and smart contracts (1)20170620 MEETUP intro to blockchain and smart contracts (1)
20170620 MEETUP intro to blockchain and smart contracts (1)
 
Introduction to blockchain and smart contracts
Introduction to blockchain and smart contractsIntroduction to blockchain and smart contracts
Introduction to blockchain and smart contracts
 
Blockchain - Presentacion Betabeers Galicia 10/12/2014
Blockchain - Presentacion Betabeers Galicia 10/12/2014Blockchain - Presentacion Betabeers Galicia 10/12/2014
Blockchain - Presentacion Betabeers Galicia 10/12/2014
 
Blockchain overview, use cases, implementations and challenges
Blockchain overview, use cases, implementations and challengesBlockchain overview, use cases, implementations and challenges
Blockchain overview, use cases, implementations and challenges
 
Bitcoin: What You Need to Know
Bitcoin: What You Need to KnowBitcoin: What You Need to Know
Bitcoin: What You Need to Know
 
Bitcoin, Banking and the Blockchain
Bitcoin, Banking and the BlockchainBitcoin, Banking and the Blockchain
Bitcoin, Banking and the Blockchain
 
Payment Protocols - Block Chain & Beyond
Payment Protocols - Block Chain & BeyondPayment Protocols - Block Chain & Beyond
Payment Protocols - Block Chain & Beyond
 
Ethereum Blockchain with Smart contract and ERC20
Ethereum Blockchain with Smart contract and ERC20Ethereum Blockchain with Smart contract and ERC20
Ethereum Blockchain with Smart contract and ERC20
 
Blockchain Technology: A Technical Introduction to Non-Technical People
Blockchain Technology: A Technical Introduction to Non-Technical PeopleBlockchain Technology: A Technical Introduction to Non-Technical People
Blockchain Technology: A Technical Introduction to Non-Technical People
 
Understanding blockchain
Understanding blockchainUnderstanding blockchain
Understanding blockchain
 
The Blockchain - The Technology behind Bitcoin
The Blockchain - The Technology behind Bitcoin The Blockchain - The Technology behind Bitcoin
The Blockchain - The Technology behind Bitcoin
 
The curious case of Blockchain Technology
The curious case of Blockchain TechnologyThe curious case of Blockchain Technology
The curious case of Blockchain Technology
 
Definition of Cryptocurrency
Definition of CryptocurrencyDefinition of Cryptocurrency
Definition of Cryptocurrency
 
Blockchain Ecosystem and Cryptocurrency Regulations
Blockchain Ecosystem and Cryptocurrency RegulationsBlockchain Ecosystem and Cryptocurrency Regulations
Blockchain Ecosystem and Cryptocurrency Regulations
 
Blockchain - A Solution For Nothing
Blockchain - A Solution For NothingBlockchain - A Solution For Nothing
Blockchain - A Solution For Nothing
 
CBGTBT - Part 1 - Workshop introduction & primer
CBGTBT - Part 1 - Workshop introduction & primerCBGTBT - Part 1 - Workshop introduction & primer
CBGTBT - Part 1 - Workshop introduction & primer
 
Blockchain, cryptography, and consensus
Blockchain, cryptography, and consensusBlockchain, cryptography, and consensus
Blockchain, cryptography, and consensus
 
Namecoin Primecoin Potcoin
Namecoin Primecoin Potcoin Namecoin Primecoin Potcoin
Namecoin Primecoin Potcoin
 
Blockchain And Cryptocurrency : How Blockchain And Cryptocurrency Relate To E...
Blockchain And Cryptocurrency : How Blockchain And Cryptocurrency Relate To E...Blockchain And Cryptocurrency : How Blockchain And Cryptocurrency Relate To E...
Blockchain And Cryptocurrency : How Blockchain And Cryptocurrency Relate To E...
 
Demysitifying Bitcoin and Blockchain
Demysitifying Bitcoin and Blockchain Demysitifying Bitcoin and Blockchain
Demysitifying Bitcoin and Blockchain
 

Viewers also liked

Blockchain supply chains v0.4
Blockchain supply chains v0.4Blockchain supply chains v0.4
Blockchain supply chains v0.4Luca Mauri
 
Practical Applications of Block Chain Technologies
Practical Applications of Block Chain Technologies Practical Applications of Block Chain Technologies
Practical Applications of Block Chain Technologies Priyanka Aash
 
Business intelligence v0.3
Business intelligence v0.3Business intelligence v0.3
Business intelligence v0.3Luca Mauri
 
Mougayar the ethereum ecosystem - eth hackathon-waterloo 2017
Mougayar the ethereum ecosystem - eth hackathon-waterloo 2017Mougayar the ethereum ecosystem - eth hackathon-waterloo 2017
Mougayar the ethereum ecosystem - eth hackathon-waterloo 2017The Business Blockchain
 

Viewers also liked (7)

The Future of Blockchain Applications
The Future of Blockchain ApplicationsThe Future of Blockchain Applications
The Future of Blockchain Applications
 
Blockchain supply chains v0.4
Blockchain supply chains v0.4Blockchain supply chains v0.4
Blockchain supply chains v0.4
 
Practical Applications of Block Chain Technologies
Practical Applications of Block Chain Technologies Practical Applications of Block Chain Technologies
Practical Applications of Block Chain Technologies
 
Business intelligence v0.3
Business intelligence v0.3Business intelligence v0.3
Business intelligence v0.3
 
Mougayar the ethereum ecosystem - eth hackathon-waterloo 2017
Mougayar the ethereum ecosystem - eth hackathon-waterloo 2017Mougayar the ethereum ecosystem - eth hackathon-waterloo 2017
Mougayar the ethereum ecosystem - eth hackathon-waterloo 2017
 
Understanding Blockchain
Understanding BlockchainUnderstanding Blockchain
Understanding Blockchain
 
Blockchain 2.0
Blockchain 2.0Blockchain 2.0
Blockchain 2.0
 

Similar to Blockchain, Ethereum and Business Applications

Eclipsecon Europe: Blockchain, Ethereum and Business Applications
Eclipsecon Europe: Blockchain, Ethereum and Business ApplicationsEclipsecon Europe: Blockchain, Ethereum and Business Applications
Eclipsecon Europe: Blockchain, Ethereum and Business ApplicationsMatthias Zimmermann
 
Dappsmedia smartcontract _write_smartcontracts_on_console_ethereum
Dappsmedia smartcontract _write_smartcontracts_on_console_ethereumDappsmedia smartcontract _write_smartcontracts_on_console_ethereum
Dappsmedia smartcontract _write_smartcontracts_on_console_ethereumTomoaki Sato
 
BCHGraz - Meetup #8 - Intro & Ethereum
 BCHGraz - Meetup #8 - Intro & Ethereum BCHGraz - Meetup #8 - Intro & Ethereum
BCHGraz - Meetup #8 - Intro & EthereumBlockchainHub Graz
 
Blockchain for Developers
Blockchain for DevelopersBlockchain for Developers
Blockchain for DevelopersShimi Bandiel
 
Ethereum Block Chain
Ethereum Block ChainEthereum Block Chain
Ethereum Block ChainSanatPandoh
 
Economías criptográficas
Economías criptográficasEconomías criptográficas
Economías criptográficasnavajanegra
 
Resource slides for blockchain related question
Resource slides for blockchain related questionResource slides for blockchain related question
Resource slides for blockchain related questionLin Lin (Wendy)
 
Ergo Presentation - Tokyo
Ergo Presentation - TokyoErgo Presentation - Tokyo
Ergo Presentation - TokyoAlex Chepurnoy
 
Blockchain an introduction_n_li
Blockchain an introduction_n_liBlockchain an introduction_n_li
Blockchain an introduction_n_linikinew1
 
EthereumBlockchainMarch3 (1).pptx
EthereumBlockchainMarch3 (1).pptxEthereumBlockchainMarch3 (1).pptx
EthereumBlockchainMarch3 (1).pptxWijdenBenothmen1
 
Building Apps with Ethereum Smart Contract
Building Apps with Ethereum Smart ContractBuilding Apps with Ethereum Smart Contract
Building Apps with Ethereum Smart ContractVaideeswaran Sethuraman
 
The Bitcoin Rocketship @ BTC Miami 2015
The Bitcoin Rocketship @ BTC Miami 2015The Bitcoin Rocketship @ BTC Miami 2015
The Bitcoin Rocketship @ BTC Miami 2015Jeff Garzik
 
Ethereum: From there to here, and ownards yonder
Ethereum: From there to here, and ownards yonderEthereum: From there to here, and ownards yonder
Ethereum: From there to here, and ownards yondergavofyork
 

Similar to Blockchain, Ethereum and Business Applications (20)

Eclipsecon Europe: Blockchain, Ethereum and Business Applications
Eclipsecon Europe: Blockchain, Ethereum and Business ApplicationsEclipsecon Europe: Blockchain, Ethereum and Business Applications
Eclipsecon Europe: Blockchain, Ethereum and Business Applications
 
Dappsmedia smartcontract _write_smartcontracts_on_console_ethereum
Dappsmedia smartcontract _write_smartcontracts_on_console_ethereumDappsmedia smartcontract _write_smartcontracts_on_console_ethereum
Dappsmedia smartcontract _write_smartcontracts_on_console_ethereum
 
BCHGraz - Meetup #8 - Intro & Ethereum
 BCHGraz - Meetup #8 - Intro & Ethereum BCHGraz - Meetup #8 - Intro & Ethereum
BCHGraz - Meetup #8 - Intro & Ethereum
 
Blockchain for Developers
Blockchain for DevelopersBlockchain for Developers
Blockchain for Developers
 
Ethereum Block Chain
Ethereum Block ChainEthereum Block Chain
Ethereum Block Chain
 
Ethereum bxl
Ethereum bxlEthereum bxl
Ethereum bxl
 
Economías criptográficas
Economías criptográficasEconomías criptográficas
Economías criptográficas
 
Ethereum
EthereumEthereum
Ethereum
 
Resource slides for blockchain related question
Resource slides for blockchain related questionResource slides for blockchain related question
Resource slides for blockchain related question
 
Ergo Presentation - Tokyo
Ergo Presentation - TokyoErgo Presentation - Tokyo
Ergo Presentation - Tokyo
 
Blockchain an introduction_n_li
Blockchain an introduction_n_liBlockchain an introduction_n_li
Blockchain an introduction_n_li
 
An Introduction to Blockchains
An Introduction to BlockchainsAn Introduction to Blockchains
An Introduction to Blockchains
 
Block chain introduction
Block chain introductionBlock chain introduction
Block chain introduction
 
EthereumBlockchainMarch3 (1).pptx
EthereumBlockchainMarch3 (1).pptxEthereumBlockchainMarch3 (1).pptx
EthereumBlockchainMarch3 (1).pptx
 
Introduction to Blockchain and Ethereum
Introduction to Blockchain and EthereumIntroduction to Blockchain and Ethereum
Introduction to Blockchain and Ethereum
 
Blockchain
BlockchainBlockchain
Blockchain
 
Building Apps with Ethereum Smart Contract
Building Apps with Ethereum Smart ContractBuilding Apps with Ethereum Smart Contract
Building Apps with Ethereum Smart Contract
 
The Bitcoin Rocketship @ BTC Miami 2015
The Bitcoin Rocketship @ BTC Miami 2015The Bitcoin Rocketship @ BTC Miami 2015
The Bitcoin Rocketship @ BTC Miami 2015
 
Bitcoin
BitcoinBitcoin
Bitcoin
 
Ethereum: From there to here, and ownards yonder
Ethereum: From there to here, and ownards yonderEthereum: From there to here, and ownards yonder
Ethereum: From there to here, and ownards yonder
 

Recently uploaded

Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 

Recently uploaded (20)

Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Odoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting ServiceOdoo Development Company in India | Devintelle Consulting Service
Odoo Development Company in India | Devintelle Consulting Service
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 

Blockchain, Ethereum and Business Applications

  • 1. Blockchain, Ethereum and Business Applications @ZimMatthias Matthias Zimmermann BSI Business Systems Integration AG
  • 2.
  • 5. First decentralized digital currency • By «Satoshi Nakamoto» • White Paper 2008 • Open Source Software 2009
  • 6.
  • 7. Coffee at Bob‘s Address Amount [B] Name Recipient 1GdK9UzpHBzqzX2A9JFP3Di4weBwqgmoQA 0.015 Bob's Café Source: «Mastering Bitcoin», Andreas M. Antonopoulos
  • 8. Addresses corresponds to «Accounts» Encoded Numbers  Example: 1GdK9UzpHBzqzX2A9JFP3Di4weBwqgmoQA  Derived from a private Key  Private key is 256-Bit random number Getting, using and loosing Accounts  Create your account with «Coin, Paper and Pencil»  No ID required, no showing up at local branch, …  To send Bitcoins you need your private Key  You loose your private key  you loose your money What is a Bitcoin Address?
  • 9.  Bitcoin network confirms coffee TX after ~ 10 min.  TX Elements The Coffee Transaction Bob’s Address Coffee Price My Address Link to TX Block Screenshot: blockchain.info Change (back to me) TX Fee Coffee TX
  • 10.  Block #277316 includes coffee TX  Block Elements Genesis Block TX Blocks and the Blockchain 419 TX (€495,000) Link to revious Block#277316 #277315 #2 #1 Screenshot: blockchain.info Block Hash – do you see the leading zeros?
  • 11. From Transactions to Blocks (Mining)
  • 12. 1. New TX are propagatet through Bitcoin peer-to-peer network 2. Bitcoin client verifies new TX and adds it to local «mempool» 3. Client starts to «mine» transactions: − Assemble TX from mempool to block candidate − Starts to solve the block candidate’s crypto challenge − Computes MANY hashes to solve the crypto challenge − Client solving the challenge first, gets block reward and all TX fees 3. Winning client sends the new block to its peers 4. Arrival of new block triggers the next challenge From Transactions to Blocks (Mining) Creation of new Bitcoins
  • 13. 1.5 x 1018 IGraph: blockchain.info Bitcoin Mining Today  Mining-pools: Include many ASIC computers (PC way too slow)  AntMiner: 10,000x faster than PC, burns 10x more electricity  Energy Costs: # of hashes per KWh is central criteria + cooling(!) Hashing Power over the Years
  • 14. The Challenge  Mining clients build block candidates independently  Several new blocks might be found at the «same» time  Clients may receive new blocks that are inconsistent  The local copy of the blockchain may have forks The Solution  The «true» blockchain is defined by the highest cumulative PoW (difficulty)  By selecting the greatest-difficulty chain, eventual consensus is achieved  Miner majority vote defines the true chain  Miners «vote» for the true chain by deciding which block/fork to extend Distributed Consensus Mechanism Preventing Forks ? ?
  • 15. Attacking Bitcoin (any PoW Blockchain) 1. Install more mining capacity than the rest of the world (>= 51%) 2. Censor/suppress unwanted TX 3. Mine a secret branch containing acceptable TX 4. Continue to mine until PoW of secret branch exceeds official branch 5. Broadcast secret branch to Bitcoin network 6. All Bitcoin clients will switch to this new branch Ok, this is kind of hard – but:  Miners earn ~1.2bn/year  HW cost to match Bitcoin mining capacity: ~ $400m (Antminer 9s) «Unhappy with some TX?» The 51% Attack
  • 16. Current Issues  Increasing TX backlogs  TX confirmation can take hours (instead of 10’)  Increasing TX fees  «War» between Bitcoin Core and Bitcoin Unlimited (Scaling Debate)  Decreasing market share Bitcoin Challenges
  • 19. Bitcoin Success  Completely decentral currency (no need for central banks)  Open Source (GitHub) and Open Data (complete TX history)  First successful implementation of any crypto currency  «Gold Standard» since 2009  Record price levels Bitcoin Challenges  Declining market share  Scaling debate/war Bitcoin Recap
  • 22. Decentralized Smart Contracts • 2014 by Vitalik Buterin • Distributed Turing complete VM • Open source software 2014 • Is crypto currency too
  • 23. Ethereum vs Bitcoin Common Traits  Local clients/nodes with complete blockchain (open data)  Concepts of addresses, transactions, mining  Virtual currency Ether  Open source Main Differences  Specification with different implementations (Bitcoin: single client)  Turing complete scripting (Bitcoin: very limited scripting)
  • 24.  Ether is currency unit (1 Ether ~ 87$ 17.05.17)  Wei is smallest denomination (10-18 Ether)  TX mining: Proof of Work (PoW)  Distributed consensus like Bitcoin (true chain == highest cumulative PoW) Storing Information  Ethereum clients: Maintain blockchain data + state data  State data: Account balances + nonces  Transaction data: Ether transfers Ethereum as Virtual Currency Platform
  • 25. Ethereum and App Integration Ethereum Client Geth/TestRPC/… Ethereum Peer-to-Peer Network Interface http://localhost:8545 JSON-RPC JavaScript web3 web3j Java
  • 26. Ideal Development Setup  Offline, repeatable, fast  Java (this is a JUG talk after all) We can have all this   Docker (repeatable, shareable)  TestRPC (offline + local blockchain /w immediate TX confirmations)  Web3j (Ethereum Java Library) Ethereum Hands-on
  • 28. Running TestRPC container Open shell in container Start node.js
  • 29. TestRPC initial accounts Get initial balance New balance Send 123456789 Weis
  • 30.  Java implementation of JSON-RPC client API  A couple of other features  Android support web3j: Ethereum and Java
  • 31.
  • 32. web3j: Creating and Sending TX
  • 33. How nonces are used  Each account has a nonce value (account state data)  Accounts start with nonce value 0  TX: includes sender address and its nonce value  TX can only be mined if: − Account has sufficient funds − TX nonce == current account nonce  If TX is mined successfully: Nonce increased by 1 Ethereum Accounts and Nonces
  • 34. What is gas?  Special unit to pay fees to mining nodes  Gas has price in Ethers (decouples computing costs and Ether price) What fees?  Computations performed by Ethereum Virtual Machine (EVM)  EVM is working as long as there is gas  Example 1: SHA3 computation costs 30 gas  Example 2: EVM always terminates (stays in infinite loop until gas runs out) Ethereum, Gas and TX Fees
  • 36. What is a Smart Contract?  Piece of (byte) code  Is executed by the Ethereum Virtual Machine (EVM)  Has an owner  Has a life cycle  Might have some purpose Examples 1. The DAO 2. Flight delay insurance 3. «Truly» autonomous cars Ethereum Smart Contracts
  • 37.  Distributed venture capital fund  Amount raised $150,000,000  Largest crowdfunding project  Successfully «attacked» Attack Result: Ethereum hard fork  ETH «true» blockchain  ETC «forked» blockchain The DAO (2016)
  • 38.  Involves Oraclize service to access flightstats.com Flight Delay App
  • 39.  Smart contract to ordering vehicle to transport goods/people  Smart contract to pay for energy/services «Truly» Autonomous Cars
  • 40. Deploying and using Smart Contracts 1. Write contract in high level language (eg. Solidity) 2. Compile contract to EVM byte-code 3. Pack byte code into a contract creation TX and sent to the network 4. The TX gets ist own contract account 5. Contract account has address, balance, nonce and holds byte code 6. Invoke methods using calls (free) or transactions (cost gas) Smart Contracts Life Cycle
  • 42. greeter.sol ++ - additional state - ‘payable’
  • 43. Solidity Compiler (online) byte code (EVM) to deploy contract Deploy script (JS)
  • 45. From Solidity to Java Contract Class 1. Compile greeter.sol (e.g using online compiler)  greeter.bin, greeter.abi 2. Create contract wrapper class (use Web3j command line tool)  Greeter.java 1. Use Greeter.java in your Java code web3j: greeter.sol  Greeter.java
  • 49.
  • 51. Use Case  Currency Hedging: Buy orders and Sell orders (€ / US$)  Classical Business App − Idendity Management for mapping real persons BC addresses − User Interface  Blockchain Benefits − Efficiency: No central organization/infrastructure − Trust: Tampering-proof ledger, trust by blockchain Trading Network Demo
  • 52.  Plain Java Application Model  Multi-Device Support  HTML5/CSS3 Rendering Eclipse Scout Business Application Framework
  • 54.
  • 55.
  • 58. Gist  Cool new technology, including much hype   Internet of decentralized trust Blockchain Technology is great for  Efficient value exchange for untrusted environments  Pushes distributed business models  Option for the «unbanked» Current Challenges  Privacy  Scalability  Maturity (blockchain still in ist infancy) Blockchain Summary
  • 59. Socalizing  Go to talks  Join meetups (Bitcoin Meetup Switzerland, Blockchain Meetup Switzerland, Crypto Valley Forum, …) Increase Context  Youtube, Blogs, Twitter, … Doing  GitHub (web3j/web3j, matthiaszimmermann/web3j_demo, …) Next Steps
  • 60. «Recipe» 1. Curious about new technologies? Take yourself seriously! 2. Invest some of your time 3. Take advantage of your education options (time, money, …) 4. Building small teams makes it even more fun 5. Create value for your employer (internal, external) 6. Do it! Everybody can do this 

Editor's Notes

  1. Wieso ist das spannend? weshalb sich das anhören? Coole neue technologie Thema kräftig am wachsen Definitiv nicht nur spinnerei https://bitcoinfoundation.org/ https://www.ethereum.org/foundation https://www.hyperledger.org/ https://www.aegon.com/en/Home/Investors/News-releases/2017/blockchain-initiative-b3i-gains-truly-international-scope/ http://cryptovalley.swiss/ https://ww2.frost.com/files/cache/a701d7ea2011161d4eaeed6364153683_f16618.jpg
  2. Bei blockchain geht es nicht nur um software und technologie, sondern auch um viel geld https://coinmarketcap.com/currencies/ (accessed 8.5.17) https://en.wikipedia.org/wiki/List_of_countries_by_GDP_(PPP) (accessed 8.5.17)
  3. Starten wir mit Bitcoin
  4. tx https://blockchain.info/tx/a662f0c533686128770b2604f36ce2015cf68382ede8dbd8f19ef9f8f45c6777 account https://blockchain.info/address/1Mk6LVarnMtf9YtU316NqKQESM44C3Ja1e
  5. Bei hashwert für diesen block: vom miner gefundene hashwert. Hashwerte sehen üblicherweise zufällig aus, dass dieser wert mit so viel nullen beginnt ist kein zufall, der wurde vom bitcoin client gefunden, der diesen block gemint hat. Wir werden etwas später noch auf das mining kommen.
  6. https://blockchain.info/unconfirmed-transactions https://blockchain.info/address/199kWQQSMfUWRaLJ7mVGN6SQjEHegC3gqD
  7. http://www.coindesk.com/blockchain-immutability-myth/ https://shop.bitmain.com/market.htm?name=antminer_s9_asic_bitcoin_miner
  8. http://www.coindesk.com/blockchain-immutability-myth/
  9. http://www.trustnodes.com/2017/05/16/bitcoins-market-share-falls-below-half-of-all-digital-currencies https://blockchain.info/de/charts/mempool-size?timespan=all https://github.com/bitcoin/bitcoin https://github.com/BitcoinUnlimited/BitcoinUnlimited
  10. https://coinmarketcap.com/charts/ (bottom of page)
  11. http://www.coindesk.com/price/ (accessed 8.5.17) https://blockchain.info/
  12. https://github.com/bitcoin/bitcoin https://github.com/bitcoinbook/bitcoinbook
  13. https://forum.ethereum.org/discussion/304/what-is-wei https://ethereum.stackexchange.com/questions/326/what-are-the-pros-and-cons-of-ethereum-balances-vs-utxos https://media.consensys.net/technical-introduction-to-events-and-logs-in-ethereum-a074d65dd61e
  14. https://github.com/ethereum/wiki/wiki/JSON-RPC https://github.com/ethereum/wiki/wiki/JavaScript-API https://github.com/web3j/web3j
  15. https://github.com/matthiaszimmermann/web3j_demo
  16. cd /usr/lib/node_modules/ethereumjs-testrpc/ node var Web3 = require('web3') var web3 = new Web3() web3.setProvider(new Web3.providers.HttpProvider('http://localhost:8545')) web3.eth.coinbase web3.fromWei(web3.eth.getBalance(web3.eth.coinbase), "ether") web3.eth.accounts web3.fromWei(web3.eth.getBalance(web3.eth.accounts[1]), "ether") web3.eth.sendTransaction({from: web3.eth.coinbase, to:web3.eth.accounts[1], value: web3.toWei(0.5, "ether")}) web3.fromWei(web3.eth.getBalance(web3.eth.accounts[1]), "ether") https://github.com/matthiaszimmermann/web3j_demo
  17. https://docs.web3j.io/
  18. https://docs.web3j.io/
  19. https://docs.web3j.io/
  20. https://ethereum.stackexchange.com/questions/3/what-is-gas-and-transaction-fee-in-ethereum
  21. https://blog.daohub.org/ethereum-dao-hard-fork-likely-on-july-20th-9ee8e2c12619
  22. https://fdd.etherisc.com/ http://www.oraclize.it/ http://www.flightstats.com
  23. http://www.trustnodes.com/2017/04/29/germanys-energy-giant-launches-100s-ethereum-based-electric-cars-charging-stations (29.4.17) https://www.theverge.com/2017/2/21/14687346/uber-self-driving-car-arizona-pilot-ducey-california (21.2.17)
  24. https://ethereum.github.io/browser-solidity/#version=soljson-v0.4.11+commit.68ef5810.js
  25. cd /usr/lib/node_modules/ethereumjs-testrpc/ node var Web3 = require('web3') var web3 = new Web3() web3.setProvider(new Web3.providers.HttpProvider('http://localhost:8545')) var _greeting = 'hello world'; var greeterContract = web3.eth.contract([{"constant":true,"inputs":[],"name":"deposits","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"kill","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"greet","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"inputs":[{"name":"_greeting","type":"string"}],"payable":false,"type":"constructor"},{"payable":true,"type":"fallback"}]); var greeter = greeterContract.new( _greeting, { from: web3.eth.accounts[0], data: '0x6060604052341561000c57fe5b604051610407380380610407833981016040528080518201919050505b33600060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060029080519060200190610080929190610090565b5060006001819055505b50610135565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106100d157805160ff19168380011785556100ff565b828001600101855582156100ff579182015b828111156100fe5782518255916020019190600101906100e3565b5b50905061010c9190610110565b5090565b61013291905b8082111561012e576000816000905550600101610116565b5090565b90565b6102c3806101446000396000f30060606040523615610055576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063323a5e0b1461006f57806341c0e1b514610095578063cfae3217146100a7575b61006d5b60016001600082825401925050819055505b565b005b341561007757fe5b61007f610140565b6040518082815260200191505060405180910390f35b341561009d57fe5b6100a5610146565b005b34156100af57fe5b6100b76101da565b6040518080602001828103825283818151815260200191508051906020019080838360008314610106575b805182526020831115610106576020820191506020810190506020830392506100e2565b505050905090810190601f1680156101325780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b60015481565b600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156101d757600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16ff5b5b565b6101e2610283565b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156102785780601f1061024d57610100808354040283529160200191610278565b820191906000526020600020905b81548152906001019060200180831161025b57829003601f168201915b505050505090505b90565b6020604051908101604052806000815250905600a165627a7a7230582068de189378347d9696c8e6b9ec4ab219cbf7e39fdf00babb6003c0bbea5cec5a0029', gas: '4700000' }, function (e, contract){ console.log(e, contract); if (typeof contract.address !== 'undefined') { console.log('Contract mined! address: ' + contract.address + ' transactionHash: ' + contract.transactionHash); } }); greeter.address greeter.greet() greeter.deposits() web3.fromWei(web3.eth.getBalance(greeter.address), "ether") web3.eth.sendTransaction({from: web3.eth.coinbase, to:greeter.address, value: web3.toWei(0.5, "ether")}) web3.fromWei(web3.eth.getBalance(greeter.address), "ether") greeter.deposits()
  26. https://github.com/BSI-Business-Systems-Integration-AG/trading-network/tree/features/matthiaszimmermann/jugch_talk_2017
  27. https://www.ethereum.org/ https://github.com/ethereum/
  28. https://github.com/web3j/web3j
  29. cd ~/Desktop/oss/events/2017/jug_blockchain_2017 java DummyBitcoinMiner 1
  30. https://poloniex.com/
  31. https://blockchain.info/charts/avg-confirmation-time