Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Contents
About the Author
About the Technical Reviewer
Introduction
Stage I: Terminology and Technical Foundations
Step 1: Thinking in Layers and Aspects
The Metaphor
Layers of a Software System
Application vs. Implementation
Functional vs. Nonfunctional Aspects
Application vs. Implementation
Functional vs. Nonfunctional Aspects
Considering Two Layers at the Same Time
Integrity
Outlook
Summary
The Metaphor
Layers of a Software System
Application vs. Implementation
Functional vs. Nonfunctional Aspects
Application vs. Implementation
Functional vs. Nonfunctional Aspects
Considering Two Layers at the Same Time
Integrity
Outlook
Summary
Step 2: Seeing the Big Picture
The Metaphor
A Payment System
Two Types of Software Architecture
The Advantages of Distributed Systems
Higher Computing Power
Cost Reduction
Higher Reliability
Ability to Grow Naturally
Higher Computing Power
Cost Reduction
Higher Reliability
Ability to Grow Naturally
The Disadvantages of Distributed Systems
Coordination Overhead
Communication Overhead
Dependencies on Networks
Higher Program Complexity
Security Issues
Coordination Overhead
Communication Overhead
Dependencies on Networks
Higher Program Complexity
Security Issues
Distributed Peer-to-Peer Systems
Mixing Centralized and Distributed Systems
Identifying Distributed Systems
The Purpose of the Blockchain
Outlook
Summary
The Metaphor
A Payment System
Two Types of Software Architecture
The Advantages of Distributed Systems
Higher Computing Power
Cost Reduction
Higher Reliability
Ability to Grow Naturally
Higher Computing Power
Cost Reduction
Higher Reliability
Ability to Grow Naturally
The Disadvantages of Distributed Systems
Coordination Overhead
Communication Overhead
Dependencies on Networks
Higher Program Complexity
Security Issues
Coordination Overhead
Communication Overhead
Dependencies on Networks
Higher Program Complexity
Security Issues
Distributed Peer-to-Peer Systems
Mixing Centralized and Distributed Systems
Identifying Distributed Systems
The Purpose of the Blockchain
Outlook
Summary
Step 3: Recognizing the Potential
The Metaphor
How a Peer-to-Peer System Changed a Whole Industry
The Potential of Peer-to-Peer Systems
Terminology and the Link to the Blockchain
The Definition of a Peer-to-Peer System
Architecture of Peer-to-Peer Systems
The Link Between Peer-to-Peer Systems and the Blockchain
The Definition of a Peer-to-Peer System
Architecture of Peer-to-Peer Systems
The Link Between Peer-to-Peer Systems and the Blockchain
The Potential of the Blockchain
Outlook
Summary
The Metaphor
How a Peer-to-Peer System Changed a Whole Industry
The Potential of Peer-to-Peer Systems
Terminology and the Link to the Blockchain
The Definition of a Peer-to-Peer System
Architecture of Peer-to-Peer Systems
The Link Between Peer-to-Peer Systems and the Blockchain
The Definition of a Peer-to-Peer System
Architecture of Peer-to-Peer Systems
The Link Between Peer-to-Peer Systems and the Blockchain
The Potential of the Blockchain
Outlook
Summary
Step 1: Thinking in Layers and Aspects
The Metaphor
Layers of a Software System
Application vs. Implementation
Functional vs. Nonfunctional Aspects
Application vs. Implementation
Functional vs. Nonfunctional Aspects
Considering Two Layers at the Same Time
Integrity
Outlook
Summary
The Metaphor
Layers of a Software System
Application vs. Implementation
Functional vs. Nonfunctional Aspects
Application vs. Implementation
Functional vs. Nonfunctional Aspects
Considering Two Layers at the Same Time
Integrity
Outlook
Summary
Step 2: Seeing the Big Picture
The Metaphor
A Payment System
Two Types of Software Architecture
The Advantages of Distributed Systems
Higher Computing Power
Cost Reduction
Higher Reliability
Ability to Grow Naturally
Higher Computing Power
Cost Reduction
Higher Reliability
Ability to Grow Naturally
The Disadvantages of Distributed Systems
Coordination Overhead
Communication Overhead
Dependencies on Networks
Higher Program Complexity
Security Issues
Coordination Overhead
Communication Overhead
Dependencies on Networks
Higher Program Complexity
Security Issues
Distributed Peer-to-Peer Systems
Mixing Centralized and Distributed Systems
Identifying Distributed Systems
The Purpose of the Blockchain
Outlook
Summary
The Metaphor
A Payment System
Two Types of Software Architecture
The Advantages of Distributed Systems
Higher Computing Power
Cost Reduction
Higher Reliability
Ability to Grow Naturally
Higher Computing Power
Cost Reduction
Higher Reliability
Ability to Grow Naturally
The Disadvantages of Distributed Systems
Coordination Overhead
Communication Overhead
Dependencies on Networks
Higher Program Complexity
Security Issues
Coordination Overhead
Communication Overhead
Dependencies on Networks
Higher Program Complexity
Security Issues
Distributed Peer-to-Peer Systems
Mixing Centralized and Distributed Systems
Identifying Distributed Systems
The Purpose of the Blockchain
Outlook
Summary
Step 3: Recognizing the Potential
The Metaphor
How a Peer-to-Peer System Changed a Whole Industry
The Potential of Peer-to-Peer Systems
Terminology and the Link to the Blockchain
The Definition of a Peer-to-Peer System
Architecture of Peer-to-Peer Systems
The Link Between Peer-to-Peer Systems and the Blockchain
The Definition of a Peer-to-Peer System
Architecture of Peer-to-Peer Systems
The Link Between Peer-to-Peer Systems and the Blockchain
The Potential of the Blockchain
Outlook
Summary
The Metaphor
How a Peer-to-Peer System Changed a Whole Industry
The Potential of Peer-to-Peer Systems
Terminology and the Link to the Blockchain
The Definition of a Peer-to-Peer System
Architecture of Peer-to-Peer Systems
The Link Between Peer-to-Peer Systems and the Blockchain
The Definition of a Peer-to-Peer System
Architecture of Peer-to-Peer Systems
The Link Between Peer-to-Peer Systems and the Blockchain
The Potential of the Blockchain
Outlook
Summary
Stage II: Why the Blockchain Is Needed
Step 4: Discovering the Core Problem
The Metaphor
Trust and Integrity in Peer-to-Peer Systems
Integrity Threats in Peer-to-Peer Systems
Technical Failures
Malicious Peers
Technical Failures
Malicious Peers
The Core Problem to Be Solved by the Blockchain
Outlook
Summary
The Metaphor
Trust and Integrity in Peer-to-Peer Systems
Integrity Threats in Peer-to-Peer Systems
Technical Failures
Malicious Peers
Technical Failures
Malicious Peers
The Core Problem to Be Solved by the Blockchain
Outlook
Summary
Step 5: Disambiguating the Term
The Term
A Data Structure
An Algorithm
A Suite of Technologies
An Umbrella Term for Purely Distributed Peer-to-Peer Systems with a Common Application Area
A Data Structure
An Algorithm
A Suite of Technologies
An Umbrella Term for Purely Distributed Peer-to-Peer Systems with a Common Application Area
The Usage of the Term in This Book
Provisional Definition
The Role of Managing Ownership
The Application Area of the Blockchain in This Book
Outlook
Summary
The Term
A Data Structure
An Algorithm
A Suite of Technologies
An Umbrella Term for Purely Distributed Peer-to-Peer Systems with a Common Application Area
A Data Structure
An Algorithm
A Suite of Technologies
An Umbrella Term for Purely Distributed Peer-to-Peer Systems with a Common Application Area
The Usage of the Term in This Book
Provisional Definition
The Role of Managing Ownership
The Application Area of the Blockchain in This Book
Outlook
Summary
Step 6: Understanding the Nature of Ownership
The Metaphor
Ownership and Witnesses
Foundations of Ownership
A Short Detour to Security
Identification
Authentication
Authorization
Identification
Authentication
Authorization
Purposes and Properties of a Ledger
Ownership and the Blockchain
Outlook
Summary
The Metaphor
Ownership and Witnesses
Foundations of Ownership
A Short Detour to Security
Identification
Authentication
Authorization
Identification
Authentication
Authorization
Purposes and Properties of a Ledger
Ownership and the Blockchain
Outlook
Summary
Step 7: Spending Money Twice
The Metaphor
The Double Spending Problem
The Term
Double Spending as a Problem of Copying Digital Goods
Double Spending as a Problem of Distributed Peer-to-Peer Systems of Ledgers
Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
Double Spending as a Problem of Copying Digital Goods
Double Spending as a Problem of Distributed Peer-to-Peer Systems of Ledgers
Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
How to Solve the Double Spending Problem
Solving Double Spending as a Problem of Copying Digital Goods
Solving Double Spending as a Problem of a Distributed Peer-to-Peer System of Ledgers
Solving Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
Solving Double Spending as a Problem of Copying Digital Goods
Solving Double Spending as a Problem of a Distributed Peer-to-Peer System of Ledgers
Solving Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
The Usage of Double Spending in This Book
Outlook
Summary
The Metaphor
The Double Spending Problem
The Term
Double Spending as a Problem of Copying Digital Goods
Double Spending as a Problem of Distributed Peer-to-Peer Systems of Ledgers
Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
Double Spending as a Problem of Copying Digital Goods
Double Spending as a Problem of Distributed Peer-to-Peer Systems of Ledgers
Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
How to Solve the Double Spending Problem
Solving Double Spending as a Problem of Copying Digital Goods
Solving Double Spending as a Problem of a Distributed Peer-to-Peer System of Ledgers
Solving Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
Solving Double Spending as a Problem of Copying Digital Goods
Solving Double Spending as a Problem of a Distributed Peer-to-Peer System of Ledgers
Solving Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
The Usage of Double Spending in This Book
Outlook
Summary
Step 4: Discovering the Core Problem
The Metaphor
Trust and Integrity in Peer-to-Peer Systems
Integrity Threats in Peer-to-Peer Systems
Technical Failures
Malicious Peers
Technical Failures
Malicious Peers
The Core Problem to Be Solved by the Blockchain
Outlook
Summary
The Metaphor
Trust and Integrity in Peer-to-Peer Systems
Integrity Threats in Peer-to-Peer Systems
Technical Failures
Malicious Peers
Technical Failures
Malicious Peers
The Core Problem to Be Solved by the Blockchain
Outlook
Summary
Step 5: Disambiguating the Term
The Term
A Data Structure
An Algorithm
A Suite of Technologies
An Umbrella Term for Purely Distributed Peer-to-Peer Systems with a Common Application Area
A Data Structure
An Algorithm
A Suite of Technologies
An Umbrella Term for Purely Distributed Peer-to-Peer Systems with a Common Application Area
The Usage of the Term in This Book
Provisional Definition
The Role of Managing Ownership
The Application Area of the Blockchain in This Book
Outlook
Summary
The Term
A Data Structure
An Algorithm
A Suite of Technologies
An Umbrella Term for Purely Distributed Peer-to-Peer Systems with a Common Application Area
A Data Structure
An Algorithm
A Suite of Technologies
An Umbrella Term for Purely Distributed Peer-to-Peer Systems with a Common Application Area
The Usage of the Term in This Book
Provisional Definition
The Role of Managing Ownership
The Application Area of the Blockchain in This Book
Outlook
Summary
Step 6: Understanding the Nature of Ownership
The Metaphor
Ownership and Witnesses
Foundations of Ownership
A Short Detour to Security
Identification
Authentication
Authorization
Identification
Authentication
Authorization
Purposes and Properties of a Ledger
Ownership and the Blockchain
Outlook
Summary
The Metaphor
Ownership and Witnesses
Foundations of Ownership
A Short Detour to Security
Identification
Authentication
Authorization
Identification
Authentication
Authorization
Purposes and Properties of a Ledger
Ownership and the Blockchain
Outlook
Summary
Step 7: Spending Money Twice
The Metaphor
The Double Spending Problem
The Term
Double Spending as a Problem of Copying Digital Goods
Double Spending as a Problem of Distributed Peer-to-Peer Systems of Ledgers
Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
Double Spending as a Problem of Copying Digital Goods
Double Spending as a Problem of Distributed Peer-to-Peer Systems of Ledgers
Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
How to Solve the Double Spending Problem
Solving Double Spending as a Problem of Copying Digital Goods
Solving Double Spending as a Problem of a Distributed Peer-to-Peer System of Ledgers
Solving Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
Solving Double Spending as a Problem of Copying Digital Goods
Solving Double Spending as a Problem of a Distributed Peer-to-Peer System of Ledgers
Solving Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
The Usage of Double Spending in This Book
Outlook
Summary
The Metaphor
The Double Spending Problem
The Term
Double Spending as a Problem of Copying Digital Goods
Double Spending as a Problem of Distributed Peer-to-Peer Systems of Ledgers
Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
Double Spending as a Problem of Copying Digital Goods
Double Spending as a Problem of Distributed Peer-to-Peer Systems of Ledgers
Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
How to Solve the Double Spending Problem
Solving Double Spending as a Problem of Copying Digital Goods
Solving Double Spending as a Problem of a Distributed Peer-to-Peer System of Ledgers
Solving Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
Solving Double Spending as a Problem of Copying Digital Goods
Solving Double Spending as a Problem of a Distributed Peer-to-Peer System of Ledgers
Solving Double Spending as an Example of Violated Integrity in Distributed Peer-to-Peer Systems
The Usage of Double Spending in This Book
Outlook
Summary
Stage III: How the Blockchain Works
Step 8: Planning the Blockchain
The Goal
Starting Point
The Path to Follow
Task 1: Describing Ownership
Task 2: Protecting Ownership
Task 3: Storing Transaction Data
Task 4: Preparing Ledgers to Be Distributed in an Untrustworthy Environment
Task 5: Distributing the Ledgers
Task 6: Adding New Transactions to the Ledgers
Task 7: Deciding Which Ledgers Represent the Truth
Task 1: Describing Ownership
Task 2: Protecting Ownership
Task 3: Storing Transaction Data
Task 4: Preparing Ledgers to Be Distributed in an Untrustworthy Environment
Task 5: Distributing the Ledgers
Task 6: Adding New Transactions to the Ledgers
Task 7: Deciding Which Ledgers Represent the Truth
Outlook
Summary
The Goal
Starting Point
The Path to Follow
Task 1: Describing Ownership
Task 2: Protecting Ownership
Task 3: Storing Transaction Data
Task 4: Preparing Ledgers to Be Distributed in an Untrustworthy Environment
Task 5: Distributing the Ledgers
Task 6: Adding New Transactions to the Ledgers
Task 7: Deciding Which Ledgers Represent the Truth
Task 1: Describing Ownership
Task 2: Protecting Ownership
Task 3: Storing Transaction Data
Task 4: Preparing Ledgers to Be Distributed in an Untrustworthy Environment
Task 5: Distributing the Ledgers
Task 6: Adding New Transactions to the Ledgers
Task 7: Deciding Which Ledgers Represent the Truth
Outlook
Summary
Step 9: Documenting Ownership
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Inventory and Transaction Data
How It Works
Describing the Transfer of Ownership
Maintaining the History of Transfers
Describing the Transfer of Ownership
Maintaining the History of Transfers
Why It Works
Importance of Ordering
Integrity of the Transaction History
Formal Correctness
Semantic Correctness
Authorization
Formal Correctness
Semantic Correctness
Authorization
Outlook
Summary
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Inventory and Transaction Data
How It Works
Describing the Transfer of Ownership
Maintaining the History of Transfers
Describing the Transfer of Ownership
Maintaining the History of Transfers
Why It Works
Importance of Ordering
Integrity of the Transaction History
Formal Correctness
Semantic Correctness
Authorization
Formal Correctness
Semantic Correctness
Authorization
Outlook
Summary
Step 10: Hashing Data
The Metaphor
The Goal
How It Works
Providing Hash Values for Any Data Quickly
Deterministic
Pseudorandom
One-Way Function
Collision Resistant
Providing Hash Values for Any Data Quickly
Deterministic
Pseudorandom
One-Way Function
Collision Resistant
Trying It Out Yourself
Patterns of Hashing Data
Independent Hashing
Repeated Hashing
Combined Hashing
Sequential Hashing
Hierarchical Hashing
Independent Hashing
Repeated Hashing
Combined Hashing
Sequential Hashing
Hierarchical Hashing
Outlook
Summary
The Metaphor
The Goal
How It Works
Providing Hash Values for Any Data Quickly
Deterministic
Pseudorandom
One-Way Function
Collision Resistant
Providing Hash Values for Any Data Quickly
Deterministic
Pseudorandom
One-Way Function
Collision Resistant
Trying It Out Yourself
Patterns of Hashing Data
Independent Hashing
Repeated Hashing
Combined Hashing
Sequential Hashing
Hierarchical Hashing
Independent Hashing
Repeated Hashing
Combined Hashing
Sequential Hashing
Hierarchical Hashing
Outlook
Summary
Step 11: Hashing in the Real World
Comparing Data
The Goal
The Idea
How It Works
Why It Works
The Goal
The Idea
How It Works
Why It Works
Detecting Changes in Data
The Goal
The Idea
How It Works
Why It Works
The Goal
The Idea
How It Works
Why It Works
Referring to Data in a Change-Sensitive Manner
The Goal
The Idea
How It Works
A Schematic Illustration
Why It Works
The Goal
The Idea
How It Works
A Schematic Illustration
Why It Works
Storing Data in a Change-Sensitive Manner
The Goal
The Idea
How It Works
The Chain
The Tree
The Chain
The Tree
Why It Works
The Goal
The Idea
How It Works
The Chain
The Tree
The Chain
The Tree
Why It Works
Causing Time-Consuming Computations
The Goal
The Idea
How It Works
An Illustrative Example
The Difficulty Level
Why It Works
The Goal
The Idea
How It Works
An Illustrative Example
The Difficulty Level
Why It Works
Usage of Hashing in the Blockchain
Outlook
Summary
Comparing Data
The Goal
The Idea
How It Works
Why It Works
The Goal
The Idea
How It Works
Why It Works
Detecting Changes in Data
The Goal
The Idea
How It Works
Why It Works
The Goal
The Idea
How It Works
Why It Works
Referring to Data in a Change-Sensitive Manner
The Goal
The Idea
How It Works
A Schematic Illustration
Why It Works
The Goal
The Idea
How It Works
A Schematic Illustration
Why It Works
Storing Data in a Change-Sensitive Manner
The Goal
The Idea
How It Works
The Chain
The Tree
The Chain
The Tree
Why It Works
The Goal
The Idea
How It Works
The Chain
The Tree
The Chain
The Tree
Why It Works
Causing Time-Consuming Computations
The Goal
The Idea
How It Works
An Illustrative Example
The Difficulty Level
Why It Works
The Goal
The Idea
How It Works
An Illustrative Example
The Difficulty Level
Why It Works
Usage of Hashing in the Blockchain
Outlook
Summary
Step 12: Identifying and Protecting User Accounts
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Cryptography
The Major Idea of Cryptography
Terminology2
Symmetric Cryptography
Asymmetric Cryptography
The Major Idea of Cryptography
Terminology2
Symmetric Cryptography
Asymmetric Cryptography
Asymmetric Cryptography in the Real World
Creating and Distributing the Keys
Using the Keys
Public to Private
Private to Public
Public to Private
Private to Public
Creating and Distributing the Keys
Using the Keys
Public to Private
Private to Public
Public to Private
Private to Public
Asymmetric Cryptography in the Blockchain
Identifying Accounts
Authorizing Transactions
Identifying Accounts
Authorizing Transactions
Outlook
Summary
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Cryptography
The Major Idea of Cryptography
Terminology2
Symmetric Cryptography
Asymmetric Cryptography
The Major Idea of Cryptography
Terminology2
Symmetric Cryptography
Asymmetric Cryptography
Asymmetric Cryptography in the Real World
Creating and Distributing the Keys
Using the Keys
Public to Private
Private to Public
Public to Private
Private to Public
Creating and Distributing the Keys
Using the Keys
Public to Private
Private to Public
Public to Private
Private to Public
Asymmetric Cryptography in the Blockchain
Identifying Accounts
Authorizing Transactions
Identifying Accounts
Authorizing Transactions
Outlook
Summary
Step 13: Authorizing Transactions
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Digital Signatures
Creating a Signature
Verifying Data by Using the Signature
Identifying Fraud by Using the Signature
Creating a Signature
Verifying Data by Using the Signature
Identifying Fraud by Using the Signature
How It Works
Signing a Transaction
Verifying a Transaction
Signing a Transaction
Verifying a Transaction
Why It Works
Outlook
Summary
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Digital Signatures
Creating a Signature
Verifying Data by Using the Signature
Identifying Fraud by Using the Signature
Creating a Signature
Verifying Data by Using the Signature
Identifying Fraud by Using the Signature
How It Works
Signing a Transaction
Verifying a Transaction
Signing a Transaction
Verifying a Transaction
Why It Works
Outlook
Summary
Step 14: Storing Transaction Data
The Metaphor
The Goal
The Challenge
The Idea
Transforming a Book into a Blockchain-Data-Structure
Starting Point: A Book
Transformation 1: Making Page Dependency Explicit
Transformation 2: Outsourcing the Content
Transformation 3: Replacing Page Numbers
Transformation 4: Creating Reference Numbers
Transformation 5: Getting Rid of the Book Spine
Goal Achieved: Appreciating the Result
Starting Point: A Book
Transformation 1: Making Page Dependency Explicit
Transformation 2: Outsourcing the Content
Transformation 3: Replacing Page Numbers
Transformation 4: Creating Reference Numbers
Transformation 5: Getting Rid of the Book Spine
Goal Achieved: Appreciating the Result
The Blockchain-Data-Structure
The Mental Unit of a Page of the Ordering Catalog and Its Corresponding Content Page
Ordering Catalog
Content Pages
Catalog Page Reference Numbers
Content Reference Numbers
The Mental Unit of a Page of the Ordering Catalog and Its Corresponding Content Page
Ordering Catalog
Content Pages
Catalog Page Reference Numbers
Content Reference Numbers
Storing Transactions in the Blockchain-Data-Structure
Outlook
Summary
The Metaphor
The Goal
The Challenge
The Idea
Transforming a Book into a Blockchain-Data-Structure
Starting Point: A Book
Transformation 1: Making Page Dependency Explicit
Transformation 2: Outsourcing the Content
Transformation 3: Replacing Page Numbers
Transformation 4: Creating Reference Numbers
Transformation 5: Getting Rid of the Book Spine
Goal Achieved: Appreciating the Result
Starting Point: A Book
Transformation 1: Making Page Dependency Explicit
Transformation 2: Outsourcing the Content
Transformation 3: Replacing Page Numbers
Transformation 4: Creating Reference Numbers
Transformation 5: Getting Rid of the Book Spine
Goal Achieved: Appreciating the Result
The Blockchain-Data-Structure
The Mental Unit of a Page of the Ordering Catalog and Its Corresponding Content Page
Ordering Catalog
Content Pages
Catalog Page Reference Numbers
Content Reference Numbers
The Mental Unit of a Page of the Ordering Catalog and Its Corresponding Content Page
Ordering Catalog
Content Pages
Catalog Page Reference Numbers
Content Reference Numbers
Storing Transactions in the Blockchain-Data-Structure
Outlook
Summary
Step 15: Using the Data Store
The Metaphor
Adding New Transactions
Detecting Changes
Changing the Content of Transaction Data
Changing a Reference in the Merkle Tree
Replacing a Transaction
Changing the Merkle Root
Changing a Block Header Reference
Changing the Content of Transaction Data
Changing a Reference in the Merkle Tree
Replacing a Transaction
Changing the Merkle Root
Changing a Block Header Reference
Changing Data Orderly
Intended vs. Unintended Changes
Outlook
Summary
The Metaphor
Adding New Transactions
Detecting Changes
Changing the Content of Transaction Data
Changing a Reference in the Merkle Tree
Replacing a Transaction
Changing the Merkle Root
Changing a Block Header Reference
Changing the Content of Transaction Data
Changing a Reference in the Merkle Tree
Replacing a Transaction
Changing the Merkle Root
Changing a Block Header Reference
Changing Data Orderly
Intended vs. Unintended Changes
Outlook
Summary
Step 16: Protecting the Data Store
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Immutability
How It Works: The Big Picture
Making Manipulations Stand Out
Enforcing Rewriting the History for Embedding Changes
Making Adding Data Computationally Expensive
Making Manipulations Stand Out
Enforcing Rewriting the History for Embedding Changes
Making Adding Data Computationally Expensive
How It Works: The Details
Compulsory Data
The Process of Creating A New Block
Validation Rules
Compulsory Data
The Process of Creating A New Block
Validation Rules
Why It Works
The Costs of Manipulating the Blockchain-Data-Structure
The Immutable Data Store in the Real World
Outlook
Summary
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Immutability
How It Works: The Big Picture
Making Manipulations Stand Out
Enforcing Rewriting the History for Embedding Changes
Making Adding Data Computationally Expensive
Making Manipulations Stand Out
Enforcing Rewriting the History for Embedding Changes
Making Adding Data Computationally Expensive
How It Works: The Details
Compulsory Data
The Process of Creating A New Block
Validation Rules
Compulsory Data
The Process of Creating A New Block
Validation Rules
Why It Works
The Costs of Manipulating the Blockchain-Data-Structure
The Immutable Data Store in the Real World
Outlook
Summary
Step 17: Distributing the Data Store Among Peers
The Metaphor
The Goal
The Challenge
The Idea
How It Works: The Overview1
How It Works: The Details
Keeping Existing Connections Alive
Establishing New Connections
Distributing New Information
Keeping Existing Connections Alive
Establishing New Connections
Distributing New Information
Why It Works
Outlook
Summary
The Metaphor
The Goal
The Challenge
The Idea
How It Works: The Overview1
How It Works: The Details
Keeping Existing Connections Alive
Establishing New Connections
Distributing New Information
Keeping Existing Connections Alive
Establishing New Connections
Distributing New Information
Why It Works
Outlook
Summary
Step 18: Verif ying and Adding Transactions
The Metaphor
Consequences
Consequences
The Goal
The Challenge
The Idea
How It Works: The Building Blocks
Validation Rules
Validation Rules for Transaction Data
Validation Rules for Block Headers
Validation Rules for Transaction Data
Validation Rules for Block Headers
Reward
Punishment
Competition
Speed Competition
Quality Competition
Speed Competition
Quality Competition
Peer Control
Validation Rules
Validation Rules for Transaction Data
Validation Rules for Block Headers
Validation Rules for Transaction Data
Validation Rules for Block Headers
Reward
Punishment
Competition
Speed Competition
Quality Competition
Speed Competition
Quality Competition
Peer Control
How It Works: The Skeleton
How It Works: The Details
Why It Works
Dealing with Dishonest Behavior
Outlook
Summary
The Metaphor
Consequences
Consequences
The Goal
The Challenge
The Idea
How It Works: The Building Blocks
Validation Rules
Validation Rules for Transaction Data
Validation Rules for Block Headers
Validation Rules for Transaction Data
Validation Rules for Block Headers
Reward
Punishment
Competition
Speed Competition
Quality Competition
Speed Competition
Quality Competition
Peer Control
Validation Rules
Validation Rules for Transaction Data
Validation Rules for Block Headers
Validation Rules for Transaction Data
Validation Rules for Block Headers
Reward
Punishment
Competition
Speed Competition
Quality Competition
Speed Competition
Quality Competition
Peer Control
How It Works: The Skeleton
How It Works: The Details
Why It Works
Dealing with Dishonest Behavior
Outlook
Summary
Step 19: Choosing a Transaction History
The Metaphor
The Goal
The Challenge
The Idea
How It Works
The Longest-Chain-Criterion
The Heaviest-Chain-Criterion
The Longest-Chain-Criterion
The Heaviest-Chain-Criterion
Consequences of Selecting One Chain
Orphan Blocks
Reclaimed Reward
Clarifying Ownership
Reprocessing of Transactions
A Growing Common Trunk
Eventual Consistency
Robustness Against Manipulations
Orphan Blocks
Reclaimed Reward
Clarifying Ownership
Reprocessing of Transactions
A Growing Common Trunk
Eventual Consistency
Robustness Against Manipulations
Threats to the Voting Schema
The Role of the Hash Puzzle
Why It Works
Outlook
Summary
The Metaphor
The Goal
The Challenge
The Idea
How It Works
The Longest-Chain-Criterion
The Heaviest-Chain-Criterion
The Longest-Chain-Criterion
The Heaviest-Chain-Criterion
Consequences of Selecting One Chain
Orphan Blocks
Reclaimed Reward
Clarifying Ownership
Reprocessing of Transactions
A Growing Common Trunk
Eventual Consistency
Robustness Against Manipulations
Orphan Blocks
Reclaimed Reward
Clarifying Ownership
Reprocessing of Transactions
A Growing Common Trunk
Eventual Consistency
Robustness Against Manipulations
Threats to the Voting Schema
The Role of the Hash Puzzle
Why It Works
Outlook
Summary
Step 20: Paying for Integrity
The Metaphor
The Role of Fees Within the Blockchain
Impact on the Integrity of the System
Impact on the Openness of the System
Impact on the Distributed Nature of the System
Impact on the Philosophy of the System
Impact on the Integrity of the System
Impact on the Openness of the System
Impact on the Distributed Nature of the System
Impact on the Philosophy of the System
Desirable Properties of an Instrument of Payment for Compensating Peers
A Detour to the Emergence of Cryptographic Currencies
Outlook
Summary
The Metaphor
The Role of Fees Within the Blockchain
Impact on the Integrity of the System
Impact on the Openness of the System
Impact on the Distributed Nature of the System
Impact on the Philosophy of the System
Impact on the Integrity of the System
Impact on the Openness of the System
Impact on the Distributed Nature of the System
Impact on the Philosophy of the System
Desirable Properties of an Instrument of Payment for Compensating Peers
A Detour to the Emergence of Cryptographic Currencies
Outlook
Summary
Step 21: Bringing the Pieces Together
Reviewing Concepts and Technologies
What Is the Blockchain?
The Purpose of the Blockchain: Functional Aspects of the Application Layer
Clarifying Ownership
Transferring Ownership
Clarifying Ownership
Transferring Ownership
Properties of the Blockchain: Nonfunctional Aspects
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Internal Functioning: Functional Aspects of the Implementation Layer
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
The Purpose of the Blockchain: Functional Aspects of the Application Layer
Clarifying Ownership
Transferring Ownership
Clarifying Ownership
Transferring Ownership
Properties of the Blockchain: Nonfunctional Aspects
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Internal Functioning: Functional Aspects of the Implementation Layer
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
Gaining Abstraction
Outlook
Summary
Reviewing Concepts and Technologies
What Is the Blockchain?
The Purpose of the Blockchain: Functional Aspects of the Application Layer
Clarifying Ownership
Transferring Ownership
Clarifying Ownership
Transferring Ownership
Properties of the Blockchain: Nonfunctional Aspects
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Internal Functioning: Functional Aspects of the Implementation Layer
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
The Purpose of the Blockchain: Functional Aspects of the Application Layer
Clarifying Ownership
Transferring Ownership
Clarifying Ownership
Transferring Ownership
Properties of the Blockchain: Nonfunctional Aspects
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Internal Functioning: Functional Aspects of the Implementation Layer
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
Gaining Abstraction
Outlook
Summary
Step 8: Planning the Blockchain
The Goal
Starting Point
The Path to Follow
Task 1: Describing Ownership
Task 2: Protecting Ownership
Task 3: Storing Transaction Data
Task 4: Preparing Ledgers to Be Distributed in an Untrustworthy Environment
Task 5: Distributing the Ledgers
Task 6: Adding New Transactions to the Ledgers
Task 7: Deciding Which Ledgers Represent the Truth
Task 1: Describing Ownership
Task 2: Protecting Ownership
Task 3: Storing Transaction Data
Task 4: Preparing Ledgers to Be Distributed in an Untrustworthy Environment
Task 5: Distributing the Ledgers
Task 6: Adding New Transactions to the Ledgers
Task 7: Deciding Which Ledgers Represent the Truth
Outlook
Summary
The Goal
Starting Point
The Path to Follow
Task 1: Describing Ownership
Task 2: Protecting Ownership
Task 3: Storing Transaction Data
Task 4: Preparing Ledgers to Be Distributed in an Untrustworthy Environment
Task 5: Distributing the Ledgers
Task 6: Adding New Transactions to the Ledgers
Task 7: Deciding Which Ledgers Represent the Truth
Task 1: Describing Ownership
Task 2: Protecting Ownership
Task 3: Storing Transaction Data
Task 4: Preparing Ledgers to Be Distributed in an Untrustworthy Environment
Task 5: Distributing the Ledgers
Task 6: Adding New Transactions to the Ledgers
Task 7: Deciding Which Ledgers Represent the Truth
Outlook
Summary
Step 9: Documenting Ownership
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Inventory and Transaction Data
How It Works
Describing the Transfer of Ownership
Maintaining the History of Transfers
Describing the Transfer of Ownership
Maintaining the History of Transfers
Why It Works
Importance of Ordering
Integrity of the Transaction History
Formal Correctness
Semantic Correctness
Authorization
Formal Correctness
Semantic Correctness
Authorization
Outlook
Summary
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Inventory and Transaction Data
How It Works
Describing the Transfer of Ownership
Maintaining the History of Transfers
Describing the Transfer of Ownership
Maintaining the History of Transfers
Why It Works
Importance of Ordering
Integrity of the Transaction History
Formal Correctness
Semantic Correctness
Authorization
Formal Correctness
Semantic Correctness
Authorization
Outlook
Summary
Step 10: Hashing Data
The Metaphor
The Goal
How It Works
Providing Hash Values for Any Data Quickly
Deterministic
Pseudorandom
One-Way Function
Collision Resistant
Providing Hash Values for Any Data Quickly
Deterministic
Pseudorandom
One-Way Function
Collision Resistant
Trying It Out Yourself
Patterns of Hashing Data
Independent Hashing
Repeated Hashing
Combined Hashing
Sequential Hashing
Hierarchical Hashing
Independent Hashing
Repeated Hashing
Combined Hashing
Sequential Hashing
Hierarchical Hashing
Outlook
Summary
The Metaphor
The Goal
How It Works
Providing Hash Values for Any Data Quickly
Deterministic
Pseudorandom
One-Way Function
Collision Resistant
Providing Hash Values for Any Data Quickly
Deterministic
Pseudorandom
One-Way Function
Collision Resistant
Trying It Out Yourself
Patterns of Hashing Data
Independent Hashing
Repeated Hashing
Combined Hashing
Sequential Hashing
Hierarchical Hashing
Independent Hashing
Repeated Hashing
Combined Hashing
Sequential Hashing
Hierarchical Hashing
Outlook
Summary
Step 11: Hashing in the Real World
Comparing Data
The Goal
The Idea
How It Works
Why It Works
The Goal
The Idea
How It Works
Why It Works
Detecting Changes in Data
The Goal
The Idea
How It Works
Why It Works
The Goal
The Idea
How It Works
Why It Works
Referring to Data in a Change-Sensitive Manner
The Goal
The Idea
How It Works
A Schematic Illustration
Why It Works
The Goal
The Idea
How It Works
A Schematic Illustration
Why It Works
Storing Data in a Change-Sensitive Manner
The Goal
The Idea
How It Works
The Chain
The Tree
The Chain
The Tree
Why It Works
The Goal
The Idea
How It Works
The Chain
The Tree
The Chain
The Tree
Why It Works
Causing Time-Consuming Computations
The Goal
The Idea
How It Works
An Illustrative Example
The Difficulty Level
Why It Works
The Goal
The Idea
How It Works
An Illustrative Example
The Difficulty Level
Why It Works
Usage of Hashing in the Blockchain
Outlook
Summary
Comparing Data
The Goal
The Idea
How It Works
Why It Works
The Goal
The Idea
How It Works
Why It Works
Detecting Changes in Data
The Goal
The Idea
How It Works
Why It Works
The Goal
The Idea
How It Works
Why It Works
Referring to Data in a Change-Sensitive Manner
The Goal
The Idea
How It Works
A Schematic Illustration
Why It Works
The Goal
The Idea
How It Works
A Schematic Illustration
Why It Works
Storing Data in a Change-Sensitive Manner
The Goal
The Idea
How It Works
The Chain
The Tree
The Chain
The Tree
Why It Works
The Goal
The Idea
How It Works
The Chain
The Tree
The Chain
The Tree
Why It Works
Causing Time-Consuming Computations
The Goal
The Idea
How It Works
An Illustrative Example
The Difficulty Level
Why It Works
The Goal
The Idea
How It Works
An Illustrative Example
The Difficulty Level
Why It Works
Usage of Hashing in the Blockchain
Outlook
Summary
Step 12: Identifying and Protecting User Accounts
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Cryptography
The Major Idea of Cryptography
Terminology2
Symmetric Cryptography
Asymmetric Cryptography
The Major Idea of Cryptography
Terminology2
Symmetric Cryptography
Asymmetric Cryptography
Asymmetric Cryptography in the Real World
Creating and Distributing the Keys
Using the Keys
Public to Private
Private to Public
Public to Private
Private to Public
Creating and Distributing the Keys
Using the Keys
Public to Private
Private to Public
Public to Private
Private to Public
Asymmetric Cryptography in the Blockchain
Identifying Accounts
Authorizing Transactions
Identifying Accounts
Authorizing Transactions
Outlook
Summary
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Cryptography
The Major Idea of Cryptography
Terminology2
Symmetric Cryptography
Asymmetric Cryptography
The Major Idea of Cryptography
Terminology2
Symmetric Cryptography
Asymmetric Cryptography
Asymmetric Cryptography in the Real World
Creating and Distributing the Keys
Using the Keys
Public to Private
Private to Public
Public to Private
Private to Public
Creating and Distributing the Keys
Using the Keys
Public to Private
Private to Public
Public to Private
Private to Public
Asymmetric Cryptography in the Blockchain
Identifying Accounts
Authorizing Transactions
Identifying Accounts
Authorizing Transactions
Outlook
Summary
Step 13: Authorizing Transactions
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Digital Signatures
Creating a Signature
Verifying Data by Using the Signature
Identifying Fraud by Using the Signature
Creating a Signature
Verifying Data by Using the Signature
Identifying Fraud by Using the Signature
How It Works
Signing a Transaction
Verifying a Transaction
Signing a Transaction
Verifying a Transaction
Why It Works
Outlook
Summary
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Digital Signatures
Creating a Signature
Verifying Data by Using the Signature
Identifying Fraud by Using the Signature
Creating a Signature
Verifying Data by Using the Signature
Identifying Fraud by Using the Signature
How It Works
Signing a Transaction
Verifying a Transaction
Signing a Transaction
Verifying a Transaction
Why It Works
Outlook
Summary
Step 14: Storing Transaction Data
The Metaphor
The Goal
The Challenge
The Idea
Transforming a Book into a Blockchain-Data-Structure
Starting Point: A Book
Transformation 1: Making Page Dependency Explicit
Transformation 2: Outsourcing the Content
Transformation 3: Replacing Page Numbers
Transformation 4: Creating Reference Numbers
Transformation 5: Getting Rid of the Book Spine
Goal Achieved: Appreciating the Result
Starting Point: A Book
Transformation 1: Making Page Dependency Explicit
Transformation 2: Outsourcing the Content
Transformation 3: Replacing Page Numbers
Transformation 4: Creating Reference Numbers
Transformation 5: Getting Rid of the Book Spine
Goal Achieved: Appreciating the Result
The Blockchain-Data-Structure
The Mental Unit of a Page of the Ordering Catalog and Its Corresponding Content Page
Ordering Catalog
Content Pages
Catalog Page Reference Numbers
Content Reference Numbers
The Mental Unit of a Page of the Ordering Catalog and Its Corresponding Content Page
Ordering Catalog
Content Pages
Catalog Page Reference Numbers
Content Reference Numbers
Storing Transactions in the Blockchain-Data-Structure
Outlook
Summary
The Metaphor
The Goal
The Challenge
The Idea
Transforming a Book into a Blockchain-Data-Structure
Starting Point: A Book
Transformation 1: Making Page Dependency Explicit
Transformation 2: Outsourcing the Content
Transformation 3: Replacing Page Numbers
Transformation 4: Creating Reference Numbers
Transformation 5: Getting Rid of the Book Spine
Goal Achieved: Appreciating the Result
Starting Point: A Book
Transformation 1: Making Page Dependency Explicit
Transformation 2: Outsourcing the Content
Transformation 3: Replacing Page Numbers
Transformation 4: Creating Reference Numbers
Transformation 5: Getting Rid of the Book Spine
Goal Achieved: Appreciating the Result
The Blockchain-Data-Structure
The Mental Unit of a Page of the Ordering Catalog and Its Corresponding Content Page
Ordering Catalog
Content Pages
Catalog Page Reference Numbers
Content Reference Numbers
The Mental Unit of a Page of the Ordering Catalog and Its Corresponding Content Page
Ordering Catalog
Content Pages
Catalog Page Reference Numbers
Content Reference Numbers
Storing Transactions in the Blockchain-Data-Structure
Outlook
Summary
Step 15: Using the Data Store
The Metaphor
Adding New Transactions
Detecting Changes
Changing the Content of Transaction Data
Changing a Reference in the Merkle Tree
Replacing a Transaction
Changing the Merkle Root
Changing a Block Header Reference
Changing the Content of Transaction Data
Changing a Reference in the Merkle Tree
Replacing a Transaction
Changing the Merkle Root
Changing a Block Header Reference
Changing Data Orderly
Intended vs. Unintended Changes
Outlook
Summary
The Metaphor
Adding New Transactions
Detecting Changes
Changing the Content of Transaction Data
Changing a Reference in the Merkle Tree
Replacing a Transaction
Changing the Merkle Root
Changing a Block Header Reference
Changing the Content of Transaction Data
Changing a Reference in the Merkle Tree
Replacing a Transaction
Changing the Merkle Root
Changing a Block Header Reference
Changing Data Orderly
Intended vs. Unintended Changes
Outlook
Summary
Step 16: Protecting the Data Store
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Immutability
How It Works: The Big Picture
Making Manipulations Stand Out
Enforcing Rewriting the History for Embedding Changes
Making Adding Data Computationally Expensive
Making Manipulations Stand Out
Enforcing Rewriting the History for Embedding Changes
Making Adding Data Computationally Expensive
How It Works: The Details
Compulsory Data
The Process of Creating A New Block
Validation Rules
Compulsory Data
The Process of Creating A New Block
Validation Rules
Why It Works
The Costs of Manipulating the Blockchain-Data-Structure
The Immutable Data Store in the Real World
Outlook
Summary
The Metaphor
The Goal
The Challenge
The Idea
A Short Detour to Immutability
How It Works: The Big Picture
Making Manipulations Stand Out
Enforcing Rewriting the History for Embedding Changes
Making Adding Data Computationally Expensive
Making Manipulations Stand Out
Enforcing Rewriting the History for Embedding Changes
Making Adding Data Computationally Expensive
How It Works: The Details
Compulsory Data
The Process of Creating A New Block
Validation Rules
Compulsory Data
The Process of Creating A New Block
Validation Rules
Why It Works
The Costs of Manipulating the Blockchain-Data-Structure
The Immutable Data Store in the Real World
Outlook
Summary
Step 17: Distributing the Data Store Among Peers
The Metaphor
The Goal
The Challenge
The Idea
How It Works: The Overview1
How It Works: The Details
Keeping Existing Connections Alive
Establishing New Connections
Distributing New Information
Keeping Existing Connections Alive
Establishing New Connections
Distributing New Information
Why It Works
Outlook
Summary
The Metaphor
The Goal
The Challenge
The Idea
How It Works: The Overview1
How It Works: The Details
Keeping Existing Connections Alive
Establishing New Connections
Distributing New Information
Keeping Existing Connections Alive
Establishing New Connections
Distributing New Information
Why It Works
Outlook
Summary
Step 18: Verif ying and Adding Transactions
The Metaphor
Consequences
Consequences
The Goal
The Challenge
The Idea
How It Works: The Building Blocks
Validation Rules
Validation Rules for Transaction Data
Validation Rules for Block Headers
Validation Rules for Transaction Data
Validation Rules for Block Headers
Reward
Punishment
Competition
Speed Competition
Quality Competition
Speed Competition
Quality Competition
Peer Control
Validation Rules
Validation Rules for Transaction Data
Validation Rules for Block Headers
Validation Rules for Transaction Data
Validation Rules for Block Headers
Reward
Punishment
Competition
Speed Competition
Quality Competition
Speed Competition
Quality Competition
Peer Control
How It Works: The Skeleton
How It Works: The Details
Why It Works
Dealing with Dishonest Behavior
Outlook
Summary
The Metaphor
Consequences
Consequences
The Goal
The Challenge
The Idea
How It Works: The Building Blocks
Validation Rules
Validation Rules for Transaction Data
Validation Rules for Block Headers
Validation Rules for Transaction Data
Validation Rules for Block Headers
Reward
Punishment
Competition
Speed Competition
Quality Competition
Speed Competition
Quality Competition
Peer Control
Validation Rules
Validation Rules for Transaction Data
Validation Rules for Block Headers
Validation Rules for Transaction Data
Validation Rules for Block Headers
Reward
Punishment
Competition
Speed Competition
Quality Competition
Speed Competition
Quality Competition
Peer Control
How It Works: The Skeleton
How It Works: The Details
Why It Works
Dealing with Dishonest Behavior
Outlook
Summary
Step 19: Choosing a Transaction History
The Metaphor
The Goal
The Challenge
The Idea
How It Works
The Longest-Chain-Criterion
The Heaviest-Chain-Criterion
The Longest-Chain-Criterion
The Heaviest-Chain-Criterion
Consequences of Selecting One Chain
Orphan Blocks
Reclaimed Reward
Clarifying Ownership
Reprocessing of Transactions
A Growing Common Trunk
Eventual Consistency
Robustness Against Manipulations
Orphan Blocks
Reclaimed Reward
Clarifying Ownership
Reprocessing of Transactions
A Growing Common Trunk
Eventual Consistency
Robustness Against Manipulations
Threats to the Voting Schema
The Role of the Hash Puzzle
Why It Works
Outlook
Summary
The Metaphor
The Goal
The Challenge
The Idea
How It Works
The Longest-Chain-Criterion
The Heaviest-Chain-Criterion
The Longest-Chain-Criterion
The Heaviest-Chain-Criterion
Consequences of Selecting One Chain
Orphan Blocks
Reclaimed Reward
Clarifying Ownership
Reprocessing of Transactions
A Growing Common Trunk
Eventual Consistency
Robustness Against Manipulations
Orphan Blocks
Reclaimed Reward
Clarifying Ownership
Reprocessing of Transactions
A Growing Common Trunk
Eventual Consistency
Robustness Against Manipulations
Threats to the Voting Schema
The Role of the Hash Puzzle
Why It Works
Outlook
Summary
Step 20: Paying for Integrity
The Metaphor
The Role of Fees Within the Blockchain
Impact on the Integrity of the System
Impact on the Openness of the System
Impact on the Distributed Nature of the System
Impact on the Philosophy of the System
Impact on the Integrity of the System
Impact on the Openness of the System
Impact on the Distributed Nature of the System
Impact on the Philosophy of the System
Desirable Properties of an Instrument of Payment for Compensating Peers
A Detour to the Emergence of Cryptographic Currencies
Outlook
Summary
The Metaphor
The Role of Fees Within the Blockchain
Impact on the Integrity of the System
Impact on the Openness of the System
Impact on the Distributed Nature of the System
Impact on the Philosophy of the System
Impact on the Integrity of the System
Impact on the Openness of the System
Impact on the Distributed Nature of the System
Impact on the Philosophy of the System
Desirable Properties of an Instrument of Payment for Compensating Peers
A Detour to the Emergence of Cryptographic Currencies
Outlook
Summary
Step 21: Bringing the Pieces Together
Reviewing Concepts and Technologies
What Is the Blockchain?
The Purpose of the Blockchain: Functional Aspects of the Application Layer
Clarifying Ownership
Transferring Ownership
Clarifying Ownership
Transferring Ownership
Properties of the Blockchain: Nonfunctional Aspects
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Internal Functioning: Functional Aspects of the Implementation Layer
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
The Purpose of the Blockchain: Functional Aspects of the Application Layer
Clarifying Ownership
Transferring Ownership
Clarifying Ownership
Transferring Ownership
Properties of the Blockchain: Nonfunctional Aspects
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Internal Functioning: Functional Aspects of the Implementation Layer
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
Gaining Abstraction
Outlook
Summary
Reviewing Concepts and Technologies
What Is the Blockchain?
The Purpose of the Blockchain: Functional Aspects of the Application Layer
Clarifying Ownership
Transferring Ownership
Clarifying Ownership
Transferring Ownership
Properties of the Blockchain: Nonfunctional Aspects
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Internal Functioning: Functional Aspects of the Implementation Layer
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
The Purpose of the Blockchain: Functional Aspects of the Application Layer
Clarifying Ownership
Transferring Ownership
Clarifying Ownership
Transferring Ownership
Properties of the Blockchain: Nonfunctional Aspects
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Highly Available
Censorship Proof
Reliable
Open
Pseudoanonymous
Secure
Resilient
Eventually Consistent
Keeping Integrity
Internal Functioning: Functional Aspects of the Implementation Layer
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
Ownership Logic
Transaction Security
Transaction Processing Logic
Storage Logic
Peer-to-Peer Architecture
Consensus Logic
Gaining Abstraction
Outlook
Summary
Stage IV: Limitations and How to Overcome Them
Step 22: Seeing the Limitations
The Challenge
Technical Limitations of the Blockchain
Lack of Privacy
The Security Model
Limited Scalability
High Costs
Hidden Centrality
Lack of Flexibility
Critical Size
Lack of Privacy
The Security Model
Limited Scalability
High Costs
Hidden Centrality
Lack of Flexibility
Critical Size
Nontechnical Limitations of the Blockchain
Lack of Legal Acceptance
Lack of User Acceptance
Lack of Legal Acceptance
Lack of User Acceptance
Overcoming the Limitations
Technical Limitations
Nontechnical Limitations
Technical Limitations
Nontechnical Limitations
Outlook
Summary
The Challenge
Technical Limitations of the Blockchain
Lack of Privacy
The Security Model
Limited Scalability
High Costs
Hidden Centrality
Lack of Flexibility
Critical Size
Lack of Privacy
The Security Model
Limited Scalability
High Costs
Hidden Centrality
Lack of Flexibility
Critical Size
Nontechnical Limitations of the Blockchain
Lack of Legal Acceptance
Lack of User Acceptance
Lack of Legal Acceptance
Lack of User Acceptance
Overcoming the Limitations
Technical Limitations
Nontechnical Limitations
Technical Limitations
Nontechnical Limitations
Outlook
Summary
Step 23: Reinventing the Blockchain
The Metaphor
Conflicting Goals of the Blockchain
Transparency vs. Privacy
Security vs. Speed
Transparency vs. Privacy
Security vs. Speed
The Roots of the Conflicts
Solving the Conflicts
Deciding on Transparency vs. Privacy
Deciding on Security vs. Speed
Deciding on Transparency vs. Privacy
Deciding on Security vs. Speed
Four Versions of the Blockchain
Consequences
The Peer-to-Peer Architecture
The Distributed Nature
Purpose
The Peer-to-Peer Architecture
The Distributed Nature
Purpose
Reviewing the Purpose of the Blockchain
The Usage of the Term Blockchain in the Remainder of This Book
Outlook
Summary
The Metaphor
Conflicting Goals of the Blockchain
Transparency vs. Privacy
Security vs. Speed
Transparency vs. Privacy
Security vs. Speed
The Roots of the Conflicts
Solving the Conflicts
Deciding on Transparency vs. Privacy
Deciding on Security vs. Speed
Deciding on Transparency vs. Privacy
Deciding on Security vs. Speed
Four Versions of the Blockchain
Consequences
The Peer-to-Peer Architecture
The Distributed Nature
Purpose
The Peer-to-Peer Architecture
The Distributed Nature
Purpose
Reviewing the Purpose of the Blockchain
The Usage of the Term Blockchain in the Remainder of This Book
Outlook
Summary
Step 22: Seeing the Limitations
The Challenge
Technical Limitations of the Blockchain
Lack of Privacy
The Security Model
Limited Scalability
High Costs
Hidden Centrality
Lack of Flexibility
Critical Size
Lack of Privacy
The Security Model
Limited Scalability
High Costs
Hidden Centrality
Lack of Flexibility
Critical Size
Nontechnical Limitations of the Blockchain
Lack of Legal Acceptance
Lack of User Acceptance
Lack of Legal Acceptance
Lack of User Acceptance
Overcoming the Limitations
Technical Limitations
Nontechnical Limitations
Technical Limitations
Nontechnical Limitations
Outlook
Summary
The Challenge
Technical Limitations of the Blockchain
Lack of Privacy
The Security Model
Limited Scalability
High Costs
Hidden Centrality
Lack of Flexibility
Critical Size
Lack of Privacy
The Security Model
Limited Scalability
High Costs
Hidden Centrality
Lack of Flexibility
Critical Size
Nontechnical Limitations of the Blockchain
Lack of Legal Acceptance
Lack of User Acceptance
Lack of Legal Acceptance
Lack of User Acceptance
Overcoming the Limitations
Technical Limitations
Nontechnical Limitations
Technical Limitations
Nontechnical Limitations
Outlook
Summary
Step 23: Reinventing the Blockchain
The Metaphor
Conflicting Goals of the Blockchain
Transparency vs. Privacy
Security vs. Speed
Transparency vs. Privacy
Security vs. Speed
The Roots of the Conflicts
Solving the Conflicts
Deciding on Transparency vs. Privacy
Deciding on Security vs. Speed
Deciding on Transparency vs. Privacy
Deciding on Security vs. Speed
Four Versions of the Blockchain
Consequences
The Peer-to-Peer Architecture
The Distributed Nature
Purpose
The Peer-to-Peer Architecture
The Distributed Nature
Purpose
Reviewing the Purpose of the Blockchain
The Usage of the Term Blockchain in the Remainder of This Book
Outlook
Summary
The Metaphor
Conflicting Goals of the Blockchain
Transparency vs. Privacy
Security vs. Speed
Transparency vs. Privacy
Security vs. Speed
The Roots of the Conflicts
Solving the Conflicts
Deciding on Transparency vs. Privacy
Deciding on Security vs. Speed
Deciding on Transparency vs. Privacy
Deciding on Security vs. Speed
Four Versions of the Blockchain
Consequences
The Peer-to-Peer Architecture
The Distributed Nature
Purpose
The Peer-to-Peer Architecture
The Distributed Nature
Purpose
Reviewing the Purpose of the Blockchain
The Usage of the Term Blockchain in the Remainder of This Book
Outlook
Summary
Stage V: Using the Blockchain, Summary, and Outlook
Step 24: Using the Blockchain
The Metaphor
Characteristics of the Blockchain
Generic Application Patterns
Proof of Existence
Proof of Nonexistence
Proof of Time
Proof of Order
Proof of Identity
Proof of Authorship
Proof of Ownership
Proof of Existence
Proof of Nonexistence
Proof of Time
Proof of Order
Proof of Identity
Proof of Authorship
Proof of Ownership
Specific Use Cases
Analyzing Blockchain Applications
Are the Requirements for Using the Blockchain Fulfilled?
What Kind of Blockchain Is Used?
What Is the Added Value of Using the Purely Peer-to-Peer System?
What Is the Application Idea?
What Is the Business Case?
How Are Peers Compensated for Contributing Resources to the System and Maintaining Integrity?
Are the Requirements for Using the Blockchain Fulfilled?
What Kind of Blockchain Is Used?
What Is the Added Value of Using the Purely Peer-to-Peer System?
What Is the Application Idea?
What Is the Business Case?
How Are Peers Compensated for Contributing Resources to the System and Maintaining Integrity?
Outlook
Summary
The Metaphor
Characteristics of the Blockchain
Generic Application Patterns
Proof of Existence
Proof of Nonexistence
Proof of Time
Proof of Order
Proof of Identity
Proof of Authorship
Proof of Ownership
Proof of Existence
Proof of Nonexistence
Proof of Time
Proof of Order
Proof of Identity
Proof of Authorship
Proof of Ownership
Specific Use Cases
Analyzing Blockchain Applications
Are the Requirements for Using the Blockchain Fulfilled?
What Kind of Blockchain Is Used?
What Is the Added Value of Using the Purely Peer-to-Peer System?
What Is the Application Idea?
What Is the Business Case?
How Are Peers Compensated for Contributing Resources to the System and Maintaining Integrity?
Are the Requirements for Using the Blockchain Fulfilled?
What Kind of Blockchain Is Used?
What Is the Added Value of Using the Purely Peer-to-Peer System?
What Is the Application Idea?
What Is the Business Case?
How Are Peers Compensated for Contributing Resources to the System and Maintaining Integrity?
Outlook
Summary
Step 25: Summarizing and Going Further
The Metaphor
Further Developments and Alternatives
Minor Technical Improvements and Variations
Improving Scalability
Conceptual Evolutions
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Minor Technical Improvements and Variations
Improving Scalability
Conceptual Evolutions
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Major Accomplishments of the Blockchain
Disintermediation
Automation
Standardization
Streamlining Processes
Increased Processing Speed
Cost Reduction
Shift Toward Trust in Protocols and Technology
Making Trust a Commodity
Increased Technology Awareness
Disintermediation
Automation
Standardization
Streamlining Processes
Increased Processing Speed
Cost Reduction
Shift Toward Trust in Protocols and Technology
Making Trust a Commodity
Increased Technology Awareness
Possible Disadvantages
Lack of Privacy
Loss of Responsibility
Loss of Jobs
Reintermediation
Lack of Privacy
Loss of Responsibility
Loss of Jobs
Reintermediation
The Future
Limited Enthusiast Projects
Large-Scale Commercial Usage
Governmental Projects
Limited Enthusiast Projects
Large-Scale Commercial Usage
Governmental Projects
Outlook
Summary
The Metaphor
Further Developments and Alternatives
Minor Technical Improvements and Variations
Improving Scalability
Conceptual Evolutions
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Minor Technical Improvements and Variations
Improving Scalability
Conceptual Evolutions
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Major Accomplishments of the Blockchain
Disintermediation
Automation
Standardization
Streamlining Processes
Increased Processing Speed
Cost Reduction
Shift Toward Trust in Protocols and Technology
Making Trust a Commodity
Increased Technology Awareness
Disintermediation
Automation
Standardization
Streamlining Processes
Increased Processing Speed
Cost Reduction
Shift Toward Trust in Protocols and Technology
Making Trust a Commodity
Increased Technology Awareness
Possible Disadvantages
Lack of Privacy
Loss of Responsibility
Loss of Jobs
Reintermediation
Lack of Privacy
Loss of Responsibility
Loss of Jobs
Reintermediation
The Future
Limited Enthusiast Projects
Large-Scale Commercial Usage
Governmental Projects
Limited Enthusiast Projects
Large-Scale Commercial Usage
Governmental Projects
Outlook
Summary
Step 24: Using the Blockchain
The Metaphor
Characteristics of the Blockchain
Generic Application Patterns
Proof of Existence
Proof of Nonexistence
Proof of Time
Proof of Order
Proof of Identity
Proof of Authorship
Proof of Ownership
Proof of Existence
Proof of Nonexistence
Proof of Time
Proof of Order
Proof of Identity
Proof of Authorship
Proof of Ownership
Specific Use Cases
Analyzing Blockchain Applications
Are the Requirements for Using the Blockchain Fulfilled?
What Kind of Blockchain Is Used?
What Is the Added Value of Using the Purely Peer-to-Peer System?
What Is the Application Idea?
What Is the Business Case?
How Are Peers Compensated for Contributing Resources to the System and Maintaining Integrity?
Are the Requirements for Using the Blockchain Fulfilled?
What Kind of Blockchain Is Used?
What Is the Added Value of Using the Purely Peer-to-Peer System?
What Is the Application Idea?
What Is the Business Case?
How Are Peers Compensated for Contributing Resources to the System and Maintaining Integrity?
Outlook
Summary
The Metaphor
Characteristics of the Blockchain
Generic Application Patterns
Proof of Existence
Proof of Nonexistence
Proof of Time
Proof of Order
Proof of Identity
Proof of Authorship
Proof of Ownership
Proof of Existence
Proof of Nonexistence
Proof of Time
Proof of Order
Proof of Identity
Proof of Authorship
Proof of Ownership
Specific Use Cases
Analyzing Blockchain Applications
Are the Requirements for Using the Blockchain Fulfilled?
What Kind of Blockchain Is Used?
What Is the Added Value of Using the Purely Peer-to-Peer System?
What Is the Application Idea?
What Is the Business Case?
How Are Peers Compensated for Contributing Resources to the System and Maintaining Integrity?
Are the Requirements for Using the Blockchain Fulfilled?
What Kind of Blockchain Is Used?
What Is the Added Value of Using the Purely Peer-to-Peer System?
What Is the Application Idea?
What Is the Business Case?
How Are Peers Compensated for Contributing Resources to the System and Maintaining Integrity?
Outlook
Summary
Step 25: Summarizing and Going Further
The Metaphor
Further Developments and Alternatives
Minor Technical Improvements and Variations
Improving Scalability
Conceptual Evolutions
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Minor Technical Improvements and Variations
Improving Scalability
Conceptual Evolutions
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Major Accomplishments of the Blockchain
Disintermediation
Automation
Standardization
Streamlining Processes
Increased Processing Speed
Cost Reduction
Shift Toward Trust in Protocols and Technology
Making Trust a Commodity
Increased Technology Awareness
Disintermediation
Automation
Standardization
Streamlining Processes
Increased Processing Speed
Cost Reduction
Shift Toward Trust in Protocols and Technology
Making Trust a Commodity
Increased Technology Awareness
Possible Disadvantages
Lack of Privacy
Loss of Responsibility
Loss of Jobs
Reintermediation
Lack of Privacy
Loss of Responsibility
Loss of Jobs
Reintermediation
The Future
Limited Enthusiast Projects
Large-Scale Commercial Usage
Governmental Projects
Limited Enthusiast Projects
Large-Scale Commercial Usage
Governmental Projects
Outlook
Summary
The Metaphor
Further Developments and Alternatives
Minor Technical Improvements and Variations
Improving Scalability
Conceptual Evolutions
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Minor Technical Improvements and Variations
Improving Scalability
Conceptual Evolutions
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Access Rights
Privacy
Consensus
Transactions
Inventory Data
Data Structure
Major Accomplishments of the Blockchain
Disintermediation
Automation
Standardization
Streamlining Processes
Increased Processing Speed
Cost Reduction
Shift Toward Trust in Protocols and Technology
Making Trust a Commodity
Increased Technology Awareness
Disintermediation
Automation
Standardization
Streamlining Processes
Increased Processing Speed
Cost Reduction
Shift Toward Trust in Protocols and Technology
Making Trust a Commodity
Increased Technology Awareness
Possible Disadvantages
Lack of Privacy
Loss of Responsibility
Loss of Jobs
Reintermediation
Lack of Privacy
Loss of Responsibility
Loss of Jobs
Reintermediation
The Future
Limited Enthusiast Projects
Large-Scale Commercial Usage
Governmental Projects
Limited Enthusiast Projects
Large-Scale Commercial Usage
Governmental Projects
Outlook
Summary
Index
← Prev
Back
Next →
← Prev
Back
Next →