v6ak / qubes-incremental-backup-poc

proof of concept of incremental backup scheme for Qubes
https://groups.google.com/d/msgid/qubes-users/901b82dc-f781-4c13-ad00-33b4337fc84a%40googlegroups.com
9 stars 2 forks source link

Use Merkle-tree-based storage #37

Open v6ak opened 7 years ago

v6ak commented 7 years ago

Why?

BackupStorageVM<->dom0 interface

Rather a simple key-value interface:

dom0 <-> BDVM interface

The interface should be very similar to BackupStorageVM<->dom0, but dom0 has to verify the permissions and maybe handle encryption.

Directory structure

Directory structure would be implemented on top of the mentioned key-value storage as Merkle tree.

What to decide

v6ak commented 7 years ago

First draft:

All items of Merkle tree are encrypted and somehow linked to the particular VM. TODO: describe details.

MAC is not needed for any node except the root one, because other node's ciphertext are authenticated by hash stored in a node that is already authenticated.

Root item

Directory structure

List of directory item descriptions ordered by name.

Directory item description

File

Just content of the file.