Cloud Document Token Encryption for Secure Collaboration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cloud-based solutions for collaborative document editing face security challenges, particularly in ensuring confidentiality when business-critical information is stored with an unknown external service provider, as existing cryptography methods either burden users with key management or expose servers to attack by storing keys alongside data.
Innovation Solution
A method where a document change is encrypted with a document token, and each sharee's token is encrypted with their public key, allowing only the respective private key holder to decrypt, ensuring that the server never accesses the original content and maintaining security even if compromised.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If files are encrypted on the server, then key management is simplified for users, but the server becomes a primary target for attackers and all file contents are revealed if the server encryption key store is compromised
Solution Approach 1:
The encryption key is segmented into two parts: a server-held portion and a user-held portion. The server can encrypt files with its portion, but cannot decrypt them without the user's portion. This segmentation allows simplified key management for the server while maintaining security, as compromising the server alone does not reveal all file contents.
Solution Approach 2:
A cryptographic intermediary mechanism is introduced where the user's public key acts as a mediator between the server's encryption capability and the user's decryption ability. The server encrypts files using a combination of its own key and the user's public key, ensuring that only the intended user can decrypt the file, thus maintaining security while simplifying server-side key management.
2Reliability
If users encrypt files at their desktop, then security is maintained, but key management becomes complex for large numbers of end-user points
Solution Approach 1:
The server is given a universal encryption capability that works with multiple users simultaneously. Instead of each user managing encryption individually, the server uses its cryptographic key in conjunction with each user's public key to encrypt files, providing a unified key management solution that maintains security across numerous end-user points.
Solution Approach 2:
The user's public key serves as an intermediary that enables secure encryption without requiring the server to manage private keys or complex key distribution. This intermediary mechanism allows the server to encrypt files for any user using only public key information, greatly simplifying key management while maintaining security.
3Loss of information
If files are stored encrypted on the server, then confidentiality is protected, but the server must manage encryption keys and becomes a primary target for attackers
Solution Approach 1:
The decryption capability is segmented between server and user, with the server holding only an encryption portion and the user holding the decryption portion. This segmentation protects confidentiality while reducing the server's attractiveness as an attack target, since compromising the server alone does not provide access to all encrypted files.
Solution Approach 2:
The potential harm of the server being an attack target is converted into a benefit by designing the system so that server compromise does not lead to data breach. The architectural design ensures that even if attackers compromise the server, they cannot decrypt files without the user-held key portions, thus converting the security vulnerability into a strengthened security model.
Data Source
AI summary
Collaboratively editing a document in a system of sharee clients includes creating a document change, generating a document token for encrypting the document change, encrypting the document change with the document token, making the encrypted document change available to the other sharee clients, and generating a plurality of copies of the sharee document token. Each sharee document token is encrypted with a respective sharee's public key. Each encrypted sharee document token is distributed to respective sharee clients. Each sharee client is configured to: decrypt a sharee document token using a respective private key, decrypt the encrypted document change using the share document token, and consolidate the document change into a document.


