Sebastian Messmer
52bb855627
EncryptedBlockStore crashed when a modified block was removed. Fixed crash and added test case.
2015-09-29 18:51:59 +02:00
Sebastian Messmer
aea84d9ef5
Added more ciphers
2015-08-31 23:04:56 +02:00
Sebastian Messmer
fd93e4c199
Use the new assert that doesn't crash the program in a release build
2015-07-22 13:42:07 +02:00
Sebastian Messmer
37bdbd907a
Finished migrating to unique_ref instead of unique_ptr
2015-07-21 18:19:34 +02:00
Sebastian Messmer
7c407c4b69
Switched whole blockstore interface to unique_ref instead of unique_ptr
2015-07-21 14:50:52 +02:00
Sebastian Messmer
a945e4f0fc
Changed Blockstore::tryCreate() to return optional<unique_ref<Block>> instead of unique_ptr<Block>
2015-07-20 18:57:48 +02:00
Sebastian Messmer
3826bab481
Fix test cases
2015-06-26 15:57:41 +02:00
Sebastian Messmer
cf6ef7c02c
Use C++11 uniform initialization for structs
2015-06-21 14:40:57 +02:00
Sebastian Meßmer
199da740ed
Fix test cases
2015-06-17 12:17:17 +02:00
Sebastian Messmer
e8a48afd3b
Enable extended compiler warnings and resolve occurring ones
2015-05-08 02:10:56 +02:00
Sebastian Messmer
fdcd56401a
Added specific test cases for EncryptedBlockStore
2015-05-06 00:37:57 +02:00
Sebastian Messmer
0042ae1cef
- Run test cases for EncryptedBlockStore with different ciphers
...
- Implement FakeAuthenticatedCipher for use with specific EncryptedBlockStoreTest
- Write skeleton for specific EncryptedBlockStoreTest
- Fix behavior of AES256_CFB when called with too small input
- Add testcase that all ciphers (also non-authenticating ones) have to handle too small input correctly
2015-05-06 00:12:14 +02:00
Sebastian Messmer
fd09ff1f9e
Remove includes to unused exception
2015-04-29 16:33:26 +02:00
Sebastian Messmer
cb402fd14b
Added test cases for Cache
2015-04-28 11:56:07 +02:00
Sebastian Messmer
d589910b0d
TODOs
2015-04-27 23:10:30 +02:00
Sebastian Messmer
c47434d3b3
Separated QueueMapTest.cpp into test groups with their own files each
2015-04-27 23:09:29 +02:00
Sebastian Messmer
1ff807e09c
Make Cache a generic over Key/Value. Furthermore, add test skeleton for Cache
2015-04-27 22:46:57 +02:00
Sebastian Messmer
f286886b49
Handle QueueMap::push(existing_key) better and write more test cases for QueueMap
2015-04-27 22:11:15 +02:00
Sebastian Messmer
bf77e0ffa7
Small fix in AES256_GCM
2015-04-27 17:58:34 +02:00
Sebastian Messmer
6f1c39fd21
QueueMap: Added more test cases and improved interface
2015-04-27 10:35:01 +02:00
Sebastian Messmer
f647342228
TODOs
2015-04-27 01:36:32 +02:00
Sebastian Messmer
e177c6f45c
Switch to a QueueMap implementation with less indirections (directly store elements instead of pointers)
2015-04-27 01:22:39 +02:00
Sebastian Messmer
09bc28e810
EncryptedBlock stores its block key in the block, so that an attacker can't replace block contents with a different block
2015-04-26 16:36:48 +02:00
Sebastian Messmer
1f14598d25
Added Test Cases for PeriodicTask
2015-04-26 12:36:19 +02:00
Sebastian Messmer
77b67a8137
Reduce use of memcmp and use operator==(Data, Data) instead
2015-04-25 17:17:06 +02:00
Sebastian Messmer
a2c89ed73a
Use cpputils::DataFixture instead of DataBlockFixture
2015-04-25 16:43:52 +02:00
Sebastian Messmer
3e12c771a1
Remove dependency to tempfile
2015-04-25 03:47:03 +02:00
Sebastian Messmer
59bfddc18f
Moved Data, FixedSizeData and DataBlockFixture to cpp-utils
2015-04-25 02:48:41 +02:00
Sebastian Messmer
e056a65b48
- Added test cases for authenticated ciphers
...
- Fixed corner case for AES256_GCM when decrypt is called on data that can't hold IV and TAG
2015-04-24 23:58:24 +02:00
Sebastian Messmer
0335b243fb
Implemented AES256_GCM
2015-04-24 23:02:14 +02:00
Sebastian Messmer
19e5f03de3
Simplified CipherTest
2015-04-24 21:33:25 +02:00
Sebastian Messmer
008c6f7ab7
Add Cipher concept
2015-04-24 21:30:54 +02:00
Sebastian Messmer
5adcf4aca1
Allow decryption interface to fail (needed for authenticated ciphers later)
2015-04-24 21:08:36 +02:00
Sebastian Messmer
79283b868b
Added test cases that a Cipher is indeterministic
2015-04-24 19:13:56 +02:00
Sebastian Messmer
f18195757c
- Added test cases for ciphers
...
- Removed Cipher.h
2015-04-24 18:58:42 +02:00
Sebastian Messmer
6e50c9d8a5
Factor out encryption algorithm from EncryptedBlockStore
2015-04-24 18:14:25 +02:00
Sebastian Meßmer
17f6a38629
Removed unneccessary flushes
2015-04-18 17:06:55 +02:00
Sebastian Meßmer
417a701636
- BlockStore::create() gets the data of the new block as a parameter
...
- Fixed numBlocks() in OnDiskBlockStore, FakeBlockStore, CachingBlockStore, ...
- CachingBlockStore caches created blocks and doesn't directly create them in the underlying blockstore
2015-04-18 14:47:12 +02:00
Sebastian Messmer
18e7d68f15
Added test cases checking that numBlocks() works correctly when a created block is not destructed yet
2015-04-17 13:27:17 +02:00
Sebastian Messmer
9fa6b041eb
Renamed old Caching2BlockStore to new CachingBlockStore
2015-04-16 14:10:44 +02:00
Sebastian Messmer
248fd0f5cc
Renamed old CachingBlockStore to ParallelAccessBlockStore
2015-04-16 13:59:52 +02:00
Sebastian Messmer
72f952b57c
Added dummy implementation for new caching block store
2015-04-15 15:46:35 +02:00
Sebastian Messmer
cc30dcde10
Fix FakeBlockStore
2015-04-15 14:51:41 +02:00
Sebastian Messmer
711283a89b
EncryptedBlockStore handles encryption keys
2015-04-09 20:14:12 +02:00
Sebastian Messmer
990ca6ca26
Generalized Key to FixedSizeData
2015-04-09 20:07:03 +02:00
Sebastian Messmer
86f8ca6dc4
Dummy implementation for EncryptedBlockStore
2015-04-09 19:22:09 +02:00
Sebastian Meßmer
da0efd80c5
Rename SynchronizedBlockStore -> CachingBlockStore
2015-04-02 02:59:43 -04:00
Sebastian Meßmer
5571a42980
Continued working on SynchronizedBlockStore. remove() doesn't work yet.
2015-03-28 13:44:22 -04:00
Sebastian Meßmer
f6669c86c1
Added SynchronizedBlockStore. In this first version, it only synchronizes the direct blockstore functions, but still allows opening the same block twice. This will be forbidden in future commits
2015-03-19 11:16:20 +01:00
Sebastian Meßmer
6d61b896af
Remove test that is dependent on gcc optimization level
2015-03-15 09:26:50 +01:00