Commit Graph

131 Commits

Author SHA1 Message Date
Björn Schießle 93771f735b gremove unused code 2013-05-17 14:13:05 +02:00
Björn Schießle ca6a77d39b upgrade from old encryption to the new one needs to generate share keys too 2013-05-17 11:15:36 +02:00
Björn Schießle 5b160edebb check if the user knows the correct recovery password before changing the recovery key settings 2013-05-15 14:02:13 +02:00
Sam Tuke c1f1fbda08 Fixed stream wrapper bugs
Switched encryptAll() to use stream-based instead of file-at-a-time encryption
Development snapshot
2013-03-09 19:18:34 +01:00
Björn Schießle e65e6a12f1 define key size in constructor, otherwise the key size will depend on the servers openssl conf 2013-03-04 15:33:38 +01:00
Sam Tuke 69bc42f920 Deleting encrypted files with missing keyfiles/shareKeys now succeeds 2013-02-27 16:15:03 +00:00
Sam Tuke 4550ae6a69 Shared encrypted files now readable by both sharer and sharee 2013-02-26 18:11:29 +00:00
Sam Tuke 2d267501a1 Development snapshot
Added comments
Added methods
2013-02-20 19:18:00 +00:00
Sam Tuke 1b880f2f96 Moved dependencies out of Crypt methods (encKeyfileToMultipleUsers)(DI)
Fixed bug preventing sharing with users other than 'ownCloud'
Added comments
Moved functionality into filterShareReadyUsers()
Other changes
2013-02-19 19:16:50 +00:00
Sam Tuke 14ae373dfe Fixed wrong array key reference 2013-02-19 17:42:37 +00:00
Björn Schießle fd629983fa remove debug output 2013-02-19 17:10:32 +01:00
Björn Schießle 5005195db0 create keypair for ownCloud with empty passphrase, will be used for public link shares 2013-02-13 17:57:45 +01:00
Björn Schießle 9356f9a6bf add post_unshareALll hook, update recursively all keyfiles if a folder was shared/unshared 2013-02-13 17:23:27 +01:00
Björn Schießle 4952dfe956 add post_unshare hook, also add public link shares to the list of user with access to a file 2013-02-13 14:56:39 +01:00
Björn Schießle d1bbb30385 also find users with access to the file if a folder above the actual file was already shared 2013-02-12 16:48:04 +01:00
Björn Schießle 1e5d03da80 use right location of the file is the source and not the target it is shared to 2013-02-12 12:45:54 +01:00
Björn Schießle 8eef919a75 take group shares into account if we retrieve the list a all recipients 2013-02-12 12:08:34 +01:00
Björn Schießle 3e3cee98c8 - moved the enrcyption of the filekey ifg file gets shared from the post shared hook to
Crypt::encKeyfileToMultipleUsers() because this can be reused if files get unshared
- switch from preUnshare hook to postUnshare hook because afterward we can simply get the
  updated list of users with access to the file and call Crypt::encKeyfileToMultipleUsers()
2013-02-11 13:28:37 +01: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 b95bc663af Merge branch 'master' into files_encryption-style-fixes
Conflicts:
	apps/files_encryption/lib/crypt.php
	apps/files_encryption/lib/util.php
2013-02-09 11:52:11 +00:00
Sam Tuke 6870add18f Development snapshot 2013-02-06 15:08:36 +00:00
Sam Tuke 16a5ace434 Fixed bug causing encrypted files to be doubly encrypted at login
Added comments and docblocks
2013-02-06 14:30:40 +00: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 680c5b3dad Removed debugging output 2013-02-05 16:11:50 +00:00
Sam Tuke a1f200c1e5 Cleaned up path formatting with new method stripUserFilesPath() 2013-02-05 15:59:28 +00:00
Sam Tuke 53248a9b60 Recryption of legacy encrypted files now working on login 2013-02-05 15:35:29 +00:00
Sam Tuke 927d4c98a1 Fixed todos: undefined vars and unreachable code 2013-02-05 13:12:34 +00:00
Sam Tuke 0677d56ee2 Added debugging output relating to recrypting legacy files 2013-02-01 19:31:15 +00:00
Sam Tuke 06847f609b Improved support for detecting and recrypting legacy files. Bugs remain. 2013-01-31 19:40:51 +00:00
Sam Tuke 2183f77527 Fixed incompatibilities with filecache rewrite merge 2013-01-31 16:49:07 +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 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 e9f3c5feea Added creation of dir for shared file env encryption keys
Added comment to use multiKeyEncrypt
2013-01-14 15:39:04 +00:00
Sam Tuke 2e30641caa Removed misleading crypto gen comment 2013-01-10 18:19:37 +00:00
Sam Tuke 015787fbb3 All in-use unit tests now passing after merge 2013-01-06 18:38:35 +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 665261dc9a Development snapshot, mocking out Session{} for crypt unit tests 2013-01-02 19:29:22 +00:00
Sam Tuke 453fd66c70 Changing user login pwd now correctly changes encryption key passphrase
All crypt unit tests are now passing
2012-12-11 17:12:46 +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 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 13d93fb416 Development snapshot 2012-11-22 14:08:19 +00:00
Sam Tuke 5328aae8a8 Added unit tests for legacy encryption methods
Improvements to documentation
2012-11-20 19:10:10 +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 b5c0e4042e Fixing use of splitIv
Fixed unit tests for splitIv
2012-11-15 13:01:05 +00:00
Sam Tuke 886fb188cd Improved documentation
Implemented exceptions
Added method for splitting catfiles
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 ed980674a6 Development snapshot 2012-09-11 13:40:45 +01:00
Sam Tuke e3ac15bad3 development snapshot 2012-08-23 19:19:39 +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
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 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 d5808f07ca return a list of all public keys for a given file 2012-08-03 11:49:55 +02:00
Bjoern Schiessle 6b058cd359 allow user to choose encryption mode 2012-08-02 10:40:32 +02:00
Sam Tuke c4d1ad1b7d Made dependencies of Kaymanager::setFileKey() explicit using dependency injection 2012-08-01 14:11:41 +01:00
Sam Tuke 82f5f73dff Merge commit '84fd62b13047cb756d9f39c192e17fd5f2179f83' into files_encryption
Conflicts:
	apps/files_encryption/lib/crypt.php
2012-07-31 19:38:28 +01:00
Sam Tuke 84fd62b130 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:35:36 +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 f6863f9e51 get encryption mode from the settings 2012-07-31 16:52:21 +02:00
Bjoern Schiessle 3ab4ddd1da function to ask for the encryption mode (server side or client side).
Needs to be implemented and integrated into the settings.
2012-07-26 13:47:43 +02:00
Sam Tuke 9216289856 Wrote new methods for testing if a file is encrypted using AES or Blowfish
Added more unit tests for crypt class
Added new method for generating 16 character pseudo-random initialisation vectors
Started writing new methods for handling legacy keys and en/de/re cryption
Added comments to lib/filecache.php explaining expected $path type
2012-07-24 17:57:20 +01:00
Sam Tuke d294e77721 Development snapshot:
- Added methods for sealing data with multiple keys
- Added method for encrypting data, generating iv and keyfile, and returning both
- Added 6 unit test cases (containing 12 tests) for Crypt class
- Commented out old unit tests for now
2012-07-18 18:52:00 +01:00
Sam Tuke 283561823f Added methods for handling encrypted file + iv content
Improved IV generation
2012-07-17 19:15:59 +01:00
Sam Tuke 6af99f3a09 Development snapshot:
Rewrote crtpt class as Util, Hooks, and Crypt
Switched blowfish for openssl with AES
Added setup() method for creating user keys and directory structure
Many other changes complete and in progress
2012-07-11 17:51:27 +01:00
Robin Appelman 6707e4187e only use 1 fsview when initializing encryption 2012-06-21 18:35:12 +02:00
Robin Appelman d0455c5819 truncate decrypted files based on filelength 2012-06-21 17:38:00 +02:00
Robin Appelman 195c37f88a fix for encryption binary files 2012-06-16 01:31:03 +02:00
Sam Tuke e93bb5135d Applied fix from kalassico for "Chiper text must be a string" bug (http://forum.owncloud.org/viewtopic.php?f=3&t=2586&p=5094) 2012-05-31 12:25:07 +01:00
Frank Karlitschek a945fa10a6 update copyright 2012-05-26 19:14:24 +02:00
Thomas Mueller 583dce5276 removing executable bit - again 2012-05-15 00:52:00 +02:00
Frank Karlitschek 70cea18cce ported getUser 2012-05-01 18:50:31 +02:00
Frank Karlitschek e8ec999090 port to use the new public api 2012-05-01 09:49:22 +02:00
Robin Appelman 26e9a0dd13 bugfixes for encryption library and test cases 2012-04-18 20:54:28 +02:00
Georg Ehrke 5b03de9a66 fix comments in crypt lib 2012-03-21 17:43:09 +01:00
Robin Appelman b3a974d8bb only trigger hooks for the default filesystem view 2012-02-21 20:48:48 +01:00
Robin Appelman f1cbb9effc initial integration of encryption 2012-02-21 20:48:48 +01:00