On Oct 20, 2009, at 7:53 AM, Enrico Weigelt wrote:

I've also done some bits of works in that area
(nothing usable yet ;-o), but with different
requirements:

* storage near to the user (at least local mirrors)
* equal data should get equal score (even w/ encryption)
* automatic removal of stale blocks -> garbage collection
* efficient also on small data blocks

Especially the distributed GC together w/ encryption turned out
not be quite trivial ;-o
On the one hand we need things like timestamps, on the other hand
we need to trace the tree structures w/o decryption.

So I added several block types: eg. blob (payload data) and inode
(holding the tree). blobs are encrypted w/ their score, thus
reading takes scores (outer for retrieval, inner for decryption).
inodes have an public area, listing just the outer scores and an
encrypted one holding the inner scores. The tree formed by inodes
doesn't necessarily has to be fully balanced, so incremental writes
with special heuristics for preventing unncessary writes are possible.


If someone likes to hear more about this, just let me know :)


I'm interested.  Particularly in the multi-layer caching/mirroring and
the encryption/same-score details.

       -eric

Reply via email to