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
2110831374
Make constructors explicit where adequate
2015-04-27 18:20:51 +02:00
Sebastian Messmer
58f43f6929
Remove unneeded field in cache entry
2015-04-27 18:20:44 +02:00
Sebastian Messmer
bf77e0ffa7
Small fix in AES256_GCM
2015-04-27 17:58:34 +02:00
Sebastian Messmer
bc33f69877
TODOs
2015-04-27 10:47:33 +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
b60b119985
Fix iostream use
2015-04-26 22:20:04 +02:00
Sebastian Messmer
5f83c133b0
Added error messages when block decryption fails
2015-04-26 16:45:00 +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
60442a46f0
Upgrade dependencies
2015-04-25 00:42:10 +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
6e28af3105
TODOs
2015-04-24 21:33:45 +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 Messmer
03597b9474
Code formatting & TODOs
2015-04-24 13:42:37 +02:00
Sebastian Meßmer
ef7097a299
Fix dependencies for travis
2015-04-18 17:28:01 +02:00
Sebastian Meßmer
342d956739
Fix travis
2015-04-18 17:11:49 +02:00
Sebastian Meßmer
17f6a38629
Removed unneccessary flushes
2015-04-18 17:06:55 +02:00
Sebastian Meßmer
73b060c863
Add dependency to boost thread
2015-04-18 17:01:06 +02:00
Sebastian Meßmer
90c7bad8d6
Removed debug output
2015-04-18 16:59:44 +02:00
Sebastian Meßmer
c1551121c8
Cache-Entries are purged after a max lifetime
2015-04-18 16:50:19 +02:00
Sebastian Meßmer
c18893c151
Don't encrypt and re-decrypt when creating a block, but keep plaintext data
2015-04-18 15:10:42 +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
c7eab5c504
Removed unused function
2015-04-17 13:20:16 +02:00
Sebastian Messmer
75253c74ea
Key is not default constructible anymore
2015-04-17 12:59:40 +02:00
Sebastian Messmer
4a5416dbec
Use unordered_map instead of map for cache
2015-04-17 12:56:21 +02:00
Sebastian Messmer
b41853cd00
Fix renaming
2015-04-16 15:01:59 +02:00
Sebastian Messmer
a555985b2c
Adapt to renaming of CachingStore -> ParallelAccessStore
2015-04-16 14:54:04 +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
6413123838
TODOs
2015-04-15 21:46:15 +02:00
Sebastian Messmer
fdc14cc66c
TODOs
2015-04-15 20:43:21 +02:00
Sebastian Messmer
b185729113
Caching blocks works
2015-04-15 20:39:58 +02:00
Sebastian Messmer
332f6901ef
New caching store is working, but not timeout-flushing yet
2015-04-15 19:05:58 +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