比特兑那个平台交易|科普/Filecoin系统之“节点系统”——深入了解FIL
这里是IPFS资讯快车,想进filecoin技术交流群的以及与圈内大佬深入沟通,或者了解更多FIL资讯,深入了解FIL的(+V:FIL101),今天跟大家分享的是“科普/Filecoin系统之“节点系统”——深入了解FIL”
想要深入理解Filecoin的协议,分析其协议规范无疑是一种行而有效的方法。从本文开始,星际联盟将发布一系列文章,带领大家深入理解Filecoin协议。首先要说明的是,Filecoin节点间差别明显,并且并不是每个节点都需要运行所有系统。多数系统都只在某些用例子集中会用到。比如,“区块链”系统被用于公链同步,安全一致性,存储挖矿,和公链验证。多数Filcoin节点不需要公链而只需通过从最新的状态树获取内容来完成职能。
系统要求为了能容易地把功能分散到各个系统内,Filecoin协议假设了一组对所有系统可用的功能体。所有的系统都要用到以下所列的部分。
- 仓储
仓储是系统中数据在本地的存储仓库,主要包括以下几部分
- 本地IpldStore
一些数据结构(小型结构对象)的本地持久化存储,系统期望使用一个IpldStore进行初始化,想要在系统崩溃中也能持久存储的数据结构会被存储在IpldStore内。
- 用户配置项
用户可编辑的少量配置项,这些项应该对终端用户容易访问,查看和编辑。
- 本地安全KeyStore
用来生成和使用密码公私钥的设施,其“必须”对于Filecoin节点保密。系统“不应该”直接访问这些公私钥,而应该在一个提供加密、解密、签名、验检等功能的抽象层(比如KeyStore)之上进行访问。
- 本地FileStore
文件(大的字节数组)的持久化本地存储。系统期望使用一个FileStore进行初始化,在其内可存储大型文件。一些系统(如“市场”)可能需要存储和删除大量的小文件(1MB-10GB),而其它系统(如“存储挖矿”)可能需要存储和删除大量的的大文件(1GB-1TB)。
- 网络
多数系统都需要访问网络,以有能力连接它们在其它Filecoin节点中的对应部分。系统期望使用一个libp2p.Node进行初始化,在其上它们可以加载自己的协议。
- 时钟
“Filecoin节点”系统一些系统需要能够访问当前网络时间,有一些对网络误差有着较低的容忍度。系统期望用一个时钟初始化,时钟可以告知它们网络时间。有一些系统(如区块链)要求非常小的时钟误差和精确的时间。
- 节点类型
-
验证者节点
运行“区块链”系统,可以同步和验证公链,不能挖矿和出产区块。
-
客户端节点
运行“区块链”系统,市场和数据传输系统,可以同步和验证公链,不能挖矿和出产区块。
-
存储矿工节点
运行“区块链”、“存储市场”、“存储挖矿”系统。可以同步和验证公链。可以完成存储交易,可以密封存储的数据到扇区,可以获得存储一致性算力,可以挖矿和出产区块。
-
检索矿工节点
运行“市场”和“数据传输”系统。不需要公链,可以完成检索交易(检索提供方)。可以向客户端发送数据,并得到报酬。
-
重放节点
- 网络接口
??
Filecoin节点使用libp2p协议来发现、路由“端点”和广播消息等。Libp2p是一组与p2p网络栈相似的模块化协议。节点彼此间开启连接并在相同的连接上加载不同的协议或流。在初始的握手中,节点交换它们每个所支持的协议,所有的Filecoin相关协议都会在/fil/...协议标识下被加载。
下面列出了Filecoin所使用的libp2p协议:
-
Graphsync协议
-
Gossipsub协议
-
KademliaDHT协议
-
Bootstrap List协议
-
DNSDiscovery协议
-
HTTPDiscovery协议
-
Hello协议
- 时钟
??
Filecoin假定在系统中参与者之间存在着弱“时钟同步”。即,系统依赖那些能够访问全局已同步时钟的参与者。??? Filecoin依赖于“时钟”系统实现安全的“一致性”。具体来说就是,“时钟”对于支持某些验证规则来说是必需的,这些规则可防止区块产出者挖掘附带将来时间戳的区块,也防止其比协议允许的更频繁地运行“领导者选举”。
- KeyStore
KeyStore是一个基础性的抽象,在任何全节点内用于存储与给定的矿工地址和不同的worker相关联的公私钥对。“节点安全”大部分建立在保持这些公私钥对安全的基础之上。为了达到这个目标,Filecoin协议规范建议保持公私钥与任何指定的子系统间相分离,并使用独立的keystore来签名子系统的请求,且保持这些keys不被作为“冷存储”的一部分使用。
??? Filecoin存储矿工依赖于三个主要组件:
-
矿工地址:
在“算力一致性”子系统中通过函数registerMiner()分配给指定的存储矿工角色,对于指定的存储矿工,地址是一个拥有唯一性的标识符,矿工的算力和其它的key都会与之关联。
-
属主键值对
由矿工在注册和其公钥被关联到矿工地址前提供。区块奖励和其它的支付都会发送到这个属主地址。
-
worker键值对
矿工可选择和改变worker键值对,其公钥也被关联到矿工地址。用来对交易、签名进行签名等等。
因为矿工地址是唯一的,多个存储矿工角色就可以共享一个属主公钥或类似的worker公钥。
????通过上面的介绍,可以看出“Filecoin节点系统”主要负责链上数据交互、公钥钥维护、网络与时钟管理等基础功能。是Filecoin整体系统中非常重要的核心部分。
获取前十矿商矿机价格以及收益比,与我深入交流
- 免责声明
- 世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
- 风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
- 世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。