Blockchain technology allows strangers on the internet to agree on transactions without a central authority through the use of distributed ledgers, consensus algorithms, and cryptography. The Hyperledger project is developing open source blockchain frameworks and tools for businesses to create applications on permissioned blockchains. An example application tracks pork products in a supply chain using smart contracts on Hyperledger Fabric to provide transparency into where products come from.
5. A Technological Innovation
How is it possible that strangers on
the internet can agree on the
accounting of over $5,000,000,000
with no central authority?
6. A Technological Innovation
How is it possible that strangers on
the internet can agree on the
accounting of over $5,000,000,000
with no central authority?
Answer: Blockchain
9. Block—chain
• Hash — Fingerprint of data
Hash Function
SHA-256
All Things Open
2016!
699dcaa3389
af4a4a248e89
9a168132277
c28f2cee8d99
4f69815c9047
d6bcdc
10. Block—chain
• Block — Collection of transactions +
hash of previous block
Tx_1
Tx_2
Tx_3
…
Hash Function
SHA-256
bbf465d0c7b8
01a933714c4
a5200f0d74af
c80492f1b4ac
b3b48d51b94
3ef1e7
18. Asset Transfer
• Anything that is capable of being owned or
controlled to produce value, is an asset
• Two fundamental types of assets
– Tangible, e.g. a house
– Intangible e.g. a mortgage
• Intangible assets subdivide
– Financial, e.g. bond
– Intellectual e.g. patents
– Digital e.g. music
• Cash is also an asset
19. Transferring An Asset
• Asset is codified within a (smart) contract
• Asset is exchanged by updating contract state
through an available action
vehicleState:
var vin
var manufacturer
var make
var model
var year
var owner
vehicleContract:
createVehicle
scrapVehicle
updateOwner
22. Hyperledger Project
• Cross-industry collaborative effort to support
blockchain-based distributed ledgers
• Focused on ledgers designed to support global
business transactions
• Develop open protocols and standards for supporting
blockchain
• https://www.hyperledger.org/
23. How Is Hyperledger Different?
• Permissioned blockchain
• No miners or coins
• Provides a modular framework that supports different
components for different uses
• Other consensus schemes, like PBFT (Practical
Byzantine Fault Tolerance) may be used
26. Blockchain Network
Blockchain Network
Blockchain Application Web Application
End User
Transaction
HTTP Request
Browser, mobile, etc.
Chaincode (contract)
Chaincode
Peer
Ledger
Membership
Service
REST
27. • Docker images provided
• Single peer + membership service
• Four peers + membership service
Blockchain Network
Peer
Ledger
Membership
Service
28. Chaincode (Smart Contract)
Blockchain Network
Blockchain Application Web Application
End User
Transaction
HTTP Request
Browser, mobile, etc.
Chaincode (contract)
Chaincode
Peer
Ledger
Membership
Service
REST
29. • Implemented in Go
• Packaged together with dependencies
• Docker container running on the validating peer
Chaincode (Smart Contract)
Peer
Ledger
Chaincode
Query
Init
Invoke
30. • Stores the “account” state variable
• Invoke action adds value to “account”
• Query action retrieves the value of “account”
Crowd Funding Chaincode
Chaincode
Query
Init
Invoke
accountState:
var amount
accountContract:
addValue
31. Web Application
Blockchain Network
Blockchain Application Web Application
End User
Transaction
HTTP Request
Browser, mobile, etc.
Chaincode (contract)
Chaincode
Peer
Ledger
Membership
Service
REST
32. Web Application
Blockchain Network
Blockchain Application
Transaction
Chaincode
Peer
Ledger
Membership
Service
• Implemented with Node.js (uses the “hfc” NPM module)
• Registers and enrolls users
• Deploys, invokes, and queries the chaincode
Web Application
REST
33. Front End Application
Blockchain Network
Blockchain Application Web Application
End User
Transaction
HTTP Request
Browser, mobile, etc.
Chaincode (contract)
Chaincode
Peer
Ledger
Membership
Service
REST
34. Getting Started Tutorial: http://bit.ly/hyperledger-basics
Questions?
Anna Derbakova: adderbak@us.ibm.com
https://www.linkedin.com/in/annadderbakova
36. Proof of Work*
Alice Bob Chuck Dave
$100 $100 $100 $100
Honest Honest HonestDishonest
Our Simple
Bank has four
account holders
and no central
authority. How
can we reach
consensus on
our account
values?
*This simplistic example leaves out details for the purpose of explaining PoW in 5 minutes.
37. Proof of Work
Everyone starts
trying to solve a
very difficult (but
easily verifiable)
problem. It’s so
difficult, with four
people working, it
will only be solved
once every 10
minutes.
Alice Bob Chuck Dave
$100 $100 $100 $100
Honest Honest HonestDishonest
38. Proof of Work
While attempting
to solve the
problem, our
actors also
announce
transactions.
Alice - send $50 to Dave
Bob - send $20 to Alice
Chuck - send $1,000 to Dave
Alice Bob Chuck Dave
$100 $100 $100 $100
Honest Honest HonestDishonest
39. Proof of Work
Alice solves
the problem
first. She
announces
the solution.
Valid transactions Alice heard
Alice - send $50 to Dave
Bob - send $20 to Alice
= hash solution +Alice’s
block
Alice Bob Chuck Dave
$100 $100 $100 $100
40. $150$100$80$70
Proof of Work
Alice Bob Chuck Dave
Honest Honest HonestDishonest
After verifying
Alice’s solution,
everyone starts
working on a
new problem
that includes
the hash of
Alice’s block.
Alice’s
block
Alice Bob Chuck Dave
41. Proof of Work
Alice Bob Chuck Dave
$70 $80 $100 $150
Honest Honest HonestDishonest
Bob finds
the next
solution.
New transactions
Dave - send $10 to Bob
Dave - send $20 to Alice
= hash (solution +Alice’s
block
)Bob’s
block
42. Proof of Work
Alice Bob Chuck Dave
$90 $90 $100 $120
Honest Honest HonestDishonest
Chuck finds the next
solution, but includes
fake transactions his
block.
Alice, Bob, and Dave
ignore his block and
keep looking for
another solution.
Alice’s
block
Bob’s
block
Chuck’s
block
43. Proof of Work
Alice Bob Chuck Dave
$90 $90 $100 $120
Honest Honest HonestDishonest
Chuck finds the
solution again, but
he doesn’t include
previous blocks in
an attempt to erase
old transactions.
Again, he is
ignored because
it’s not the longest
chain.Alice’s
block
Bob’s
block
Chuck’s
block
44. Proof of Work
Alice Bob Chuck Dave
$90 $90 $100 $120
Honest Honest HonestDishonest
Chuck can’t
fake a longer
chain because
solving these
problems
requires too
much work.
Chuck gives
up!
Alice’s
block
Bob’s
block