Patent ID: 8365301

Claim:
One or more computer-readable memory devices or storage devices comprising computer-executable instructions which, when executed by a first node, cause the first node to perform: storing a node identifier assigned to the first node; receiving, from a second node, a registration message comprising: a first data field containing data representing a registration key that comprises a hash of a key identifier, the key identifier being associated with a payload of the registration message; a second data field, associated with the first data field, containing data representing the payload encrypted with a group key; a third data field, associated with the second data field, containing data representing a first retrieval identifier indicating a first user authorized to access the payload; and a fourth data field containing data representing the group key; comparing the registration key to the node identifier assigned to the first node; in an instance when the registration key is mathematically closer to the node identifier assigned to the first node than to node identifiers of other nodes, storing the payload locally on the first node; and in an instance when the registration key is not mathematically closer to the node identifier assigned to the first node than to the node identifiers assigned to the other nodes, forwarding the registration message to at least one of the other nodes.