- 起因
- 技术人员的方法
- 从 IPFS 直接访问
- 更好的永久存储
- 感想
xLog,Crossbell 区块链#
最近偶然看到了一个很有意思的东西,叫xLog,大概试了试,这是在一条叫 Crossbell 的区块链上使用智能合约操作和存储元数据,并把实际数据存到 IPFS 上的项目。看了一眼还挺有意思,就在上面搭了一个自己的另一个博客,另外他们还使用这套方案写了一个类似 Twitter 的社交系统,也叫 Crossbell,非常的人性化,可以说是把 Web3 真正的带给了普通用户。至于怎么搭他们的项目成员写了篇教程,5 分钟就能搭好在Web3 的博客。
不过使用 xLog 那就不是技术人员的事了,而是让一个不怎么懂电脑的人来做的事情了。另外他们宣称数据是 “Permanently stored on the blockchain” 这一点我不太认同,要是说存到了 Web3 成为了其他人无法修改的数据,这倒是没什么问题,但是存到 IPFS 上只要没有被 Pin,就有可能在节点 GC 的过程中永远消失。另外我其实对区块链接触不多,不清楚能不能完整的同步他们的链,如果不能那就是私链了,那样元数据也不能永久保留了…… 所以我只能说这个平台是 Web3,可以保证不因为审查而 404,但是不能在时间的长河中保留信息。
技术人员的方法#
所以作为技术人员,我的博客当然直接上 IPFS 那更好啦,因为他们的平台毕竟可定制性不高,而且好多组件不知道有没有可替代性,比如以太坊 JSON-RPC,不过他们的服务好像是都开源了,只要这个链可以被同步,能搭属于自己的 RPC 那倒是问题不大。
直接用 IPFS 客户端直接上传是最原生的办法,但是我不喜欢在自己电脑上安一堆莫名其妙的软件,像我现在写博客都是直接在 Github 或者 Gitlab 上写好然后直接用之前提到的静态页面服务商一次性部署好。所以我也希望能有一个类似的服务商能帮我把我的博客上传到 IPFS 上。最后我找到的服务商就是4EVERLAND。它可以绑定 Git 仓库并监听变化,当有变化的时候就会自动部署到 IPFS 上,并且他们提供免费的 Gateway 来直接访问在 IPFS 上的内容,非常的不错。不过有个问题就是不知道什么原因,它的部署模板里面没有 Jekyll 的语句,然后前端还不能自定义…… 所以只能靠抓包的方式来修改成自己想要的部署语句。
从 IPFS 直接访问#
使用 4everland 部署完之后直接访问当然也很好,但是总感觉和其他服务商差不多,谁知道它读取网页到底是从自己服务器上还是 IPFS 网络上读取呢?所以我还想整个更好的方式从 IPFS 上读取,也能证明它确实在 IPFS 上了。
直接通过 Gateway 去访问我的博客当然也没问题,但是每次部署的时候 CID 是会变化的,那这样我想访问也不方便啊…… 后来我听说可以把 CID 用一种叫 dnslink 的方式记录到 DNS 里,这样就能通过固定又好记的方式来访问。不过那时候我不知道怎么访问 dnslink 记录的网站…… 而且每次部署 CID 会变,那部署完我还要更新我的 DNS 记录啊?后来我查了查原来还有一种叫 IPNS 的东西,看了一眼 4everland 的控制台,原来每个网站它也会生成一个固定的 IPNS,然后用 dnslink 可以指向 IPNS。那如何访问呢?IPFS 又没有一个 IP 地址,光 TXT 记录肯定不够的吧?后来我才知道原来要用 CNAME 解析到 Gateway 才能访问,设置之后每次访问 Gateway 就会自动解析在 TXT 记录里的 dnslink 了。这不比 xLog 自由度高?不过我这个没办法存评论数据,可能 xLog 的特色就是社交吧,毕竟他们的主项目 Crossbell 就是主打的社交。希望可以整一个单独的插件,专门用他们的网络来为我这种静态博客提供评论功能,也是一个不错的选择(毕竟 ETH 公链上的手续费太贵啦😂)。
更好的永久存储#
前面我说过,IPFS 只能防止篡改,但不是作为永久存储的方案,上公链当然是也一种永久存储的方案但是成本太高了我付不起。后来我了解到一种叫做 Arweave 的东西可以永久存储你的数据,不过这不是免费的,想存得要付 AR 币到链上才可以。还好 4EVERLAND 提供了一些免费上传到 AR 网络的额度,非常的不错,这样我以后每次上传我会把地址写到 Github 的 Releases 里面,进一步的提高我博客永久存储的可能性。
另外我还听说似乎还有一种叫做 ZeroNet 的东西也是通过分布式的方式存储数据,据群友所说也能在一定程度上永久存储。不过我试了试访问实在是太困难了😂,而且现在程序也不在维护了,所以也就放弃了。
感想#
Web3 真是发展的越来越好了,希望能有更多的人参与其中,一起创建不受管束的网络吧。(还有实现我 Forever 计划😝)
不过说来我也挺担心那个 Crossbell(就是 xLog 用的链)的项目,作为不受监管的平台只要知名度上来肯定会被滥用到死,希望他们能活得更长一些吧。