dedup

deduplicating backup program
git clone git://git.2f30.org/dedup
Log | Files | Refs | README | LICENSE

commit 444b9123043fedf7fffd116093babde7937cb52f
parent fcc899cbc1d3c835f1b28b9702e6965505ac8d66
Author: sin <sin@2f30.org>
Date:   Thu, 16 May 2019 14:19:41 +0300

Update DESIGN

Diffstat:
MDESIGN | 9+++++----
1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/DESIGN b/DESIGN @@ -24,18 +24,19 @@ bottom these are as follows: The generic layer is the one that client code interfaces with. It is the top level entrypoint to the block layer. The generic layer -calculates the hash of the block and passes it down to the storage -layer when writing a new block. +calculates the hash of the block and passes it down to the compression +layer. The compression layer will prepend a compression descriptor to the block and then compress the block using snappy or lz4. It is possible to disable compression in which case a special descriptor is prepended -and the data is passed uncompressed to the layer below. +and the data is passed uncompressed to the encryption layer. The encryption layer will prepend an encryption descriptor to the block and then encrypt/authenticate the block using XChaCha20 and Poly1305. It is possible to disable encryption in which case it acts -as a bypass with a special type of encryption descriptor. +as a bypass with a special type of encryption descriptor. The block +is then passed to the storage layer. The storage layer will prepend a storage descriptor and append the descriptor and the data to a single backing file.