Encrypted XML Document Comparison via Node Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Comparing large structured data documents, such as XML documents, is a memory and processing intensive task that often requires complete data structures to be computed and stored in memory, leading to security and integrity concerns when outsourced to third-party vendors.
Innovation Solution
A method for comparing encrypted structured data documents by receiving and comparing nodes of the documents, generating matched pairs, and determining edit operations to create a minimum cost edit script, allowing transformation of one document to be isomorphic to another without decrypting or normalizing the data, thus addressing security and memory efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional comparison techniques are used to compare large structured data documents, then complete data structures can be computed and stored in memory for comparison, but security and integrity concerns arise when outsourcing to third-party vendors
Solution Approach 1:
The patent segments the document comparison task into node-level operations on encrypted documents. Instead of loading complete data structures into memory, the system processes individual nodes and their relationships incrementally, comparing encrypted node identifiers and path information without decrypting the full document content.
Solution Approach 2:
The patent introduces encrypted node identifiers and path information as intermediary representations that enable comparison without exposing the actual document content. These intermediaries serve as mediators between the comparison need and security requirements, allowing third-party vendors to perform comparisons on encrypted data without accessing plaintext information.
2Measurement precision
If complete data structures are computed and stored in memory for comparison, then accurate comparison can be performed, but memory usage and processing intensity increase significantly
Solution Approach 1:
The patent extracts only the essential comparison elements (node identifiers, path information, and encrypted content hashes) from the complete data structures. By taking out only the necessary components for comparison rather than processing entire document trees, the system maintains comparison accuracy while dramatically reducing memory requirements.
Solution Approach 2:
The patent applies partial action by performing comparison operations on subsets of document nodes rather than requiring complete data structure construction. The system processes nodes incrementally and can terminate comparisons early when matches are found, avoiding the need to compute and store entire document structures in memory.
3Productivity
If third-party vendors are used to compare encrypted documents, then processing capacity is available, but confidentiality of document content cannot be preserved
Solution Approach 1:
The patent changes the state of the document data from plaintext to encrypted form throughout the comparison process. By transforming the document representation into encrypted node identifiers and path information, the system enables third-party processing while maintaining confidentiality, as the vendor receives and processes only encrypted data without the ability to decrypt or view the original content.
4Measurement precision
If normalized forms of data structures are computed for comparison, then comparison accuracy improves, but processing time and memory requirements increase
Solution Approach 1:
The patent performs preliminary actions by pre-computing and storing encrypted node identifiers and path information in the encrypted document structure. This preliminary organization allows for efficient direct comparison without requiring runtime normalization operations, as the encrypted structures are already arranged in a comparison-ready format that preserves both accuracy and performance.
Data Source
AI summary
The present disclosure is directed to comparing a first structured data document to a second structured data document, including receiving the first and second structured data documents as first and second encrypted documents, respectively, comparing nodes of the first encrypted document to nodes of the second encrypted document, a content and a location of each of the nodes remaining confidential during the comparing, generating matched pairs of nodes based on the comparing, and storing the matched pairs in computer memory, each matched pair comprising a node of the first encrypted document and a corresponding node of the second encrypted document, determining one or more edit operations based on the matched pairs, and generating an edit script comprising the one or more edit operations, the edit script being executable to transform the first encrypted document to provide a transformed encrypted document that is isomorphic to the second encrypted document.


