Key-Value Store Integrity Verification via Presence Indicators
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cloud-based key-value stores face challenges in verifying data integrity, as users lack physical control over their data, making it susceptible to alterations or omissions by cloud providers or malicious entities, with existing methods like tuple chaining and dual encryption being inefficient or resource-intensive.
Innovation Solution
A system and method that assigns each key in a key-value database to a bucket in a keys database, using a hash and modulus operation for bucket assignment, and includes a presence indicator, which can be signed with a digital signature, to verify data completeness by checking for the presence of keys in the bucket upon empty query results.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If cloud providers store user data without physical user control, then data storage convenience is improved, but data integrity and completeness are compromised
Solution Approach 1:
The patent introduces a keys database as an intermediary structure between the user and the cloud storage system. This keys database stores cryptographic keys and presence indicators that allow users to verify data integrity without needing physical control of the stored data. The intermediary enables trustless verification by providing proof of data presence and authenticity through cryptographic mechanisms.
Solution Approach 2:
The system performs preliminary actions by storing presence indicators and digital signatures in the keys database before data retrieval operations. These pre-stored cryptographic proofs enable users to verify data integrity and completeness without needing to trust the cloud provider, resolving the contradiction between storage convenience and data reliability.
2Reliability
If existing integrity verification methods like tuple chaining and dual encryption are used, then data completeness verification is improved, but computational overhead and resource consumption increase
Solution Approach 1:
The patent extracts the integrity verification functionality from the main data storage operations by separating it into a dedicated keys database. This extraction allows verification operations to be performed independently using pre-computed presence indicators and digital signatures, significantly reducing computational overhead compared to methods like tuple chaining that require processing entire data tuples.
Solution Approach 2:
The system creates simplified copies of verification information (presence indicators and digital signatures) in the keys database. These copies enable efficient verification without requiring access to or processing of the actual stored data, reducing computational requirements while maintaining verification reliability.
3Reliability
If a keys database with presence indicators is implemented, then data integrity verification capability is improved, but system complexity increases
Solution Approach 1:
The patent segments the verification system into distinct components: a keys database separate from the data storage system, presence indicators as discrete verification elements, and digital signatures as independent authentication mechanisms. This segmentation modularizes the complexity, making the system more manageable and easier to implement while maintaining strong verification capabilities.
Data Source
AI summary
A computer-based system and method for verifying integrity of data in a key-value database, including assigning each key that is supported by the key-value database to a bucket in a keys database. Upon storing a pair of a value and a key in the key-value database, storing in the bucket assigned to the key a presence indicator indicative of a presence of the key in the key-value database. A bucket is assigned to a key by applying a predetermined function on the key. When reading a value from the key-value database, if the response is empty: getting from the keys database the bucket associated with the key and searching the bucket for the presence indicator associated with the key. If the presence indicator associated with the key is found in the bucket determining that the key-value database is not complete.


