SlideShare a Scribd company logo
1 of 29
Download to read offline
LedgerDB: A Centralized Ledger Database
for Universal Audit and Verification
Xinying Yang† , Yuan Zhang† , Sheng Wang§ , Benquan Yu† ,
Feifei Li§ , Yize Li† , Wenyuan Yan†
†Ant Financial Services Group §Alibaba Group
Proceedings of the VLDB Endowment, August 2020
Motivation:
Decentralized ledger
→ Low throughput
→ High latency
→ High storage overhead
Centralized ledger
→ High throughput
→ Low latency
→ Low storage overhead
Real-world use cases only seek for tamper resistance
Simple cryptographic protection is enough (e.g., merkle tree)
Threat model is not realistic
Consortium members can collectively deceive an external auditor
(i.e., fabricate fake evidence without being noticed)
Existing centralized ledger assumes trustful service provider
(e.g., AWS QLDB)
But, single point of failure…
Blockchain immutability induces obsolete storage overhead
Permissioned Blockchain
Background
Many blockchain apps deployed on a Blockchain-as-a-Service (BaaS)
which (eventually) leads to a centralized infrastructure
maintained by a single service provider
Re-examine the necessity of its decentralization
Reform decentralization in permissioned blockchain
Auditability
⚫ Auditability is the capability of observing user actions
and verifying integrity and authenticity
⚫ Internal audit
• Ensures that an internal user of the ledger can verify all
transactions conducted by all other users
⚫ External audit
• Ensures that an external auditor can verify all transactions
conducted by all users and ledger service provider (LSP)
Threat Model
⚫ Server-side malicious tampering
• An adversary can compromise user(s) or LSP and
tamper/remove transaction history
⚫ LSP-user collusion tampering
• One or more uses can collude with the LSP as the
adversary to cheat an external auditor
⚫ Trusted third-party Time Stamping Authority (TSA)
• Provides universal time endorsement
Design Goals
⚫ Strong external auditability
⚫ High write performance
⚫ Data removal (+hiding) support
LedgerDB: Overview
LedgerDB: Overview
Receives client requests and preprocesses, an
d then dispatches them to the ledger server
Manages the runtime metadata of the
entire cluster and coordinates cluster-
level events
Process requests, while interacting
with the underlying storage layer
LedgerDB: Data Model and APIs
Transaction
Journal (entry)
Transaction
Transaction
Transaction
Ledger instance
(ledger_uri)
Transaction
Block
Journal
Sequence# (jsn)
0
1
2
3
n
LedgerDB: Data Model and APIs
// Hide journal by jsn or clue
// Rollback to the purged_point
// remove obsolete journals from ledger
// assign trust level
to jsn
LedgerDB: Non-repudiable journal structures
LedgerClient LedgerServer
signed request
(jsn)
LedgerDB: Transaction Processing
⚫ Most blockchain: Order-Execute
• Execute transactions serially, leading to extremely low
throughput
⚫ Hyperledger Fabric: Execute-Order-Validate
• Support concurrent execution of multiple transactions,
which however declines significantly when the conflict
rate is high during validation
⚫ LedgerDB: adopts a novel Execute-Commit-Index
• Combines execution and validation for transaction to be
validated as early as possible before the completion of its
entire execution
• better utilizes centralized concurrency control and
distributed execution techniques to improve throughput.
LedgerDB: Transaction Processing Workflow
LedgerDB: Transaction Processing Workflow
collects multiple executed transactions & processes them in batch
arranges them in a global order
persists them to the storage system
can modify World State
LedgerDB: Transaction Processing Workflow
Execute
Commit
Batch Accumulated Merkle Tree
Verification & Audit: Batch Accumulated Merkle Tree
Block-intensive model (bim) Transaction-intensive model (tim)
To verify the existence of specified transactions, there are two typical entanglement
models used in blockchain-like systems.
PrevHash
PrevHash
PrevHash
Tx Integrity: Merkle Tree within a block
Block Integrity: Hashchain across blocks
Insertion cost = O(d)
For m transaction insertions, O(d * m) → slow
Tx verification cost = O(logn)
Tree depth
= d
O(m + d)
Batch Accumulated Merkle Tree’s Insertion Cost
m = batch size
no concept of a block of transactions (e.g., Libra)
Benefits from both model
Block size = n
Verification & Audit: Batch Accumulated Merkle Tree
LSP-user collusion tampering
TSA: a time notary authority, which can prove that a piece of data exists
before a certain time point
Universal Time Notary Anchors
External
auditor
User
User
LSP
Fabricated
fake evidence
Request
transaction history
<출처: 행안부 타임스탬프 적용 안내서>
Blockchain network
Universal Time Notary Anchors
Defines a special type of journal: TSA journal, endorsed by TSA
ledger snapshot (i.e., a ledger digest)
timestamp, signed by TSA
TSA journal
Points to the hash of its pr
evious TSA journal
Anchor
frequency
Verifiable Data Removals
⚫ LedgerDB breaks the immutability in most blockchain
but still preserves data verifiability
⚫ Data removal operators
• purge : removes obsolete records to save storage cost
• occult : hides violating records to resolve regulatory issues
Verifiable Data Removals: purge()
⚫ Deletes a set of contiguous (obsolete) journals starting
from genesis to a designated journal, and then
generates a pseudo genesis block.
pur_jsn
Genesis
Block
purge
Pseudo Genesis
Block
system metadata
(e.g., creator, initial members)
+
Status(e.g., memberships)
migrate
Verifiable Data Removals: purge()
⚫ Appends a purge journal on ledger.
⚫ Requires multi-signatures from the ledger creator (or
DBA) and all related members
Evaluation: Setup
⚫ Deploy LedgerDB on Alibaba Cloud
⚫ 2-node cluster, where each node runs CentOS 7.2.1511
and is equipped with Intel(R) Xeon(R) Platinum 2.5GHz
CPU, 32GB RAM, and 1TB ESSD storage (with
throughput at 632MBps and 53K IOPS)
⚫ All nodes are connected via 25Gb Ethernet
Evaluation: Throughput
(#client)
1KB, 1 client, 6K TPS
64 client, 280K TPS
Evaluation: Latency
Latency affected by degree of concurrency and transaction data size.
Evaluation: vs. Hyperledger Fabric
(Hyperledger Fabric)
A single-channel ordering service,
Kafka orderer setup: 3 ZooKeeper nodes, 4 Kafka brokers,
5 peers as endorsers and 3 Fabric orderers (all on distinct
VMs)
LedgerDB Vs. other systems
Conclusion
⚫ Proposes LedgerDB, a centralized ledger database
that supports universal audit and verification
⚫ LedgerDB offers
• High performance
• High verification efficiency
• Verifiable data removals
⚫ LedgerDB can be a fascinating alternative to
permissioned blockchains.
Ledgerdb

More Related Content

Similar to Ledgerdb

A guide through the Azure Messaging services - Update Conference
A guide through the Azure Messaging services - Update ConferenceA guide through the Azure Messaging services - Update Conference
A guide through the Azure Messaging services - Update ConferenceEldert Grootenboer
 
Blockchain for the DBA and Data Professional
Blockchain for the DBA and Data ProfessionalBlockchain for the DBA and Data Professional
Blockchain for the DBA and Data ProfessionalKaren Lopez
 
Stephan Ewen - Experiences running Flink at Very Large Scale
Stephan Ewen -  Experiences running Flink at Very Large ScaleStephan Ewen -  Experiences running Flink at Very Large Scale
Stephan Ewen - Experiences running Flink at Very Large ScaleVerverica
 
Stream processing - Apache flink
Stream processing - Apache flinkStream processing - Apache flink
Stream processing - Apache flinkRenato Guimaraes
 
Blockchain Technical Overview
Blockchain Technical OverviewBlockchain Technical Overview
Blockchain Technical OverviewMarc Stephenson
 
How we evolved data pipeline at Celtra and what we learned along the way
How we evolved data pipeline at Celtra and what we learned along the wayHow we evolved data pipeline at Celtra and what we learned along the way
How we evolved data pipeline at Celtra and what we learned along the wayGrega Kespret
 
Introduction to blockchains
Introduction to blockchainsIntroduction to blockchains
Introduction to blockchainsAdri Jovin
 
Database Solutions Used within Blockchain Platforms
Database Solutions Used within Blockchain PlatformsDatabase Solutions Used within Blockchain Platforms
Database Solutions Used within Blockchain Platformsmojtabah76
 
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...confluent
 
LeanXcale Presentation - Waterloo University
LeanXcale Presentation - Waterloo UniversityLeanXcale Presentation - Waterloo University
LeanXcale Presentation - Waterloo UniversityRicardo Jimenez-Peris
 
Blockchain for the DBA and Data Professional
Blockchain for the DBA and Data ProfessionalBlockchain for the DBA and Data Professional
Blockchain for the DBA and Data ProfessionalKaren Lopez
 
Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018Amazon Web Services Korea
 
Server system architecture
Server system architectureServer system architecture
Server system architectureFaiza Hafeez
 

Similar to Ledgerdb (20)

A guide through the Azure Messaging services - Update Conference
A guide through the Azure Messaging services - Update ConferenceA guide through the Azure Messaging services - Update Conference
A guide through the Azure Messaging services - Update Conference
 
Web logic classes in mumbai
Web logic classes in mumbaiWeb logic classes in mumbai
Web logic classes in mumbai
 
Blockchain for the DBA and Data Professional
Blockchain for the DBA and Data ProfessionalBlockchain for the DBA and Data Professional
Blockchain for the DBA and Data Professional
 
Azure SQL Ledger
Azure SQL LedgerAzure SQL Ledger
Azure SQL Ledger
 
Azure Blockchain Workbench
Azure Blockchain WorkbenchAzure Blockchain Workbench
Azure Blockchain Workbench
 
CockroachDB
CockroachDBCockroachDB
CockroachDB
 
Stephan Ewen - Experiences running Flink at Very Large Scale
Stephan Ewen -  Experiences running Flink at Very Large ScaleStephan Ewen -  Experiences running Flink at Very Large Scale
Stephan Ewen - Experiences running Flink at Very Large Scale
 
SQL under the hood
SQL under the hoodSQL under the hood
SQL under the hood
 
Stream processing - Apache flink
Stream processing - Apache flinkStream processing - Apache flink
Stream processing - Apache flink
 
Blockchain Technical Overview
Blockchain Technical OverviewBlockchain Technical Overview
Blockchain Technical Overview
 
Snowflake Datawarehouse Architecturing
Snowflake Datawarehouse ArchitecturingSnowflake Datawarehouse Architecturing
Snowflake Datawarehouse Architecturing
 
How we evolved data pipeline at Celtra and what we learned along the way
How we evolved data pipeline at Celtra and what we learned along the wayHow we evolved data pipeline at Celtra and what we learned along the way
How we evolved data pipeline at Celtra and what we learned along the way
 
Introduction to blockchains
Introduction to blockchainsIntroduction to blockchains
Introduction to blockchains
 
Database Solutions Used within Blockchain Platforms
Database Solutions Used within Blockchain PlatformsDatabase Solutions Used within Blockchain Platforms
Database Solutions Used within Blockchain Platforms
 
Flowchain: A case study on building a Blockchain for the IoT
Flowchain: A case study on building a Blockchain for the IoTFlowchain: A case study on building a Blockchain for the IoT
Flowchain: A case study on building a Blockchain for the IoT
 
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
 
LeanXcale Presentation - Waterloo University
LeanXcale Presentation - Waterloo UniversityLeanXcale Presentation - Waterloo University
LeanXcale Presentation - Waterloo University
 
Blockchain for the DBA and Data Professional
Blockchain for the DBA and Data ProfessionalBlockchain for the DBA and Data Professional
Blockchain for the DBA and Data Professional
 
Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
 
Server system architecture
Server system architectureServer system architecture
Server system architecture
 

More from YongraeJo

Zeus Locality aware distributed transaction upload.pptx
Zeus Locality aware distributed transaction upload.pptxZeus Locality aware distributed transaction upload.pptx
Zeus Locality aware distributed transaction upload.pptxYongraeJo
 
blockchain-and-trusted-computing
blockchain-and-trusted-computingblockchain-and-trusted-computing
blockchain-and-trusted-computingYongraeJo
 
Blockchain meets database
Blockchain meets databaseBlockchain meets database
Blockchain meets databaseYongraeJo
 
Byzantine ordered consensus
Byzantine ordered consensusByzantine ordered consensus
Byzantine ordered consensusYongraeJo
 
BlockLot: Blockchain-based verifiable lottery
BlockLot: Blockchain-based verifiable lotteryBlockLot: Blockchain-based verifiable lottery
BlockLot: Blockchain-based verifiable lotteryYongraeJo
 
Simple robot pets with three emotions (uC/OS III)
Simple robot pets with three emotions (uC/OS III)Simple robot pets with three emotions (uC/OS III)
Simple robot pets with three emotions (uC/OS III)YongraeJo
 
Honeybadger of BFT Protocols
Honeybadger of BFT ProtocolsHoneybadger of BFT Protocols
Honeybadger of BFT ProtocolsYongraeJo
 
Practical Byzantine Fault Tolernace
Practical Byzantine Fault TolernacePractical Byzantine Fault Tolernace
Practical Byzantine Fault TolernaceYongraeJo
 
Making BFT Protocols Really Adaptive
Making BFT Protocols Really AdaptiveMaking BFT Protocols Really Adaptive
Making BFT Protocols Really AdaptiveYongraeJo
 

More from YongraeJo (20)

Zeus Locality aware distributed transaction upload.pptx
Zeus Locality aware distributed transaction upload.pptxZeus Locality aware distributed transaction upload.pptx
Zeus Locality aware distributed transaction upload.pptx
 
basil.pptx
basil.pptxbasil.pptx
basil.pptx
 
HotStuff
HotStuff HotStuff
HotStuff
 
Fbft
FbftFbft
Fbft
 
blockchain-and-trusted-computing
blockchain-and-trusted-computingblockchain-and-trusted-computing
blockchain-and-trusted-computing
 
Blockchain meets database
Blockchain meets databaseBlockchain meets database
Blockchain meets database
 
Beat
BeatBeat
Beat
 
Byzantine ordered consensus
Byzantine ordered consensusByzantine ordered consensus
Byzantine ordered consensus
 
Stellar
StellarStellar
Stellar
 
Blockene
BlockeneBlockene
Blockene
 
BlockLot: Blockchain-based verifiable lottery
BlockLot: Blockchain-based verifiable lotteryBlockLot: Blockchain-based verifiable lottery
BlockLot: Blockchain-based verifiable lottery
 
Simple robot pets with three emotions (uC/OS III)
Simple robot pets with three emotions (uC/OS III)Simple robot pets with three emotions (uC/OS III)
Simple robot pets with three emotions (uC/OS III)
 
FlexSC
FlexSCFlexSC
FlexSC
 
Honeybadger of BFT Protocols
Honeybadger of BFT ProtocolsHoneybadger of BFT Protocols
Honeybadger of BFT Protocols
 
Cheapbft
Cheapbft Cheapbft
Cheapbft
 
Practical Byzantine Fault Tolernace
Practical Byzantine Fault TolernacePractical Byzantine Fault Tolernace
Practical Byzantine Fault Tolernace
 
Making BFT Protocols Really Adaptive
Making BFT Protocols Really AdaptiveMaking BFT Protocols Really Adaptive
Making BFT Protocols Really Adaptive
 
Pileus
PileusPileus
Pileus
 
Vft
VftVft
Vft
 
Xft
XftXft
Xft
 

Recently uploaded

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 

Recently uploaded (20)

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

Ledgerdb

  • 1. LedgerDB: A Centralized Ledger Database for Universal Audit and Verification Xinying Yang† , Yuan Zhang† , Sheng Wang§ , Benquan Yu† , Feifei Li§ , Yize Li† , Wenyuan Yan† †Ant Financial Services Group §Alibaba Group Proceedings of the VLDB Endowment, August 2020
  • 2. Motivation: Decentralized ledger → Low throughput → High latency → High storage overhead Centralized ledger → High throughput → Low latency → Low storage overhead Real-world use cases only seek for tamper resistance Simple cryptographic protection is enough (e.g., merkle tree) Threat model is not realistic Consortium members can collectively deceive an external auditor (i.e., fabricate fake evidence without being noticed) Existing centralized ledger assumes trustful service provider (e.g., AWS QLDB) But, single point of failure… Blockchain immutability induces obsolete storage overhead Permissioned Blockchain
  • 3. Background Many blockchain apps deployed on a Blockchain-as-a-Service (BaaS) which (eventually) leads to a centralized infrastructure maintained by a single service provider Re-examine the necessity of its decentralization Reform decentralization in permissioned blockchain
  • 4. Auditability ⚫ Auditability is the capability of observing user actions and verifying integrity and authenticity ⚫ Internal audit • Ensures that an internal user of the ledger can verify all transactions conducted by all other users ⚫ External audit • Ensures that an external auditor can verify all transactions conducted by all users and ledger service provider (LSP)
  • 5. Threat Model ⚫ Server-side malicious tampering • An adversary can compromise user(s) or LSP and tamper/remove transaction history ⚫ LSP-user collusion tampering • One or more uses can collude with the LSP as the adversary to cheat an external auditor ⚫ Trusted third-party Time Stamping Authority (TSA) • Provides universal time endorsement
  • 6. Design Goals ⚫ Strong external auditability ⚫ High write performance ⚫ Data removal (+hiding) support
  • 8. LedgerDB: Overview Receives client requests and preprocesses, an d then dispatches them to the ledger server Manages the runtime metadata of the entire cluster and coordinates cluster- level events Process requests, while interacting with the underlying storage layer
  • 9. LedgerDB: Data Model and APIs Transaction Journal (entry) Transaction Transaction Transaction Ledger instance (ledger_uri) Transaction Block Journal Sequence# (jsn) 0 1 2 3 n
  • 10. LedgerDB: Data Model and APIs // Hide journal by jsn or clue // Rollback to the purged_point // remove obsolete journals from ledger // assign trust level to jsn
  • 11. LedgerDB: Non-repudiable journal structures LedgerClient LedgerServer signed request (jsn)
  • 12. LedgerDB: Transaction Processing ⚫ Most blockchain: Order-Execute • Execute transactions serially, leading to extremely low throughput ⚫ Hyperledger Fabric: Execute-Order-Validate • Support concurrent execution of multiple transactions, which however declines significantly when the conflict rate is high during validation ⚫ LedgerDB: adopts a novel Execute-Commit-Index • Combines execution and validation for transaction to be validated as early as possible before the completion of its entire execution • better utilizes centralized concurrency control and distributed execution techniques to improve throughput.
  • 14. LedgerDB: Transaction Processing Workflow collects multiple executed transactions & processes them in batch arranges them in a global order persists them to the storage system can modify World State
  • 15. LedgerDB: Transaction Processing Workflow Execute Commit Batch Accumulated Merkle Tree
  • 16. Verification & Audit: Batch Accumulated Merkle Tree Block-intensive model (bim) Transaction-intensive model (tim) To verify the existence of specified transactions, there are two typical entanglement models used in blockchain-like systems. PrevHash PrevHash PrevHash Tx Integrity: Merkle Tree within a block Block Integrity: Hashchain across blocks Insertion cost = O(d) For m transaction insertions, O(d * m) → slow Tx verification cost = O(logn) Tree depth = d O(m + d) Batch Accumulated Merkle Tree’s Insertion Cost m = batch size no concept of a block of transactions (e.g., Libra) Benefits from both model Block size = n
  • 17. Verification & Audit: Batch Accumulated Merkle Tree
  • 18. LSP-user collusion tampering TSA: a time notary authority, which can prove that a piece of data exists before a certain time point Universal Time Notary Anchors External auditor User User LSP Fabricated fake evidence Request transaction history <출처: 행안부 타임스탬프 적용 안내서> Blockchain network
  • 19. Universal Time Notary Anchors Defines a special type of journal: TSA journal, endorsed by TSA ledger snapshot (i.e., a ledger digest) timestamp, signed by TSA TSA journal Points to the hash of its pr evious TSA journal Anchor frequency
  • 20. Verifiable Data Removals ⚫ LedgerDB breaks the immutability in most blockchain but still preserves data verifiability ⚫ Data removal operators • purge : removes obsolete records to save storage cost • occult : hides violating records to resolve regulatory issues
  • 21. Verifiable Data Removals: purge() ⚫ Deletes a set of contiguous (obsolete) journals starting from genesis to a designated journal, and then generates a pseudo genesis block. pur_jsn Genesis Block purge Pseudo Genesis Block system metadata (e.g., creator, initial members) + Status(e.g., memberships) migrate
  • 22. Verifiable Data Removals: purge() ⚫ Appends a purge journal on ledger. ⚫ Requires multi-signatures from the ledger creator (or DBA) and all related members
  • 23. Evaluation: Setup ⚫ Deploy LedgerDB on Alibaba Cloud ⚫ 2-node cluster, where each node runs CentOS 7.2.1511 and is equipped with Intel(R) Xeon(R) Platinum 2.5GHz CPU, 32GB RAM, and 1TB ESSD storage (with throughput at 632MBps and 53K IOPS) ⚫ All nodes are connected via 25Gb Ethernet
  • 24. Evaluation: Throughput (#client) 1KB, 1 client, 6K TPS 64 client, 280K TPS
  • 25. Evaluation: Latency Latency affected by degree of concurrency and transaction data size.
  • 26. Evaluation: vs. Hyperledger Fabric (Hyperledger Fabric) A single-channel ordering service, Kafka orderer setup: 3 ZooKeeper nodes, 4 Kafka brokers, 5 peers as endorsers and 3 Fabric orderers (all on distinct VMs)
  • 28. Conclusion ⚫ Proposes LedgerDB, a centralized ledger database that supports universal audit and verification ⚫ LedgerDB offers • High performance • High verification efficiency • Verifiable data removals ⚫ LedgerDB can be a fascinating alternative to permissioned blockchains.