I am trying to find a good way to combine Owncloud with client-side encryption. Ideally, the requirements are:
- encryption relatively transparent (mostly text/.odt files) and cross-platform (Win, OS X, Linux)
- file-level encryption (so that versioning/backup still works)
- ideally files can be viewed server-side with a key (this will require a new owncloud plugin)
- sharing of files possible (ideally with multiple keys)
So far I have looked at:
- encfs, however, it is weak if an attacker has multiple versions of the cyphertext so is out.
- GnuPG looks more secure and definitely better for sharing, however, it's not so easy to do on-the-fly encryption like encfs does
- ecryptfs looks like a non-starter as it's linux only and would require monolithic files to be backed up.
Are there any suggestions for a way to use GnuPG so that it is relatively transparent to the user. Ideally it would be good to have a similar mechanism to encfs, in which a folder is created and all files put in that folder are encrypted with the appropriate sharing permissions. It would be best if files were stored individually (I know this leaks some info but also allows for owncloud versioning to work). Then the encrypted folder is synced to owncloud (and it shouldn't be too hard to write a GnuPG decrypt plugin for owncloud eventually)