Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Front/Back] Updated Encryption Format #83

Open
its-colby opened this issue Nov 1, 2024 · 2 comments
Open

[Front/Back] Updated Encryption Format #83

its-colby opened this issue Nov 1, 2024 · 2 comments
Labels
low priority mvp Minimum viable product

Comments

@its-colby
Copy link
Collaborator

its-colby commented Nov 1, 2024

Cache will institute access-control mechanism for files.

  1. User A encrypts File F with symmetric key SymK.
  2. User A shares File F with User B. This action results in the following. User A digitally signs (Root CID File F + User B ID) and encrypts SymK with User B's public key B_PubK. He then sends this to cache server. Cache server saves the entry.
  3. User B gets a notification from cache server that File F was shared with him. User B asks the cache server for File F. The server checks to see if the file is encrypted and shared. In this case, it is. The server will send File F along with the encrypted SymK.
  4. User B will decrypt SymK and use it to read File F.

Note, in this scheme, user A is unable to revoke permission. In order to somewhat revoke permission, user A will encrypt with new symmetric key on successive edits. Similarly, if user A does not want to "somewwhat" revoke permission, user A must re-use the symmetric key, or share the new one on each successive edit.

Alternative would be for server to implement key management system — essentially, manage keys for shared files.

@its-colby its-colby added this to the Auto Drive MVP milestone Nov 1, 2024
@its-colby its-colby added mvp Minimum viable product low priority labels Nov 1, 2024
@clostao
Copy link
Collaborator

clostao commented Nov 4, 2024

Wouldn't this require a key pair for every user?

@its-colby
Copy link
Collaborator Author

Yes, it would. We should. Sorry, this shouldn't have been in the TODO just yet. This approach should be confirmed with @jfrank-summit before moving forward. @clostao

This approach is meant to enhance the UX for the sharing of encrypted files

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
low priority mvp Minimum viable product
Projects
None yet
Development

No branches or pull requests

2 participants