github.com/linapex/ethereum-go-chinese@v0.0.0-20190316121929-f8b7a73c3fa1/swarm/storage/feed/doc.go (about)

     1  
     2  //<developer>
     3  //    <name>linapex 曹一峰</name>
     4  //    <email>linapex@163.com</email>
     5  //    <wx>superexc</wx>
     6  //    <qqgroup>128148617</qqgroup>
     7  //    <url>https://jsq.ink</url>
     8  //    <role>pku engineer</role>
     9  //    <date>2019-03-16 19:16:44</date>
    10  //</624450118724096000>
    11  
    12  /*
    13  包饲料定义了群体饲料。
    14  
    15  Swarm feeds允许用户构建有关特定主题的更新feed
    16  每次更新都不使用ENS。
    17  更新方案建立在群块上,块键如下
    18  可预测的、可版本控制的模式。
    19  
    20  提要绑定到唯一标识符,该标识符由
    21  所选主题。
    22  
    23  提要定义为特定用户对特定主题的一系列更新。
    24  
    25  实际数据更新也以群块的形式进行。钥匙
    26  其中的更新是属性串联的散列,如下所示:
    27  
    28  updateaddr=h(提要,epoch id)
    29  其中h是sha3散列函数
    30  feed是主题和用户地址的组合
    31  epoch id是一个时隙。有关详细信息,请参阅查找包。
    32  
    33  在订阅源中查找最新更新的用户只需知道主题
    34  以及另一个用户的地址。
    35  
    36  源更新数据为:
    37  updatedata=feed epoch数据
    38  
    39  进入区块负载的完整更新数据是:
    40  updatedata符号(updatedata)
    41  
    42  结构总结:
    43  
    44  请求:带签名的订阅源更新
    45   更新:标题+数据
    46    标题:协议版本,保留供将来使用的占位符
    47    ID:有关如何定位特定更新的信息
    48     提要:表示用户关于特定主题的一系列出版物
    49      主题:更新所涉及的项目
    50      用户:更新源的用户
    51     epoch:存储更新的时隙
    52  
    53  **/
    54  
    55  package feed
    56