建设中

建设中:我们正在 MainNet 上线前搭建本网站,细节会有变动。

本网站仍在建设中

ZooBC 在公开中建设。你在这里看到的内容是最新且真实的,但并不完整:请把它看作我们当前的状态,而不是最终定论。

从现在到 MainNet 上线,措辞、结构、图片和数据都会有变动。部分页面仍是占位内容。

更广泛的 ZooBC 生态将分阶段到来。随着 MainNet 临近,钱包、区块浏览器和社区渠道会陆续上线,本网站也会随之成长。

如果有内容读起来不对、看起来有问题或可能造成误导,请告诉我们。现在的反馈,比日后精致的发布对我们更有价值。

尖锐问题

ZOOBC / 直言作答

大家真正会问的问题。

大家真正会抛给这个项目的问题,在这里直截了当地回答。每个回答都由对其负责的人以第一人称撰写,每个问题都有自己的链接,所以如果有人问你其中某个问题,直接把对应的回答发给他。

问题 01 / 12

已经有这么多区块链,失败的也这么多,为什么今天还要再做一条?意义何在?

我做区块链,并不是因为我热爱区块链,而是因为其他一切正在发生的事情。每一年,你的网络生活都有更多部分要经过一个中间人。别人的服务器替你投递邮件、托管网站、存储文件、转发消息、决定你能看到什么,而且只要他们愿意,就可以随时修改规则、读取流量,或者把门关上。我们从未为此投过票,它只是一点一点累积起来,一项又一项便利的服务叠加,直到我们对自己的选择、信息和行动的控制权,悄无声息地落到了少数几家公司手里。ZooBC 的意义,就是把中间人一个功能一个功能地拿掉:邮件、网站托管、存储、网络,凡是今天需要信任某个中介的事情,都重建成任何单一方都无法控制的东西。区块链只不过是我们手中唯一的工具,能够在不指定新中间人的前提下,让彼此陌生的人协同运作。

这件事今天听起来让人厌倦,是因为区块链被它的第一个应用劫持了。人们一听到这个词,就想到币、K 线、拉高出货,因为十年来最喧闹的项目都是在找故事讲的代币。这也是为什么那么多项目失败了:它们是伪装成基础设施的投资品,最终也作为投资品死去。剥掉这片墓地上的品牌外衣,你会发现几百个代币代号,真正的设计却屈指可数,其中大多数是同几套代码库的分叉,继承的是 2014 年做出的决定。一千个复制品的失败,并不能告诉你设计空间中那些从未有人尝试过的部分会怎样。ZooBC 不是这些复制品之一。它用 C++ 从零编写,采用一种不同的共识机制,即参与证明:它把区块奖励和手续费分配给众多作出贡献的节点,而不是赢家通吃;整个协议中没有任何罚没;还有一个节点准入队列,让接管网络成为一种缓慢且可见的攻击,而不是快速且隐蔽的攻击。这些决定位于技术栈的最底层,任何分叉都触及不到。它还是一个承载真正去中心化应用的平台,也就是在网络上实际运行的程序,而不是虚拟机里的智能合约。目前TestNet 钱包中已有的应用和游戏规模还不大,但它们存在的意义正是为了说明这一点:这是一台计算机,而不是一枚币。

如果你想看看中心化正走向何方,就看看 AI。如今人人依赖的模型,用来获取答案、做出决定,有时甚至左右人生方向,却掌握在少数几家公司手中,而且这种依赖每天都在加深。所以 ZooBC 路线图上最早的重大目标之一就是去中心化 AI:一个点对点网络,每个节点运行一个小模型,节点之间像突触一样协作,形成一个分布在不归任何一方所有的众多机器上的混合专家系统,给出不受任何单一方操控的答案。雄心勃勃?是的。它会全部成功吗?我不知道,而且这个行业里任何声称自己知道的人,我都不信任。这正是 TestNet 存在的意义。但方向并不取决于任何单个功能能否落地:只要网络生活还在持续走向中心化,构建替代方案就始终有意义。这就是为什么无论市场今年如何看待区块链,这个项目都会继续下去。

问题 02 / 12

“去中心化一切”从 2015 年就开始被许诺,可从来没有什么能胜过中心化服务的便利。以太坊、IPFS 以及十年来的其他项目都没能做到,你凭什么能成功?

两个原因,一个关乎人,一个关乎技术。

关乎人的原因:这个承诺从未被真正尝试过,因为几乎每个从区块链这扇门走进来的人,都掉进了加密货币里,然后就止步于此。交易本该是入口,结果却成了终点。十年的人才、资金和注意力都投入到了倒腾代币上,这掩盖了这项技术能做的其他一切。讽刺的是,聚光灯转向 AI,恰恰让现在成为合适的时机:十年来第一次,一个去中心化平台可以凭它能做什么来评判,而不是凭它的 K 线图长什么样。

关乎技术的原因:区块链从来就不是为了成为平台而设计的。它的发明是为了让比特币得以存在,一种无法靠上门关掉某台服务器就能叫停的电子货币。在这个范围内,它正确地把全部安全性都锚定在自身货币的价值上。此后构建的几乎所有东西都继承了这种耦合。试试用现有的链(包括以太坊)让一个国家的医院共享病历,或者为一家酒店集团运营积分计划。每个节点、每个账户都必须配备用于质押的币,或者必须消耗电力,或者必须投入存储,而这些资源与你要完成的工作毫无关系。从来没有人构建过一条安全性与其币值脱钩的公共区块链:一条仅仅因为参与者维护它,就能保持安全、可靠和正常运行的链。这就是 ZooBC,也正是平台与一个带 API 的代币之间的区别。

问题 03 / 12

参与证明难道不就是换了个新名字、多了几道步骤的权益证明吗?

不是,而且这个区别正是关键所在。权益证明优先照顾持有资金最多的人:富人做决定,网络跟着走。参与证明维护一份节点注册表,记录那些在场、就绪并正在干活的节点,而身处这个工作群体本身就是权威。行为不端的节点会失去参与分数,被挤出这个圈子,而新节点随时都可以加入。决定进入注册表排队顺序的只是一个度量标准;在公共链上,我们使用链自身的币,因为这是人们认可的度量。但这个机制并不依赖于它:如果这是一个国家的区块链,由每个城市或地区运行节点来服务本地居民,那么居民人数就可以取而代之,成为决定准入顺序的度量。用权益证明试试看能不能做到。

这里还有一个时机问题,我并不是要指责谁:先驱者没能造出完美的东西,因为没有人能在第一次尝试时就做到。世界上第一台汽车发动机无法与今天的发动机相比,因为经验需要时间积累。权益证明是一台早期的发动机。参与证明是多年之后才设计的,那时我们已经看着各条链运行、停滞、遭受攻击整整十年,它正是基于那十年教给我们的一切构建而成。

问题 04 / 12

如果不是 EVM 智能合约,那有什么能阻止一个恶意的“真实应用”造成真正的损害?

你把问题弄反了,因为盲目信任在另一边。每当有人在以太坊上使用 ERC-20 代币,无论是 USDT、USDC 还是其他任何代币,他们都在信任某人部署的一个智能合约,而这个合约可能包含他们完全不知道的函数,包括可以清空他们账户的函数。理论上,你应该在接触每个合约之前先审计它。但在现实中,一天的生活就会触及许多应用:医生给你开具健康证明,健身房凭这份证明让你训练,健身房的发票再转到你的会计那里。在 EVM 链上,这其中的每一步都要经过一个你被迫盲目信任的不同合约。靠审计度过日常生活是不可能的。

ZooBC 把这一切反了过来。大量功能直接内置在节点代码本身之中。当有人在 ZooBC 上创建新代币时,他们并不是部署自己的合约让别人去审计,而是使用与其他所有代币相同的、内置的链级代码。每个用任何代币进行交易的人都能得到一个硬性保证:这个代币的运作方式中没有秘密后门,因为根本不存在可以藏后门的单个代币专属代码。

对于定制应用,到 MainNet 时将有两种部署方式。一种是 WebAssembly:节点运行一个小型 WebAssembly 引擎,用户部署可供他人交互的代码,甚至应用的用户界面也可以部署在 ZooBC 本身之上。另一种面向对流程有保密要求的组织:将一台物理机器接入一部分节点,私下完成处理和数据库工作,对输入和输出进行加密,并让共识只验证多数节点是否产生了相同的加密结果。一家拥有一百个分支机构的银行,就能得到一条由共识验证的内部区块链,而验证者对其中内容一无所知。

问题 05 / 12

靠小模型在 P2P 网络上协作实现去中心化 AI,从物理上听起来就不太可能:延迟、带宽、模型质量都是问题。这难道不只是写进路线图的一个噱头?

一部分 ZooBC 节点在处理 AI 模型上能走多远,现在还没有人知道,包括我在内,我也不会假装知道。但便利从来不是唯一的维度,过去不是,现在也不是。向今天某个大型中心化模型请求帮助,哪怕事情完全正当,你也可能撞上一堵限制之墙,这些限制没有任何用户选择过,是在你无从触及的地方决定的。人们确实需要民主的答案,由一个不受任何单一方操控的网络给出,哪怕来得慢一些。再加上人们会构建在某一领域高度专精的小模型,而专家在自己擅长的领域里往往比庞大的通才更快。第一个版本会在速度和完善程度上胜过数据中心吗?当然不会。任何重要事物的第一个版本也都做不到。如果我们不从某个地方起步,就永远到不了终点,而一个每个节点都运行小模型、节点之间像同一个大脑中的突触那样协作的点对点网络,是一个值得为之出发的终点。

问题 06 / 12

你说这与币无关,却在创世时出售币。这和你批评的那些项目有什么不同?

因为这个项目不依赖于币,币也不是产品。如果明天有一个咖啡联盟来找我,想在 ZooBC 上追踪他们的供应链,从农民一直到喝下那杯咖啡的顾客,我不会向他们要币:整个项目都可以在公共链上实现,完全不需要任何币。如果明天有人资助了全部开发,而一枚币都没有被购买,实现中的任何一行代码都不会改变。创世发售之所以存在,是因为构建这一切需要资金;而且坦白说,也因为人们会更投入于自己觉得利益相关的事情。

区别在于币在此之后的用途。在比特币中,币就是最终用途:链上除了转移它之外无事可做。在我批评的那些项目中,币是退场的出口。而在 ZooBC 中,币是一种实用工具,是你用来访问链上服务的东西,而这些服务将由数百个、最终数千个应用来运行。它是燃料,而不是目的地。

问题 07 / 12

MainNet 定在 2027 年,而你们几年前就开始了。凭什么让人相信你们给出的时间?

你不必相信任何东西,而这恰恰就是答案。TestNet 现已上线。你可以使用钱包、运行节点、体验各种应用、查看核心节点周边的一切的代码,并且像圣多马那样,亲手摸一摸。这不是一份带着倒计时的白皮书,而是一个公开运行的系统。从现在到 MainNet,剩下的工作是完善,而不是发明:社区不断敲打它,我们修复出问题的地方,等它稳住了,MainNet 在很大程度上只是改个名字。TestNet 的样子就是 MainNet 的样子,只是去掉主链不该允许的东西,比如从水龙头里流出的毫无价值的币。这就是为什么日期是一个计划,而不是一句祈祷。

问题 08 / 12

一个还没有用户的网络,为什么会有人为它运行节点?

两个原因,一个关于理解,一个关于位置。

运行节点是理解这项技术究竟是什么的最深入方式。你不再重复别人的解释,而是开始给出自己的解释,因为你亲手操作过它。这种理解是进入社区的大门,而拥有这种理解的人,日后也会成为别人学习的对象。

关于位置:在 MainNet 上线前的几个月里,在 TestNet 上注册并运行的节点,将获得从创世区块起就进入 MainNet 注册表的资格。而且在 ZooBC 中,每个区块的铸币奖励不会像比特币那样支付给某一个幸运的矿工:它会在参与节点之间按贡献加权分配,交易手续费也是如此。每个帮助运行这条链的人从第一个区块开始就能获得回报,可以在链内使用,也可以卖给他人。在这里,早并不意味着早买,而是意味着早干活。具体的资格规则和截止日期公布在路线图页面上,那里也是唯一维护这些信息的地方。

问题 09 / 12

代码在 MainNet 上线之前都是闭源的。“相信我”恰恰就是你声称反对的中间人模式。这怎么能让人接受?

如果人们尊重许可证,ZooBC 从第一天起就会是开源的,我是认真的:这个项目的理念要求如此,而且这一直是我们的本意。问题不在于理念,而在于经验。我亲眼见过过早开放的代码会遭遇什么:它被复制粘贴,许可证被剥掉,而这样做的人不必承担任何后果,因为作者既没有地位也没有资源去追究他们。一条年轻的链如果在第一天就公开核心代码,就等于把自己的技术拱手交给任何想凭借更多资金和更多营销超越它的人。所以这个顺序是经过深思熟虑的:先上线 MainNet,让 ZooBC 确立自己作为这条链的地位;然后基金会积累起足以真正捍卫许可证、对抗无视许可证者的资源;然后再开放代码。这是推迟,不是秘密,时间安排见路线图.

在此期间,也没有人要求你“相信我”。TestNet 是公开的,你可以运行节点,核心节点周边的一切现在就可以阅读。对核心代码的独立审计是通往 MainNet 之路的一部分。如果你的个人原则是只运行自己能读到最后一行的软件,那是我尊重的原则:请等一等。代码开放时,这条链依然会在这里,我宁愿要一个耐心的用户,也不要一个盲目的用户。我与这个项目要消除的那些中间人之间的区别很简单:对他们来说,封闭就是商业模式,在设计上就是永久的。而我的封闭是一种保护,有到期日,并且提前公布。

问题 10 / 12

这条链是一个人写的。如果你出了什么事,它会怎样?

这个项目没有我也会继续下去,而我是有意这样构建的,因为在任何人提出这个问题之前,我已经问过自己。我不是源代码的唯一持有者,到 MainNet 启动时,ZooBC 基金会将有七名成员,没有任何法律或技术上的锁,能阻止他们中的任何一人在其他成员(包括我)出事时继续推进 ZooBC。此外还有一个名副其实的“死人开关”:如果我沉默足够长的时间,继续推进所需的一切,包括代码、访问权限和计划,都会自动交给下一位接替者,并最终交给整个基金会。

我要说清楚为什么我如此认真地对待这件事。ZooBC 是我毕生的事业。我做这件事,是为了给人类留下一些东西,一些能帮助人类成长而不被操纵的东西。一项会随作者一起消亡的工作,本就不是为长久而建的。所以,没有人比我更有动力确保这里的一切既不依赖于我是否活着,也不依赖于任何其他单个人。而一旦代码开源,就连基金会也不再是依赖:从那时起,即使我们所有人都消失了,网络及其代码也会掌握在每一个运行它的人手中。一辆公共汽车可以撞倒一个人。而这个架构的全部意义,就在于它撞不倒这条链。

问题 11 / 12

谁在为此出资?他们能得到什么?

幕后没有基金,没有占据董事会席位的早期投资人,也没有等着砸到你头上的隐藏分配。创世发售完全公开:代币经济页面清楚列出了在售的内容、价格与解锁条款,以及募集资金的用途。这些资金由 ZooBC 基金会掌管,并特意与我自己的公司分开,让网络的钱和我的钱永远不会放进同一个口袋。买家按照公布的条款在创世时获得币,所有人适用相同的条款。如果有人在资助这个项目并因此获得回报,你可以在同一个地方读到他们获得了什么、多少,以及在什么条件下。

问题 12 / 12

如果既不是工作量证明也不是权益证明,那有什么能阻止有人运行一千个节点,拿走大部分奖励?

没有什么能阻止你创建一千个节点。真正阻止你的是:它们只会是一千个旁观者。在 ZooBC 中,不在注册表里的节点不会生成区块,也不会获得奖励:它只参与点对点的消息传播(gossip),像其他所有节点一样转发消息。奖励流向注册表,而注册表的大门前有一个队列。想进入的节点必须排队等候,而且等待时间并不固定:注册表越小,排队时间越长。所以在网络早期,恰恰是淹没它成本最低的时候,也恰恰是淹没它最慢的时候。

这与本页第一个回答背后的设计选择相同:接管 ZooBC 并不是在纸面上被设计成不可能,而是被设计得缓慢且可见,而一场缓慢且可见的攻击,整个网络都能预见到,并能在它得手之前作出应对。你的一千个节点不会获得奖励;它们会在一条公开的队伍里站上很长时间,向所有人清楚表明你想做什么。完整的机制在安全页面上有详细解释,还附有一个工具,让你亲自模拟这种攻击,看看它究竟能走多远。

继续检验这个想法

还有更刁钻的问题?

很好。把它带到 ZooBC 测试者论坛或 Telegram 群组。如果它足够尖锐,就能在本页占得一席之地。