为什么保管好私钥也不一定能防住加密货币被盗
9月6日,近4000枚比特币从Liquid网络的储备中被提走。这次提现经过了网络审批流程,但授权提现的私钥并未失窃,问题出在软件本身:它批准了一笔本不该被批准的提现。这起事件之所以重要,在于它打破了一个流传已久的观念,守住私钥就等于守住资产。当系统漏洞取代私钥失窃成为损失根源时,谁来填补缺口,就成了用户最该关心却最少了解的问题。
没有偷钥匙的盗窃
Liquid是一条独立的区块链,用户可以把比特币存入一个共同储备,换取等量的L-BTC代币,以实现更快、更私密的转账。当用户赎回代币时,对应的比特币会从储备中释放。这个设计本身运转多年,直到攻击者发现了一条捷径。
根据链上分析机构TRM Labs对事件的还原,攻击者利用软件缺陷,在没有存入对应比特币的情况下凭空铸造L-BTC,再将这些“无锚”代币兑换成真实的比特币。负责审批提现的运维方,依据的是被污染的错误信息,等于几个签字人同时核对了一份错误的账本。
私钥依然是交易的授权凭证,保管私钥依然必不可少。但这次事件说明,即便私钥安然无恙,软件仍可能用这些钥匙签出错误的交易。技术层面的解释到此为止,接下来是那个价值数亿美元的问题:钱由谁来赔?
公司上了保险,不等于你被保障
许多人把资产托付给金融服务机构,默认对方既负责保管,也负责在保管失败时承担后果。保险确实可以支撑这种责任,但条款决定了它实际能覆盖多少。
Coinbase在其公开的保险说明中提供了很好的参照。该公司表示,其犯罪保险保障存储系统中“部分”数字资产免遭盗窃,包括网络攻击造成的损失,同时明确警告:总损失可能超过保险赔付上限,即便事故属于承保范围,用户仍可能承受部分损失。此外,该保单不覆盖因个人账户登录凭证丢失或泄露导致的未授权访问损失。同样是账户里的钱不见了,成因不同,保障结果可能完全不同。而美国联邦存款保险公司(FDIC)的存款保障并不适用于数字资产,哪怕这些资产是通过受保银行购买的。
由此可见,第一个要厘清的问题是保单到底保的是谁的损失。如果被保险方是托管你比特币的公司,那么保险公司签合同的对象是这家公司而非你。你能否直接索赔、赔款如何到达你手中,取决于具体安排和适用法律。公司的赔付义务也独立于其保险之外:欠用户的钱超出保额时,缺口需要另找资金来源。这就是为什么两家都宣称“有保险”的服务,实际的财务保障可能天差地别。
软件出错时,账单归属如何确定
私钥安全的软件盗窃,未必不能投保。专门服务加密企业的保险公司Relm提供的数字资产犯罪险,明确可以应对基础设施漏洞利用和涉及智能合约的盗窃。该公司还提供科技职业责任险,覆盖因公司产品或服务缺陷引发的索赔,但这类险种的作用是应对追责,而不是直接补上丢失的资产。
设想一个场景:某托管机构依赖另一家公司的软件处理提现,软件漏洞导致资金流失。托管机构可能启动自己的保单索赔,也可能向软件公司追责,后者的责任险或可支付其应付的款项。而在这一切展开的同时,用户只想取回自己的余额,他们的需求是即时的。机构是否在责任认定和理赔评估完成前先行垫付,取决于其义务和资金能力。
Liquid事件本身也印证了追回资产与划分责任是两件事。据Bitquery调查,攻击者于9月7日归还了3400枚比特币;CryptoSlate在9月12日报道,Blockstream拒绝了支付赏金的要求。每一枚归还的币都缩小了储备缺口,但攻击者的还款并不能决定剩余缺口由谁承担,这个答案写在合同里,而不是链上记录里。
赔美元不等于赔比特币
即便赔付金额谈妥,还有一个问题:赔的是什么。持有比特币的用户期望取回同样数量的币,但补偿协议可能约定的是美元金额。
假设丢失一枚价值8万美元的比特币,赔付固定为8万美元,而付款时币价已涨到10万美元,用户拿到的钱只能买回0.8枚币,美元是足额的,持仓却少了五分之一。反之若币价下跌,同样的美元能买回更多。谁承担这段等待期内的价格波动,取决于协议如何约定估值时点或是否以币计赔。追回资产同样需要规则:如果保险公司已先行赔付,随后又有部分比特币被追回,这些币归谁,也需要事先约定。此外,资金被冻结期间无法使用带来的损失,通常也不在赔偿范围内。
这些复杂性暴露了“用户自己做功课”这句话的局限。很少有人能审查批准比特币提现的软件代码,更少有人能对比一份自己可能永远看不到的保单。服务商应当像说明手续费那样清晰地说明赔付安排:承诺赔偿哪些损失、以币还是以美元赔付、保额不足时用什么资金补齐。安全决定损失发生的概率,而财务保障决定损失如何分摊,用户有权在承担自己的那份之前,先知道它是多少。
(本文基于公开报道整理,不构成任何投资建议。)

评论