结舌咒
2016年8月的一个夜里,自称majorplayer的人在比特币巫师频道丢下暗网链接便消失,留下一篇署名伏地魔的论文。从比特币账本为何藏不住身份,到同态加密隐去地址与金额、零余额账户交易不必存储,再到戴巫师面具的密码朋克把MimbleWimble写成Grin,满屏都是哈利波特彩蛋。

最近加密货币领域一个叫做MimbleWimble东东貌似火起来了。

MimbleWimble是《哈利波特》中的巫师们施展法术所用的诸多咒语之一,叫做结舌咒 — — 可以使对方的舌头打结儿。巫师们对战的时候,祭出MimbleWimble这个咒语,对手巫师立马舌头打结,要说的咒语就说不出来了。
为什么结舌咒会在出现在Crypto Currency领域?这要从2016说起。
那是8月初的一个仲夏之夜,在莎剧中,这个点儿正是精灵鬼怪四处游荡的时候,IRC的比特币巫师频道#bitcoin-wizards里一个身影飘然而入:
21:35 -!- majorplayer [8ae5c065@gateway/web/freenode/ip.138.229.192.101] has joined #bitcoin-wizards
*21:35 < majorplayer> *hi, i have an idea for improving privacy in bitcoin. my friend who knows technology says this channel would have interest http://5pdcbgndmprm4wud.onion/mimblewimble.txt
21:35 -!- majorplayer [8ae5c065@gateway/web/freenode/ip.138.229.192.101] has quit [Client Quit]
这位自称“重要玩家”的majorplayer只扔下一句话和一个链接,就隐身而去:大家好,我有一个改进比特币隐私特性的想法,我一个懂技术的朋友说这个频道里的人可能感兴趣。
待在频道里的“巫师”们立即查看了这位自称”重要玩家”给出的链接。这是一个暗网的网址。没错,是纯文本文件,安全性没问题,不是用来钓鱼的。文件内容是一篇论文,里面有一些关于椭圆曲线加密学的术语和公式,作者叫做“Tom Elvis Jedusor”。
看过哈利波特的人知道,里面的大反派YOU-KNOW-WHO伏地魔,真名叫汤姆里德尔,法语就是Tom Elvis Jedusor。这显然是个假名。这是一篇匿名发表的增强比特币匿名性的论文。论文第一部分的最后一段,伏地魔写到:I call my creation Mimblewimble because it is used to prevent the blockchain from talking about all user’s information。我把这个想法称为“结舌咒”,因为它用来防止区块链”说出”任何用户信息。
比特币用一个叫做区块链的公开数据库存储所有交易数据,也就是账本。账本里的每条交易数据中,各交易方的地址和交易额都是公开、未加密的。
首先,这会导致匿名性不够。设想一下,如果Alice从交易所提现到一个比特币地址,那么交易所就会把这个地址与Alice真实姓名挂钩;如果Alice张贴一个比特币地址在网上进行募捐,通过爬虫和一些分析手段,可以把这个地址和Alice和网上身份挂钩;或者,Alice通过即时消息软件发给比特币地址给朋友,可能会有监听者能把这个地址和Alice的身份对应起来。如此等等,可见比特币的匿名性并不好。
事实上,某些国家的司法部门和税务部门已经通过一些技术手段把相当大的一部分比特币交易实名化了(你以为FBI抓丝绸之路Silk Road创始人Ross Ulbricht只是靠卧底吗?)。虽然这不是发明比特币的Cypherpunk们所希望的,但是在比特币诞生的时候,有更重要的问题需要考虑,匿名性和隐私保护能做到这一步已经不错了。
而在伏地魔提出的Mimblewimble设想中,每个交易的双方地址和交易额都是加密的。直接用加密的结果进行计算,就是这么神奇。这叫同态加密。涉及到伽罗瓦、离散对数问题、椭圆曲线密码学等内容,这里就不详述了。
比特币的另外一个问题是,所有要检查账本的人必须下载全部数据,并从头计算历史上的所有交易,才能确认账本上每个账户(比特币地址)的余额真实性。而利用伏地魔在MimbleWimble论文中提出的方法,绝大部分余额为零的账户的交易都不用计算,甚至不用存储。这样,账本占用的空间就小很多,能够极大的降低比特币全节点的配置要求,进而提高比特币去中心化的程度。
总之,Cypherpunks们创造比特币的初衷主要是抗审查,包括隐私保护和不受中心控制(去中心化),伏地魔在MimbleWimble中提出的设想在这些方面都有极大的改进。而且Cypherpunks们不是说说而已的,Talk is cheap, show me the code,很快一位自称“Ignotus Peverell”的程序员在IRC的比特币巫师频道里说,他已经在github上创建了一个叫做grin的项目,正在将MimbleWimble的想法付诸实施。Ignotus Peverell是哈利波特中,邓布利多给哈利波特讲的“三兄弟的传说”故事中的老三,是哈利波特的第N代祖先,有一件隐身斗篷,一代一代传给了哈利波特。接着“Garrick Ollivander”参与进来。这位是哈利波特中最优秀的魔杖制造大师。陆续又有新的加入者。https://github.com/mimblewimble/grin
一群戴着巫师面具的Cypherpunks们,以巫师的名义,匿名创建着致力于匿名性的网络。经过一年多的开发,Grin的主网于2019年1月15日上线。
Grin中的哈利波特巫师世界术语:
Protocol: MimbleWimble 结舌咒(tongue-tying curse)
MimbleWimble creator: Tom Elvis Jedusor伏地魔的法语名 (French name of Voldemort)
Grin founder: Ignotus Peverell隐身斗篷的拥有者,哈利波特的N代祖先(invisibility cloak owner)
Grin infrastructure: Vault713古灵阁银行的高安全性金库 (high-security vault at Gringotts)
Grin: 古灵币,古灵阁的简写short for Gringotts,另外一个意思是露齿而笑😄
Galleon Exchange (Grin liquidity)为Grin提供流动性的加隆交易所:加隆是最值钱的巫师币 Galleon is the most valued coin of the wizarding currency
The Floonet (Grin’s Testnet)Grin测试网:飞路网,巫师世界中的交通网络,链接每一个巫师家的壁炉。Wizarding Transport system
Cuckoo,杜鹃鸟,Grin挖矿算法: 来自哈利波特作者的新作杜鹃的呼唤The Cuckoo’s Calling by J. K. Rowling
(本文最初写于2019年1月6日)
原载于微信公众号「网安志异」,2020-02-02 · 原文
留言