IPFS
一个内容可寻址、对等的超媒体分发协议。 IPFS网络中的节点形成分布式文件系统。
为什么要用IPFS?
“IPFS and the Blockchain are a perfect match! You can address large amounts of data with IPFS, and place the immutable, permanent IPFS links into a blockchain transaction. This timestamps and secures your content, without having to put the data on the chain itself.” — ipfs.io
我认为主要是把一些交易相关的附件存放在IPFS文件系统,只把附件的IPFS links(cryptographic hash)存放在区块链中,可以节省大量的区块链网络带宽。关于文件的安全性,一方面我们可以加密后存入IPFS,另一方面IPFS也可以实现文件分布式共享。
我们搭建IPFS节点时,会自动连接预设的远程节点,即数据内容默认是公开的。我们在进行企业级开发中,自然非常关注数据的保密性,控制访问权限。接下来,介绍如何搭建私有文件系统。
设置Bootstrap控制初识连接节点
IPFS启动时,会自动连接Config - Bootstrap属性中指定的节点列表。
我们将节点列表修改为私有节点即可。
修改方法:
编辑配置前,需要指定编辑器(本例指定vim),添加环境变量
export EDITOR=vim
修改节点列表
ipfs config edit
重启IPFS后生效。
过滤器
IPFS支持以过滤器方式限制访问,格式为CIDR(无类别域间路由)
比如添加“/ip4/192.168.0.0/ipcidr/16”会屏蔽192.168网段访问。
ipfs swarm filters add /ip4/192.168.0.0/ipcidr/
参考资料:
IPFS:https://ipfs.io/