Commit graph

123 commits

Author SHA1 Message Date
Björn Schießle
f87229ddaf fix stream wrapper to make initial encryption work 2013-04-12 14:13:38 +02:00
Sam Tuke
14451bdaf0 Development snapshot;
Fixed errors from Hooks::login();
Work on enable/disable recoveryAdmin for lost passwords in settings page (template, ajax, js);
Work on fixing sharing files to users (still broken);
2013-03-29 21:11:29 +01:00
Sam Tuke
ff6f52d5ec Merge branch 'master' into files_encryption
Conflicts:
	apps/files_encryption/hooks/hooks.php
	apps/files_encryption/lib/crypt.php
	apps/files_encryption/lib/keymanager.php
2013-03-28 18:39:12 +01:00
Björn Schießle
e717f7150e check for dir in deleteFileKey() and delShareKey(), to always handle all share keys and file keys on delete 2013-03-26 16:52:58 +01:00
Björn Schießle
6beeb2466f also delete share keys if a different user than the owner deletes a shared file 2013-03-26 16:17:26 +01:00
Björn Schießle
b1d620300e delete share keys if file gets deleted 2013-03-26 14:22:18 +01:00
Björn Schießle
a65d741a3f move getUidAndFilename() tu util.php 2013-03-26 12:39:55 +01:00
Björn Schießle
890f0142a2 get shared keys from new location 2013-03-26 12:24:04 +01:00
Björn Schießle
f10be4ea17 new file structure for share keys; sub-folder need to be generated each by one (we don't have a recursive mkdir) 2013-03-26 11:58:54 +01:00
Sam Tuke
fd4e59b748 Added method for setting user keyfile recovery preference
Fixed method for checking if keyfile recovery is enabled for a user
Added unit test for above 2 methods
Made proxy{} always use sharing
Made proxy{} work regardless of sharing API enabled or not
Implemented proxy-based sharing to admin if user keyfile recovery is enabled
2013-03-20 19:26:59 +01:00
Sam Tuke
953319a2c3 Made proxy class reuse existing keyfiles not gen new ones;
Added notes about reusing shareKeys
2013-02-27 18:46:44 +00:00
Sam Tuke
14eae441eb Unsharing a single file now works 2013-02-27 15:31:23 +00:00
Sam Tuke
aae9b0b1bf Started work on post unshare hook
Development snapshot
2013-02-26 18:33:31 +00:00
Sam Tuke
4550ae6a69 Shared encrypted files now readable by both sharer and sharee 2013-02-26 18:11:29 +00:00
Björn Schießle
ca1b94d890 make sure that home folders are mounted correctly before write/read keyfile 2013-02-25 12:29:07 +01:00
Sam Tuke
2d267501a1 Development snapshot
Added comments
Added methods
2013-02-20 19:18:00 +00:00
Sam Tuke
92f06243be Implementing sharing support
New file-specific methods in lib/public/share
Changes to how keyfiles are stored
2013-02-11 10:21:23 +00:00
Sam Tuke
b3e59ca1e3 Work on post_share hook for files_encryption
New method in OCP\Share{}:: getUsersSharingFile()
Development shapshot
2013-02-09 18:39:32 +00:00
Thomas Müller
7f58e27495 cleanup - more to come after 2013-02-09 18:01:38 +01:00
Sam Tuke
3b9e2f1bab Merge branch 'master' into files_encryption-style-fixes
Conflicts:
	apps/files_encryption/lib/crypt.php
	apps/files_encryption/lib/keymanager.php
2013-02-05 18:43:55 +00:00
Sam Tuke
927d4c98a1 Fixed todos: undefined vars and unreachable code 2013-02-05 13:12:34 +00:00
Sam Tuke
c7b1bdf00e Fixed handling of keyfile subdir creation
Improved keyfile subdir deletion (1 bug remains here)
2013-01-30 18:52:02 +00:00
Thomas Mueller
8ded07dd5c first style fixes - @samtuke: I added some TODO regarding undefined variables and unreachable code - please review 2013-01-30 17:49:05 +01:00
Sam Tuke
c1f20fe37a Made encyrption keyfiles be deleted when their parents are
Made encryption keyfiles be renamed when their parents are
Fixed bugs with encryptAll() execution on login
2013-01-29 19:54:40 +00:00
Sam Tuke
094213e231 Fixed many coding guidelines issues
Continued work on upgrade path via login hook listener
New spec file with notes
2013-01-24 18:37:34 +00:00
Sam Tuke
59ca312263 Work on util: findFiles() and encryptAll(); both close to working
Ecnryption unit tests are failing, recursion in filecache{}
2013-01-23 19:24:26 +00:00
Sam Tuke
d95fc4e1e3 Adding sharing support: added new method in Keymanager setShareKey()
Added notes in proxy{} and stream{} pointing to share support
2013-01-14 19:07:28 +00:00
Sam Tuke
015787fbb3 All in-use unit tests now passing after merge 2013-01-06 18:38:35 +00:00
Sam Tuke
2d98afa1ea Removed debugging line 2013-01-06 14:06:22 +00:00
Sam Tuke
b024db9f98 Made Keymanager::getFileKey() dependencies explicit, fixed client code and tests accordingly 2013-01-06 13:56:45 +00:00
Sam Tuke
7fe9245636 Development snapshot
Crypt{} & Util{} unit tests now passing locally
Added keymanager unit tests
2013-01-05 17:12:23 +00:00
Sam Tuke
398b52e4f0 Improved formatting of getPublicKeys() 2012-12-11 17:24:25 +00:00
Sam Tuke
1fc5b1d02d Replaced phpseclib calls with symmetric re-encryption of user private key 2012-12-11 15:15:30 +00:00
Sam Tuke
a00dd2d5d6 Revert "Revert "Development snapshot""
This reverts commit b66d38ecae.
2012-12-11 15:10:56 +00:00
Sam Tuke
b66d38ecae Revert "Development snapshot"
This reverts commit c56fb905d1.
2012-12-11 15:10:39 +00:00
Sam Tuke
aabef796a0 Added library phpseclib
First implementation of passphrase changing on user pwd change
2012-12-11 13:22:46 +00:00
Sam Tuke
c56fb905d1 Development snapshot
Read/write interoperability working through web UI and WebDAV
New class Session for handling session data
A few new unit tests
Some additional unit tests are now failing, esp. legacy enc related ones
2012-12-05 18:57:44 +00:00
Sam Tuke
bfd47cd2df Development snapshot
Moved legacy crypto methods from Util into Crypt
Added preliminary support for reading legacy encrypted files
Added some unit tests
2012-11-28 18:39:19 +00:00
Sam Tuke
637891b771 Development snapshot, lots of fixes
Web UI based encryption working
Crypt and Util unit tests passing
2012-11-16 18:31:37 +00:00
Sam Tuke
459a7622dc Added check if sharing app is enabled, commented out sharing code due to issue 2012-11-15 11:54:16 +00:00
Sam Tuke
265f3654af all unit files_encryption crypt unit tests now passing after merge 2012-10-17 16:35:19 +01:00
Sam Tuke
4da67b0a08 Development snapshot; encryption stream wrapper now successfully writes files, and passes unit tests 2012-10-10 18:40:59 +01:00
Sam Tuke
32ee3de918 Extensive work on crypto stream wrapper implementation 2012-08-23 16:43:10 +01:00
Sam Tuke
293a0f4d32 Started rewrite of cryptstream class (renamed to stream)
Added unit tests
Fixed decryption of user private key at login
Added functionality to keymanager
2012-08-16 19:18:18 +01:00
Sam Tuke
f11f524dfa working on streaming decrypted content
applied some dependency injection to keymanager.php
2012-08-15 18:49:53 +01:00
Bjoern Schiessle
d039f11905 provide ocs calls and keymanager functions to get/set both keys (private, public) of a user together 2012-08-15 13:18:11 +02:00
Bjoern Schiessle
92ec88c7bc move chane password code from keymanager.php to crypt.php 2012-08-15 09:54:21 +02:00
Sam Tuke
6ce315fe58 added wrapper method in crypt class for encrypting asymmetric and symmetric simultaneously
fixed bugs with keymanager integration
added unit tests
2012-08-14 19:06:56 +01:00
Bjoern Schiessle
34f93ac765 check if user has write access to a given file before updating the filekey 2012-08-13 11:31:15 +02:00
Bjoern Schiessle
e4450d1035 execute file hooks only if server side encryption is enabled 2012-08-10 12:27:09 +02:00
Bjoern Schiessle
12628be38b only call proxies for server side encryption 2012-08-10 11:44:38 +02:00
Bjoern Schiessle
368ade6b2f code cleanup 2012-08-09 17:25:57 +02:00
Bjoern Schiessle
bd7d566733 change private key passphrase; disable file proxy for keymanager operations 2012-08-09 15:45:34 +02:00
Bjoern Schiessle
a969c23e59 disable admin choice of encryption mode once a decision was taken 2012-08-09 14:25:09 +02:00
Bjoern Schiessle
800942ece7 change key password when user switches from client to server side encryption.
make use of the keymanager class in changekeypasscode()
2012-08-09 13:47:27 +02:00
Bjoern Schiessle
5a261b5b8f ask user for passwords when switching from client to server side encryption 2012-08-09 12:19:51 +02:00
Bjoern Schiessle
dc596a72c3 remove function which is no longer needed 2012-08-08 14:20:29 +02:00
Bjoern Schiessle
d4974b6d4a set default dependencies in keymanager.php
fix calls in ocs.php
2012-08-08 14:15:35 +02:00
Bjoern Schiessle
5bb3ea9740 define default properties in keymanager.php 2012-08-08 12:13:14 +02:00
Bjoern Schiessle
773d7b119d OCS api calls cleanup 2012-08-03 13:52:41 +02:00
Bjoern Schiessle
d5808f07ca return a list of all public keys for a given file 2012-08-03 11:49:55 +02:00
Sam Tuke
c4d1ad1b7d Made dependencies of Kaymanager::setFileKey() explicit using dependency injection 2012-08-01 14:11:41 +01:00
Sam Tuke
eebf76d344 Implemented writing of keyfiles and directory hierarchy in proxy class
Added crypt::findFiles() method for finding different types of files, ready for batch encrypting / decrypting
Added comments to postFopen in proxy class
2012-07-31 19:28:11 +01:00
Bjoern Schiessle
ee15c40b14 comment added 2012-07-30 12:43:17 +02:00
Bjoern Schiessle
23391b3694 get/set key files, take shared files into account 2012-07-30 12:38:38 +02:00
Bjoern Schiessle
f752a27605 write keyfiles to server 2012-07-27 14:00:41 +02:00
Bjoern Schiessle
bb229f7291 write private/public key from the client to the server 2012-07-26 17:19:55 +02:00
Bjoern Schiessle
e5c84488ff Merge branch 'files_encryption' of gitorious.org:owncloud/owncloud into files_encryption
Conflicts:
	apps/files_encryption/lib/keymanager.php
2012-07-26 14:06:39 +02:00
Bjoern Schiessle
bdb406916c fixed path for filesystem view 2012-07-26 13:49:22 +02:00
Sam Tuke
9f51841c57 Mainly work on implementing new encryption system (+ keyfile handling) into proxy classs 2012-07-25 18:28:56 +01:00
Sam Tuke
adf5c953dd Fixed use of OCFSV in getPrivateKey() 2012-07-25 16:56:52 +01:00
Sam Tuke
e6de086fb6 Fixed various bugs in hooks class
Fixed documentation syntax in keymanager
2012-07-25 16:51:48 +01:00
Bjoern Schiessle
6d1ed388c0 keymanager class for basic operations to store and retrieve keys 2012-07-25 17:01:11 +02:00