Tomaz Canabrava
c592871f94
[CSE] Do not handle b64 inside of the decrypt function
...
the decrypt function should deal with the raw data always.
2017-12-13 16:37:52 +01:00
Tomaz Canabrava
2127b2629d
[CSE] Move encryption related network jobs to its own file
...
Move encryption related network jobs to it's own file,
the original file was starting to be just way too big.
2017-12-12 19:36:47 +01:00
Tomaz Canabrava
0a58ea76e5
[CSE] Start the work with an existing metadata
2017-12-12 15:35:53 +01:00
Tomaz Canabrava
0a83d3e743
[CSE] Fix reading the public key for the metadata
...
This broke when we started to use QSslKey and the Qt Keychain
framework.
2017-12-08 11:24:22 +01:00
Tomaz Canabrava
7fe4dd2163
[CSE] Renane GetFolderEncryptStatus to GetFolderEncryptStatusJob
...
it's a network job after all
2017-12-07 18:06:55 +01:00
Tomaz Canabrava
863e86138f
[CSE] Pass the folder to the GetEncryptionStatus
...
Sometimes we are only interested in folders.
2017-12-07 17:32:35 +01:00
Tomaz Canabrava
6f35cbff6b
[CSE] Fetch the Folder information for encryption status
2017-12-04 22:27:13 +01:00
Roeland Jago Douma
0f60deb043
Store and retrieve keys in keychain
...
* Store privatekey, certificate and mnemonic in keychain
* Retrieve private + public key from server
- ask for mnemonic to decrypt private key
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-11-28 12:36:35 +01:00
Tomaz Canabrava
47b5cd0fbb
[CSE] Shows correctly Encrypt / Decrypt in the menu
2017-11-27 21:19:54 +01:00
Tomaz Canabrava
d2d2df4c75
[CSE] Try to find the webdav url of a folder.
2017-11-27 21:06:38 +01:00
Roeland Jago Douma
ffb9f69cf6
Start with moving data to the keychain
...
* Check for cert + privateKey in keychain
* Work with QSslKey and QSslCertificate
* Abstract reading the BIO's a bit more
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-11-27 16:21:53 +01:00
Roeland Jago Douma
74c4d27ea0
Indent
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-11-27 16:12:56 +01:00
Roeland Jago Douma
9cbe795045
Move more encryption functions to encryption helper
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-11-25 21:43:15 +01:00
Tomaz Canabrava
45d9323653
[CSE] Update encryption status when folder is updated
2017-11-23 16:55:12 +01:00
Tomaz Canabrava
a118419f0c
[CSE] buildfix, use the correct type.
2017-11-21 09:55:44 +01:00
Tomaz Canabrava
d31aa7836a
[CSE] Add job to find what folders are encrypted.
...
This still needs to be correctly setuped in the call chain.
The job returns a QVariantMap with the folder-webdav-url
and the encrypted status.
2017-11-20 21:38:17 +01:00
Tomaz Canabrava
6351c01ee7
[CSE] Remember the token for folders
2017-11-13 17:04:02 +01:00
Tomaz Canabrava
22a2ab8999
[CSE] Start to send the metadata to the server
2017-11-13 16:46:30 +01:00
Tomaz Canabrava
4755b8c8a3
[CSE] More warnings
2017-11-12 13:03:52 +01:00
Tomaz Canabrava
be9cd358d4
[CSE] Bypass Qt DELETE Bug
...
It appears that Qt implementation of the DELETE http request
does not send bodyData, and we need that for Nextcloud.
Currently I changed the http request on the server side
to accept a POST instead of a DELETE, so I can actually
develop.
Also, I already poked the Qt developers that did this code.
2017-11-03 17:00:28 +01:00
Tomaz Canabrava
b53003792f
[CSE] Removed lambdas for Metadata / Lock / Unlock
2017-11-03 12:34:30 +01:00
Tomaz Canabrava
6facd29663
[CSE] Start to break the lambdas
...
Lambda within a lambda is a terrible idea,
Use default signal / slot connections with a
method instead.
2017-11-03 12:00:25 +01:00
Tomaz Canabrava
8d537fdd3c
[CSE] Get Metadata from the server
2017-11-01 18:32:33 +01:00
Tomaz Canabrava
4a66cf11d2
[CSE] Send Metadata to the server
2017-11-01 18:21:30 +01:00
Tomaz Canabrava
2698759525
[CSE] Implement the Folder Unlock api job
2017-11-01 17:54:17 +01:00
Tomaz Canabrava
1b1add5ead
[CSE] Add api to lock file
2017-11-01 17:36:54 +01:00
Tomaz Canabrava
88d87bf0ca
[CSE] Convert encrypted bitearray to Base64
...
also, start the decrypt.
2017-11-01 14:46:32 +01:00
Tomaz Canabrava
3628f3739d
[CSE] Start the decryption of the metadata
2017-10-31 13:06:20 +01:00
Tomaz Canabrava
c7d9abbea3
[CSE] Rework pubkeyPath to be able to fetch pubKey
2017-10-30 20:02:55 +01:00
Tomaz Canabrava
cf56d58241
[CSE] Start the encryption of the metadataKey
2017-10-30 19:05:55 +01:00
Tomaz Canabrava
c695c50c33
[CSE] Implement the empty metadata
...
Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
2017-10-30 15:40:05 +01:00
Tomaz Canabrava
476fe66043
[CSE] Add beginnign of the code to deal with the metadata
2017-10-23 21:06:26 +02:00
Tomaz Canabrava
23f5bb7ed9
[CSE] Move network jobs out of networkjobs.h
...
Since those networkjobs are all about client side
encryption, mvoe them to clientsideencryption.h
This will help with fewer conflicts with the origin.
2017-10-23 21:06:26 +02:00
Tomaz Canabrava
1a47052aa3
[CSE] Remove unused function
...
This is already being called from somwhere else.
2017-10-18 21:51:39 +02:00
Tomaz Canabrava
623eb29845
[CSE] Helper functions for the URL's
2017-10-18 21:51:39 +02:00
Tomaz Canabrava
5395fc56b1
[cse] Start the encryption algorithm for the Private Key
2017-10-18 21:51:38 +02:00
Tomaz Canabrava
d2992d92ba
[cse] Generate the CSE
...
I still need to send it to the server. It's been a long
learning with the OpenSSL library.
2017-10-18 21:51:37 +02:00
Tomaz Canabrava
42a3098595
[cse] s/scr/csr
2017-10-18 21:51:37 +02:00
Tomaz Canabrava
8c342cb1dd
[cse] Generate the KeyPair
...
Not stored anywhere yet, but it's correctly running.
2017-10-18 21:51:37 +02:00
Tomaz Canabrava
17693a75e5
[cse] Request public key from server
...
This is the first step needed to properly communicate.
Next, get private key.
2017-10-18 21:51:37 +02:00
Tomaz Canabrava
29b64640fa
[cse] Start to fetch the basics to fetch the key from the server
2017-10-18 21:51:37 +02:00
Tomaz Canabrava
3f4d915a17
[cse] Add files to handle client side encryption
...
This will be the responsible for encryption,
decryption and talking with the server.
2017-10-18 21:51:36 +02:00