وبلاگ بلیان

Blockchain Technology

معرفی کتاب «Blockchain Technology» نوشتهٔ Chandramouli Subramanian, Asha A George, Abhilash K A, Meena Karthikeyan، منتشرشده توسط نشر Madhu Reddy در سال 2020. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است. «Blockchain Technology» در دستهٔ بدون دسته‌بندی قرار دارد.

Blockchain Technology is based on the latest guidelines to present the subject concepts in an easily understandable way. Due care has been taken to present the concepts in a simple, comprehensive manner. The pictorial representations for explaining the hard concepts as well as the multiple examples that facilitate easy assimilation of each topic have been created to ensure that no aspects of the subject are left unexplained. This book is primarilydesigned for use as a course textbook on blockchain technologies.However, it can serve as a good point of reference for software practitioners as well. We have provided a blend of practical as well as theoretical concepts of Blockchain technology in this book so that the reader can easily relate the concept to the emerging real-world applications. Preface Acknowledgements About the Authors CHAPTER 1 Fundamentals of Blockchain 1.1 Introduction 1.2 Origin of Blockchain 1.2.1 What Is Blockchain 1.2.2 The Bitcoin and the Blockchain 1.2.3 The Evolution of Blockchain 1.3 Blockchain Solution 1.3.1 Traditional vs. Blockchain Transactions 1.3.2 Key Blockchain Concepts 1.3.3 How Blockchain Technology Works 1.4 Components of Blockchain 1.4.1 Node 1.4.2 Ledger 1.4.3 Wallet 1.4.4 Nonce 1.4.5 Hash 1.4.6 Mining 1.4.7 Consensus Protocol 1.5 Block in a Blockchain 1.5.1 Meaning of the Block 1.5.2 Blockchain Transaction in a Nutshell 1.5.3 Double-spending 1.6 The Technology and the Future 1.6.1 Blockchain Layers 1.6.2 Pros and Cons of Blockchain 1.6.3 Potential Applications in the Industry Summary Multiple Choice Questions Short-answer Questions Essay-type Questions CHAPTER 2 Blockchain Types and Consensus Mechanism 2.1 Introduction 2.2 Decentralization and Distribution 2.2.1 Decentralization 2.2.2 Distributed Ledger Technology 2.3 Types of Blockchain 2.3.1 Accessibility and Permissions 2.3.2 Public Blockchain 2.3.3 Private Blockchain 2.3.4 Consortium Blockchain 2.3.5 Hybrid Blockchain 2.3.6 Blockchain-as-a-Service 2.4 Consensus Protocol 2.4.1 Byzantine Generals Problem 2.4.2 Objectives of Consensus Protocol 2.4.3 Consensus Algorithms 2.4.4 Other Consensus Mechanisms Summary Multiple Choice Questions Short-answer Questions Essay-type Questions CHAPTER 3 Cryptocurrency – Bitcoin, Altcoin and Token 3.1 Introduction 3.2 Bitcoin and the Cryptocurrency 3.2.1 Evolution of Currency 3.2.2 Birth of Bitcoin 3.3 Cryptocurrency Basics 3.3.1 What Is Cryptocurrency 3.3.2 Characteristics of Cryptocurrency 3.3.3 Cryptocurrency Wallets 3.4 Types of Cryptocurrency 3.4.1 Altcoins 3.4.2 Tokens 3.4.3 Popular Coins and Tokens 3.5 Cryptocurrency Usage 3.5.1 Ecosystem Players 3.5.2 Cryptomining 3.5.3 Airdrop 3.5.4 Token or Coin Burning 3.5.5 Investing and Trading 3.5.6 Cryptocurrency Safety 3.5.7 Regulations Around Cryptocurrency Summary Multiple Choice Questions Short-answer Questions Essay-type Questions CHAPTER 4 Public Blockchain System 4.1 Introduction 4.2 Public Blockchain 4.2.1 Blockchain Layers 4.3 Popular Public Blockchains 4.4 The Bitcoin Blockchain 4.4.1 Need for Bitcoin and Its Value 4.4.2 Common Terminologies 4.4.3 Bitcoin Mining 4.4.4 Proof of Work (Pow) and Hashcash in Bitcoin 4.4.5 Block Propagation and Relay 4.4.6 Bitcoin Script 4.4.7 Transaction in the Bitcoin Network 4.5 Ethereum Blockchain 4.5.1 Introduction to Smart Contracts 4.5.2 Code Is Law and Ethereum Classic 4.5.3 Ethereum Components 4.5.4 How Mining Works in Ethereum 4.5.5 Merkle Patricia Tree 4.5.6 Architecture of Ethereum 4.5.7 Workflow of Ethereum 4.5.8 Comparison of Bitcoin and Ethereum Summary Multiple Choice Questions Short-answer Questions Essay-type Questions CHAPTER 5 Smart Contracts 5.1 Introduction 5.2 Smart Contract 5.2.1 Smart Contract Example 5.2.2 How Smart Contracts Work 5.3 Characteristics of a Smart Contract 5.4 Types of Smart Contracts 5.4.1 Smart Legal Contracts 5.4.2 DApps (Decentralized Applications) 5.4.3 DAO (Distributed Autonomous Organization) 5.4.4 Smart Contracting Devices (Combined with IoT) 5.5 Types of Oracles 5.5.1 Software Oracles 5.5.2 Hardware Oracles 5.5.3 Inbound and Outbound Oracles 5.5.4 Consensus-based Oracles 5.6 Smart Contracts in Ethereum 5.7 Smart Contracts in Industry 5.7.1 Healthcare Industry 5.7.2 Manufacturing and Supply Chain 5.7.3 Banking and Financial Services Industry 5.7.4 Smart Contracts in Other Industries Summary Multiple Choice Questions Short-answer Questions Essay-type Questions CHAPTER 6 Private Blockchain System 6.1 Introduction 6.2 Key Characteristics of Private Blockchain 6.2.1 Private Blockchain and Permissioned Blockchain 6.3 Why We Need Private Blockchain 6.4 Private Blockchain Examples 6.5 Private Blockchain and Open Source 6.6 E-commerce Site Example 6.6.1 Problems with the Centralized Server 6.6.2 Private Blockchain Concepts in an E-commerce Scenario 6.7 Various Commands (Instructions) in E-commerce Blockchain 6.8 Smart Contract in Private Environment 6.8.1 Design Limitations in a Permissioned Environment 6.8.2 The Cap Theorem 6.8.3 The Base Theory 6.9 State Machine 6.9.1 Example of State Machine Using a Real-time Example 6.9.2 Smart Contract in a State Machine 6.9.3 State Machine Replication Consensus 6.9.4 Applications of State Machine Replication 6.9.5 Three Common Types of Fault in a Distributed Environment 6.9.6 Consensus for Three Processes 6.9.7 Requirements of a Consensus Algorithm 6.10 Different Algorithms of Permissioned Blockchain 6.10.1 Paxos Algorithm 6.10.2 Raft Consensus Algorithm 6.11 Byzantine Fault 6.11.1 Three Byzantine Problem 6.11.2 Four Byzantine Problem 6.11.3 Byzantine Generals Model 6.12 Multichain 6.12.1 Streams in Multichain 6.12.2 Control Over Transactions Summary Multiple Choice Questions Short-answer Questions Essay-type Questions CHAPTER 7 Consortium Blockchain 7.1 Introduction 7.2 Key Characteristics of Consortium Blockchain 7.3 Why We Need Consortium Blockchain 7.4 Hyperledger Platform 7.4.1 Fabric 7.4.2 INDY 7.4.3 Sawtooth 7.4.4 Grid 7.4.5 Hyperledger Tools 7.4.6 Hyperledger Fabric 7.5 Overview of Ripple 7.6 Overview of Corda Summary Multiple Choice Questions Short-answer Questions Essay-type Questions CHAPTER 8 Initial Coin Offering (ICO) 8.1 Introduction 8.2 Blockchain Fundraising Methods 8.2.1 Initial Coin Offering 8.2.2 ICO and the Traditional IPO 8.2.3 Important ICO Terms 8.3 Launching an ICO 8.4 Investing in an ICO 8.4.1 Why Invest in an ICO 8.4.2 How to Invest in an ICO 8.4.3 Understanding the White Paper 8.5 Pros and Cons of Initial Coin Offering 8.5.1 Advantages of an ICO 8.5.2 Drawbacks of an ICO 8.6 Successful Initial Coin Offerings 8.6.1 Success Pillars of ICO 8.6.2 Examples of Successful ICOs 8.7 Evolution of ICO 8.7.1 ICO Variants 8.7.2 Regulatory Aspects 8.8 ICO Platforms 8.8.1 ICO Launching Platforms 8.8.2 ICO Listing Platforms Summary Multiple Choice Questions Short-answer Questions Essay-type Questions CHAPTER 9 Security in Blockchain 9.1 Introduction 9.2 Security Aspects in Bitcoin 9.2.1 Key and Signature Mechanism in Bitcoin 9.3 Security and Privacy Challenges of Blockchain in General 9.3.1 Majority Attack 9.3.2 Deterministic Transactions 9.3.3 Inherent Security Attributes of Blockchain (CIAR) 9.4 Performance and Scalability 9.5 Identity Management and Authentication 9.6 Regulatory Compliance and Assurance 9.7 Safeguarding Blockchain Smart Contract (DApp) 9.8 Security Aspects in Hyperledger Fabric Summary Multiple Choice Questions Short-answer Questions Essay-type Questions CHAPTER 10 Applications of Blockchain 10.1 Introduction 10.2 Blockchain in Banking and Finance 10.2.1 Challenges in Finance Sector 10.2.2 Know Your Customer (KYC) 10.2.3 Cross-border Payments 10.2.4 Trade Finance 10.2.5 Stock Trading 10.2.6 Insurance 10.2.7 Mortgages 10.3 Blockchain in Education 10.3.1 Challenges in Education 10.3.2 Identity and Student Records 10.3.3 Student Financing 10.3.4 Verification of Academic Credentials 10.3.5 New Pedagogy 10.4 Blockchain in Energy 10.4.1 Challenges in Energy Sector 10.4.2 Peer-to-Peer (P2P) Trading 10.4.3 Smart Grids 10.4.4 Energy Trading 10.5 Blockchain in Healthcare 10.5.1 Challenges in Healthcare 10.5.2 Health Records Management 10.5.3 Claims and Billing Management 10.5.4 Drug Supply Chain Management 10.5.5 Patient and Provider Identity Management 10.5.6 Clinical Trials and Medical Research Management 10.6 Blockchain in Real-estate 10.6.1 Challenges in Real-estate 10.6.2 Property Listings 10.6.3 Tokenization of Properties 10.6.4 Frictionless Transactions 10.6.5 Peer-to-Peer Mortgages 10.6.6 Smart Contract Property Management 10.7 Blockchain in Supply Chain 10.7.1 Challenges in Supply Chain 10.7.2 Supply Chain Financing 10.7.3 Blockchain Logistics 10.7.4 Supply Chain Traceability 10.7.5 Food Safety 10.8 The Blockchain and Iot 10.8.1 Advantages of Blockchain with IoT 10.8.2 Applications of Blockchain in IoT Summary Multiple Choice Questions Short-answer Questions Essay-type Questions CHAPTER 11 Limitations and Challenges of Blockchain 11.1 Introduction 11.2 Blockchain Implementation – Limitations 11.2.1 Limited Scalability 11.2.2 Limited Privacy 11.2.3 Lack of Technical Knowledge 11.2.4 Security Concerns and Flaws 11.3 Blockchain Implementation – Challenges 11.3.1 Transaction Processing Speed 11.3.2 Complexity 11.3.3 Implementation and Operation Cost 11.3.4 Storage Constraints 11.3.5 Lack of Governance and Standards 11.3.6 Lack of Formal Contract Verification 11.3.7 Energy and Resource Consumption 11.3.8 Simplified Mining 11.3.9 Human Errors Summary Multiple Choice Questions Short-answer Questions Essay-type Questions CHAPTER 12 Blockchain Case Studies 12.1 Case Study 1 – Retail 12.2 Case Study 2 – Banking and Financial Services 12.3 Case Study 3 - Healthcare 12.4 Case Study 4 – Energy and Utilities Summary CHAPTER 13 Blockchain Platform using Go Language 13.1 Introduction 13.1.1 Install Golang in Your System 13.1.2 Learn How to Use Golang Playground 13.1.3 Learn How to Install Golang in Your System 13.1.4 Learn How to Install Atom in Your System 13.2 Learn How to Execute Your First Golang Program in Atom 13.3 Know How to Do Basic Programming Using Golang 13.3.1 Basic Packages and Commands in Golang 13.3.2 Data Types in Golang 13.3.3 Loops 13.3.4 If-Else Statement 13.3.5 Writing Functions 13.3.6 Switch Stat ements 13.4 Basic Packages in Golang 13.4.1 Fmt Package 13.4.2 Log Package 13.4.3 Crypto/Sha256 Package 13.5 Creating Simple Blockchain Using Golang 13.5.1 Block Structure 13.5.2 Blockchain Structure 13.5.3 Creating a Block 13.5.4 Creating Hash 13.5.5 Adding Blocks to the Blockchain 13.5.6 Creating the First Block: Genesis Block 13.5.7 Initiating the Blockchain 13.5.8 Main Function of the Blockchain 13.5.9 Running the Simple Blockchain Golang Program 13.6 Creating Simple Blockchain with Proof-of-Work (PoW) Using Golang 13.6.1 Introducing Nonce into the Block 13.6.2 Proof-of-Work Struct 13.6.3 Creating/Running Proof-of-Work 13.6.4 Validating Proof-of-Work 13.6.5 Running a Simple Blockchain Golang Program with Proof-of-Work (PoW) 13.7 Connecting to Ethereum Using Golang 13.7.1 Getting and Importing Github Packages to Connect to Ethereum Network 13.7.2 Dialling Infura to Get the Connection of the Client 13.7.3 Getting Transaction Details by Hash from the Connection 13.7.4 Getting the Latest Block Details 13.7.5 Query a Specific Block by Hash 13.7.6 Getting the Transaction Details from the Block 13.7.7 Getting the Specific Transaction Details from the Block Based on the Transaction Index and Block Hash 13.7.8 Getting the Specific Transaction Details Based on the Transacion Hash Summary Practical Questions (Using Golang) CHAPTER 14 Blockchain Ethereum Platform using Solidity 14.1 Introduction 14.2 Remix IDE 14.3 Structure of a Smart Contract Program 14.4 Using Remix to Write and Run a Solidity Program 14.4.1 Example 1 14.4.2 Example 2 14.5 Modifiers 14.6 Events 14.7 Arrays in Solidity 14.7.1 Array Example 1 14.7.2 Array Example 2 14.7.3 Array Example 3 14.8 Function Visibility 14.9 Variable Visibility 14.10 Function Modifier Keyword 14.11 How Funds Are Accepted 14.12 Fallback Function 14.13 Contract Inheritance 14.14 Contract Communicating with Another Contract 14.15 External Libraries 14.16 ERC20 Token Transfer 14.17 Error Handling in Solidity 14.18 Application Binary Interface (ABI) 14.19 Swarm (Decentralized Storage Platform) 14.20 Whisper (Decentralized Messaging Platform) Summary Practical Questions (Using Ethereum Solidity) CHAPTER 15 Blockchain Platform using Python 15.1 Introduction 15.2 Learn How to Use Python Online Editor 15.3 Basic Programming Using Python 15.3.1 Introduction to Basic Python Commands 15.3.2 Basic Data Types in Python 15.3.3 for–while Loops and if-else Statement 15.3.4 Writing Functions 15.3.5 Mathematical Operations on Data Types 15.4 Python Packages for Blockchain 15.4.1 Blockchain Package Modules 15.4.2 Blockchain Block Explorer Module 15.4.3 Create Wallet Module 15.4.4 Exchange Module 15.4.5 Pushtx Module 15.4.6 V2.Receive Module 15.4.7 Statistics Module 15.4.8 Wallet Module 15.4.9 Blockchain Exercise Summary Practical Questions (Using Python) CHAPTER 16 Blockchain Platform using Hyperledger Fabric 16.1 Introduction 16.2 Components of Hyperledger Fabric Network 16.3 Chaincodes from Developer.ibm.com 16.4 Blockchain Application Using Fabric Java SDK 16.4.1 Creating Hyperledger Environment on Windows 16.4.2 Blockchain Prerequisites Installation 16.4.3 Setup the Java SDK Blockchain Network Summary Practical Questions (Using Hyperledger Fabric Platform) APPENDIX A Connecting Remix with Ganache APPENDIX B Connecting MyEtherWallet (MEW) with Ganache APPENDIX C Connecting Remix with Metamask APPENDIX D Model Syllabus for Blockchain Technology
دانلود کتاب Blockchain Technology