Commit Graph

52 Commits

Author SHA1 Message Date
Sebastian Messmer
029fb73218 Better error message when config file has wrong header 2016-02-09 09:14:02 +01:00
Sebastian Messmer
9f94a88bef Show "this might take some time" when generating the key 2016-01-28 20:40:56 +00:00
Sebastian Messmer
af4ef5d425 Offer a default configuration when creating new filesystems 2016-01-25 14:33:40 +01:00
Sebastian Messmer
33906947a8 Adapt to new Console from cpputils (we have to print the newline ourselves now, cpputils doesn't do it anymore) 2016-01-25 14:21:19 +01:00
Sebastian Messmer
e5a2cec5ea Added test case for CryConfigConsole 2016-01-25 14:03:32 +01:00
Sebastian Messmer
16bdbcc2ca Refactor CryConfigCreator (factor out CryConfigConsole). This is preparation for adding a 'use default config' question. 2016-01-17 14:57:40 +01:00
Sebastian Messmer
6786508148 Make classes final if they're not meant to be derived from 2015-11-27 14:06:17 +01:00
Sebastian Messmer
529b888048 Code is compatible with gcc 4.8 2015-11-24 14:42:20 +01:00
Sebastian Messmer
5b76a11388 When creating a new filesystem, ask password twice (second time for confirmation) 2015-11-19 10:08:09 +01:00
Sebastian Messmer
30ae2fc45c Added test cases 2015-11-12 10:59:38 -08:00
Sebastian Messmer
09f6b48710 Add a compatibility test ensuring that it can load config files from version 0.8.1 in future 2015-11-11 18:10:56 -08:00
Sebastian Messmer
10cbb06a4b Added test cases for CryConfigEncryptor 2015-11-11 14:33:39 -08:00
Sebastian Messmer
f90196826b Added test cases for outer config file encryption 2015-11-11 11:58:09 -08:00
Sebastian Messmer
d003b7f0c5 Added test cases for inner config file encryption 2015-11-11 11:03:05 -08:00
Sebastian Messmer
f44ae98bf9 Removed unnecessary parameter 2015-11-11 11:02:01 -08:00
Sebastian Messmer
669e71c056 Inner encryption of configuration file uses the cipher specified by the user 2015-11-11 01:19:47 -08:00
Sebastian Messmer
252a666a37 Refactor (de)serializing config files 2015-11-10 17:50:08 -08:00
Sebastian Messmer
0b7182f095 Make test cases faster by using SCrypt::TestSettings 2015-11-03 20:27:00 -08:00
Sebastian Messmer
bdb6de1c4a Add --cipher and --ciphers command line options 2015-10-30 19:53:15 +01:00
Sebastian Messmer
3a04c8697f Config encryption uses cipher name provided by cipher instead of storing it itself 2015-10-28 01:58:01 +01:00
Sebastian Messmer
be1acba45f Use cipher names provided by cipher 2015-10-28 01:49:33 +01:00
Sebastian Messmer
c8e6ed5d9f Fix incompatibility with gcc 4.9 2015-10-28 00:42:49 +01:00
Sebastian Messmer
0d5a7d9d10 Adapt to cpputils crypto library 2015-10-27 23:46:54 +01:00
Sebastian Messmer
340bbf842e Moved crypto classes to cpputils 2015-10-27 22:19:40 +01:00
Sebastian Messmer
d8ed751039 TODOs 2015-10-27 21:26:08 +01:00
Sebastian Messmer
bb507ce241 Add a header to the inner config encryption so we can change the inner format later without changing the outer format 2015-10-27 21:20:12 +01:00
Sebastian Messmer
0ae9bb7fca TODOs 2015-10-27 19:01:45 +01:00
Sebastian Messmer
5a73042c63 Add a padding step between inner encryption and outer encryption to hide the size of the cipher name that is added inbetween 2015-10-27 19:00:24 +01:00
Sebastian Messmer
08e4ae8a2e Config encryption: Prepend inner cipher name to the encrypted data before encrypting it with the outer cipher 2015-10-27 18:50:58 +01:00
Sebastian Messmer
d9eaac5f75 Encrypt config file twice - with an inner and an outer key 2015-10-27 17:33:31 +01:00
Sebastian Messmer
635349d636 Separate CryConfigEncryptor from InnerEncryptor. This is the first step to do two layers of encryption. 2015-10-27 15:28:11 +01:00
Sebastian Messmer
88262c3ef9 Make SCrypt config modifiable and speed up test cases by using a special test config 2015-10-27 13:28:42 +01:00
Sebastian Messmer
adad371114 Fix config loading 2015-10-26 20:15:04 +01:00
Sebastian Messmer
aceeb2644f Refactor folder structure and put classes in own files 2015-10-26 18:14:27 +01:00
Sebastian Messmer
fd184b45d2 Refactor CryConfigEncryptor: Store instance instead of static 2015-10-26 16:36:57 +01:00
Sebastian Messmer
a840bbba47 Change config file header to contain version information 2015-10-26 12:35:22 +01:00
Sebastian Messmer
4164c2353e Graceful exiting when password is wrong 2015-10-25 19:00:30 +01:00
Sebastian Messmer
daa4f0a7f3 CryConfigEncryptor more thoroughly uses Serializer/Deserializer interface 2015-10-25 17:01:28 +01:00
Sebastian Messmer
7cc2205bc4 Use cpputils::Serializer and cpputils::Deserializer instead of std::memcpy 2015-10-25 13:37:28 +01:00
Sebastian Messmer
cde1a3b7b9 Refactor CryConfigEncryptor 2015-10-25 11:33:30 +01:00
Sebastian Messmer
371303ae6a Config file is AES256_GCM encrypted, the config file key is generated with scrypt 2015-10-24 19:35:37 +02:00
Sebastian Messmer
7988cc406d Added serialization/deserialization of DerivedKeyConfig 2015-10-24 12:25:49 +02:00
Sebastian Messmer
8741853eef Added key derivation function scrypt 2015-10-24 01:57:17 +02:00
Sebastian Messmer
20b0034ab1 - Refactor main()
- Added CryConfigLoaderTest
2015-10-23 12:16:23 +02:00
Sebastian Messmer
39c62ae185 Added test case for CryConfigFile 2015-10-23 00:04:03 +02:00
Sebastian Messmer
9bf83a6fe7 Adapted to new key creation interface 2015-10-22 18:48:04 +02:00
Sebastian Messmer
d8e0465954 Added test cases for CryCipher 2015-10-19 14:22:01 +02:00
Sebastian Messmer
fdc41ffb83 TODOs 2015-10-19 02:47:22 +02:00
Sebastian Messmer
2104a85e95 Refactor config file handling 2015-10-19 02:46:47 +02:00
Sebastian Meßmer
03ad5cbe45 Fix -Weffc++ warnings 2015-10-17 21:33:41 +02:00