Litmus: Towards a Practical Database Management System with Verifiable ACID Properties and Transaction Correctness
Created on 2022-08-21T18:02:44-05:00
Verification batch: a collection of DBMS requests is collated to be performed and verified in one round-trip.
Retrieve relevant records -> spooky crypto magic on the query -> returns changed records to the DBMS and gives a cryptographic receipt of the computation.
- Altering data is done by transpiling the query in to language like C.
- Synthesizing logic gates from the C program.
- Logic gates are made out of cryptographic principles; used to compute knowledge proofs.
- Basically wraps the entire computation and update in a "cryptographic circuit" for the purpose of providing a proof of some changes; but the actual data itself is warehoused in a classical database.
Paypal requires ~115 transactions per second.
Visa requires 2,000-4,000 transactions per second.
Litmus was benchmarked at 17,000 transactions per second.