Given a system that shares information for client-side decryption the place the server doesn’t know the encryption keys (simply shops them in an encrypted kind), is it – when sharing a file with a non-user – higher to both
- share the file encryption key immediately (e.g. shopper downloads the
file-specific encryption key, decrypts it and attaches it to the URL hash of the
sharing URL, principally what Firefox Ship is doing), or
- moreover encrypt the file-specific encryption key with a newly generated encryption key, and share this key (shopper downloads the file-specific encryption key, decrypts it, re-encrypts it with the newly generated key and shops a replica of the end result. The shopper then shares the generated key, with which the downloading shopper can decrypt the precise file-specific encryption key)
The profit I see with choice two is that the underlying key is not instantly uncovered within the URL hash – the downloading shopper first must obtain the precise file key. Nevertheless, the downloading shopper will nonetheless obtain the precise file key, so it isn’t essentially safer and would possibly simply add an pointless stage of abstraction.
What could be the right solution to go right here?