一 一个卡牌网站
mtgox.com 这个域名不是为比特币注册的。
2007年,Jed McCaleb 注册它,本意是做一个市场,让人像交易股票那样交易一款卡牌游戏的线上卡片。名字就是那句话的缩写:Magic: The Gathering Online eXchange。
那个项目没有做起来,域名闲置了一段时间。
这个来历后来常被当成一段趣闻,而它其实说明了当时的处境:2010年要开一家比特币交易所,门槛低到可以随手用一个闲置域名。没有牌照要办,没有资本金要求,没有托管资格,没有人来查你把客户的钱放在哪里。低门槛是这套东西早期扩张最重要的条件之一,而它同时意味着,进来的人不必先证明自己能保管好别人的东西。
2010年7月18日,一个登录名叫 mtgox 的人在 Bitcointalk 上发帖,第一句是:我刚架了一个新的比特币交易所。
帖子同时说明,站内的交易是会员和会员之间成交,系统提供连续在线的自动撮合,报价和托管式的账户。
这一句是有同期材料可以直接钉住的上线日期。
2011年3月6日,McCaleb 在同一个论坛宣布要把 Mt. Gox 交出去,交给一个登录名叫 MagicalTux 的人,Mark Karpelès。他的解释很朴素:自己是前一年夏天读到比特币之后一时兴起做的,而要把交易所继续做下去,需要投入比他能承担更多的时间。他特别列了 Karpelès 在网站编程,系统管理,银行和支付整合方面的能力。
这不是把网站密码交给了谁。后来一宗美国民事诉讼的材料记载,2011年初,Karpelès 控制的 Tibanne K.K. 从 McCaleb 手里取得 Mt. Gox K.K. 的 88% 股份,McCaleb 保留 12%。
这个数字要标一个证据状态:那份 2020年的美国联邦法院文件是在简易判决阶段陈述诉讼记录,法院特意说明相关事实按有利于原告的方式叙述,并不为其真实性背书。
至于卖了多少钱,当年那个交接帖的回答就是:协议的具体条款保密。
规模上,Karpelès 后来回忆,自己接手的时候大约有 3,000 名客户;到 2013年,他称活跃账户约 110 万,来自 239 个国家和地区。这两个数是他本人事后的陈述,适合当规模指标,不适合当审计数据。
从 3,000 到 110 万,三年不到。而在这三年里,这家公司的保管办法基本没有变过。
这里要先拆掉一个流传很广的说法,因为它决定了后面七节该怎么读。
Mt. Gox 处理过全球 70% 的比特币交易,这句话如果不说口径,会造成一个很大的误会。
各种来源给的数字其实是这样的:一项对交易所数据的学术研究说 2010年到 2012年它的市场份额持续超过 80%,那是研究样本中的交易所成交份额;2013年美国国土安全部扣押材料引述的公司自述是约 80%;Karpelès 后来对路透回忆说 2013年一度超过 90%;而媒体最常用的 70%,一般指全球交易所的成交量。
没有一个是链上转账的份额。
它不是在验证或者处理全网 70% 的链上交易。它是曾经占据了中心化交易所可观测成交量的大部分。
这个区分是全篇的第一颗钉子:链是一样东西,交易所是另一样东西。
而这个区分在后面十八篇里会一次一次地被考验。几乎每一次出事,第一反应都是比特币出问题了;而几乎每一次追下去,坏掉的都是链外那一段。而在那几年里,绝大多数人接触前者的方式,是通过后者。
这一点是这个系列的一条主线。第一篇里那笔披萨交易,链上那一段完全按设计运转,而它前后每一步都要人。到 Mt. Gox 这里,那些步骤被打包进了一家公司:换钱,保管,撮合,提现,客服。打包是有价值的,它让一件本来要懂技术才做得成的事,变成任何人注册一个账号就能做。
而打包同时把风险也归了堆。
归堆本身不是坏事,银行做的也是这个。差别在于,银行归堆的时候旁边站着一整套东西:准备金要求,存款保险,定期审计,监管申报,以及一套在它倒掉时决定谁先拿钱的法律。而 2010年的这一家,一样也没有。
二 桶底有洞
先拆第二个说法:Mt. Gox 有 95% 的币一直安全地放在冷钱包里。
公开史料没有给出一个经过验证的,长期稳定的比例。WizSec 在专门讨论这个问题的时候写得很明确:他们对 Mt. Gox 历史上冷储的实际操作细节掌握不足,不能简单假定某个比例。
而 WizSec 根据链上和内部材料重建出来的工作模型,比一个百分比有用得多。
Mt. Gox 用预先生成的纸钱包做冷储。热钱包有盈余的时候,会逐步往这些冷钱包里存币;热钱包不够的时候,工作人员再手工扫描纸钱包,给热钱包补充。
而关键的管理问题在于:没有人对冷储做总量监控和账实核对。
于是有了那个画面。
热钱包的私钥早已泄漏,而工作人员按着流程,每隔一阵去补一次。桶底有洞,补水的人不知道,而且没有任何一道程序会告诉他。
这个画面里没有恶意,只有流程。补水的人在按操作手册办事,而操作手册上没有一条写着先去数一数桶里现在有多少。
而这一条之所以没有写在手册上,多半也不是有人删掉了。是写手册的时候没有人想到需要它。那时候这家公司还很小,币也不多,谁都大致知道有多少。等到真需要它的时候,已经没有人记得那份手册当初是怎么写出来的了。
这一个模型解释了那个表面上的悖论:一家公司可以真心认为自己绝大多数币放在冷钱包里,同时持续多年流失。
要注意 WizSec 自己把这一部分称作它的理解和一种可能的解释,不是法院已经认定的内部流程。
两件事都是真的。冷钱包里确实有币,而热钱包这一侧确实一直在漏。
而它们之所以能同时为真,靠的是中间少了一个动作:把两边的总数加起来,和客户账面应有的总数对一次。
这个动作在会计上有个老名字,叫盘点。它比这条链早了几千年。
经济系列第二篇写过两河的泥板,第五篇写过复式记账。那两套东西解决的正是同一个问题:让一本账可以被自己检验。而这里的情形是,一套远比它们精密的记录系统运转着,而检验那一步没有被接上去。
这个动作不需要任何新技术。它需要的只是有人被指派去做,并且定期做。
而这句话在这个域后面十八篇里会一直成立。绝大多数事故不是因为缺一项技术,是因为缺一个岗位。
余项的位置,从这里就可以先看到一半。它不在链上,链上每一笔都清清楚楚;它也不在数据库里,数据库里每个账户的余额都好好的。它在两者中间那道没有人负责的缝里:一边是链上实际有多少,一边是账上应该有多少,而没有一个岗位的职责是把这两个数放在一起看。
失窃的起点也要拆成两件不同的事。
2011年3月前后,WizSec 重建出一次约 80,000 BTC 的钱包盗窃:主服务器被入侵,未加密的 wallet.dat 很可能被复制,币被转往一个地址,长期没有再动。
而 2011年9月的那一次性质完全不同。WizSec 认为主热钱包的私钥再次因为 wallet.dat 被复制而泄漏。
一次盗窃和一次私钥泄漏,不是同一件事。
一次盗窃拿走的是当时有的那些。私钥泄漏意味着:从此以后,凡是进到那些地址里的币,攻击者随时可以取走。
前者是一个数字,后者是一根管子。
这个区别决定了后面三年的形状。
也决定了它为什么那么难被发现。一次八万枚的失窃,账上会突然缺一块,只要有人对账就看得见。而一根管子不制造突变,它只是让每一次补充进去的币,过一阵就少一些。在一家每天都有大量存提款进出的交易所里,这种缺失可以被日常的流水盖住很久。
三 三年
2011年末,WizSec 的重建显示,预期余额和实际余额之间的差距已经迅速扩大到数十万枚的量级。
截至 2012年末,在最严格的一类盗币路径中,WizSec 明确识别出约 300,000 BTC 于 2011年末到 2012年末之间离开 Mt. Gox,没有对应的合法提款记录,并流入了 Mt. Gox 之外的地址,包括 BTC-e 和 Bitcoinica 等处。
到 2013年中,WizSec 认为由 2011年9月那次泄漏的私钥可以支出的币累计约 630,000 BTC 已经被取走,Mt. Gox 基本上没有可以支出的 BTC 了。
这里要加一条史料限制。
WizSec 没有公开一张经过审计,按日历年度准确合计的年度盗窃表。可以稳妥复述的是量级和时间顺序,而把 630,000 平均分摊成三年每年210,000,没有原始调查依据。
而 WizSec 是怎么做出来的,比结论更值得看。
因为它同时说明了一件事:重建这些需要什么。
它用 2014年泄露出来的那个 Mt. Gox 数据库,把存提款记录和链上交易逐项对应;再用共同输入这一类聚类方法,识别出超过 200 万个属于 Mt. Gox 的地址;然后把那些没有任何合法提款记录,却从 Mt. Gox 地址流往外部地址的交易单独筛出来。
其中有一个校准的锚点,而这个锚点值得单独说。
2011年,Mt. Gox 做过一笔金额为 424,242.42424242 BTC 的公开交易,目的是向所有人证明自己确实持有这些币。
四年之后,这笔交易成了外人重建它历史余额的基准点。
一次为了建立信任而做的公开动作,后来成了追查它的工具。
而中间那几年,没有人拿它去查。
到 2013年中基本没有可支出的币,而这家交易所又开了半年多。
这半年多里,它继续撮合,继续收佣金,继续显示每一个账户的余额。那些余额在数据库里都是真的,在链上没有对应的东西。
而在这半年里进来的新客户,存进去的是真钱,拿到的是一个已经空掉的账户里的一个数字。这是这一段历史里最难写的一处,因为它涉及的是具体的人,而现有材料没有办法说清其中有多少人,每个人存了多少。
能说清的只有一件:到 2013年中链上已经基本没有可支出的币,而门又开了半年多。这半年是可以被指认的。
现在把两头追一遍,因为这是全篇最要紧的一处。
收益那一头很清楚。Mt. Gox 主要从每一笔撮合成功的交易向双方收佣金,小额和低成交量的标准费率约 0.6%,按过去三十天的成交量分级下降,极高成交量的账户最低可以降到约 0.25%。它不是靠自营价差挣钱,是靠撮合佣金以及提款汇款等相关费用。
风险那一头也很清楚,只是当时没有人看得见。
Mt. Gox 的条款把正常交易描述为会员与会员之间的交易,并说公司应当为会员持有他们存入的货币和 BTC,代表会员管理这些资产。
而合同上写着代你持有,和现代意义上的客户资产隔离,不是同一件事。
实际的情形是:会员的余额首先是 Mt. Gox 数据库里的一个内部数字。BTC 在 Mt. Gox 控制的一批地址之间汇集和调拨,没有哪一个会员在链上有一个持续对应他自己账户,法律上单独隔离的钱包。
后来的破产和民事再生程序也是把这些人当作债权人来处理,而不是让每一个人对某一笔特定的币行使返还请求。处理这个案子的法律分析写得很明确:债权人不存在对特定币的分离权。
也就是说,存在 Mt. Gox 里的东西,名义上是币,实际上是一家公司的负债。
而这两件事的差别,只有在这家公司倒掉的那一天才显出来。
这也是这个域后来反复出现的一句话:不是你的私钥,就不是你的币。而这句话是在 Mt. Gox 之后才被反复讲的,它是从这里学来的。
风险全部落在存币的那一侧,而承担它的人没有办法核对。
更要紧的是,他们连自己该核对什么都不知道,因为没有任何一道机制会告诉他们这家交易所实际持有多少。
把第二篇那三条拿过来对一次就很清楚。矿池那一层之所以风险分配得大致公道,靠的是可算,可选,可退出。
这里三样缺了两样。可选是有的,当时还有别的交易所。而可算没有:没有人能算出 Mt. Gox 实际持有多少。可退出在 2014年2月7日之后也没有了:提款停了,你的余额还在屏幕上显示着,而它出不来。
四 一个 bug
2014年2月7日,Mt. Gox 宣布暂停 BTC 提款,说要调查提款中的异常。那份公告本身还没有把问题归给任何具体原因。
2月10日,公司才正式归因。公告的核心表述是:比特币软件里的一个 bug 使得有可能改变交易的细节。
随后的非技术说明称,这种修改会让系统误以为一笔发送没有发生,而事实上币已经发出去了,于是存在重复发送的可能。
这里要保留原文的责任归因方式:它把这件事称作比特币软件里的一个 bug。
当天就遭到了公开反驳。Bitcoin Foundation 的首席科学家 Gavin Andresen 的回应,标题直接写着与 Mt. Gox 的声明相反,比特币没有问题。他的具体解释是:Mt. Gox 遇到的问题来自它高度定制的钱包软件,客服的处理方式,以及没有为一个已知的属性做好准备。
Andresen 并没有否认这个属性存在。争的是两件别的事:谁应该正确地处理它,以及它能不能解释后来公布的那个缺口。
这两件事后来都有了答案,而且都不是靠辩论得出的。第一件由同期的对照给出,第二件由两周后的统计给出。
那个属性本身要写清楚。
早期比特币的交易编号是由序列化的交易内容算出来的哈希。而一笔尚未确认的有效交易,在不改变哪些旧输出被花掉,钱最终付给谁,付多少的前提下,某些签名的编码方式可以被改写,从而产生一个不同的编号。第三方在不知道私钥的情况下就能做到这件事。
它的危险不是攻击者可以随意改收款地址,也不是可以凭空造币。
典型的问题是这样一条链:交易所生成一笔提款交易,记下编号 A;有人把它可延展的部分改写成语义等价的 A 撇,编号不同;如果最终是 A 撇进了区块,那么这笔款其实已经付成功了;而一个只按原编号检查状态的后台,可能认为提款失败;如果后台或者人工客服因此再付一次,才产生真实的损失。
Decker 和 Wattenhofer 在他们的论文里特别指出了这条链的最后一环:比特币的核心客户端本身是按未花费输出来追踪余额的,不会仅仅因为自己最初生成的编号没确认就认定资金还在。
所以要把这个属性变成提款欺诈,还需要一个额外条件:交易所自身的提款和记账实现有错误。
然后是那篇论文测到的数字。
整个样本中曾经卷入所识别的延展冲突的,约 302,700 BTC;其中改版最终胜出的价值约 64,564 BTC;所测一种主要攻击形式的成功率,按价值计约 21.36%。
而在 Mt. Gox 停止提款以前,卷入所识别攻击的是 1,811.58 BTC。
按那个成功率估算,提款停止之前真正可能被这种方式重复骗付的,约 386 BTC。
这个数要和另一个数放在一起才有分量。同一份论文测出的整个样本卷入量是 302,700 枚,而落在提款停止之前的只有 1,811.58 枚。也就是说,绝大部分延展活动发生在 Mt. Gox 已经关上门之后。
和公司最初申报的 850,000 相差三个数量级。
而这一节最冷的是接下来这件事。
2月10日那份公告一出,网络上的延展攻击数量突然暴涨。2月10日到 11日两天,就观察到 286,076 BTC 卷入相关冲突。
而那时候 Mt. Gox 已经停止提款了。
一份公告描述了一种攻击,然后那种攻击就发生了。
这是第二篇里那句话的另一种形态:构的公告不是对世界的一次描述,它进入世界,并且改变世界。
而这件事有一个更冷的读法:那份公告等于把一个此前只在开发者圈子里被讨论的技术细节,写成了一份面向全世界的操作说明。写它的人当然不是这个意思。而效果与意图之间的这段差,正是这个域里最常见的一种事故形状。
要补一句公平的话:那 386 BTC 不是对 2010年到 2014年整段历史的绝对上限。论文的数据集主要从 2013年开始,而且链上观测只能确定原版还是改版最终确认,没有办法从链上直接知道某家公司看到改版编号之后是不是又真的付了一次。作者自己对这些限制有明确说明。
而即便留足这些余地,数量级仍然对不上。
同期还有一个现实的对照组:Bitstamp 等交易所也一度因为全网的延展噪声采取了提款保护措施,随后恢复了。
同一个协议属性,同一段时间,别人处理完了继续开门,而这一家没有再开。这就是当时那句谁应该正确处理它的答案,而它是由事实给出的,不是由争论给出的。
五 38.42 亿对 65.01 亿
2014年2月28日,Mt. Gox 向东京地方法院申请开始民事再生程序。
公告首页列的是两个数:总资产 3,841,866,163 日元,流动负债 6,501,119,371 日元。
相差约 26.59 亿日元。
第二页写得更具体:内部调查发现大批 BTC 消失,当时估计为会员存入约 750,000 枚,加上公司自身约 100,000 枚,合计约 850,000 枚。公司认为很有可能是利用系统问题遭窃,同时承认调查尚未完成。它还写明金融机构实际持有的现金,和会员存款记录之间约有 28 亿日元的差额。
那 28 亿是账面存款与银行现金之间的差额,不能在没有进一步材料的情况下,直接改写成确认有 28 亿日元被盗走。
而那份文件比后来的新闻叙事谨慎得多。
它写到可能有多种原因,包括第三方入侵,并称必须分析大量交易记录才能确定真相。
换句话说,公司自己在正式的申请文件里,已经没有把全部损失单一地归给两周前那个技术解释。
3月20日又有一份公告。
公司在申请民事再生之后重新扫描过去使用过的钱包,3月7日发现一个在 2011年6月以前使用过的旧格式钱包里,仍有 199,999.99 BTC。公司称此前认为那个钱包的余额是零。
发现之后,公司告知代理律师,并向法院和监督委员通报;出于安全原因,这约 200,000 枚在 3月14日到 15日被转入离线钱包。加上此前已掌握的约 2,000 枚,公司当时持有约 202,000 枚。
于是原先约 850,000 的消失数字被下调为约 650,000。
这一句要停一下,因为它容易被读成好消息。
这 200,000 枚不是警方从黑客手里追回的赃币。它们是公司在自己用过的旧钱包里重新发现的。
一家公司找不到自己的二十万个币,找了三年,然后在自己的一个旧钱包里找到了。
更准确地说,它不是找了三年。它是三年没有找,直到申请再生之后才回头把过去用过的钱包重新扫了一遍。
这和第二节里那个补水的画面是同一个病:没有人在盘点。
法币这一侧的麻烦是另一条线,而它同样不能被写成盗窃。
Mt. Gox 的美元通道当时大致是这样:会员通过 Dwolla 入金;它的美国子公司 Mutum Sigillum LLC 在 Wells Fargo 有账户;提现美元的时候,资金可以从日本的 Sumitomo Mitsui 账户汇到 Wells Fargo,再进入 Dwolla 体系。
2013年5月14日,美国马里兰联邦法院签发扣押令,授权扣押登记在 Mutum Sigillum LLC 名下,由 Veridian Credit Union 保管的 Dwolla 账户资金。申请材料援引的是关于未依法登记经营汇款业务的条款。
调查宣誓书列的理由包括:当时 FinCEN 的数据库显示 Mt. Gox 和 Mutum Sigillum 都没有登记为货币服务企业;而 Karpelès 在 2011年开立 Wells Fargo 账户时,在银行表格里回答该企业不是汇款机构,调查人员认为它的实际业务正是在美国收取并转送客户资金。
要说准的是:美国的扣押理由是合规问题,不是美国政府在 2013年就认定 Mt. Gox 盗了客户的币。
这个区分和第七节那四个命题是同一类工作。一家公司同时可以有合规问题,有诉讼,有技术缺陷,有管理失败,还被人偷了币,而这五件事各有各的证据,各有各的时间,各有各的后果。把它们卷成一句它出事了,读起来痛快,而查不出任何东西。
同一个月还有另一件事。2013年5月2日,CoinLab 在美国起诉 Mt. Gox,索赔 7,500 万美元,核心指控是没有按协议移交客户名册,软件和系统访问权,并继续直接服务美加客户,违反独家条款。
这是民事诉讼的主张,不能当作已经确定的欠款。
而这两件事加起来的现实效果很具体:2013年,这家交易所的法币流动性和银行通道被同时压缩。
到这里可以把这一家公司在 2013年的处境摆全:链上那一侧,可支出的币已经基本没有了;法币那一侧,美国通道被扣押,北美合作方在起诉它,提现在积压。
而它的网站照常运行,价格照常跳动,佣金照常收。
这三件事在当时看起来是它还活着的证据。而回头看,它们恰恰是这家公司唯一还能做的事:撮合和显示余额不需要它真的持有什么,只需要数据库还在跑。
六 十二年
日本那边的程序,经历了一个容易被写错的往返。
2014年2月28日,公司最初申请的其实就是民事再生,希望维持公司或者寻找重整的可能。
这个方案没能继续。2014年4月,东京地方法院转入破产清算程序,由小林信明担任破产管财人。
2017年11月,部分债权人再次申请启动民事再生。2018年6月22日 17 时,东京地方法院正式裁定开始民事再生程序,原有的破产程序中止,小林转任再生管财人。
这个转换为什么对持币的债权人极其重要,要说清楚,因为它是这一整段里最实在的一处制度差别。
破产清算时期,BTC 债权要被折算成日元,用的是破产开始时的价格,约 50,058.12 日元一枚。
如果一直按这个结构清算下去,后来 BTC 大幅升值,财团手里剩下的那些币的价值,可能远远超过按 2014年日元价格计算的全部客户债权。而理论上多出来的那部分,按公司法和破产法的结构,会落到股东一侧,不会自动追加给原来的持币债权人。
这正是债权人推动重新采用民事再生的主要制度背景。
民事再生给出的处理是第三种结构。
用于计算再生债权的固定评价值改成了民事再生开始时的市场价值:1 BTC 折 749,318.83 日元,1 BCH 折 97,481.19 日元。同时,再生计划允许符合条件的加密货币债权有一部分直接以 BTC 或 BCH 实物分配,而不是全部强制按日元结清。
所以那场关于按 2014年价格还是按今天币价的争论,实际的法律处理既不是前者也不是后者。
它不是把每一枚锁死在 2014年约五万日元然后只给现金。
也不是按今天的现货价把原持币数全额折现赔付。
而是先依据再生计划的固定评价和分配公式确定债权,按财团剩余资产按比例分配,并允许一部分加密货币债权直接拿到币。
这也是为什么一个当年账上有 10 BTC 的人,最后既不是简单拿到 10 乘以 2014年的日元价,也不会重新获得完整的 10 枚。
财团所剩的币量,不足以对所有历史余额做一比一的恢复。
这一句要读慢。一个人当年在屏幕上看到的是 10 个币,而那个数字从某一年起就已经不对应任何东西了。十二年之后他拿回来的,是一个按公式算出来的份额。中间那些年他不知道自己其实持有什么,因为那件事当时没有人知道。
债权人有多少人,同样有两个口径。110 万活跃账户是交易所的账户数。真正进入破产和民事再生程序,申报或者被管财人列为自认债权的,只有数万;路透对这个案子的长期调查把实际债权人规模写作约 24,000 名。
赔付的时间线是这样的:
2024年6月24日,管财人宣布 BTC 和 BCH 的赔付预计从 7月开始。7月5日,首批通过部分指定交易所正式实施。7月16日,累计超过 13,000 名再生债权人拿到币。7月24日,超过 17,000 名。8月21日,超过 19,000 名。
2025年3月27日,经过 2024年七八月以及 2025年一到三月之后,累计已有超过 19,500 名债权人收到 BTC 或 BCH。
2025年10月27日,管财人称,除少数特殊付款类别之外,对已完成全部必要手续且不存在问题的债权人,基本赔付,提前一次性赔付和中间赔付已经大体完成;而仍有相当数量的债权人因为手续未完成或者处理问题尚未付款。法院同意把最后付款期限从 2025年10月31日再延至 2026年10月31日。
有一个提醒要写进来:管财人的公告在多数批次并没有公布这一批总共转出多少币。所以链上某一次大额钱包转账,不能直接当成某一批债权人实际收到的准确总额。
从 2014年2月到 2026年10月。
十二年。
而这不是日本法院办事慢。这个案子牵着几万名分布在两百多个国家和地区的人,一次程序的往返,一次评价方法的重定,一次分配方式的表决,每一步都要有人去做,去核,去等。
而这些步骤没有一个可以被自动化。评价方法要重定,是因为有人指出按旧办法算下去结果会落到股东那一侧;而指出这件事,提起申请,说服法院,再让几万个人表决,靠的全是人在做。
一个每十分钟结算一次的系统,它的一次事故用了十二年还没有结完,而且还要再等一年。
链上那一段的结算,和人世间的结算,用的不是同一种时间。
七 四个命题
关于责任,流传的版本通常压成一句话:Karpelès 偷了六十五万个币。
原始材料给出的是四个不同的命题,四种不同的证据状态。
把它们分开不是为了替谁说话。是因为这四个命题指向的补救办法完全不同:如果是内部盗窃,该做的是背景审查和权限分离;如果是外部入侵,该做的是密钥管理;如果是管理失败,该做的是定期审计;而如果是账簿犯罪,该做的是外部记账和监管申报。
把它们混成一件事,等于把四张药方揉成一张。
第一个命题,已经成立。 2019年3月15日,东京地方法院判定 Karpelès 篡改,非法制作 Mt. Gox 私人电子记录和账户数据这一项罪名成立。案件涉及通过内部账户数据制造并不存在的余额。刑罚是有期徒刑两年六个月,缓刑四年。
第二个命题,没有成立。 检方关于挪用客户资金的更严重指控,没有取得有罪判决。
第三个命题,不存在。 没有任何法院判决认定他是盗走约 650,000 BTC 的那个黑客。这不是他 2019年被判成立的罪名。
第四个命题,仍是指控。 2023年,美国司法部公布对 Alexey Bilyuchenko 与 Aleksandr Verner 的起诉,称约 2011年9月,被告及同谋未经授权进入存放 Mt. Gox 钱包和私钥的日本服务器,并从 2011年9月至少到 2014年5月,导致约 647,000 BTC 被转往他们控制的地址。检方还称其中三十多万枚经其他交易所体系洗钱。
这个数量和时间范围,与 WizSec 的链上重建相当接近。
而它的法律状态必须写完整:这是起诉书里的主张,不是已经完成的有罪判决。司法部自己的页面在末尾明确写着,刑事起诉只是一项指控,在被证明有罪之前,被告应被推定无罪。
还有一个常见的说法要单独处理。WizSec 在 2017年把与这些币关联的地址簇连接到 Alexander Vinnik,而它自己写得非常谨慎:调查能够把他定位为洗钱和接收链条上的重要人物,并没有由此证明他就是最初入侵服务器,复制那个钱包文件的人。
把这四个命题分清楚,不是学究气。
如果把账簿犯罪和盗走六十五万个币混成一件事,那么真正发生过的那件事就被盖住了。
而真正发生过的那件事是:一家交易所连续一两年没有发现,自己实际持有的币和客户账面上的币之间已经相差数十万枚。
这是一个独立于黑客是谁的资产管理事实。
它也是一个可以被别人重复的事实。而账簿犯罪不是。
这个分别很实在。一个存心作假的人是罕见的,而一家没有定期对账的公司是常见的。把注意力全放在前者身上,后面十几年那些同样形状的事故就会被当成一次又一次的意外。
WizSec 甚至批评过检方选择证据的方式,认为不能把那个后来被称作 Willy 或者 Gox Bot 的内部交易机器人,写成 630,000 枚链上失窃的来源,因为后者已经能够在链上一路追到外部钱包。按 WizSec 的重建,那个机器人最终给公司留下的是约 22,748 BTC 和 5,160 万美元的负余额,按 2014年2月28日的汇率合计约 6,493 万美元。它发生得较晚,可以解释一部分法币缺口,解释不了 2011年到 2013年大部分币的链上外流。
而管理失败造成损失,与管理层故意制造损失,仍然需要分开。
守住这四个命题的边界,在这个系列里是一项要一直做下去的工作。
而它也是这一段历史留给后来的最实在的一样东西:在这个域里,谁被指控了什么,谁被判了什么,谁只是被怀疑,四件事必须分开说,因为它们对应的补救办法不一样。这个域后来出过真正的,已经被法院认定的欺诈,而如果在这里就把指控当成认定来写,到了那些篇,句子就不值钱了。
八 数据一直在
回到那个核心的事实。
那 630,000 枚币,每一次移动都被记在了人类造过的最公开的一本账上。
永久。免费。任何人都可以查。而且在它发生的那一刻,就已经记下了。
而三年没有人查。
要说清楚这句话的分寸。当时没有区块浏览器上的地址标签体系,没有链上分析公司,没有专门盯交易所储备的人,这些行业在那之后才长出来。所以这不是一句谁失职了的指责。
它说的是另一件事:一样东西可以是完全公开的,同时事实上没有被任何人看见。公开和被看见,是两件要分别去做的事。
2015年 WizSec 做的那件事,原则上任何人在 2012年都可以做。
但这里要补一条限制,而这一条是全篇最要紧的技术事实。
WizSec 需要 2014年泄露出来的那个数据库,才能把链上的地址对应到 Mt. Gox。
链上的数据是完整的,而读懂它需要链外的东西。
链记的是地址之间的转账。而那些地址属于谁,链不知道,也不打算知道。
不打算知道这四个字是要紧的。这不是一个还没做完的功能,是一项设计上的取舍:不问你是谁,才不需要有人来核你是谁。第二篇结尾说过同一件事的另一面:它不问,所以它此后也永远问不出来。
所以这不是一句大家都不看链就能打发的事。就算所有人每天都盯着,他们看到的也只是一批数字之间的转账,而不是一家交易所正在漏水。
这是这个域里最深的一处不对称:一切都可核对,而核对需要的那把钥匙不在链上。
这条不对称在后面十八篇里会一直跟着。链能证明的是一笔转账发生过,签名有效,顺序确定。它证明不了转账的人是谁,证明不了他有没有权利,证明不了这笔钱背后答应过什么。
而人们要判断的事情,几乎全在后面那一半里。
余项在这里的形状因此很清楚。
它不是没有被记录。它被记录得极其完整,极其公开,极其永久。
它缺的是有人被指派去读,以及读它所需要的那样并不在链上的东西。
这是余项的一种新形状,而且它在这个域里会反复出现。前面二十三篇里,余项常常是没被量到,量了不看,或者被划到门外。这里是第四种:量得极准,记得极全,公开给所有人,而没有人读。
第二篇的结尾说,没有哪一个机构的职责是记人。而这里要更进一层:记录已经有了,而没有哪一个机构的职责是读。
那笔 424,242.42424242 枚的公开交易也可以放在这里再看一次。
它当年是一次自证,是一家公司主动让所有人看见自己有币。它做成了,而且做得很成功,谁都可以去验。
这一点要给足:那笔交易是真的,验证方法是公开的,任何人在 2011年都可以自己算一遍。它没有骗人。
问题从来不在那一天有没有币。问题在此后一千多个日子里,再也没有人做过同样的一次核对。
一次性的公开验证解决不了持续的账实不符。而这个域后来花了很多年才把这件事变成一项定期的制度。
而这件事变成制度之后,它换了一个名字,叫储备证明。它做的仍然是同一个动作:让外面的人能对一次账。区别只在于,它从一次性的表演,变成了一项要按周期重复的义务。
而它至今没有解决全部问题:证明你在某一刻有多少币,不等于证明你不欠别人更多。这个域后来还要为这半句话付出别的代价,那是后面几篇的事。
回到那 630,000 枚。它们不是在某一个黑色星期五被搬走的。它们是在三年里,一笔一笔,按着有效的签名,在一本所有人都看得见的账上,慢慢流出去的。
从 2011年那笔交易到那件事成为行业惯例,中间隔着的正是上面这些年。
开头那个帖子只写了一句话,十来个词,说自己架好了一个东西。
三年半之后,同一家公司交给法院的那一页上,是两个精确到个位的日元数字,而后面那个比前面那个大了二十六亿。
而那条链在这十几年里一次也没有出过错。
它把那 630,000 枚的每一次移动都原样记了下来。时间,金额,从哪个地址到哪个地址,一次不漏,今天还能查。
它从来没有认为那些转账有什么不对。按它的规则,那些转账全都是有效的:签名正确,余额充足,格式合规。
它验的是签名对不对。
它不验按下这个签名的那只手,是不是这把钥匙的主人。
链还在结算,而结算什么还没有共识。
本文依据公开协议文档、链上记录、法院文书、监管文件与同行评议研究写成;文中的数字均保留其统计口径。系列资料截至 2026 年 8 月。