Commit Graph

1514 Commits

Author SHA1 Message Date
Sebastian Messmer
340bbf842e Moved crypto classes to cpputils 2015-10-27 22:19:40 +01:00
Sebastian Messmer
7b269a1184 Added a crypto library with scrypt key derivation function and random padding 2015-10-27 22:19:06 +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
64397978e0 Add Serializer::writeTailData() and Deserializer::readTailData() 2015-10-27 21:10:36 +01:00
Sebastian Messmer
eac8d44b41 Serializing strings works with nullbytes instead of size+data 2015-10-27 20:59:23 +01:00
Sebastian Messmer
9e67e52dc8 Use size_t instead of unsigned int in FixedSizeData 2015-10-27 20:59:08 +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
ed390108f4 Use lower fuse version 2015-10-26 22:55:00 +01:00
Sebastian Messmer
6c4859d1b5 Setup release distribution package creation (DEB, RPM, TGZ, ...) 2015-10-26 22:54:17 +01:00
Sebastian Messmer
1c0d6b872b Configure "make install" 2015-10-26 20:44:00 +01:00
Sebastian Messmer
ee3a50ebee Fix config loading 2015-10-26 20:15:24 +01:00
Sebastian Messmer
adad371114 Fix config loading 2015-10-26 20:15:04 +01:00
Sebastian Messmer
5603a8b8d1 Fix config loading 2015-10-26 20:14:41 +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
248f0b0d61 FixedSizeData::take/drop() 2015-10-26 12:15:11 +01:00
Sebastian Messmer
e090d1b6e1 Updated readme 2015-10-26 02:32:42 +01:00
Sebastian Messmer
90ecee252e Fix DeathTest 2015-10-25 19:13:33 +01:00
Sebastian Messmer
4164c2353e Graceful exiting when password is wrong 2015-10-25 19:00:30 +01:00
Sebastian Messmer
25db4064b7 Use EXPECT_EXIT instead of EXPECT_DEATH 2015-10-25 18:42:49 +01:00
Sebastian Messmer
daa4f0a7f3 CryConfigEncryptor more thoroughly uses Serializer/Deserializer interface 2015-10-25 17:01:28 +01:00
Sebastian Messmer
44d8b82ed0 Deserializer doesn't require call to finished() anymore 2015-10-25 16:59:01 +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
a33df2e292 Added (De)Serializer::write/readString 2015-10-25 13:02:28 +01:00
Sebastian Messmer
7abbb33654 Added Serializer and Deserializer classes for Data 2015-10-25 12:33:12 +01:00
Sebastian Messmer
cde1a3b7b9 Refactor CryConfigEncryptor 2015-10-25 11:33:30 +01:00
Sebastian Messmer
f88221a0c6 Add Data::LoadFromStream(stream, size) 2015-10-25 11:32:40 +01:00
Sebastian Messmer
868e12183a Fix Usage line when called with --help and fix test cases 2015-10-24 20:02:43 +02:00
Sebastian Messmer
84daca0bc1 ChangeLog written 2015-10-24 19:56:19 +02:00
Sebastian Messmer
61ca163339 If a configuration file is not specified on command line, it will be put into the base directory 2015-10-24 19:56:05 +02: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
ea30ac641b Data::LoadFromStream() and Data::StoreToStream() 2015-10-24 18:39:11 +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
60b7f853d9 DataFixture::generateFixedSize() 2015-10-24 01:53:11 +02:00
Sebastian Messmer
6e4ecd6e19 Allow calling RandomGenerator::get() on child classes (failed due to overridden overload) 2015-10-23 20:21:17 +02:00
Sebastian Messmer
233f1a2ecb TODOs 2015-10-23 12:17:09 +02:00
Sebastian Messmer
20b0034ab1 - Refactor main()
- Added CryConfigLoaderTest
2015-10-23 12:16:23 +02:00
Sebastian Messmer
74cb9eaf2d Added TempFile::exists() 2015-10-23 12:15:51 +02:00
Sebastian Messmer
39c62ae185 Added test case for CryConfigFile 2015-10-23 00:04:03 +02:00
Sebastian Messmer
c936fca16a Added test cases for CryConfigCreator 2015-10-22 18:48:14 +02:00
Sebastian Messmer
9bf83a6fe7 Adapted to new key creation interface 2015-10-22 18:48:04 +02:00
Sebastian Messmer
caaf528031 Refactor key creation 2015-10-22 18:19:59 +02:00