Blockchain: An Introduction
Jake van der Laan
Director, Information Technology and Regulatory Informatics,
Chief Information Officer
Financial and Consumer Services Commission
New Brunswick, Canada
[Link]@[Link]
[Link]
1
Any opinions expressed are my own and do not necessarily
reflect the position or perspective of FCNB.
I do not endorse, or otherwise make any claim or statement,
negative or positive, about any of the websites, companies, or
products, if any, referenced in these slides or during this
presentation.
2
Our learning journey today
What a blockchain is and how it works
Types of blockchains
Use case: cryptocurrencies
Blockchain as a “platform”
“Smart contracts”
3
A blockchain in one sentence
An “append only transaction log”
4
Recordkeeping
5
6
7
8
9
10
11
The cryptographic hash function
Unique for structured data
12
13
14
15
16
How to prevent “re-doing the whole train”?
17
Adding “proof of work”
● Think of it as a time cost - in essence impose a 10 minute delay
on the addition of a new block
● Make re-calculation, and thus change, (almost) impossible
The “nonce”
18
19
A sample SHA-256 hash digest:
1312af178c253f84028d480a6adc1e25e81caa44c749ec81976192e2ec934c64
(This is really nothing more than a number between 1 and 2^256 in hexadecimal format)
20
The type of hash we are looking for:
0000000000000000b42d99c81156d3a17228d6e1eef4139be78e948a9332a7d8
21
Retrying with a different nonce: “mining”
22
When a winner is found
1. The winning node messages all other nodes: I found a winner!
2. Other nodes verify the hash and if OK accept the new block
3. Once 51% of all nodes have accepted the block, it is “confirmed”
4. The winning node gets a reward (currently 6.75 bitcoin)
5. Start all over again!
23
Use case: cryptocurrencies
24
25
● Transactions are authorized by the owner’s private key (can be stored in a digital
wallet)
● Ownership on the blockchain is tracked by the owner’s public key address, e.g.:
26
7,408 (as of 14 oct 2020)
27
How blockchain implementations differ
● How new transactions are confirmed and added (consensus mechanisms):
○ Proof of Stake (e.g. Peercoin)
○ Byzantine Fault Tolerance (vote based) approaches (e.g. Ripple)
○ Directed Acyclic Graphs (e.g. Iota)
○ Proof of Elapsed Time
○ etc.
● Who can use the blockchain:
○ public (permissionless) blockchains
○ private (permissioned) blockchains
28
Blockchain as a platform
29
Features
● Tracks transactions
● Is also able to store small bits of computer code (“smart contracts”)
● Code runs within the Ethereum platform and changes the state of
variables (think entitlements) stored on the blockchain
● Uses the ether cryptocurrency
● Also uses gas to pay for running the computer code
● Has a much shorter confirmation time (about 15 seconds)
● “DApps” are built on top of these platforms
30
“Smart” contracts
31
32
Use case: Tokens
33
34
Use case: CryptoKitties
35
End of the technical intro
36