-
Notifications
You must be signed in to change notification settings - Fork 2
Description
Instead of having to implement an encrypt/decrypt step in every implementation, I wonder if it would be possible to implement it at the library level.
The steps of getting/putting a file are ones which require use of encrypt/decrypt, list/ delete don't need it.
Though we don't know which one we want in either case. For example, you might want to get an encrypted file and decrypt it in the same step or you might want to take a decrypted file and put it somewhere encrypted.
All that to say, we could wrap the implementation of the get and put such that they encrypt/decrypt automatically when asked to.
Situations we should support:
| -- | Local | Remote |
|---|---|---|
| Case 1 | Not Encrypted | Not Encrypted |
| Case 2 | Encrypted | Encrypted |
| Case 3 | Not Encrypted | Encrypted |
| Case 4 | Encrypted | Not Encrypted |
My guess is we should also support different keys. The situation I am thinking of is re-encrypting a file when getting or putting.