SlideShare una empresa de Scribd logo
1 de 39
Descargar para leer sin conexión
carbonfive.com
Intro to Blockchain
What This Is For and Why It Matters
Shannon E. Wells
Basic understanding
Functioning toy blockchain network
Uses for blockchain
Encouraging your participation
Qs - please write down your Qs for the end!
Goals of This Talk
“I spend every single day full time, trying to keep up with Bitcoin -
just one currency - and it’s almost impossible.”
-- Andreas Antonopoulos
Blockchain >> Cryptocurrency
Cryptocurrency >> Bitcoin
“It’s HUGE. TREMENDOUS!”
-- Not Donald Trump
When I think of blockchain, I think of...
Trust
Ledger
Transparency
Distributed
Private?
Borderless
Encryption
Decentralized?
Cryptocurrency
Smart Contracts
We define an electronic coin as a chain of digital signatures.
-- Satoshi Nakamoto,
“Bitcoin: A Peer-to-Peer Electronic Cash System”
Origin of Blockchain
What’s a transaction?
● Exchange of value
● Cryptographically signed
● Input = ref. to output
● Output = address, or H(public key)
● Payload
The Transaction Sausage
em = SHA256( )MESSAGE:
Give 0.008BTC
to Jane
(r,s) = ECDSA(em,k)
Where:
r = public key
s = signature
k = “random” number
The Transaction Sausage
Where:
r = public key
s = signature
k = “random” number
z = left n bits of em
Private key = sk - z(em)
r
Blockchain address = RIPEMD-160(r)
MUST be unique / message,
and either
● random, or
● derived securely,
or you will be very sad.
Private and Public Keys
Private key
● Generated using random seed.
● To generate public key.
● To sign data.
● Allows you to spend cryptocurrency.
Public key
● To verify signature.
● To derive address (for receiving).
● To create input for a subsequent transaction
What’s in a block?
Txn
No.
To/From Addr Signature Amount Timestamp
0 0x5c0ffee5 bf800d5f7fed483fb4773
2eaea52d6
-0.006 2018-01-01
00:00:00
1 0xdeadbeef 1347736ee88b4f7881e91
f0c32726
0.002 2018-01-01
00:00:01
2 0xba5eba11 e13747454e5c4869adcb0
7698b4d
0.003 2018-01-01
00:00:10
3 0x1d00dle5 b17ad4ef874f4db4991b1
84b1c568
0.001 2018-01-01
00:01:23
total: 0.00
● H(n-1)
● Block ID
● Node ID
● ...
Any computing device which:
● Has been granted access to a blockchain network
● Processes transactions & smart contracts, mines, etc.
What is a node?
● Peer-to-peer group of blockchain nodes
● Using a specific chain/tree of blocks
● Builds consensus
● Confirms transactions
● Distributes blockchain apps, blocks, etc.
The network?
● Assembled by one node
● Posted to network
● Accepted (or not) by others
How is a Block Added?
● Creation of a new coin
● Input: coinbase parameter
● N outputs
● Hash function result must obey certain requirements
E.g. Bitcoin uses a derivative of hashcash, a Proof of Work algorithm. Not all blockchains use Proof of Work.
Constructing a Blockchain
What is Mining?
● Digest
● Authentication
● Digital signature
● Identification
Drilling down:
Cryptographic Hash Functions
Extremely simple hash function:
str = "Blockchain is pretty awesome!"
"%0x" % str.codepoints.reduce(:+)
=> "ae4"
...but this won’t do at all for crypto.
Cryptographic Hash Functions
Cryptographic Hash Functions
For general usability:
● Deterministic
● Quick to compute
For usability in cryptography:
● Collision-free (or practically so)
● Hiding
● Puzzle-friendly
● Sensitive to initial conditions
Cryptographic Hash Functions
Collision-free: really “collision resistant”
Given hash function H, message m1,
Effectively impossible to find a message
m2 != m1 s.t. H(m1) = H(m2)
Examples: SHA256 (Bitcoin), Scrypt (Litecoin), Cuckoo hash cycles
So... blockchain == chain of blocks?
Not really.
● Linked list
OR (more typically)
● Merkle tree -- binary hash tree
...Block 0 B1 B2 Bn-1 Bn
Merkle (Hash) Tree*
* Wikipedia https://en.wikipedia.org/wiki/Merkle_tree
nn-1 data
H(nn-1)
nn data
Tamper Detection
n0 data
H(n0) H(nn)
n1 data
H(n1) H(nn-1)
. . .
✓
A payee can verify the signatures to verify the chain of ownership.
-- Satoshi Nakamoto,
“Bitcoin: A Peer-to-Peer Electronic Cash System”
✓ ✓ X
Consensus Models
Make honesty rewarding and cheating expensive.
● Assign nodes unique IDs
Honest nodes:
● Validate transactions
● Extend only the longest valid blockchain
● Acceptance: include new block in chain when proposing a
new block
● Are rewarded with cryptocurrency
● Txns can “tip” nodes with transaction fees
● Distributed app
● Free to read
● Cost to write
● Permanent
What’s a Smart Contract?
Working blockchain: Ethereum
geth CLI:
● Run local Ethereum network
● Showing balances
● Sending money
● Mining
Solidity language:
● Toy smart contract
● Posting contract to the network
● Posting update to contract
● Proof of Work system
○ Rewards computational power
○ Has centralized mining power
○ Power hog
○ Slow transaction processing*
● Consensus model
○ Can also slow transaction processing*
* Visa: 65k transaction messages / SECOND (capacity as of Aug 2016)
* Bitcoin: < 500k/day
Problems with Blockchain
● What if we lighten computational load, or make use of ASICs* not
beneficial?
■ Scrypt (Litecoin)
■ Cuckoo hash cycles
■ X11: concat different H()
■ Moving target - change H() regularly
* Application-Specific Integrated Circuit, other types include MP3 encoding/decoding, Ethernet, Bluetooth
Proof of Work Alternatives
● Proof of stake
○ Time held
○ Amount held
○ Transactions processed
● “Proof of Love” - reward evangelizers and developers
Proof of Work Alternatives
● What if we made mining do useful work?
○ SETI
○ Protein folding
○ Machine learning
○ Data preservation - Permacoin - storage based
puzzle, distributed storage (Microsoft)
○ Renewables-only mining + use waste heat
○ [ Your great idea here ]
Mining Alternatives
○ Buggy smart contracts (Ethereum DAO, $60M loss)
○ No Kill switch?
○ Gaming the consensus model
○ Malicious nodes (51% attack)
○ Quantum computing?
Other Vulnerabilities
● Digital ID (SelfKey, Ethereum, Metaverse, NameCoin, Rohingya
Project)
● Manufacturing tracking and management (Metaverse + RFID)
● Targeted ads (Basic Attention Token)
● Rewarding content creators (MUSIC, Steem)
● “Smart Economy” - Contracts + ID + Digitized Assets (NEO)
● Enabling international payments (Stellar)
● Secure, socketless distributed OS (ElastOS)
● Gaming/gambling (KittehCoin, BattleCoin)
● Quantum resistant cryptography (IOTA, QRL)
● Proof of ownership/authorship
Blockchain: Not Just About Money
Worst-case scenarios
○ Smart contracts + implants
○ Critical Infrastructure failures
■ Food/bev, fuel, pharmaceutical manufacturing & distribution
■ Power grid, transit grid, communications networks
■ Self-driving vehicles
The Dark Future
What are some situations where trust is lacking, or eroded?
Could blockchain help here?
● Government corruption
● Health care
● Policing
● Campaign funding
● Behavioral economics
● Lending
● Voting
● [Your Great Idea Here]
The Bright Future
Question Time
carbonfive.com
Credits and Resources
Bitcoin White Paper Satoshi Nakamoto bitcoin.org/bitcoin.pdf
Newline: Cryptocurrency for
Web Developers
Nate Murray www.coursera.org/learn/cryptocurrency
Bitcoin and Cryptocurrency
Technologies
Coursera www.coursera.org/learn/cryptocurrency
Cryptographic Hash Function Wikipedia en.wikipedia.org/wiki/Cryptographic_hash_function
Solidity for Ethereum solidity.readthedocs.io
Geth for Ethereum Github github.com/ethereum/go-ethereum/wiki/Geth
carbonfive.com
Credits and Resources, cont.
Visa Facts and Figures, Jan
2017
Visa https://usa.visa.com/dam/VCOM/global/about-visa/d
ocuments/visa-facts-figures-jan-2017.pdf
Bitcoin Wiki https://en.bitcoin.it/wiki/Main_Page
Blockchain 101 Coindesk https://www.coindesk.com/information
Blockchain: Simple
Explanation
Oleg Mazonka, 2016 http://jrxv.net/x/16/blockchain-gentle-introduction.pdf
“Ethereum’s DAO Hacking
Shows that Coders Are Not
Infallible” *
Forbes https://www.forbes.com/sites/francescoppola/2016/0
6/20/the-dao-hacking-shows-that-coders-are-not-infal
lible/#3cf168713983
* Duh.
carbonfive.com
Credits and Resources, cont.
SelfKey selfkey.org
Finnish Immigration Service To Help Unbanked Refugees
www.ccn.com/finns-turn-to-blockchain-to-help-unbanked-refugees-enter-the-digital-economy
Canada in 2018 https://cointelegraph.com/news/blockchain-digital-identification-in-canada-coming-in-2018
Swiss town of Zug Issuing Digital IDs
https://bitcoinmagazine.com/articles/swiss-crypto-valley-create-digital-identities-its-citizens-ethereum-blockchain/
Rohingya Project to Give Stateless Rohingyas Digital IDs
http://techwireasia.com/2017/12/humanitarian-group-uses-blockchain-tech-give-rohingyas-digital-id-cards
NSA Quantum Computing Guidance
www.iad.gov/iad/library/ia-guidance/ia-solutions-for-classified/algorithm-guidance/cnsa-suite-and-quantum
-computing-faq.cfm
Permacoin White Paper | Microsoft
www.microsoft.com/en-us/research/publication/permacoin-repurposing-bitcoin-work-for-data-preservation
carbonfive.com
Credits and Resources, cont.
Blockchain transactions graph | Blockchain.info https://blockchain.info/charts/n-transactions
carbonfive.com
Maneki-neko Beckoning Cat Cinemagraph | gfycat.com https://gfycat.com/gifs/detail/BlandPinkDrever
Corned Beef Hash | Simply Recipes http://www.simplyrecipes.com/recipes/corned_beef_hash/
Merkle Trees + Diagram | Wikipedia https://en.wikipedia.org/wiki/Merkle_tree
Blockchain Tamper Detection | modified from Blockchain: Simple Explanation, by Oleg Mazonka, 2016,
http://jrxv.net/x/16/blockchain-gentle-introduction.pdf
Image Credits
carbonfive.com
Thanks!
And please fill out the session survey!
Shannon E. Wells | shannon@carbonfive.com | shannonwells
San Francisco, California USA

Más contenido relacionado

La actualidad más candente

Cryptocurrencies 101 v5 public
Cryptocurrencies 101 v5 publicCryptocurrencies 101 v5 public
Cryptocurrencies 101 v5 publicBrett Colbert
 
Blockchain, smart contracts - introduction
Blockchain, smart contracts - introductionBlockchain, smart contracts - introduction
Blockchain, smart contracts - introductionLukasz Jarmulowicz
 
BCHGraz - Meetup #8 - Intro & Ethereum
 BCHGraz - Meetup #8 - Intro & Ethereum BCHGraz - Meetup #8 - Intro & Ethereum
BCHGraz - Meetup #8 - Intro & EthereumBlockchainHub Graz
 
Blockchain and Bitcoin : A Technical Overview
Blockchain and Bitcoin : A Technical OverviewBlockchain and Bitcoin : A Technical Overview
Blockchain and Bitcoin : A Technical Overviewanupriti
 
Blockchain and Real Estate - IBREA conference
Blockchain and Real Estate - IBREA conferenceBlockchain and Real Estate - IBREA conference
Blockchain and Real Estate - IBREA conferenceJeff Garzik
 
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 Ecosystem and Cryptocurrency Regulations
Blockchain Ecosystem and Cryptocurrency RegulationsBlockchain Ecosystem and Cryptocurrency Regulations
Blockchain Ecosystem and Cryptocurrency RegulationsAmir Rafati
 
Analyzing Cryptocurrencies with Python
Analyzing Cryptocurrencies with PythonAnalyzing Cryptocurrencies with Python
Analyzing Cryptocurrencies with PythonPortia Burton
 
An Introduction to Bitcoin, Blockchain and Cryptocurrency
An Introduction to Bitcoin, Blockchain and CryptocurrencyAn Introduction to Bitcoin, Blockchain and Cryptocurrency
An Introduction to Bitcoin, Blockchain and CryptocurrencyAmarpreet Singh
 
Blockchain Programming
Blockchain ProgrammingBlockchain Programming
Blockchain ProgrammingRhea Myers
 
All thinks about Cryptocurrency
All thinks about Cryptocurrency All thinks about Cryptocurrency
All thinks about Cryptocurrency Santosh Meka
 
CBGTBT - Part 2 - Blockchains 101
CBGTBT - Part 2 - Blockchains 101CBGTBT - Part 2 - Blockchains 101
CBGTBT - Part 2 - Blockchains 101Blockstrap.com
 
Bitcoin and Ethereum
Bitcoin and EthereumBitcoin and Ethereum
Bitcoin and EthereumJongseok Choi
 
Bitcoin - Beyond the basics
Bitcoin - Beyond the basicsBitcoin - Beyond the basics
Bitcoin - Beyond the basicsChris DeRose
 
Web3 Security: The Blockchain is Your SIEM
Web3 Security: The Blockchain is Your SIEMWeb3 Security: The Blockchain is Your SIEM
Web3 Security: The Blockchain is Your SIEMTal Be'ery
 
Build your own block chain
Build your own block chainBuild your own block chain
Build your own block chainBohdan Szymanik
 

La actualidad más candente (20)

Ethereum
EthereumEthereum
Ethereum
 
Cryptocurrencies 101 v5 public
Cryptocurrencies 101 v5 publicCryptocurrencies 101 v5 public
Cryptocurrencies 101 v5 public
 
Blockchain, smart contracts - introduction
Blockchain, smart contracts - introductionBlockchain, smart contracts - introduction
Blockchain, smart contracts - introduction
 
Blockchain
BlockchainBlockchain
Blockchain
 
BCHGraz - Meetup #8 - Intro & Ethereum
 BCHGraz - Meetup #8 - Intro & Ethereum BCHGraz - Meetup #8 - Intro & Ethereum
BCHGraz - Meetup #8 - Intro & Ethereum
 
Blockchain and Bitcoin : A Technical Overview
Blockchain and Bitcoin : A Technical OverviewBlockchain and Bitcoin : A Technical Overview
Blockchain and Bitcoin : A Technical Overview
 
Blockchain and Real Estate - IBREA conference
Blockchain and Real Estate - IBREA conferenceBlockchain and Real Estate - IBREA conference
Blockchain and Real Estate - IBREA conference
 
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
 
Sidechains Presentation
Sidechains PresentationSidechains Presentation
Sidechains Presentation
 
Blockchain Ecosystem and Cryptocurrency Regulations
Blockchain Ecosystem and Cryptocurrency RegulationsBlockchain Ecosystem and Cryptocurrency Regulations
Blockchain Ecosystem and Cryptocurrency Regulations
 
Analyzing Cryptocurrencies with Python
Analyzing Cryptocurrencies with PythonAnalyzing Cryptocurrencies with Python
Analyzing Cryptocurrencies with Python
 
An Introduction to Bitcoin, Blockchain and Cryptocurrency
An Introduction to Bitcoin, Blockchain and CryptocurrencyAn Introduction to Bitcoin, Blockchain and Cryptocurrency
An Introduction to Bitcoin, Blockchain and Cryptocurrency
 
Blockchain Programming
Blockchain ProgrammingBlockchain Programming
Blockchain Programming
 
All thinks about Cryptocurrency
All thinks about Cryptocurrency All thinks about Cryptocurrency
All thinks about Cryptocurrency
 
Blockchain - a basic overview
Blockchain - a basic overviewBlockchain - a basic overview
Blockchain - a basic overview
 
CBGTBT - Part 2 - Blockchains 101
CBGTBT - Part 2 - Blockchains 101CBGTBT - Part 2 - Blockchains 101
CBGTBT - Part 2 - Blockchains 101
 
Bitcoin and Ethereum
Bitcoin and EthereumBitcoin and Ethereum
Bitcoin and Ethereum
 
Bitcoin - Beyond the basics
Bitcoin - Beyond the basicsBitcoin - Beyond the basics
Bitcoin - Beyond the basics
 
Web3 Security: The Blockchain is Your SIEM
Web3 Security: The Blockchain is Your SIEMWeb3 Security: The Blockchain is Your SIEM
Web3 Security: The Blockchain is Your SIEM
 
Build your own block chain
Build your own block chainBuild your own block chain
Build your own block chain
 

Similar a Intro to Blockchain Slides

Crypto & Crpyocurrencies Intro
Crypto & Crpyocurrencies IntroCrypto & Crpyocurrencies Intro
Crypto & Crpyocurrencies IntroTal Shmueli
 
WSO2Con USA 2017: Keynote - The Blockchain’s Digital Disruption
WSO2Con USA 2017: Keynote - The Blockchain’s Digital DisruptionWSO2Con USA 2017: Keynote - The Blockchain’s Digital Disruption
WSO2Con USA 2017: Keynote - The Blockchain’s Digital DisruptionWSO2
 
Blockchain with scala
Blockchain with scalaBlockchain with scala
Blockchain with scalaHongchao Liu
 
Blockchan For Developers
Blockchan For DevelopersBlockchan For Developers
Blockchan For DevelopersAlex Chepurnoy
 
Blockchain, bitcoin, ethereum and ICOs
Blockchain, bitcoin, ethereum and ICOsBlockchain, bitcoin, ethereum and ICOs
Blockchain, bitcoin, ethereum and ICOsBogdan Fiedur
 
Bitcoin Blockchain - Under the Hood
Bitcoin Blockchain - Under the HoodBitcoin Blockchain - Under the Hood
Bitcoin Blockchain - Under the HoodGalin Dinkov
 
Smart Contracts - The Blockchain Beyond Bitcoin
Smart Contracts - The Blockchain Beyond BitcoinSmart Contracts - The Blockchain Beyond Bitcoin
Smart Contracts - The Blockchain Beyond BitcoinJim McKeeth
 
Blockchain (and Bitcoin)
Blockchain (and Bitcoin) Blockchain (and Bitcoin)
Blockchain (and Bitcoin) Nitin Jain
 
2019 blockchain economy
2019 blockchain economy2019 blockchain economy
2019 blockchain economyHeung-No Lee
 
2018 Lunch & Learn Blockchain Overview
2018 Lunch & Learn Blockchain Overview2018 Lunch & Learn Blockchain Overview
2018 Lunch & Learn Blockchain OverviewPaperchain
 
Crypto 101 and a bit more [Sep-2022]
Crypto 101 and a bit more [Sep-2022]Crypto 101 and a bit more [Sep-2022]
Crypto 101 and a bit more [Sep-2022]Ido Green
 
Blockchain Тechnology - Introduction
Blockchain Тechnology - IntroductionBlockchain Тechnology - Introduction
Blockchain Тechnology - IntroductionGalin Dinkov
 
Blockchain technology Overview
Blockchain technology OverviewBlockchain technology Overview
Blockchain technology OverviewLalitha Prasanna
 
Blockchain, bitcoin
Blockchain, bitcoinBlockchain, bitcoin
Blockchain, bitcoinSathish VJ
 
What is a blockchain?
What is a blockchain?What is a blockchain?
What is a blockchain?Kevin Koo
 

Similar a Intro to Blockchain Slides (20)

Crypto & Crpyocurrencies Intro
Crypto & Crpyocurrencies IntroCrypto & Crpyocurrencies Intro
Crypto & Crpyocurrencies Intro
 
WSO2Con USA 2017: Keynote - The Blockchain’s Digital Disruption
WSO2Con USA 2017: Keynote - The Blockchain’s Digital DisruptionWSO2Con USA 2017: Keynote - The Blockchain’s Digital Disruption
WSO2Con USA 2017: Keynote - The Blockchain’s Digital Disruption
 
Blockchain with scala
Blockchain with scalaBlockchain with scala
Blockchain with scala
 
Introduction to Blockchain and Ethereum
Introduction to Blockchain and EthereumIntroduction to Blockchain and Ethereum
Introduction to Blockchain and Ethereum
 
Blockchan For Developers
Blockchan For DevelopersBlockchan For Developers
Blockchan For Developers
 
Blockchain, bitcoin, ethereum and ICOs
Blockchain, bitcoin, ethereum and ICOsBlockchain, bitcoin, ethereum and ICOs
Blockchain, bitcoin, ethereum and ICOs
 
Blockchain
BlockchainBlockchain
Blockchain
 
Blockchain Technology
Blockchain TechnologyBlockchain Technology
Blockchain Technology
 
Bitcoin Blockchain - Under the Hood
Bitcoin Blockchain - Under the HoodBitcoin Blockchain - Under the Hood
Bitcoin Blockchain - Under the Hood
 
Bitcoin Talk at Rainbow
Bitcoin Talk at RainbowBitcoin Talk at Rainbow
Bitcoin Talk at Rainbow
 
Smart Contracts - The Blockchain Beyond Bitcoin
Smart Contracts - The Blockchain Beyond BitcoinSmart Contracts - The Blockchain Beyond Bitcoin
Smart Contracts - The Blockchain Beyond Bitcoin
 
Blockchain (and Bitcoin)
Blockchain (and Bitcoin) Blockchain (and Bitcoin)
Blockchain (and Bitcoin)
 
2019 blockchain economy
2019 blockchain economy2019 blockchain economy
2019 blockchain economy
 
2018 Lunch & Learn Blockchain Overview
2018 Lunch & Learn Blockchain Overview2018 Lunch & Learn Blockchain Overview
2018 Lunch & Learn Blockchain Overview
 
Crypto 101 and a bit more [Sep-2022]
Crypto 101 and a bit more [Sep-2022]Crypto 101 and a bit more [Sep-2022]
Crypto 101 and a bit more [Sep-2022]
 
Blockchain Тechnology - Introduction
Blockchain Тechnology - IntroductionBlockchain Тechnology - Introduction
Blockchain Тechnology - Introduction
 
Blockchain technology Overview
Blockchain technology OverviewBlockchain technology Overview
Blockchain technology Overview
 
Blockchain, bitcoin
Blockchain, bitcoinBlockchain, bitcoin
Blockchain, bitcoin
 
Bitcoin
BitcoinBitcoin
Bitcoin
 
What is a blockchain?
What is a blockchain?What is a blockchain?
What is a blockchain?
 

Último

Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogueitservices996
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesVictoriaMetrics
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxRTS corp
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLionel Briand
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencessuser9e7c64
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...Bert Jan Schrijver
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecturerahul_net
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITmanoharjgpsolutions
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesKrzysztofKkol1
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
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
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingShane Coughlan
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shardsChristopher Curtin
 

Último (20)

Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogue
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 Updates
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and Repair
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conference
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecture
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh IT
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
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
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards
 

Intro to Blockchain Slides

  • 1. carbonfive.com Intro to Blockchain What This Is For and Why It Matters Shannon E. Wells
  • 2. Basic understanding Functioning toy blockchain network Uses for blockchain Encouraging your participation Qs - please write down your Qs for the end! Goals of This Talk
  • 3. “I spend every single day full time, trying to keep up with Bitcoin - just one currency - and it’s almost impossible.” -- Andreas Antonopoulos Blockchain >> Cryptocurrency Cryptocurrency >> Bitcoin “It’s HUGE. TREMENDOUS!” -- Not Donald Trump
  • 4. When I think of blockchain, I think of... Trust Ledger Transparency Distributed Private? Borderless Encryption Decentralized? Cryptocurrency Smart Contracts
  • 5. We define an electronic coin as a chain of digital signatures. -- Satoshi Nakamoto, “Bitcoin: A Peer-to-Peer Electronic Cash System” Origin of Blockchain
  • 6. What’s a transaction? ● Exchange of value ● Cryptographically signed ● Input = ref. to output ● Output = address, or H(public key) ● Payload
  • 7. The Transaction Sausage em = SHA256( )MESSAGE: Give 0.008BTC to Jane (r,s) = ECDSA(em,k) Where: r = public key s = signature k = “random” number
  • 8. The Transaction Sausage Where: r = public key s = signature k = “random” number z = left n bits of em Private key = sk - z(em) r Blockchain address = RIPEMD-160(r) MUST be unique / message, and either ● random, or ● derived securely, or you will be very sad.
  • 9. Private and Public Keys Private key ● Generated using random seed. ● To generate public key. ● To sign data. ● Allows you to spend cryptocurrency. Public key ● To verify signature. ● To derive address (for receiving). ● To create input for a subsequent transaction
  • 10. What’s in a block? Txn No. To/From Addr Signature Amount Timestamp 0 0x5c0ffee5 bf800d5f7fed483fb4773 2eaea52d6 -0.006 2018-01-01 00:00:00 1 0xdeadbeef 1347736ee88b4f7881e91 f0c32726 0.002 2018-01-01 00:00:01 2 0xba5eba11 e13747454e5c4869adcb0 7698b4d 0.003 2018-01-01 00:00:10 3 0x1d00dle5 b17ad4ef874f4db4991b1 84b1c568 0.001 2018-01-01 00:01:23 total: 0.00 ● H(n-1) ● Block ID ● Node ID ● ...
  • 11. Any computing device which: ● Has been granted access to a blockchain network ● Processes transactions & smart contracts, mines, etc. What is a node?
  • 12. ● Peer-to-peer group of blockchain nodes ● Using a specific chain/tree of blocks ● Builds consensus ● Confirms transactions ● Distributes blockchain apps, blocks, etc. The network?
  • 13. ● Assembled by one node ● Posted to network ● Accepted (or not) by others How is a Block Added?
  • 14. ● Creation of a new coin ● Input: coinbase parameter ● N outputs ● Hash function result must obey certain requirements E.g. Bitcoin uses a derivative of hashcash, a Proof of Work algorithm. Not all blockchains use Proof of Work. Constructing a Blockchain What is Mining?
  • 15. ● Digest ● Authentication ● Digital signature ● Identification Drilling down: Cryptographic Hash Functions
  • 16. Extremely simple hash function: str = "Blockchain is pretty awesome!" "%0x" % str.codepoints.reduce(:+) => "ae4" ...but this won’t do at all for crypto. Cryptographic Hash Functions
  • 17. Cryptographic Hash Functions For general usability: ● Deterministic ● Quick to compute For usability in cryptography: ● Collision-free (or practically so) ● Hiding ● Puzzle-friendly ● Sensitive to initial conditions
  • 18. Cryptographic Hash Functions Collision-free: really “collision resistant” Given hash function H, message m1, Effectively impossible to find a message m2 != m1 s.t. H(m1) = H(m2) Examples: SHA256 (Bitcoin), Scrypt (Litecoin), Cuckoo hash cycles
  • 19. So... blockchain == chain of blocks? Not really. ● Linked list OR (more typically) ● Merkle tree -- binary hash tree ...Block 0 B1 B2 Bn-1 Bn
  • 20. Merkle (Hash) Tree* * Wikipedia https://en.wikipedia.org/wiki/Merkle_tree
  • 21. nn-1 data H(nn-1) nn data Tamper Detection n0 data H(n0) H(nn) n1 data H(n1) H(nn-1) . . . ✓ A payee can verify the signatures to verify the chain of ownership. -- Satoshi Nakamoto, “Bitcoin: A Peer-to-Peer Electronic Cash System” ✓ ✓ X
  • 22. Consensus Models Make honesty rewarding and cheating expensive. ● Assign nodes unique IDs Honest nodes: ● Validate transactions ● Extend only the longest valid blockchain ● Acceptance: include new block in chain when proposing a new block ● Are rewarded with cryptocurrency ● Txns can “tip” nodes with transaction fees
  • 23. ● Distributed app ● Free to read ● Cost to write ● Permanent What’s a Smart Contract?
  • 24. Working blockchain: Ethereum geth CLI: ● Run local Ethereum network ● Showing balances ● Sending money ● Mining Solidity language: ● Toy smart contract ● Posting contract to the network ● Posting update to contract
  • 25. ● Proof of Work system ○ Rewards computational power ○ Has centralized mining power ○ Power hog ○ Slow transaction processing* ● Consensus model ○ Can also slow transaction processing* * Visa: 65k transaction messages / SECOND (capacity as of Aug 2016) * Bitcoin: < 500k/day Problems with Blockchain
  • 26. ● What if we lighten computational load, or make use of ASICs* not beneficial? ■ Scrypt (Litecoin) ■ Cuckoo hash cycles ■ X11: concat different H() ■ Moving target - change H() regularly * Application-Specific Integrated Circuit, other types include MP3 encoding/decoding, Ethernet, Bluetooth Proof of Work Alternatives
  • 27. ● Proof of stake ○ Time held ○ Amount held ○ Transactions processed ● “Proof of Love” - reward evangelizers and developers Proof of Work Alternatives
  • 28. ● What if we made mining do useful work? ○ SETI ○ Protein folding ○ Machine learning ○ Data preservation - Permacoin - storage based puzzle, distributed storage (Microsoft) ○ Renewables-only mining + use waste heat ○ [ Your great idea here ] Mining Alternatives
  • 29. ○ Buggy smart contracts (Ethereum DAO, $60M loss) ○ No Kill switch? ○ Gaming the consensus model ○ Malicious nodes (51% attack) ○ Quantum computing? Other Vulnerabilities
  • 30. ● Digital ID (SelfKey, Ethereum, Metaverse, NameCoin, Rohingya Project) ● Manufacturing tracking and management (Metaverse + RFID) ● Targeted ads (Basic Attention Token) ● Rewarding content creators (MUSIC, Steem) ● “Smart Economy” - Contracts + ID + Digitized Assets (NEO) ● Enabling international payments (Stellar) ● Secure, socketless distributed OS (ElastOS) ● Gaming/gambling (KittehCoin, BattleCoin) ● Quantum resistant cryptography (IOTA, QRL) ● Proof of ownership/authorship Blockchain: Not Just About Money
  • 31. Worst-case scenarios ○ Smart contracts + implants ○ Critical Infrastructure failures ■ Food/bev, fuel, pharmaceutical manufacturing & distribution ■ Power grid, transit grid, communications networks ■ Self-driving vehicles The Dark Future
  • 32. What are some situations where trust is lacking, or eroded? Could blockchain help here? ● Government corruption ● Health care ● Policing ● Campaign funding ● Behavioral economics ● Lending ● Voting ● [Your Great Idea Here] The Bright Future
  • 34. carbonfive.com Credits and Resources Bitcoin White Paper Satoshi Nakamoto bitcoin.org/bitcoin.pdf Newline: Cryptocurrency for Web Developers Nate Murray www.coursera.org/learn/cryptocurrency Bitcoin and Cryptocurrency Technologies Coursera www.coursera.org/learn/cryptocurrency Cryptographic Hash Function Wikipedia en.wikipedia.org/wiki/Cryptographic_hash_function Solidity for Ethereum solidity.readthedocs.io Geth for Ethereum Github github.com/ethereum/go-ethereum/wiki/Geth
  • 35. carbonfive.com Credits and Resources, cont. Visa Facts and Figures, Jan 2017 Visa https://usa.visa.com/dam/VCOM/global/about-visa/d ocuments/visa-facts-figures-jan-2017.pdf Bitcoin Wiki https://en.bitcoin.it/wiki/Main_Page Blockchain 101 Coindesk https://www.coindesk.com/information Blockchain: Simple Explanation Oleg Mazonka, 2016 http://jrxv.net/x/16/blockchain-gentle-introduction.pdf “Ethereum’s DAO Hacking Shows that Coders Are Not Infallible” * Forbes https://www.forbes.com/sites/francescoppola/2016/0 6/20/the-dao-hacking-shows-that-coders-are-not-infal lible/#3cf168713983 * Duh.
  • 36. carbonfive.com Credits and Resources, cont. SelfKey selfkey.org Finnish Immigration Service To Help Unbanked Refugees www.ccn.com/finns-turn-to-blockchain-to-help-unbanked-refugees-enter-the-digital-economy Canada in 2018 https://cointelegraph.com/news/blockchain-digital-identification-in-canada-coming-in-2018 Swiss town of Zug Issuing Digital IDs https://bitcoinmagazine.com/articles/swiss-crypto-valley-create-digital-identities-its-citizens-ethereum-blockchain/ Rohingya Project to Give Stateless Rohingyas Digital IDs http://techwireasia.com/2017/12/humanitarian-group-uses-blockchain-tech-give-rohingyas-digital-id-cards NSA Quantum Computing Guidance www.iad.gov/iad/library/ia-guidance/ia-solutions-for-classified/algorithm-guidance/cnsa-suite-and-quantum -computing-faq.cfm Permacoin White Paper | Microsoft www.microsoft.com/en-us/research/publication/permacoin-repurposing-bitcoin-work-for-data-preservation
  • 37. carbonfive.com Credits and Resources, cont. Blockchain transactions graph | Blockchain.info https://blockchain.info/charts/n-transactions
  • 38. carbonfive.com Maneki-neko Beckoning Cat Cinemagraph | gfycat.com https://gfycat.com/gifs/detail/BlandPinkDrever Corned Beef Hash | Simply Recipes http://www.simplyrecipes.com/recipes/corned_beef_hash/ Merkle Trees + Diagram | Wikipedia https://en.wikipedia.org/wiki/Merkle_tree Blockchain Tamper Detection | modified from Blockchain: Simple Explanation, by Oleg Mazonka, 2016, http://jrxv.net/x/16/blockchain-gentle-introduction.pdf Image Credits
  • 39. carbonfive.com Thanks! And please fill out the session survey! Shannon E. Wells | shannon@carbonfive.com | shannonwells San Francisco, California USA