Bjoern Schiessle
7a61ffc3dd
Allow to disable the signature check
...
This allows you to recover encryption files even if the signature is broken
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2018-11-27 11:08:41 +01:00
Bjoern Schiessle
87657fffd8
skip already encrypted files on encrypt all command
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2018-10-24 16:53:39 +02:00
Stefan Weiberg
375f167c67
Adding a check to see if keyFileContents is empty:
...
* this fixes a download error and an exception if the data content
for encryption is empty
* #3958 : for recovering encrypted files with a damaged signature
this is necessary in addition to turning the signature check off
Signed-off-by: Stefan Weiberg <sweiberg@suse.com>
2018-08-21 15:21:26 +02:00
Bjoern Schiessle
3adc2aca53
add occ command to recover encrypted files in case of password lost
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2018-08-16 15:51:01 +02:00
Björn Schießle
11e99859ef
Merge pull request #10397 from nextcloud/encryption-s3-fix
...
make file cache updates more robust
2018-08-08 18:27:18 +02:00
Julius Härtl
03971d3695
Move encryption settings to security
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-08-01 09:41:09 +02:00
Bjoern Schiessle
a9e22c5f1c
make file cache updates more robust
...
only update the encrypted version after the write operation is finished and the stream is closed
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2018-07-31 12:24:38 +02:00
Arthur Schiwon
38a90130ce
move log constants to ILogger
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-04-26 10:45:52 +02:00
Bjoern Schiessle
8042e6b8fb
this was a migration step to ownCloud 8.0 to restructure the encryption folder which is no longer needed
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2018-03-02 10:09:52 +01:00
Morris Jobke
236086c457
Merge pull request #8335 from nextcloud/remove-unused-import
...
Remove unused import statements
2018-02-14 22:23:07 +01:00
Morris Jobke
d3d045dd5c
Remove unused import statements
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-02-14 16:55:43 +01:00
Morris Jobke
e2974f1133
Simplify return statement
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-02-13 21:55:24 +01:00
Morris Jobke
a661f043e1
Remove unneeded semicolon and parentheses
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-26 23:46:40 +01:00
Joas Schilling
c2b1bd92d6
Merge pull request #8063 from nextcloud/inline-value
...
Return value immediately instead of assigning to a one-time variable
2018-01-26 10:15:39 +01:00
Morris Jobke
0a56d2185e
Return value immediately instead of assigning to a one-time variable
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-26 00:02:03 +01:00
Morris Jobke
464f024fa9
Use stripos instead of strpos(strtolower(), 'something')
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-25 22:59:50 +01:00
Morris Jobke
2a38605545
Properly log the full exception instead of only the message
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-23 10:57:21 +01:00
Morris Jobke
0eebff152a
Update license headers
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-06 16:56:19 +01:00
Morris Jobke
b1f77aca4e
Merge pull request #6919 from nextcloud/di-appmanager-encryption-migration
...
Use DI for IAppManager to encryption migration
2017-10-24 16:33:03 +02:00
Morris Jobke
99934134dc
Use DI for IAppManager to encryption migration
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-10-24 15:52:00 +02:00
Morris Jobke
5987099d2a
Remove unneeded check if app is enabled
...
App code will not be executable if the app is not enabled, because the autoloader refuses to load that class.
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-10-23 23:47:06 +02:00
Kenneth Newwood
7092c50e7c
print generated encryption key passwords directly after generating the keys so that errors during the encryption do not lead to a potentially massive data loss
...
Signed-off-by: Kenneth Newwood <kenneth@newwood.name>
2017-09-11 12:52:25 +02:00
Joas Schilling
0ebdf871e0
Fix comparisons in encryption app
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-08-01 13:54:07 +02:00
Bjoern Schiessle
473824fa06
make sure that we always have a owner
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-07-20 11:40:17 +02:00
Bjoern Schiessle
20a6b22db6
Add recovery key on public upload
...
In order to decide if a recovery key needs to be added we always
need to check the files owner settings and not the settings of
the currently logged in user.
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-07-20 11:40:14 +02:00
Bjoern Schiessle
d668e17769
since the default for the master key changed we need to write the setting explicitely to the database if we migrate from a older version
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-07-06 11:47:11 +02:00
Bjoern Schiessle
66debbe18e
add occ command to disable the master key again
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-07-06 11:47:11 +02:00
Bjoern Schiessle
5f75468aa4
improve status messages
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-07-06 11:47:11 +02:00
Bjoern Schiessle
28a7e72868
after the master key was loaded we are ready to go, no re-login needed
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-07-06 11:47:10 +02:00
Bjoern Schiessle
da51ec38f4
only collect detailed access list if it is really needed
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-07-06 11:33:08 +02:00
Bjoern Schiessle
9c5ba2f12c
make master key the new default
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-07-06 11:33:03 +02:00
Arthur Schiwon
793de6a8d0
move encryption to security (and behind two factor things)
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-06-27 12:21:18 +02:00
Arthur Schiwon
da53162656
We're on 13 now…
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-06-26 11:03:41 +02:00
Arthur Schiwon
39ca06e6b9
fix setting up encryption section
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-06-23 13:38:33 +02:00
Arthur Schiwon
b7ce492c59
adapt encryption
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-06-23 12:38:05 +02:00
Morris Jobke
1729e4471f
Update comments to Nextcloud
...
* based on PR by @Ardinis
* see #4311
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-04-11 23:16:27 -05:00
Vincent Petry
6b9ef15803
Use master key for public links as well
2017-03-24 14:55:42 +01:00
Vincent Petry
43c081bdc9
Fix public link for master key
...
In public link mode there is no session, so the code should use the
public key instead.
2017-03-24 14:55:12 +01:00
Matthew Setter
d7c9e2b841
Updated UI messages relating to the encryption functionality
...
The reason for updating these messages, is that grammatically they're
not quite correct. They showed a combination of:
- Related phrases, which could be either separated or joined better
- Related sentences, but which should be expressed as separate ones
They were also missing full-stops to end the them.
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-03-22 18:06:55 -06:00
Bjoern Schiessle
9ce32d9941
always throw a encryption exception
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-03-14 12:11:28 +01:00
Bjoern Schiessle
fcda3a20f4
create new encryption keys on password reset and backup the old one
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-01-10 17:04:32 +01:00
Bjoern Schiessle
8a401ee156
check if session is initialized
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2016-11-23 12:20:43 +01:00
Maxence Lange
558a934842
init Session/privateKeys on Master Key
...
I can't find another way to init the session ...
2016-11-22 13:19:42 -01:00
Thomas Müller
8628d57b2c
Move console command registration to info.xml for encryption as well as files_external
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-10-12 08:04:15 +02:00
Joas Schilling
5e5e5b77d5
Fix encryption app
2016-09-12 16:48:11 +02:00
Arthur Schiwon
14ddf9d923
rename IAdmin to ISettings, the interface is not bound to a specific settings scope
2016-08-11 14:48:21 +02:00
Arthur Schiwon
f3b15a9ab9
fixes, improvements, and another app:
...
* setupSettings now also triggered on enable
* fixes detection of present admin section or settings in the DB
* add update routine in such cases
* encryption app migrated
2016-08-11 01:41:18 +02:00
Joas Schilling
352e8b3c79
More casing
2016-08-08 16:45:40 +02:00
Joas Schilling
0215b004da
Update with robin
2016-07-21 18:13:58 +02:00
Joas Schilling
813f0a0f40
Fix apps/
2016-07-21 18:13:57 +02:00
Morris Jobke
e7e0dc608b
fix strings
2016-06-20 13:13:37 +02:00
Lukas Reschke
aba539703c
Update license headers
2016-05-26 19:57:24 +02:00
Björn Schießle
0f728b4cd1
don't fail on "bad signature" during login. Most likely this happens because
...
the login password changed at the user back-end (e.g ldap). Such failures will
be handled after login correctly by allowing the user to adjust the passwords
2016-05-25 11:39:44 +02:00
Joas Schilling
4a3311f430
Move Encryption app to PSR-4 ( #24524 )
...
* Move Encryption to PSR-4
* Move encryption tests to PSR-4
* Fix the tests
2016-05-12 09:42:19 +02:00
Bjoern Schiessle
d86f8ba5f8
if we don't have a encrypted file key we can return a empty string right away
2016-04-26 11:06:55 +02:00
Bjoern Schiessle
088ffd05d7
don't create a private-/public-key pair for each user if the master key is enabled
2016-04-26 11:06:55 +02:00
Vincent Petry
b50d3255fb
Merge pull request #22791 from owncloud/enc_master_key_improvements
...
Enc master key improvements
2016-04-21 11:48:26 +02:00
Thomas Müller
50e20e531e
Introduce isReadyForUser and verify in file transfer ownership - fixes #23786
2016-04-15 15:07:40 +02:00
Bjoern Schiessle
89223379ad
replaceUserKeys() actually deletes the users keys -> update method name and doc-block
2016-03-18 11:06:14 +01:00
Bjoern Schiessle
5e267589d4
only create and update user specific key if no master key is enabled
2016-03-18 11:06:14 +01:00
Thomas Müller
f3f08cf910
Merge pull request #23192 from owncloud/make-ancient-users-happy-with-totally-untested-stuff
...
Fallback for crappy ancient distributions
2016-03-16 21:56:36 +01:00
Bjoern Schiessle
9de4a8338e
allow group shares, even if not all public keys are available
2016-03-15 11:33:19 +01:00
Lukas Reschke
3a5f58c9b0
Fallback for crappy ancient distributions
...
Fixes https://github.com/owncloud/core/issues/23181
2016-03-12 23:11:31 +01:00
Lukas Reschke
c353d51810
Remove Scrutinizer Auto Fixer
2016-03-01 17:48:23 +01:00
Lukas Reschke
933f60e314
Update author information
...
Probably nice for the people that contributed to 9.0 to see themselves in the AUTHORS file :)
2016-03-01 17:25:15 +01:00
Bjoern Schiessle
95ea2ccb53
make decrypt all work with the master key
2016-02-29 14:54:32 +01:00
Bjoern Schiessle
9dc759b4dc
remember signature version and only set it on update to make sure that other
...
apps like files_versions still get the old signature version
2016-02-10 13:27:32 +01:00
Bjoern Schiessle
43ed86313c
use the version of the original file if we write the part file to have a proper version if we move the file over to the original location
2016-02-10 11:08:03 +01:00
Vincent Petry
45c78476f5
Use cache update instead of put for encryption version
...
Saves a call to fetch the file id which didn't even work for a reason.
This fix properly sets the version in the database.
2016-02-09 23:43:28 +01:00
Lukas Reschke
6724f76573
Use cache and add tests
2016-02-09 23:43:27 +01:00
Bjoern Schiessle
377d7fb8a8
don't decrease ->version for part files but only a local variable, otherwise it can happen that we decrease it twice and end up with the wrong value
2016-02-09 23:43:27 +01:00
Bjoern Schiessle
966eb4b084
realPath should contain the path to the file we want to read, e.g. the version and not the original file
2016-02-09 23:43:27 +01:00
Lukas Reschke
5ccb9dfa7e
Use database for keeping track of the version
2016-02-09 23:43:27 +01:00
Lukas Reschke
3badf5caf5
Use number of chunk for HMAC as well
...
Prevents switching single blocks within the encrypted file.
2016-02-09 23:43:26 +01:00
Lukas Reschke
b5824f024a
Keep track of file version
...
This way it is not possible anymore for an external storage admin to put up old versions of the file.
2016-02-09 23:43:26 +01:00
Lukas Reschke
d5c1596887
Clarify documentation
2016-02-09 23:43:26 +01:00
Lukas Reschke
3b62459c41
Use hash with appended "a" of the original password for the authentication
2016-02-09 23:43:26 +01:00
Björn Schießle
9bb97c714b
fixing unit tests
2016-02-09 23:43:26 +01:00
Lukas Reschke
b9ff16498b
Use random_bytes instead OpenSSL
2016-02-09 23:43:26 +01:00
Björn Schießle
61dd191253
meta data are at the end of the file
2016-02-09 23:43:25 +01:00
Björn Schießle
e7ff84df5c
always use default cipher for write operations, no matter how the file was encrypted before
2016-02-09 23:43:25 +01:00
Björn Schießle
cf3a8f274f
make it backward compatible to work with signed and un-signed files
2016-02-09 23:43:25 +01:00
Björn Schießle
40a5ba72fc
sign all encrypted blocks and check signature on decrypt
2016-02-09 23:43:25 +01:00
Lukas Reschke
db8f267647
Add note about the addPadding function
2016-02-09 23:43:25 +01:00
Lukas Reschke
59ebad0b53
Use an actual 16 byte long IV
...
The previous IV was actually 12 byte extended to 16 byte using base64. As the encrypted file should be fine with containing binary data as well we can simply remove the encoding like that here.
2016-02-09 23:43:24 +01:00
Lukas Reschke
d25b8dacb3
Use AES-256-CTR as default
...
CTR is recommended over CFB mode.
2016-02-09 23:43:24 +01:00
Thomas Müller
e0aa6e01ab
Merge pull request #21612 from owncloud/fix_21598
...
fix public link sharing if the master key is enabled
2016-01-13 10:34:48 +01:00
Thomas Müller
682821c71e
Happy new year!
2016-01-12 15:02:18 +01:00
Roeland Jago Douma
876fb83ddc
getMediumStrengthGenerator is deprecated and does not do anything anymore
2016-01-11 20:06:30 +01:00
Björn Schießle
46f6c289ca
only use master key ID if a user is logged in. Otherwise keep the public link share key
2016-01-11 13:09:06 +01:00
Lukas Reschke
0654d37da8
Remove undefined variable
2016-01-07 21:30:44 +01:00
Lukas Reschke
00a01a8de2
Fix PHPDoc + Add handling for error cases
...
Makes static code analyzers happier.
2016-01-07 21:30:44 +01:00
Lukas Reschke
f3360d51c6
Use PHP polyfills
2015-12-11 08:47:36 +01:00
Thomas Müller
eebe2b9c23
User IUser::getEMailAddress() all over the place
2015-12-02 21:25:05 +01:00
Scrutinizer Auto-Fixer
be4c3a8b56
Scrutinizer Auto-Fixes
...
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-11-27 15:32:44 +00:00
Robin Appelman
b025f07fb7
Make Cache\Updater per storage
2015-11-25 14:16:00 +01:00
Phil Davis
46261b5ff1
Correct the description of function setEncryptHomeStorage
2015-11-03 22:47:55 +05:45
Bjoern Schiessle
5fad45b230
make encryption configurable for home storage
2015-10-27 14:24:20 +01:00
Lukas Reschke
8f09d5b67c
Update license headers
2015-10-26 14:04:01 +01:00
Joas Schilling
e0a56317fa
Fix "Call to a member function getUID() on boolean" in Crypt
2015-10-22 11:46:37 +02:00