

A DHT-based key-value store with value-stored callback functions [pdf] - zrail
http://www.usenix.org/events/osdi10/tech/full_papers/Geambasu.pdf

======
zrail
There's no released code yet, of course, but it looks really cool. Basically,
the value you store in the DHT can include some callback functions that get
called when certain events happen (onGet, onPut, onTimer). These callbacks
execute in a sandboxed environment with a pretty limited API that retains
enough functionality to implement custom replication strategies, self-
deletion, and custom access control. Among other things, the paper describes
implementing cryptography in the handlers such that only properly signed
requests get processed.

One application immediately jumps out: cryptographically secure asyncronous
messaging. A mailbox would be a lua object at a given key which contains the
owner's public key and a list of messages encrypted with that key. The mailbox
would append any messages `put` to the key to the list. The list would be
returned when a valid `get` request is received which is signed with the
owner's public key (note: in this system `get` requests can pass arbitrary
arguments in addition to the requested key).

