写在前面

如果你还不了解零网,请先阅读官方文档和我翻译的零网事实

写本文的目的是阐述零网的原理,让人认识零网的价值。

正文

零网基于BitTorrent协议,即使用Python实现了Bt协议。因此零网可以使用BT tracker获取节点,除此之外还可以用PeX(Peer Exchange)。但由于作者能力问题,DHT尚未实现,而是写了Tracker Exchange(跟踪器交换)功能,可以视为弱化版的DHT。

相比IPFS、Dat[1],ZeroNet着重于应用层。比如用户可以在站点发表评论,站点可以构建数据库等应用层功能。IPFS和Dat则是一种分布式文件系统,所以有人提议要砍掉零网部分功能,然后把IPFS/Dat作为底层协议(最后被拒绝了,作者比较懒)。

也可以说零网对站点作过优化,而非单单用于分享文件,因此对普通用户来说更有趣一些。

为何站点访问很慢

访问站点相当于在BT网络上下载文件,慢也正常。

但零网站点的做种相对稳定,有很多人用服务器做种,想删除文件停止做种也不容易。

站点上的评论

每个用户的评论都存储在一个json文件里,然后用用户的私钥签名文件,其他节点收到文件就用用户公钥解密,取出Hash验证文件。

这和站点的发布是类似的,用户文件就相当于嵌在站点里的“小站点”。

迁移站点到零网

零网的网站基本是纯前端的,但零网也提供了API,可以把json导入数据库,然后调用API查询数据库。这些就是有限的后端功能。

因此导入静态站点是很容易的。至于一些功能复杂的站点,导入起来就很麻烦了。

一些想法

零网一直是作者一个人维护,代码量也很大,大概是因为IPFS出得晚,就出现了三个项目互相竞争的现象,感觉是一种浪费。

搜索引擎

对于一个网络,搜索引擎还是很重要的。但零网还是没有一个能用的,我就写了一个,虽然现在在重构…

https://github.com/blurHY/HorizonSpider


  1. IPFS和Dat也是一种分布式网络 ↩︎