File Synchronization via Chunk Hashing and Encryption
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current file synchronization methods do not fully utilize the advantages of individual methods, such as delta synchronization, metadata synchronization, and deduplication, leading to inefficient data transmission and synchronization times.
Innovation Solution
A file synchronizing method that divides data into chunk files, calculates hash values for these files, and transmits only the necessary chunk files to the server, using a combination of hash tables, metadata tables, and file tables to minimize data transmission and synchronization time, while also storing files in encrypted form for enhanced security.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the entire file is transmitted for synchronization, then the synchronization is complete and reliable, but the transmission amount and synchronization time increase significantly
Solution Approach 1:
The patent divides a file into multiple chunk files (e.g., first chunk file, second chunk file, third chunk file) and processes them independently. Each chunk file is assigned a unique identifier and hash value, allowing the system to transmit and synchronize only the necessary chunks rather than the entire file, thereby reducing transmission time while maintaining synchronization completeness.
Solution Approach 2:
The patent extracts and transmits only the changed or missing chunk files instead of the entire file. By using hash value comparison between terminal and server, the system identifies which specific chunks need to be transmitted, minimizing the transmission amount while ensuring that all necessary updates are applied for complete synchronization.
2Reliability
If the entire file is transmitted for synchronization, then the synchronization is complete and reliable, but the data transmission amount increases significantly
Solution Approach 1:
The patent segments the file into multiple smaller chunk files with unique identifiers. This allows the system to transmit only the specific chunks that need to be synchronized rather than the entire file, significantly reducing the data transmission amount while maintaining complete synchronization through the use of hash value verification.
Solution Approach 2:
The patent extracts only the necessary chunk files that contain changed or missing data for transmission. By comparing hash values between the terminal and server, the system identifies and transmits only the specific chunks that need to be updated, minimizing the data transmission amount while ensuring synchronization completeness.
3Ease of manufacture
If various synchronizing methods are used independently, then each method can be implemented separately, but the advantages of individual methods are not fully utilized and transmission efficiency is reduced
Solution Approach 1:
The patent combines multiple synchronization methods (delta synchronization, metadata synchronization, and deduplication) into a unified system. The system uses file metadata to identify changed files, divides them into chunks, calculates hash values, and transmits only the necessary chunks to the server. This integrated approach leverages the advantages of each individual method while achieving superior transmission efficiency and synchronization performance.
4Ease of operation
If data is stored in plain form, then the storage and access are simple, but the security is compromised
Solution Approach 1:
The patent applies encryption to transform the stored data from plain form to encrypted form. The terminal device encrypts chunk files before transmitting them to the server, and the server stores and processes the encrypted data. This parameter change from plain to encrypted form maintains storage simplicity while significantly enhancing data security, as the encryption keys are managed securely and decryption is performed only when necessary.
Data Source
AI summary
Provided is a method of file synchronizing. The method includes: determining whether there is a changed matter in a file which is divided into a plurality of chunk files; calculating a hash value for each of plurality of divided chunk files when it is determined that there is a changed matter in file; transmitting a hash value list configured by calculated hash values to a server; receiving a transmission request for a chunk file corresponding to a hash value which is not stored in server, among hash values included in hash value list; and transmitting chunk file to the server in response to the transmission request.


