diff options
author | Javier Peletier <jm@epiclabs.io> | 2018-10-03 15:15:17 +0800 |
---|---|---|
committer | Javier Peletier <jm@epiclabs.io> | 2018-10-03 15:15:28 +0800 |
commit | de01178c18766b9f744acc94fe2b96804f998e40 (patch) | |
tree | b572a263ff660bd5ded343a5253f86f1f1145e46 /swarm/storage/feed/doc.go | |
parent | 696bc9b01ce0ed3347fa1bd64460ccc08091e90a (diff) | |
download | dexon-de01178c18766b9f744acc94fe2b96804f998e40.tar dexon-de01178c18766b9f744acc94fe2b96804f998e40.tar.gz dexon-de01178c18766b9f744acc94fe2b96804f998e40.tar.bz2 dexon-de01178c18766b9f744acc94fe2b96804f998e40.tar.lz dexon-de01178c18766b9f744acc94fe2b96804f998e40.tar.xz dexon-de01178c18766b9f744acc94fe2b96804f998e40.tar.zst dexon-de01178c18766b9f744acc94fe2b96804f998e40.zip |
swarm/storage/feed: Renamed package
Diffstat (limited to 'swarm/storage/feed/doc.go')
-rw-r--r-- | swarm/storage/feed/doc.go | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/swarm/storage/feed/doc.go b/swarm/storage/feed/doc.go new file mode 100644 index 000000000..1f07948f2 --- /dev/null +++ b/swarm/storage/feed/doc.go @@ -0,0 +1,43 @@ +/* +Package feeds defines Swarm Feeds. + +Swarm Feeds allows a user to build an update feed about a particular topic +without resorting to ENS on each update. +The update scheme is built on swarm chunks with chunk keys following +a predictable, versionable pattern. + +A Feed is tied to a unique identifier that is deterministically generated out of +the chosen topic. + +A Feed is defined as the series of updates of a specific user about a particular topic + +Actual data updates are also made in the form of swarm chunks. The keys +of the updates are the hash of a concatenation of properties as follows: + +updateAddr = H(Feed, Epoch ID) +where H is the SHA3 hash function +Feed is the combination of Topic and the user address +Epoch ID is a time slot. See the lookup package for more information. + +A user looking up a the latest update in a Feed only needs to know the Topic +and the other user's address. + +The Feed Update data is: +updatedata = Feed|Epoch|data + +The full update data that goes in the chunk payload is: +updatedata|sign(updatedata) + +Structure Summary: + +Request: Feed Update with signature + Update: headers + data + Header: Protocol version and reserved for future use placeholders + ID: Information about how to locate a specific update + Feed: Represents a user's series of publications about a specific Topic + Topic: Item that the updates are about + User: User who updates the Feed + Epoch: time slot where the update is stored + +*/ +package feed |