Updated specfile

This commit is contained in:
Sam Tuke 2013-02-11 10:34:23 +00:00
parent 92f06243be
commit d17d838ecc
1 changed files with 29 additions and 1 deletions

View File

@ -9,6 +9,31 @@ Encrypted files
[encrypted data string][delimiter][IV][padding]
[anhAAjAmcGXqj1X9g==][00iv00][MSHU5N5gECP7aAg7][xx] (square braces added)
- Directory structure:
- Encrypted user data (catfiles) are stored in the usual /data/user/files dir
- Keyfiles are stored in /data/user/files_encryption/keyfiles
- Sharekey are stored in /data/user/files_encryption/share-files
- File extensions:
- Catfiles have keep the file extension of the original file, pre-encryption
- Keyfiles use .keyfile
- Sharekeys have .shareKey
Shared files
------------
Shared files have a centrally stored catfile and keyfile, and one sharekey for
each user that shares it.
When sharing is used, a different encryption method is used to encrypt the
keyfile (openssl_seal). Although shared files have a keyfile, its contents
use a different format therefore.
Each time a shared file is edited or deleted, all sharekeys for users sharing
that file must have their sharekeys changed also. The keyfile and catfile
however need only changing in the owners files, as there is only one copy of
these.
Notes
-----
@ -16,4 +41,7 @@ Notes
- The user passphrase is required in order to set up or upgrade the app. New
keypair generation, and the re-encryption of legacy encrypted files requires
it. Therefore an appinfo/update.php script cannot be used, and upgrade logic
is handled in the login hook listener.
is handled in the login hook listener. Therefore each time the user logs in
their files are scanned to detect unencrypted and legacy encrypted files, and
they are (re)encrypted as necessary. This may present a performance issue; we
need to monitor this.