前文提要:大约十年前,我在币圈工作时曾经写过一篇“比特币找零的深长意味”,描述了为什么比特币要设计使用公钥的hash的hash作为地址,而不是直接使用public key,以及为什么要找零。现在看来,这篇文章比较冗长,写得也不是很清楚。
十年后,区块链已经是一门显学,我也通过区块链行业取得了一定成绩。此时我们再探讨关于比特币找零的设计思想,再对照当前区块链项目的设计,可以看出两种设计思路的不同。是否去中心化(decentralized)只是其中的一部分,更重要的是,究竟把区块链当成什么?
今天再探讨比特币找零和地址模式的设计,可以明显看出中本聪团队当年的考虑至少有这几个:
1,隐私考虑
当然在现实世界中,交易所普遍采用重复使用同一地址,一则是为了方便,二则就是为了让交易可以被分析。虽然“普通用户”并不在乎,但这不代表不应该这样设计。
在严格的用例中,交易双方都使用一次性地址的前提下,如果交易金额不是严格整数,或是与找零金额之间相差不大,是很难分辨找零地址和收款地址的。
在比特币刚设计出来时,中本聪团队就知道公共账本(Public ledger)一定会出现链上数据分析。在规范的比特币用例中,比特币地址是不可复用的。也就是说,通过找零把剩余的资金转移到一个新地址,旧地址将不会再次出现,从而减少链上分析的风险。
有没有这样的功能和你用不用是两回事,结合Taproot等技术进展看,比特币始终不忘初心,尽力为无审查的金融活动准备技术条件。因此,更不应该过度信任中心化平台了。
2,安全考虑
从一开始,中本聪团队对整个体系内所有密码学组件的安全性都保有怀疑。因此任何一环都不依赖于单一的安全机制。
虽然目前来看,比特币所采用的算法没有已知的从Pubkey反转出Private Key的方式,但出于安全谨慎的考虑,中本聪使用了Pubkey的hash作为地址。这样在一个地址第一次被花费前,Pubkey也是保密的。为了防止摘要算法也出现意外情况,用两种不同hash算法做了两次叠加。
假设未来出现量子计算机或者任何可能威胁比特币私钥安全的情形,未被花费的地址上的金额仍然是绝对安全的。
相比之下,交易所重复使用地址会让地址的公钥暴露在网上,一旦出现此类问题,还是中心化交易所风险更大。
*BIP-32的HD地址,只是产生的Seed机制不同,不会影响这项设计。
3,对未知的准备
可以说比特币的地址设计作为第一款区块链产品,中本聪对未来就做了充分的准备。不仅假设密码学算法和摘要算法都可能存在漏洞或后门,还假定未来会出现链上数据分析甚至量子计算机。可以说,比特币出生在黑暗中,为进入黑暗做了充分准备。一开始,比特币就被设计为要在危机四伏的环境中被反复攻击,并仍然保证安全。
如果说今天比特币有什么问题,只能说是算力有些集中了。但是China打击集中挖矿的经验告诉我们,政府打击集中算力也无法摧毁比特币。而且一开始中本聪也预言了矿机的诞生和挖矿的集中化。目前来看,比特币区块链系统没有明显的缺陷。唯一的妥协是根据CAP理论在效率上做出的妥协,也就是10分钟的出块时间间隔,但目前看来这是值得的。
相比之下,Ethereum和后来者们,对这个世界就太乐观了。
设计安全上,Ethereum不仅不考虑匿名性,还要通过ENS等加强用户身份的验证。一个地址,反复使用,巨鲸大鳄的资产操作就暴露在众目睽睽之下,不仅网络安全问题堪忧,搞不好还会威胁人身安全。
有人可能说,Eth本身设计就是“世界的计算机”,它不需要这些东西,但这样真的好吗?哪怕是强监管的证券市场,也不会对全世界披露这么多信息。
运营上,Ethereum不仅搞“一个领袖,一个基金会,一个区块链”的个人崇拜,大会小会不停的开,而且创始人一言九鼎,说升级就升级,说回滚就回滚,基金会卖币… 如果”领袖“出现意外或者被政府打击,对区块链的影响将极为负面。
目前很多兼容链依附于公司、个人,公司和个人倒闭或出事后,这些链也无以为继了。如果未来以太坊的少数关键人物出现问题,势必造成很严重的后果。
最近Eth又取消了Pow挖矿,改成了分布式Staking,看上去挺美,实际上没有免费的晚餐,不想耗电就要付出其他代价。至于是什么代价,我们wait and see。而且个人部署的Eth节点只有部分数据,很多数据并没有被去中心化。
以太坊一开始的设计就不是基于安全考量,一开始就设计为更便利的用户使用。无论是针对技术风险还是社会风险,以太坊的安全设计相比Bitcoin都不在一个层面。
如果这些都是创始人对这个世界的善意,我也就接受了。但是还有一些情况,我觉得和区块链精神不仅不相容,比传统市场问题还多。
比如说,如果在智能合约中引入Oracle是不得不做的妥协,因为没有办法去中心化的获得报价,那么在各种L2中引入大量中心化结构就显得有些奇怪了:
L2本身要解决的就是手续费高的问题,如果用户认为低手续费比安全还重要,可以直接去中心化交易所。由第三方运营的、带有中心化结构的L2层,实际上是一个比中心化交易所还不可靠的多的服务,中心化交易所好歹还有政府监管。为了省一点钱,最后被恶意的L2骗走资金或者被黑被盗,显然得不偿失。
目前看来,严重的区块链安全事件几乎都发生在以太坊和ERC-20兼容链上。不得不说,”世界计算机“这个梦想在现实可能还要经受更严酷的挑战。
存在即合理
我从雪球跟踪过来,三生有幸
zl3zbx
t8z4ke
lh34ro
9va9a5