究竟Mimblewimble有什么魔力?为整个加密货币技术的发展带来了哪些更整体的突破?
关心加密货币圈的人都知道,2018 年底和 2019 年初有两个新币种 Grin 和 Beam 先后上线,即便不打算 ICO,仍从少数核心开发者开始,一路神奇迅速走红矿工圈、投资圈,乃至于成为整个加密货币社区的热议话题。Grin 还在上周由社区票选出了一个中文名字“古灵币”。
火红原因在于,Grin 和 Beam 在技术上运用了一个有着魔咒般名称的 Mimblewimble 区块链协议,解决了比特币交易缺乏隐私性的这一大弱点,也就是其每笔交易都有固定地址,只要通过分析比对,用户的身份与交易行为就可能被曝光。Mimblewimble 之名源自于《哈利•波特》小说里的咒语“混淆咒”,它的发明者更用了法语版伏地魔的名字 Tom Elvis Jedusor。
究竟 Mimblewimble 有什么魔力?它除了催生了两个新币种外,还为整个加密货币技术的发展带来了哪些更整体的突破?本周 DeepHash 专栏很高兴又邀请到一位新作者,精通密码学的国内知名公链初创公司 Conflux 研究总监杨光博士,来为本专栏读者讲解 Mimblewimble 的技术原理。而他归纳,MimbleWimble 最主要的三大贡献在于改善比特币的隐私性、可替代性和扩容性。
今年 315 不知道大家有没有看到一則新闻,当你的手机尝试连接 wifi 时,会把你的 MAC 地址广播出去。其他人可以用 wifi 探针来找到你的 MAC 地址。且因为这是跟手机绑定的,所以就能进一步对应到你的手机号和个人身份等信息。因此大家说,出门最好把 WLAN 给关掉,不要泄露自己的 MAC 地址。但如果是在比特币上,可能连探针都不需要,直接搜地址,就可以找到对应账户的交易记录了。账户上金额的流进流出所有人都能看到。
为什么?因为比特币虽被称为是加密货币,但其实没有做到对隐私的保护。
加“密”货币的迷思
现在,让我们来仔细想一下比特币到底用了多少密码学的东西?首先,比特币利用抗碰撞哈希引用来构建区块链的结构,同一个哈希引用不会对应于两个不同的区块;其次,比特币上的每一笔钱都由相应的公钥和私钥控制。除此之外,比特币并没有应用更多的密码学知识了。
因此,我们可以说,比特币的安全性是受到密码学的保护的,但是隐私性其实并没有。我们可以通过很多方式进行分析,例如根据交易的关联性,交易时间和交易的广播情况等,就可以找到账户对应的个人是谁,从而得知这个人在比特币上的交易情况等隐私信息。
Mimblewimble 的目的就是在改善比特币的这一问题。今天我们先来简单介绍一下 Mimblewimble 隐私保护技术的原理,再讲一下它在实际中应用的例子。
“伏地魔”创造的 Mimblewimble
Mimblewimble 其实不是一个传统的英文单词,它源于著名小说《哈利·波特》里“混淆咒”的咒语——施咒的效果是让对方说话变得含混不清,从而丧失念咒语施法的能力。当然,用在区块链里的 Mimblewimble,肯定不是这个咒语的原始意义了,它是指一个在比特币交易中保护用户数据隐私的提案。
这个提案最早以匿名的方式被发布在 Bitcoin 的 IRC Channel 里,作者化名为 Tom Elvis Jedusor,也就是法语版《哈利·波特》里伏地魔的名字。
其实最早提出的 Mimblewimble 方案并不完整,后来经过社区其他人的改进和完善才有了现在的版本。这是一个为基于 output 模型的公有账本提供加密货币隐私性的设计方案,并不涉及共识层,可用在几乎任何共识规则系统上。
跟比特币相比,Mimblewimble 最主要的优势在于信息的隐私性,如交易金额等隐私信息都被密码学技术保护。隐私性带来的一个直接好处,就是交易中的数字资产具有完全的可替换性——例如一些资金可能会被第三方认定为来路不明、甚至标记为赃款,在使用时有被拒收的风险,而收款方为了避免此类风险,就必须承担额外的验证成本。
另一方面,比特币等非匿名数字货币的交易历史是完全透明公开的,如果对每一笔交易的金额和去向进行分析,事实上可以得到很多隐私信息,这也阻碍了它们成为更广泛使用的交易媒介。
其实远在比特币之前,就有一种古老的交易形式可以实现对隐私性非常好的保护:交易双方将钱藏到袖子里达成交易,这样即使其他人目睹了这笔交易,也无法得知交易的金额等隐私信息。但是直接将这样的思路照搬到区块链里并不容易。因为在一个公开的账本里,每一笔交易的合法性需要得到其他人的验证,以确保交易的发起方确实授权了这笔交易,并且这笔交易没有造成恶性通货膨胀。
怎么样能既把一笔交易的具体信息“藏到袖子里”,同时又允许其他人验证交易的合法性呢?这即是 Mimblewimble 所解决的问题。
中国观察