Probabilistic data structures for blockchain-based internet of things applications

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...

Full description

Bibliographic Details
Main Authors: Kumar, Neeraj, Miglani, Arzoo (Author)
Format: eBook
Language:English
Published: Boca Raton CRC Press 2020
Subjects:
Online Access:
Collection: O'Reilly - Collection details see MPG.ReNa
LEADER 09326nmm a2200601 u 4500
001 EB002067323
003 EBX01000000000000001207413
005 00000000000000.0
007 cr|||||||||||||||||||||
008 220922 ||| eng
020 |a 1000327663 
020 |a 9781000327632 
020 |a 9781003080046 
020 |a 9781000327694 
020 |a 9781000327663 
020 |a 1000327639 
020 |a 1000327698 
050 4 |a QA76.9.B56 
100 1 |a Kumar, Neeraj 
245 0 0 |a Probabilistic data structures for blockchain-based internet of things applications  |c Neeraj Kumar, Arzoo Miglani 
260 |a Boca Raton  |b CRC Press  |c 2020 
300 |a 1 online resource 
505 0 |a 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 
505 0 |a 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 
505 0 |a 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 
505 0 |a 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 
653 |a COMPUTERS / Machine Theory / bisacsh 
653 |a Chaînes de blocs 
653 |a Internet of things / http://id.loc.gov/authorities/subjects/sh2013000266 
653 |a Internet of things / fast 
653 |a Probabilistic databases / fast 
653 |a MATHEMATICS / Arithmetic / bisacsh 
653 |a Blockchains (Databases) / fast 
653 |a Blockchains (Databases) / http://id.loc.gov/authorities/subjects/sh2016002790 
653 |a Probabilistic databases / http://id.loc.gov/authorities/subjects/sh2013000370 
653 |a COMPUTERS / Computer Engineering / bisacsh 
653 |a Internet des objets 
700 1 |a Miglani, Arzoo  |e author 
041 0 7 |a eng  |2 ISO 639-2 
989 |b OREILLY  |a O'Reilly 
015 |a GBC0G7975 
776 |z 9780367529901 
776 |z 9781000327663 
776 |z 9781000327694 
776 |z 1000327639 
776 |z 9781003080046 
776 |z 9781000327632 
776 |z 0367529904 
856 4 0 |u https://learning.oreilly.com/library/view/~/9781000327694/?ar  |x Verlag  |3 Volltext 
082 0 |a 510 
082 0 |a 005.7 
082 0 |a 620 
520 |a 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