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

Client-side File Sharing #11

Open
soup-bowl opened this issue Nov 2, 2022 · 1 comment
Open

Client-side File Sharing #11

soup-bowl opened this issue Nov 2, 2022 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@soup-bowl
Copy link
Owner

soup-bowl commented Nov 2, 2022

This is a pie-in-the-sky feature, but I'm thinking it can be achieved.

The idea here is to be able to provide a file-sharing utility, where the file being shared never reaches the API, therefore it is never removed from the user ownership. When the other side downloads the file, the file will download encrypted from client to client.

Since clients aren't immediately available on the internet, I'm thinking to take this approach.

(User A sends, User B receives).

  • User A starts up the utility in share mode.
  • User A uploads their file to the system (into LocalStorage, client-side).
  • File is encrypted (CryptoJS is already a product dependency), key is shared to the user and user told to not leave the page.
  • User A shares the key to user B. User B loads the interface.
  • File from user A is downloaded onto user B's machine, in an encrypted state.
    • This might need to be proxied by the server, since we can't take A a host.
  • Encryption decoding key provided, the user receives the file in the intended state.
  • File has been successfully shared between hosts.
@soup-bowl soup-bowl added the enhancement New feature or request label Nov 2, 2022
@soup-bowl soup-bowl self-assigned this Nov 2, 2022
@soup-bowl
Copy link
Owner Author

This appears to be an achievable feat using an RTC Signalling server.

More info:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant