is blockchain? A peer-to-peer distributed* decentralized time-stamped ledger that holds a record of all transactions that have ever occurred on that network. * Decentralized and Distributed system is one where there is no “master” node and computation may be distributed validate The first blockchain was conceptualized by Satoshi Nakamoto in 2008 and while paper was launched in 31 Oct 2008 2
Centralized Decentralized Centralized control with all administrative authority Does not have a centralized control and every node has equal authority. Elimination of intermediaries Central point of failure (less stable) No central point of failure (more stable and fault tolerant) More vulnerable to attack (less secure) Attack resistant (no central point to attack), more secure & immutable Centralization of power can lead to unethical operations Symmetric system (equal authority to all), so less scope of unethical operations and usually democratic in nature, Easier and genuine verification of transactions Scalability is an issue, Cost and time factor for transactions Easy to scale, Greater transparency, Increased security with lower cost Easy to design, maintain, impose trust, & govern Difficult to design, maintain, govern, or impose trust Application Technical Logical Political (Control) Torrent Decentralized Decentralized Decentralized Blockchain Decentralized Centralized Decentralized Content Delivery Network Decentralized Decentralized Centralized
of Blockchain: ▪ Integrity: Users can be sure that transactions will be executed exactly as defined in the protocol ▪ User empowerment: Users have equally control on their data and no need to trust any 3rd party ▪ Reliability and resiliency: No single point of failure ▪ Efficiency: Bring efficiency in business process against manual audit of records by self audit, data protection, data privacy ▪ Autonomy : Works according to the rules set by its members, not by any central decision-making body ▪ Trust less: Immutable, temper-resistant, gives single source of truth to all nodes ▪ Transparency: Offers an audit trail that can be consulted at any time by all blockchain members. ▪ Automation: The rules set by blockchain can allow for automatic settlement. Ex: Smart Contracts ▪ Security: Operating data is secure due to the stacking of the blocks in a chain with consensus and hash. Ex: Data Integrity ▪ Accountability: Participant has rights and obligations towards the blockchain community. 5
Solution Approach Are you looking a solution for : ▪ Organising data for anything that has a value ▪ Ensuring transactions are immutable in nature ▪ No need of trusted third parties to aggregate and provide trust ▪ Agility for quick and faster response time ▪ Distributed data sharing, updating of data by multiple parties ▪ Provide ways for identification, verification and validation within multiple parties ▪ Low cost , Less complexity ▪ Interdependencies between various parties ▪ Can process transactions 24x7, globally Change the Trust business from any Central 3rd party to: ▪ Community ▪ Developers ▪ Mathematicians ▪ Cryptographers ▪ Consensus Software Protocol 6
and hybrid blockchains There are 3 main types of blockchains • Public blockchains • Anyone can view all transactions • Anyone can add transactions to the network • Private blockchains • Only trusted parties can operate the blockchain • Identity on network is linked to real identity • Hybrids • Control who can participate and at what level • Example: only certain trusted parties can add transactions to the network, but anyone can view the transactions vote vote vote vote vote Public: no access restrictions permissionless Private: permissioned vote vote vote vote vote vote Hybrid: combination 7
networks have cryptocurrency, but all networks allow for the issuance of some kind of tokens. • Tokens can act as a bearer instrument that can be owned • Tokens are self authenticating data packets that represent a rare digital information • Tokens can represent assets, currency or access rights, can be created for a special purpose such as payment coupon, stock in a company, licenses of software. • Tokens can be used to transfer value between two parties • ERC-20 token standard is the most popular token on Ethereum network and others as well. This has been used for crowdfunding such as initial coin offering (ICO) • ERC-71 provides a unique token for use such as digital collectibles to provide uniqueness and transferability of a digital asset while allowing each asset to be unique 8
Consensus Design Block Design Transaction Design = Blockchain Design User initiates the transaction Transaction gets added to a new block Block is broadcasted to the peer nodes Block is verified by the Peer nodes Once the block is verified, it is added to the Blockchain Transaction is marked complete
browser/ decentralized Applications) Interface Layer (APIs to communicate with blockchain) Business Logic Layer (Smart contracts) Network Layer (Block data, consensus mechanism, P2P) Infrastructure Layer (nodes, network, hardware) How a blockchain works : Blockchain model 10
• A computer connected to a blockchain network • Runs the blockchain software for the network and keeps the network healthy by engaging in the transfer of information across the network to other nodes • Anyone can run a node on a public network • Not all nodes are the same validate A node on a blockchain network is a public witness. It is attesting to the accuracy and truthfulness of information When a large group of nodes no longer agree to same rules & can make previous blocks/transaction invalid is called “Hard forks” 11
in a network • Full node • Has a complete and up-to-date history of the network’s transactions • Can independently build and verify any transaction • Part of consensus system • The Greater the number of full nodes, the more difficult it is to censor the data from being written into a blockchain • Lightweight node or client • Lightweight nodes verify transactions by piggybacking on the work of full nodes. • Only download the headers of all blocks • Miner • A full node that also aggregates validated transactions to a candidate bock • Miners compete to win the right to create a new complete block by solving a complex mathematical problem (proof-of-work) • When the miner succeeds in finding the solution first his or her candidate block becomes a new valid block • Public block chains offer up their cryptocurrency as a reward to those who are maintaining the network Attacker looking to corrupt the transaction history to spend a token or cryptocurrency twice is called 51% attack. An attacker would need to gain control of over 51% of the network 12
Software Game Theory/ Algorithm How cryptography is used in a blockchain • Cryptography is the encryption of data so that it is only known by intended parties. • Ancient Greeks and Romans used to send secret messages by substituting letters only decipherable with a secret key • During WWII, Germany developed an encryption machine called “Enigma” (using symmetric keys) to send messages over the radio. • Technically blockchain is a brilliant combination of Cryptography, Game theory and computer science and engineering Game Theory: to ensure that the system is stable with consensus among the participants. What is your best move for the objective you have in mind, which is usually finding an optimal solution. 13
in a blockchain What all we need : • Confidentiality • Data Integrity • Authentication • Plain text : text message, numeric values • Ciphertext: encrypted plaintext using encryption algorithm and key to be transmitted to intended recipient. Receive with decrypt it using decryption algorithm and key to get plaintext • If the same key is used for both encryption and decryption, it is called symmetric key cryptography (a separate and secure distribution channel to share the key is needed) • Symmetric cryptosystems are usually faster and more useful when the data size is huge. • Symmetric key Examples: Data Encryption Standard (DES) 64bits, Advance Encryption Standard(AES) 128, 192, 258 bits 14
in a blockchain Cryptographic Hash Functions • Mathematical functions that are the most important part of blockchain data structure • Input can be any string of any size, but the output is of fixed length (a 256-bit or a 512-bit output) • It is deterministic, the same input when provided to the same hash function, it produces the same hash value every time you run hash function • Reverse of hash function is not possible (invert and generate the message from its hash value) • A hash function is used to secure all the data in a block of transactions. A hash is the output of this mathematical process that creates a string of numbers and letters of a fixed size. For bitcoin is 32 bytes (256 bit) • Ex: Message Digest (MD) family MD4, MD5 and MD6 with 128 bit, Secure Hash Algorithm (SHA) SHA-0, SHA-1 with 160 bit (20 Bytes) SHA-2 (SHA-224, SHA-256, SHA-384, SHA-512) and SHA-3 • Hash functions are one-way functions, used in verifying the integrity and authenticity of information. 15
in a blockchain Merkle Root Tree Representation H(0123+4567) H(01+23) H(45+67) H(H0+H1) H(H2+H3) H(H4+H5) H(H6+H7) H0 H1 H2 H3 H4 H5 H6 H7 Tx0 Tx1 Tx2 Tx3 Tx4 Tx5 Tx6 Tx7 Block 20 Previous Hash Timestamp TX_Root Nonce Block 21 Previous Hash Timestamp TX_Root Nonce Block 22 Previous Hash Timestamp TX_Root Nonce The blockchain data structure, by using the cryptographic hashes, provides a tamper resistant chain of blocks. The usage of Merkle trees makes the transaction verification easier and faster. 16
blockchain is useful Four primary use cases of blockchain technology: • Tokenization • Tokenization can be applied to regulated financial instruments such as equities and bonds, tangible assets such as real estate. • Digital identity • Blockchain technology can eliminate the need for intermediaries and enable people to have full control over their digital and legal identity. • Transfer of value • It can be used to allow smart connected devices to buy and sell items autonomously. Blockchain technology does this by creating a secure means of directly authenticating IoT devices without a certification authority. • Decentralized Applications. • EOS enables the development and hosting of decentralized apps differently, allowing for more scalability, speed, and flexibility. 17
Bitcoin: first blockchain network (bitcoin = name of the currency) • Hyperledger Fabric: by Linux; no cryptocurrency but nodes; private • EOS: a smart contract operating system; user-friendly for decentralized app developers • Ripple: Requires all parties trust, know each other, replacing some central bank functionality; fast • Corda: Consortium of 300+ corporates/banks, started with Money transfer with Shared ledger approach • Ethereum: advanced and accessible, defined Smart contract • The Waves platform (2016): easy to use; easy creation of decentralized applications (DApps). • Hedera : 3rd Generation with Hashgraph consensus algorithm using virtual voting • Chain Core : An enterprise permissioned blockchain (currencies, securities, derivatives, gift cards, and loyalty points). strategic partnerships -Capital One, Citigroup, Fiserv, Nasdaq, Orange, Visa, • IOTA : focuses on enabling the emerging Internet of Things (IoT) • Multichain: introduced smart filters as contract approach • Quorum : A fork of the Ethereum public blockchain 18 Hyperledger Fabric MultiChain Ethereum Corda Go, Java, JavaScript JavaScript Solidity Java + Kotlin