UID:
edocfu_9961555068502883
Umfang:
1 online resource (323 pages)
Ausgabe:
1st ed.
ISBN:
1-00-308004-9
,
1-003-08004-9
,
1-000-32763-9
,
1-000-32769-8
Inhalt:
This book covers theory and practical knowledge of Probabilistic data structures (PDS) and Blockchain (BC) concepts. It introduces the applicability of PDS in BC to technology practitioners and explains each PDS through code snippets and illustrative examples. Further, it provides references for the applications of PDS to BC along with implementation codes in python language for various PDS so that the readers can gain confidence using hands on experience. Organized into five sections, the book covers IoT technology, fundamental concepts of BC, PDS and algorithms used to estimate membership query, cardinality, similarity and frequency, usage of PDS in BC based IoT and so forth.
Anmerkung:
Cover -- Half Title -- Title Page -- Copyright Page -- Contents -- Foreword -- Preface -- Biography -- I: Background -- 1. Overview of Internet of Things -- 1.1. Understanding the Concept of Internet of Things -- 1.1.1. Components of IoT -- 1.2. Big Data Revolution -- 1.2.1. Big data and IoT -- 1.3. Understanding edge computing -- 2. Smart Applications -- 2.1. Internet-of-Energy -- 2.2. Autonomous Vehicles -- 2.3. Healthcare -- 2.4. Smart Farming -- 2.5. Smart Education -- 2.6. Smart Industry -- 2.7. Smart City -- 3. IoT challenges -- 3.1. Security -- 3.2. Data Management -- 3.3. Privacy -- 3.4. Heterogeneity -- 3.5. Latency -- 3.6. Communication Challenge in IoT -- II: Blockchain Overview -- 4. Python Basics -- 4.1. Introduction -- 4.2. Comments -- 4.3. Multi-line Statement -- 4.4. Blocks and Indentation -- 4.5. Creating Variables and Assigning Values -- 4.6. Data Types -- 4.7. Operators -- 4.7.1. Arithmetic operator -- 4.7.2. Comparison operator -- 4.7.3. Logical operator -- 4.7.4. Python Bitwise operator -- 4.7.5. Assignment operator -- 4.7.6. Membership operator -- 4.7.7. Identity Operators -- 4.8. Input and Output in Python -- 4.9. List -- 4.10. Dictionary -- 4.11. Python Conditions and if-else -- 4.12. Loops -- 4.13. Functions in Python -- 4.14. Classes and Objects in Python -- 4.15. File Handling in Python -- 4.15.1. open() function -- 4.15.2. close() function -- 4.15.3. read() function -- 4.16. write() function -- 5. Cryptography Primitives -- 5.1. Introduction -- 5.2. Encryption/Decryption Process -- 5.2.1. Encryption -- 5.2.2. Decryption -- 5.2.3. Symmetric key encryption -- 5.2.4. Asymmetric key encryption -- 5.2.5. Public key -- 5.2.6. Private key -- 5.3. Cryptographic Hash Functions -- 5.3.1. Typical properties of a hash function -- 5.3.2. Requirements of hash function: -- 5.3.3. Applications of cryptographic hash functions.
,
5.3.4. MD5 message-digest algorithm -- 5.3.5. SHA-256 -- 5.4. Digital Signatures -- 5.4.1. Model of digital signature -- 5.5. Zero-Knowledge Proof -- 5.6. Hash Tables -- 5.6.1. Separate chaining -- 5.6.2. Linear probing -- 5.6.3. Quadratic probing -- 5.6.4. Double hashing -- 5.7. RSA -- 5.7.1. Steps for key generation: -- 5.7.2. Encryption -- 5.7.3. Decryption -- 5.7.4. RSA example -- 5.8. Elliptic Curve Cryptography -- 6. Blockchain Technology and Technical Foundations -- 6.1. Fundamentals of Blockchain -- 6.1.1. Characteristics of blockchain technology -- 6.1.2. What constitutes a block of blockchain? -- 6.1.3. Bitcoin basics -- 6.2. Types of Blockchain -- 6.3. Blockchain Applications -- 6.4. Smart Contracts -- 6.5. Issues with Blockchain -- 6.5.1. IPFS: A solution to decentralized data stoge problem -- 6.6. Python Implementation of Blockchain -- 7. Verification and Validation Methods Used by Blockchain -- 7.1. Consensus Mechanism -- 7.1.1. Proof-of-Work -- 7.1.2. Proof-of-Stake -- 7.1.3. Delegated Proof-of-Stake -- 7.1.4. Practical Byzantine Fault Tolerance -- 7.1.5. Proof-of-Authority -- 7.1.6. Proof-of-Capacity -- 7.1.7. Proof-of-Burn -- 7.1.8. Proof-of-Luck -- 7.2. Simplified Payment Verification -- 7.3. Block Validation -- 7.4. Transaction Validation -- 8. Data Structures for Blockchain -- 8.1. Data Structures for Blockchain -- III: Probabilistic Data Structures: An Overview -- 9. Introduction to Probabilistic Data Structures -- 9.1. Need of Probabilistic Data Structures -- 9.2. Deterministic Data Structures vs. Probabilistic Data Structures -- 9.3. Probabilistic Data Structures Applications -- 9.4. Probabilistic Data Structure Challenges -- 10. Membership Query Probabilistic Data Structures -- 10.1. Membership Query Probabilistic Data Structures -- 10.2. Bloom Filter and its Variants -- 10.2.1. Structure of Bloom filter.
,
10.2.2. Implementation of BF in Python -- 10.2.3. Variants of BF -- 10.2.3.1. Counting BF -- 10.2.3.2. Compressed BF -- 10.2.3.3. Spectral BF -- 10.2.3.4. Deletable Bloom Filter (DBF) -- 10.2.3.5. Stable BF -- 10.2.3.6. Retouched Bloom Filter (RBF) -- 10.2.3.7. Dynamic Bloom Filter -- 10.2.3.8. Cuckoo Filter -- 10.2.3.9. Hierarchical BF -- 10.2.3.10. Stochastic Fair Blue -- 10.3. Quotient Filter -- 10.4. Skip List -- 10.4.1. Skiplist implementation in Python -- 11. Cardinality Estimation Probabilistic Data Structures -- 11.1. Introduction -- 11.2. Linear Counting -- 11.2.1. Implemtation code of linear counting -- 11.3. LogLog -- 11.3.1. Implementation of LogLog in Python -- 11.4. HyperLogLog -- 11.4.1. Implementation of HLL in Python -- 12. Frequency Count Query Probabilistic Data Structures -- 12.1. Introduction -- 12.2. Count-Min Sketch -- 12.2.1. Implementation of CMS with Python -- 12.2.2. Count-mean-min-sketch -- 12.3. Count-sketch -- 12.4. Count-Min with Conservative Update Sketch -- 13. Approximate Similarity Search Query Probabilistic Data Structures -- 13.1. Introduction -- 13.2. Minhashing -- 13.3. Locality Sensitive Hashing -- 13.3.1. Simhash -- IV: Integration of Probabilistic Data Structures with Blockchain -- 14. Applicability of Membership Query PDS with Blockchain -- 14.1. Full Blockchain Client vs Lightweight Blockchain Client -- 14.2. BF with probabilistic data structures -- 14.2.1. Bitcoin using BF -- 14.2.1.1. PoW using BF -- 14.2.2. Ethereum using BF -- 14.2.3. Integration of blockchain and BF for certi cate revocation -- 14.2.4. Integration of blockchain and BF in smart grid sector -- 14.2.5. Integration of blockchain and Bitcoin for bodyworn sensing devices -- 14.2.6. Graphene: Block propagation protocol -- 14.2.7. Anti-malware software using BF and blockchain.
,
14.2.8. Transaction execution in disaster prone area using BF and blockchain -- 14.2.9. Non-equivocation with BF and blockchain -- 14.2.10. Outdoor health monitoring using blockchain and BF -- 14.2.11. Multi-domain collaboration for MEC in 5G and beyond based on blockchain and BF -- 14.3. Integration of QF with Blockchain -- 14.4. Integration of Skiplist with Blockchain -- 15. Applicability of Cardinality Estimation PDS with Blockchain -- 15.1. DDoS Attack in Blockchain -- 15.2. Mempool Transaction Count -- 15.3. Interation of Linear Counting, LogLog and Hyper-LogLog with Blockchain -- 15.3.1. Counting transaction in mempool -- 15.3.2. HLL to prevent DoS attack -- 15.3.3. IoT chain -- 16. Applicability of Frequency Estimation PDS with Blockchain -- 16.1. RFID Tag Cloning -- 16.2. Understanding Heavy Hitters -- 16.3. Integration of CMS with Blockchain -- 16.3.1. Detecting DoS attack -- 16.3.2. Detecting RFID tag cloning -- 17. Applicability of Approximate Similarity Search PDS with Blockchain -- 17.1. Approximate Nearest Neighbor Binary Search Algorithm for Wireless Multimedia Sensor Network -- 17.2. A Blockchain of Image Copyrights Using Locality Sensitive Hashing -- Bibliography -- Index.
Weitere Ausg.:
ISBN 0-367-52990-4
Sprache:
Englisch
DOI:
10.1201/9781003080046