本文为Swarm官方最新发布的白皮书全文,由蓝贝壳云储整理翻译,星球日报经授权发布。内容仅供参考,最终请以官方白皮书中内容为准。
1简介
Swarm的使命,是通过为去中心化的互联网提供可扩展的底层基础设施,去塑造自我主权的全球化社会和无需许可的开放市场。Swarm的愿景,是通过点对点的存储和通信系统来延展区块链,从而让“世界计算机”成为现实,这台“世界计算机”将可以作为去中心化应用程序的操作系统和部署环境。
Swarm可以提供不间断的服务,更有效地抵御网络中断或有针对性的DoS攻击。Swarm作为一个无需许可的发布平台,有效促进了信息自由。Swarm以其独特的隐私特性,如匿名浏览、可拒存储、不可追踪的消息传递和不泄漏元数据的文件格式等,响应了日益增长的网络安全需求。
Swarm内置的激励措施旨在优化带宽和存储资源的分配,使其在经济上能够自我维持。Swarm节点在与每个节点的连接中追踪它们的相应带宽贡献,并且通过BZZ来解决由于不平等消耗而产生的额外债务。Swarm中的发布者必须花费BZZ去购买向Swarm写入数据的权利,并对一些长期的存储预付租金。
Swarm的模块化设计由清晰可分的层组成。从技术上讲,层2“不可变存储的覆盖网络”和层3“通过API的高等级数据存取”构成了Swarm的核心。
2DISC:块的分布式不可变存储
DISC是Swarm的底层存储模型。它由存储和提供数据的节点组成,在这些节点之间的协作中,假设每个节点追求使其运营者利润最大化的策略,那么网络作为一个整体,其行为将显现出以下特性:
?隐私保护和无需许可的上传和下载?强大的防御措施,内容一经发布便很难再对其进行屏蔽或更改访问权限?随着需求的增加可自动扩展?得到完整性保护的内容?无需再保存的内容最终会被遗忘
金色晨讯 | 11月3日隔夜重要动态一览:21:00-7:00关键词:SEC、PayPal、BM、香港金管局
1. 美国SEC提高公司注册前可筹集资金限额,或对STO有益;
2. PayPal首席执行官:将扩展数字钱包计划;
3. 比特币10月份调整后链上交易量达到2019年7月以来最高水平;
4. BM:仅承诺投资建立在EOSIO上的公司;
5. 比特币矿工交易费收入占比升至2018年1月以来最高水平;
6. 火币今日USDT大额转账系跨链调仓,其以太坊地址已收到回流USDT;
7. 中央财经欧阳日辉:央行数字货币将促进国际货币体系变革;
8. 香港金管局余伟文:探讨建立以区块链为基础的央行数字货币网络提升跨境支付效率。[2020/11/3 11:29:20]
任何拥有多余存储空间及带宽的人,都可以以节点运营者的身份参与DISC,并由此获得奖励。当运营者安装并运行Swarm客户端软件时,会创建一个新节点并成为Swarm网络的一部分,基本上相当于负责照管Swarm这一全球硬盘的一小部分。
接下来,我们将进一步定义DISC,并解释它为何会产生上述特性。
2.1连接、拓扑和路由
DISC的最初职责是建立和维护一个节点网络,使得所有节点都可以在彼此之间发送消息。这种消息交换是通过使用p2p网络协议的节点之间存在的持久而安全的通信信道进行的。Swarm期望节点建立Kademlia连接:连接到其他特定的节点集时,节点对发送地址作出的本地决定,最终会让消息的传导找到全局最优路由。
Kademlia假设每个节点都分配了一个与其网络地址不同的Swarm地址。通过计算前缀位的数值中两个Swarm地址的共同值,我们可以定义它们的接近度。彼此最接近的节点们将形成一个完全连通的邻域。此外,每个节点连接到来自每个离散邻近类的多个对等节点。
金色晚报 | 10月14日晚间重要动态一览:12:00-21:00关键词:俄罗斯、LTC、蚂蚁集团、雄安、Filecoin
1. 俄罗斯央行:建议非专业投资者1年加密投资上限为60万卢布;
2. 李启威:LTC正集成隐私增强功能 明年将升级到主网
3. 蚂蚁集团与杭州市政府签署战略合作 加快区块链等数字技术创新;
4. 工信部:加快区块链等技术在工业互联网+安全生产领域创新;
5. 雄安小规模测试数字人民币 星巴克等暂未接入;
6. Filecoin社区提议上线后立即释放25%的存储矿工区块奖励;
7. 四川成都发布社区发展治理促进条例 运用区块链等技术促进社区智慧治理;
8. 波卡建议各节点升级至最新版本为下次升级做准备;
9. Filecoin在过去2天中全网有效算力增速放缓。[2020/10/14]
由此产生的拓扑结构保证了中继在每次信息跃迁中至少将消息向其预期目的地移近一步。这种技术使消息能够在任意两个节点之间路由,即使这两个节点之间不保持直接连接。传递消息所需的跃迁数上限是节点总数的对数,这样即便在一个极其庞大的网络中,也能确保任意两个节点始终能够相互联系。
2.2块和存储
Swarm中的标准存储单元称为块。块最多由4千字节的数据组成,并且附有一个地址。由于块的地址与节点的地址来自同一地址空间,因此可以计算它们的接近度。Swarm的存储方案声明每个块都由节点存储,其地址接近块本身的地址。
为了方便数据的保密性,块可以在填充到4千字节后进行加密,使得没有密钥的人无法将其与其它随机数据进行区分。即使对于未加密的块,节点运营者也无法轻易确定每个块来自于哪些内容。由于Swarm节点无法自己选择存储、加密哪些数据块,这种来源的模糊性以及元数据的无法泄露都为它们提供了有效的保护,使它们免于承担与其所存储内容相关的责任。
金色午报 | 9月29日午间重要动态一览:7:00-12:00关键词:北京金管局、PlusToken、ENM、Compound
1.MakerDAO“黑色星期四”相关诉讼正式提交仲裁。
2.比特币初创钱包公司Purse宣布将继续运营。
3.yearn.finance创始人新推出的ENM项目遭遇Flash贷款攻击。
4.Compound发起治理提案025计划支持UNI代币。
5.韩国银行业巨头Nonghyup启动区块链电子钱包。
6.库币安全事件中的莱特币正在被拆分和汇集。
7.修改Yam协议关键参数提案获链外治理批准 将继续提交链上治理以部署更新。
8.工信部:加快应用落地步伐大力发展“工业互联网平台+区块链”。
9.PlusToken案一审判处16名被告人两年至十一年不等有期徒刑。
10.北京金管局:积极探索央行法定数字货币在北数所数据交易支付结算中的应用。[2020/9/29]
为了将块插入到Swarm中,节点通过同步推送协议将区块进行转送,直到到达它所属的邻域。然后,块的存储确认函将沿着相同的路径被传回。想要检索一个块,只需使用检索协议,将具有块地址的请求路由到相关邻域。如果途中的任何节点在其本地存有相应的块,则会将其以响应的形式发回。
节点们使用同步回送协议持续同步其块存储。这保证了每个邻域都冗余地存储属于其邻域的全部块。这种冗余增加了数据传输的弹性,在某邻域中的一些节点无法访问的情况下也能维持块的可用性。同步协议还确保邻域的存储内容在节点离线和新节点加入网络时能够保持一致。
2.3转发、隐私和缓存
在Swarm中,消息的路由通过将其递归地转发到更接近其目的地的位置,然后沿着相同的路由传回一个响应来实现。此路由算法具备两个重要属性:
金色晨讯 | 3月6日隔夜重要动态一览:21:00-7:00关键词:世界经济论坛、bZx、V神、Tether
1. 云南省省长:推动区块链等信息技术与实体经济深度融合。
2. 世界经济论坛正在制定区块链行为准则。
3. 巴西教育部提议在区块链上颁发文凭。
4. 农业农村部副部长:疫情数据服务平台要强化区块链等的应用。
5. 因利率上升,bZx中锁定的ETH在两天内增加41.7%。
6. V神:无论有没有区块链,数字化都不可避免。
7. Tether授权增发6000万枚USDT。
8. BTC现报9063美元,近24小时上涨3.48%,市值为1653.87亿美元。[2020/3/6]
?提出请求的人是模糊的。
?随着需求的增加自动扩展。
发起请求的节点发送的消息,与仅转发请求的节点发送的消息,从任何层面来看都相同。这种模糊性使得请求的发起人能够确保他们的隐私不受侵犯,从而促进无需许可的内容发布和私密浏览。
由于参与路由检索请求的节点也许会选择存储由它们所转发出去的块,因此便要启用可自动扩展式分发系统。下面讨论的带宽激励机制为这种投机缓存提供了经济动力。
2.4Swarm记帐协议
Swarm记账协议确保节点运营者在对消息进行路由时会去协作,同时保护网络免于胡乱使用带宽。
当节点转发请求和响应时,它们会跟踪它们与每个节点之间的相对带宽消耗。在一定限度内,节点间以服务换服务。然而,一旦达到限度外,负债方既可以选择等待,直到其债务随着时间的推移被摊销,或者也可以通过发送支票来进行支付,这些支票可在区块链上兑现为BZZ。
这个协议能够确保那些下载或上传少量内容的人免费使用Swarm,还有那些愿意等待的人,在与各节点进行互惠服务直到获得足够的信用后,也可以免费使用Swarm。与此同时,当上传或下载更大的内容量时,为那些希望付费的人提供了一种更迅捷的体验。
金色午报 | 1月10日午间重要动态一览:7:00-12:00关键词:央行数字货币、吴忌寒、以太坊开发者Virgil、DApp
1. 央行:基本完成法定数字货币顶层设计、标准制定、功能研发、联调测试等工作。
2. 河北省政协常委:积极布局区块链技术在实体产业中的扎根落地。
3. 学习时报:区块链最重要的还是在运营。
4. 山东自贸试验区济南片区发出三千余张区块链营业执照。
5. 甘肃区块链信任基础设施平台启动上线。
6. 吴忌寒卸任比特大陆全资子公司“创客云”监事一职。
7. 以太坊开发者Virgil Griffith已保释出狱。
8. 总计不超过461个钱包持有ETH、LTC、ADA、Tether中的至少40%。
9. 以太坊、波场和EOS 2019年上线Dapp共占98%的交易总额。[2020/1/10]
在帮助每个节点转发消息时,节点存在经济动机,因为每个成功地将请求路由到更靠近目的地的节点,在该请求成功被送达时都可以获得BZZ。如果该节点本身没有存储数据,那么它只需支付少量的费用就可以从更近的节点请求数据块。通过这样的交易,节点在处理请求时可以获得一点利润。这意味着节点存在对块进行缓存的动机,因为在从较近的节点购入一次块之后,对同一块的任何后续请求都将获得纯利润。
2.5容量不足和垃圾收集
随着Swarm中新内容的添加,每个节点的有限存储容量迟早会被耗尽。此时,节点需要一个策略来决定应该删除哪些块,以便为新的块让路。
每个Swarm节点的本地存储内置两个子系统,即“储备”和“缓存”。
“储备”是一个固定大小的存储空间,专门用于存储属于节点邻域的块。一个块是否保留在“储备”内,取决于它所附的“邮戳”。区块链上的合约允许通过BZZ购买“邮批”。“批”的所有者有权发行数量有限的邮戳。然后,这些邮戳充当某种信托标志,向用户指明在Swarm中保存某相关内容的具体价值。通过使用这个值的大小来确定哪些在“储备”中的块要被优先删除,这样一来存储者的节点便能最大限度地提高DISC的效用。每个邮戳的价值会随着时间的推移而减少,就好像储存租金是定期从“批”的余额中扣除的一样;一旦邮戳的价值不足,相关的块就会被逐出“储备”并置入“缓存”。
“缓存”的作用是保留由于“批”值不足或距离节点地址太远而不受“储备”保护的块。当容量达到限度,缓存就会被定期修剪,最长时间未被请求的块将被删除。块的受欢迎程度可以通过最后一次收到请求的时间来预测,更多SWAP收入的块将优先得到保留。与投机缓存相结合,这种垃圾收集策略使运营者从带宽激励中获得的利润最大化,而在网络层面上,实现了受欢迎内容的自动扩展。
2.6块类型
在上面我们将块定义为DISC中数据的标准单位。Swarm中存在两种基本的块类型:内容寻址块和单一所有者块。
内容寻址块的地址基于其数据的哈希摘要。使用哈希作为块的地址可以验证块数据的完整性。Swarm在块数据的小部分上使用基于默克尔树的?BMT哈希算法。
单一所有者块的地址通过所有者地址和一个identifier进行哈希计算而得。单一所有者块数据的完整性由所有者的加密签名来保证,该签名证明任意块的数据与identifier之间的关联。换句话说,每个identity都拥有Swarm地址空间的一部分,他们可以在其中自由地将内容分配给一个地址。
3SwarmAPI的功能
除了块,Swarm还公开了用于应对实现更高等级概念的API,例如文件、具有各种元数据的文件的分层集合,甚至是inter-node消息传递等。这些API试图镜像那些已经在web上使用的API。更新颖的构想和数据结构可以绘制在这些更高的层级之上,从而为希望从DISC提供的隐私和去中心化的核心产品中获益的所有人带来丰富多样的可能性。
3.1文件和集合
大于单个块中允许的4千字节的数据会被拆分为多个块。一组同属的块由一个Swarm?哈希树表示,该哈希树对文件在上传过程中分割成块的方式进行编码。这棵树由一组叶节点块组成,包含数据本身,由一层或几层中间块引用,每个中间块包含对其子块的引用。
然后,整个文件的内容地址由根块的哈希摘要确定,即横跨整个文件的哈希树的默克尔根。这样,文件的地址就变成了它的校验和,从而可以验证内容的完整性。将文件表示为块的平衡默克尔树,还提供了对文件的高效随机访问,结果上可以高效地进行范围查询。
Swarm使用“清单”来表示集合。清单编码一个通用的字符串引用映射,允许它对目录树、键值存储或路由表进行模型构建。这些分别使Swarm能够实现文件系统,充当数据库,甚至为网站和dapp提供虚拟主机。
如果我们将URL的host部分解释为对清单的引用,那么清单提供基于URL的寻址,URL路径用作在由清单表示的映射中进行查找的键,只被用于抵达文件引用。
清单以紧凑默克尔前缀树的形式对它们所表示的映射进行编码,块将前缀树的节点序列化。当查找路径时,我们只需要沿着我们遍历的分支的节点相应的块进行检索。这样便可以确保高效查找文件/记录,其延迟和带宽为集合大小的对数。
文件中哈希树中间块中的子节点引用,和集合中清单前缀树节点,在位置上与BMT哈希段是对齐的。结果上,Swarm支持紧凑证明特定数据段是在位于给定URL的给定偏移量处的文件的一部分,这是可公开证明的数据库索引和去信任化聚合的基础。
3.2跟踪更新:feeds和域解析
feed是一种允许可变资源显示的单一所有者块示例。feed能够表示可变资源的版本化修订、对主题的顺序更新或一方在通信信道中发布的连续消息。
feed的工作方式是将单一所有者块的identifier定义为从主题和索引派生而来。当发布者和内容使用者就索引的更新方式和更新时间达成一致时,就可以构造和查找对该feed更新的特定引用。
类似于DNS将域解析为主机服务器的IP地址,Swarm通过使用以太坊域名解析服务ENS——区块链上的一组智能合约,将其解析为引用以支持人类可读的域名。
每当web应用程序或其所代表的网站由于更新而获得新的Swarm引用时,就可以对在ENS中注册的引用进行更新。或者,当域名引用feed时,用户可以受益于人类可读的域名,同时也可以更新其内容,而无需在每次进行更改时与区块链交互并支付相关交易成本。
3.3消息传递
PSS是Swarm中的一种直接节点间消息传递协议。它是通过加密目标收件人的消息,并在内容寻址块中用主题将其包装来实现的。由于块的创建方式令其内容地址落在接收者的邻域中,所以传递自然由同步推送协议来处理。
此外,对于任何第三方来说,消息都无法与随机加密的块进行区分,因此它也被称为**“特洛伊木马”块**。一个期望接收PSS消息的节点将尝试解密和打开到达其邻域的所有块。在成功地将特洛伊木马块解密和解包为合法收件人之后,客户端节点可以将消息明文发送给使用PSSAPI订阅该主题的应用程序。
PSS还提供异步传递,因为块会持续存在并最终同步到所有邻域节点,即使这些节点在之后才上线。
由于PSS允许用户从迄今为止未知的个体处接收消息,因此它是一种理想的通信原语,用于向公共个体发送匿名消息,或通过feeds来设置安全通信信道来向联系人发起信息流。由于PSS不需要收件人执行任何操作,因此它可以作为推送通知的推荐原语。
3.4钉住和恢复
DISC最终会忘记很少被访问和未被付费的内容。通过对块进行“钉住”这一操作,节点可以确保它们在本地保留特定内容。同时,这种“在本地保存被钉住的内容的人”可以参与内容的被动或主动恢复,以造福所有用户。
被动恢复涉及一个恢复协议,当检索失败时,通过使用PSS发送恢复请求,以通知pinner丢失的块。Pinners会听取恢复请求,并通过重新上传丢失的块进行响应,下载者便可以在重试时找到这些丢失的块。此应对恢复功能还允许直接从发布者节点对原始内容做种,类似于某些现有文件共享解决方中的主要操作模式。
相反,Swarm也提供了主动恢复或数据维护,因此当Pinner主动检查网络中内容的可用性并发现某些块丢失时,就可以主动重新部署这些丢失的块。
4结论
Swarm作为一个点对点网络,其所有节点共同提供去中心化的存储和通信服务。无需许可且隐私的Swarm满足了言论自由、数据主权和网络开放市场的需求,同时通过完整性保护、抗审查和防攻击来确保其安全。本文介绍了Bee1.0的初始主网上线中所包含的功能。
这是个里程碑,而旅程才刚刚开始:加入Swarm,一起完成赋予数字自由的使命。
标签:WARSwarmARM区块链Lord of Dragons Reward Tokenswarm币未来前景BabyDogeARMY区块链挣钱是真的假的
尊敬的LOEx用户:应DPN项目方要求,项目方为了感谢DPN所有的持仓者,以及欢迎Binance社群参与者的加入.
1900/1/1 0:00:001.关于首发项目delta.theta(DLTA)空投结果Gate.ioStartup首发项目delta.theta代币DLTA于2021年06月16日18:00开始下单.
1900/1/1 0:00:00本期投票上币活动已圆满结束,感谢广大用户的参与和支持。Gate.io投票上币活动将持续带来更多有潜力的优质项目,敬请期待.
1900/1/1 0:00:00亲爱的用户:为回馈新老用户长期的关注与支持,HomiExUSDT高年化30%挖矿基金,今日开启28天定期产品认购,保本保息无风险,到期系统自动发放收益本金至HomiEx钱包账户.
1900/1/1 0:00:002021年金融投资的发展方向,如何实现资金更加有效的融通、支付和信息更加广泛的交流,作为资产投资管理的我们来说是一个巨大的考验,区块链技术浪潮下,金融领域的突破是划时代性的.
1900/1/1 0:00:00据Cointelegraph消息,总部位于纽约的非营利组织Charity:water,在其比特币水信托基金启动的三周内,已经收到了超过100万美元的BTC捐款.
1900/1/1 0:00:00