Language

Choose a language

原理 · Explainer

工作量证明 vs 真正派得上用场的工作量证明:安全性分毫不差,这回电真的干了活

工作量证明 vs 真正派得上用场的工作量证明:安全性分毫不差,这回电真的干了活

工作量证明背了个名声:烧电,只为证明电被烧掉了。保护一条经典链的哈希运算算出来的是一个没人想要的数字,它唯一的用处就是「曾经很贵」。这是一幅漫画式的刻画,但对基于哈希的挖矿来说,基本属实。

于是很多人顺势认为,浪费本身是承重结构:链之所以安全,正因为这些工作没用。并非如此。只要看清工作量证明真正需要做到什么,就会发现「没用」只是某一种实现的属性,而不是安全性论证的要求。

工作量证明究竟是干什么用的

把一条工作量证明链剥到只剩机制,任务只有一个:让区块造起来很贵,同时让这笔开销对其他所有人来说都很容易核查。 这两条加在一起,才挡住了历史被改写:改写链意味着把所有开销重做一遍,而任何人都能验证它并没有被重做。整个安全性论证就到此为止——它压根没提那件贵事本身必须是什么。

经典工作量证明用一种方式满足了它:

  • 工作: 拿 nonce 反复哈希去撞一个目标值,直到撞过去为止。
  • 产出: 一个没人需要的数字。
  • 证明: 能量确实被花掉了。

产出没用,并不是安全性的来源。它只是「挑了哈希来当那件贵事」之后的副作用

真正派得上用场的工作量证明:把开销瞄准真实的事

TensorCash 保留了完全相同的安全结构,只换掉这笔开销花在哪儿。矿工跑的是一次真实的前向传播(就是回答一条提示词的那次模型推理),而「这次前向传播确实发生过」的证明,就是延长链的东西。

  • 工作: 一次真实的前向传播,跑在一条真实的提示词上。
  • 产出: 一份有人真的问过的答案。
  • 证明: 模型确实跑过。
经典工作量证明有用的工作量证明
工作拿 nonce 去撞目标值一次真实的前向传播,真实的提示词
产出一个没人需要的数字一份有人真的问过的答案
证明能量确实被花掉了模型确实跑过

同样的焦耳,只是瞄准了真实的东西。这份工作在成为区块之前就已经有用了:它服务了一次请求。够格进入共识,只是顺带的结果。

「可有用的工作不会削弱安全性吗?」

这是纯粹主义者那套反驳里最尖锐的一版,值得正面回答,而不是绕开。担心的是:一旦工作本身产生了价值,激励就被搅浑了,链靠的不再是工作本身,而是外部补贴。

但看看安全性究竟从哪儿来。一个区块之所以安全,是因为它造起来很贵验证起来很便宜,也因为伪造一份能通过验证的假货,比老老实实干活还要贵。这三条没有一条依赖于产出必须一文不值。前向传播算起来很贵;一份有效的证明检查起来很便宜;而最关键的是,你没法抄近路。

伪造很贵,验证很便宜

有用性之所以没有打开作弊的口子,靠的是一种不对称性——另一篇专文把它讲全了,这里说个大概:

验证一份证明很便宜。伪造一份能过检的证明很贵,比老老实实把活干了还贵。

这里的验证在设计上就是统计性的:验证者拿到记录下来的推理记录(transcript),对照声称跑过的那个模型逐项核对,看这些数字对得上的方式是不是诚实推理该有的样子——容忍诚实输出里那点常规波动,仅此而已。检查一份已经生成完的推理记录,成本只是当初生成它的一个零头,不对称性正是从这里来的。这道关卡是专门为挡住 grinding(不做推理,硬凑一份能过检的证明)而设计的:想突破它,你为搜出一份骗过检查的证明所烧掉的算力,会超过老实把模型跑一遍的开销。所以理性的选择就是把模型跑一遍。有用性是白搭上的顺风车,它从来没有在安全性上给你打过折。

钱买不回时间:时间证明

这笔开销还有一个性质值得钉死。算力是可以并行的:谁愿意拿 GPU 塞满一整个仓库,谁就能用一个下午把一周历史的前向传播全部重跑一遍。如果焦耳是唯一的成本,那么足够多的硬件就能把改写所需的时间压缩掉。

所以这条链还走着一只时钟。每个区块都会推进一次可验证延迟函数(VDF)——一种从构造上就必须串行的计算:每一步都要用到上一步的结果,因此堆再多硬件也几乎换不来加速。这些 VDF 滴答一个区块一个区块地累积起来,一段与之竞争的历史不仅要拿出重做的工作量,还得拿出同样走过的滴答数。这就是与工作量证明并行的时间证明:大到反常的资源可以把能量再花一遍,却没法把时间再过一遍。

活着的网络看得见深度改写

纯粹的最长链规则要求节点接受任何更重的历史,哪怕它把过去改写得再深——私下挖出来的分叉走的正是这道门。TensorCash 把网络自身的活跃状态当作第二个信号:一个一直盯着链一块一块往前长的节点,知道公开场合并没有发生过深度改写。浅层重组——每天都会有的那种,两个矿工同时挖到区块——照常放行。而一条突然冒出来、试图改写深层历史的分支,会被当成它本来的样子:异常。它会被暴露出来接受审视,而不是被悄悄跟上。

再配上 VDF 这只时钟,深度重组就变得双重不划算:偷偷建起来的分叉在滴答数上落后于公开链,而它想突袭的那个网络,全程都醒着。

什么变了,什么没变

  • 没变的: 安全性论证。造起来贵,验证起来便宜,伪造起来更贵。和任何工作量证明一模一样。
  • 变了的: 这笔开销产出了什么。同样的焦耳不再换来一个随手丢掉的哈希,而是回答了一条真实的提示词;链记录下来的,是「跑的确实是那个模型」的证明。

整个想法就这些。同一套安全性论证,只是把工作对准了某个人真的问出口的东西——外加一只钱拨不回去的时钟,和一个有人动手时看得见的网络。

别只听我们说:验证者是开源的,任何一份证明都可以重放。自己跑一个验证者去验一份证明,确认到底是哪个模型干的活;或者开始挖矿,自己造一份出来。安全性从来不在浪费里,而在那道检查里。

本文由 Imosuke Takakuni 以化名撰写。

我们的使命

TensorCash 将有用的 AI 工作转化为开放货币。

走出土豆时代,正如我们白皮书所说……

我们相信,人们应当拥有更便宜、更高效的金融体系,以及一种为所有人服务的更公平的 AI。TensorCash 让 AI 的工作被验证、可被验证。验证给 AI 一张脸:证明是哪个模型完成了工作、它看到了什么、遵循了哪些规则。这样任何人都可以以最有效的价格放心地买卖 AI 工作。结果是一种更可及、更可持续的 AI,驱动新一代的金融体系。今天的货币就是土豆:陈旧、转移昂贵、被困在收手续费的人背后。TensorCash 是一种更高效地转移和储存价值的方式——它把 AI 的算力交给所有人,把控制权向外推开,而不是把它集中起来。

— Imosuke Takakuni

关于我们

Imosuke Takakuni 是一个笔名。这个日文名字既是对中本聪的致敬,也呼应了我们白皮书中的寓言故事 Potato Land。使命比任何单一贡献者都更宏大,它应该超越个人魅力与时代。去中心化为每个人服务,否则毫无意义。我们希望每个人都能以平等的身份参与 TensorCash。

打开使命页面 →

参与其中

如何获取 TSC

TensorCash 不出售 TSC。项目没有进行任何代币销售、预售、ICO、IDO 或官方融资轮。新的 TSC 通过主动挖矿进入流通。你可以挖矿获取,或从已持有的人处点对点接收,也可以先运行钱包,为主网上线做好准备。

TensorCash 不进行官方销售。请勿向任何声称出售官方额度的人汇款。

参与其中

运行 Core 钱包

最实际的第一步是运行 TensorCash Core,创建一个钱包,并熟悉 RPC 接口。目前公开指南从 regtest 开始,让你可以在接触主网资金之前先在本地创建地址、移动代币。

参与其中

捐赠

主网捐赠地址尚未公布。以下 TensorCash 测试网地址仅供测试用途,由正在运行的 Core 钱包生成;请勿向其发送主网资金。

参与其中

传播项目

最简洁的说明是:TensorCash 将有用的 AI 工作转化为开放货币。把使命页面、旗舰白皮书或「参与其中」页面分享给一位关注廉价金融基础设施、更公平 AI 或开放基础设施的人。

TensorCash 将有用的 AI 工作转化为开放货币。

参与其中

发行计划

Bitcoin 确立了基准:仅凭区块奖励,无酌情增发,整数精度总补贴为 20,999,999.97690000 BTC。TensorCash 坚守固定供应的纪律,同时为这个算力挖矿网络调整了发行曲线;已实现的递推终止于 21,184,153.03530240 TSC。

按区块数计的供应量

已发行总补贴

来自 Core 的整数精度补贴规则:Bitcoin 减半对照 TensorCash epoch 衰减计划,展示前 6,000,000 个区块的数据。

视程
...
BTC @ 6M
...
TSC @ 6M
...
BTC 与 TSC 累计补贴随区块数的变化 在 6,000,000 个区块时,Bitcoin 已发行 20,999,999.92710000 BTC,TensorCash 在已实现的 epoch 衰减计划下已发行 20,979,987.36365355 TSC。
区块 0
BTC 供应量 0 BTC
TSC 供应量 0 TSC
BTC:50 BTC,每 210,000 个区块减半 TSC:715 TSC,715 个区块 epoch,奖励 × 3/5,epoch 长度有上限