匿名币,是保障隐私?还是危害社会?(下)丨 币橙研报

一直以来,如何保障人们的隐私是一个经久不衰的话题,互联网世界是这样,区块链世界更是。随着区块链和数字货币概念的深入人心,人们迫切想要创造一种Privacy Coin来达到真正匿名的效果,也想要打造一些Privacy Protocol来保密自己在数字世界的痕迹。

上期,币橙研究院着重介绍了匿名币由来的背景、发展,以及XMR、DASH的技术概览,本期我们将继续对Zcash、Grin的匿名技术进行介绍,同时分析匿名币在链上的数据。

3. Zcash(ZEC)

Zcash是世界上第一个使用零知识证明(zk-proof)系统的区块链,ZEC则是其链上原生匿名币,总量2100万枚,由2016年10月底上市,因为其当时未上线期货市值已超比特币、上线后上影线最高单价破百万,这一度引起整个币圈的轰动。ZEC也成为了币圈迄今为止,唯一一个名义市值曾经远超比特币的加密货币。和投机热潮带来的直觉相悖,Zcash实际上是一个学术氛围浓厚、极客聚集的实力派项目,在项目创立之初就得到了Vitalik顾问身份的支持,后来摩根大通区块链的安全层也使用Zcash的技术,原因就在于Zcash首次提出将零知识证明系统作为区块链隐私保护的解决方案。

那什么是零知识证明?简而言之,就是不直接向验证者提供有效信息,却能使验证者证明某个过程是存在的。举个生活中的例子,如果你在商场的临时密码储物柜里存了一个包,但是你不小丢掉了密码条,这时你要向保安请求帮助强制开锁。保安这个时候一定会问你,“包里有什么”,如果他开锁后发现你所说的内容是正确的,那么他就会认为你确实是包的主人,只是不小心丢掉了密码条;如果他开锁后发现你在说谎,那么他就会认为你不是包的主人,甚至有可能报警。这就是最活生生地运用零知识证明的案例。

说起Zcash的零知识证明,市面上许多文章的定义都出现了纰漏,混淆了zk-SNARKs和零知识证明系统(zk-proof)的概念。其实,zk-SNARKs是zk-proof的一种而非其全部,zk-proof还包含zk-STARKs、sigma protocol和上期研报提到的bulletproof等算法。对于加密货币中常用的三种zk-proof优劣对比,如下图总结,这个地方不再详细讨论。

那么,什么是zk-SNARKs呢?首字母缩略直译过来是“零知识简洁的非交互式知识证明”,具体来说,它会将你想要证明的内容转化为关于知道某些代数方程的解的等价形式,并通过计算-算术电路-R1CS-QAP的路径完成zk-SNARKs的算法。

接下来,我们仍然以Alice和Bob为例简述其原理。首先,同态隐藏(Homomorphic Hidings)可以做到Alice将E(x)、E(y)传输给Bob,Bob如果计算E(x+y)得到目标值(E是一个HH函数),则Bob无需知道x、y的具体值即可验证Alice传输了正确的x、y。第二,多项式盲估(Blind Evaluation of Polynomials)可以做到Alice有一个d项的多项式P,Bob在Fq有一点s(q代表质数,Fq是较复杂概念的数学集合),Bob想要在仅知道d不知道P又不暴露自己s的情况下得到E(P(s)),这时Bob需要将E(1)~E(sd)的值传输给Alice,由于E支持形如P(s)的线性组合式,Alice就能给计算E(P(s))并将结果返回Bob。那协议中如何保证Alice确实将计算得到的E(P(s))返回给Bob而没有说谎?于是,我们需要知识系数测试和假设(The Knowledge of Coefficient Test and Assumption)。Bob从Fq、组G中随机选择一个β和a,并计算b=β*a后将β-数对(a,b)传输给Alice,Alice只要同样回应一个β-数对就能证明Alice“知道”这一切。Alice需要从Fq选择一个γ,将(γ*a,γ*b)传输给Bob,由于γ*b=γ*(β*a)=β(γ*a),得到(γ*a,γ*b)=(γ*a,β(γ*a)),所以(γ*a,γ*b)也是一个β-数对。同样的道理,我们可以扩展成d个β-数对,从而验证Alice将正确的计算结果返回给Bob。

这时,我们已经掌握了一种基于椭圆曲线的算法,即不透露x、y具体值,仅凭借其多项式的性质验证x、y的值,再通过测试保证最后传输的值是正确的。之后,我们只需要再找到一种将计算转换为多项式的方法,也就是“QAP”法。QAP法通过算术电路(Arithmetic circuits)能够将欲证明的计算式,使用类似物理中电路分析的方法拆解成以“加”和“乘”为连接元的单位步骤,从而将普通的计算式翻译成我们所需的多项式。最后,zk-SNARKs又引入了一种叫“Pinocchio”的协议,用来验证Alice已经把其想要传输的内容通过QAP法转换成了多项式语言。如上,我们已经对zk-SNARKs的每一步骤做了简要的介绍,鉴于篇幅原因证明过程不便展开,想要深入了解的朋友可以登陆Zcash官网查看论文。

值得说明的是,Zcash不仅将zk-SNARKs的高度隐私性引入区块链,还考虑到现实监管的需要。因此Zcash的交易地址分为t-addrs和z-addrs两类。t-addrs的概念是形如BTC的普通交易地址,两个t-addrs之间的转账过程会公开在Zcash区块浏览器上,这是和比特币一样的。两个z-addrs之间的转账过程则是完全的匿名交易,会涉及到zk-SNARKs过程,外部观察者如果没有获得z-addrs的view key无法从区块浏览器中获知地址信息和转账金额,ZEC在隐藏资金池中流动。t-addrs给z-addrs转账的过程称之为t-z交易,即发送方的地址是透明的,但接收方有匿名的需求,ZEC资金流的方向是从公开透明转向隐藏资金池;z-addrs给t-addrs转账的过程称之为z-t交易。

从技术设计上看,Zcash是近乎完美的,不但有强技术理论的支撑,还给用户不同的选择,支持公开交易一定程度拥抱监管条例(这也是Coinbase于2018年底决定上线ZEC的重要原因)。可实际情况真的如此吗?

其实,Zcash的z-addrs使用率偏低,甚至纯匿名交易金额不足整个Zcash网络链上交易金额的1%,换句话说,纵使Zcash的匿名功能做的很厉害,也并没有什么人真正使用它。

在笔者看来,这其中的原因主要有三:一是Zcash的纯匿名交易对用户并不友好,需要较高的硬件要求和较长的等待时间以生成交易,同时初期命令行式的传输手段门槛太高。好在这一情况正在得到改善:Zcash于2018年10月发布了Sapling升级,现在Zcash的区块交易数据变得更小,对硬件的要求也降低了,平板和移动端的用户也逐渐能够使用纯匿名交易。二是个人对数字世界的隐私保护意识仍没有被唤醒,这导致普通用户的纯匿名交易实际需求并不高。三是用于灰色地带的纯匿名交易更倾向于比特币(+第三方混币器)而非匿名币,这一点在研报上期的silk road数据中有所展现,说到底灰色交易的本质是交易,交易最重要的是共识,匿名的重要性一定是在共识之后的,并且匿名的手段是多样的。所以就算使用匿名币,Zcash仍然有Monero、Dash这样的竞品。

非常有趣的是,Zcash引入的zk-SNARKs在区块链中的应用远不仅隐私保护,因为其技术允许信息被压缩成相同大小的证明,而无视输入量的特性,能够大规模验证交易,因此可以用于扩容方案。V神还发表过相关的论文,表示曾考虑ETH 2.0使用SNARK/STARKs提高以太坊的扩展性,而无需Plasma或链下方案,不过后来因为zk-SNARKs的扩容合并计算量过大、仍处于摸索阶段等问题暂时被搁置。

最后需要备注的是,Zcash将于2019年7月中旬进行首个“友好分叉”,届时持有Zcash可分得Ycash糖果,Ycash主要对Zcash的创始人挖矿抽成等区块奖励问题进行了修改。

4. Grin

相比于前三个老牌匿名币,Grin是2019年上线的新秀,是第一批实现MimbleWimble协议的加密货币,也是一个没有ICO或预挖、由匿名团队和社区驱动的自治矿币。Grin使用双重PoW机制,cuckARoo29叠加cuckAToo31算法,一个对ASIC矿机友好,另一个对CPU/GPU矿机友好,从而达到对整个矿圈生态友好开放的态度。

上线之后,Grin的通胀方案一直被投资者诟病。Grin保持恒定的出块速度,1分钟出1个块,每块包含60个币的区块奖励。所以,由于Grin的初始流通量极小,导致其初期的通胀率非常高,而到了后期基数变大,通胀率无限接近于0。根据计算Grin的通胀率第二年100%,第三年50%,第四年33.3%,以此类推前8年的平均通胀率在40%左右,同期较BTC高8%;而第二十年Grin的通胀率下降到5%左右,虽明显高于挖矿20年的BTC,但总体低于社会平均通胀水平。

其实BTC在前4年的通胀率也不低,第二年也达到了100%;Zcash在早期的通胀率也比较可观。因此BTC和ZEC在二级市场的初期表现可能对于投资Grin有借鉴意义:BTC在前4年价格波动更加剧烈、ZEC在2017年的牛市中虽未掉队但也未跑出超额收益。笔者认为,初期的高通胀最重要的是影响了投资者的心理预期,其实对照一轮周期(或者说对照“有限的加密货币投资生涯”),每一个加密货币的流通量在特点时间段以前都是恒定的,但过高的初期通胀率会抑制大众的购买情绪、激发矿工的抛售情绪,从而对短期价格形成压制。单就有雄厚实力两手布局“矿场+二级市场”的资本方来讲,高通胀并非是阻止他们长线投资的理由,因为他们能够享受通胀带来的币本位收益。在笔者看来,高通胀币真正的阻力是来自市场情绪面的压抑,这导致游资难以进入形成市场合力。

Grin没有“地址”的概念,这源于其第二大特点也就是运用了Mimblewimble协议,这是一种兼备隐私性、不可替换性(fungibility)和一定扩展性的加密学协议。接下来,我们仍以Alice和Bob为例简述Mimblewimble协议的原理。首先,假设一笔交易的输入金额为V1、V2,输出金额为V3,我们知道有V1+V2=V3,那如何对这个信息进行加密呢?我们引入ECC椭圆曲线上一点H,将等式两边同乘H,有V1*H+V2*H=V3*H,这便可以“简单”地对金额进行隐藏。不过,外部观察者仍然能够通过穷举、知晓V1输入等方法破解金额。所以,我们又引入一个点G和私钥r,r是Mimblewimble协议的“灵魂”,被白皮书称作为“致盲因子(blinding factor)”。于是在Mimblewimble协议中,每一个输入/输出都以r*G+V*H的形式展现出来,这种形式叫做“Pedersen Commitment”,沿用上文的举例,有(r1*G+V1*H)+(r2*G+V2*H)=(r3*G+V3*H)。为方便理解,重新申明一遍,r是致盲因子、v是交易金额、G、H是椭圆曲线上的点。

如果Alice想要给Bob寄3枚Grin,此时Alice会选择一个致盲因子(假设这个私钥是113),Bob也会选择一个数(假设是28),根据上文输入/输出形式,区块链上最终有(113*G+3*H)-(28*G+3*H)=(85*G+0*H)。Mimblewimble的奥秘正在于此,我们发现只要最终的V=0,也就是说输入和输出之和金额为0,这时等式的结果85*G应是椭圆曲线上的另一点。然而,这不是一个完全等价的过程,也就是说最后的公钥如果在椭圆曲线上,也不能保证交易合法。原因在于,我们忽略了一种情况:Alice只有一枚Grin却想要给Bob寄3枚Grin。为了解决这个问题,我们引入一种叫rangeproof的零知识证明算法,它能够做到在不揭晓具体金额的前提下,证明交易金额的合法性。

以上就是Mimblewimble协议最核心的原理,即sum(outputs)-sum(inputs)=sum(kernel_excess),括号里的式子均形如r*G+V*H,但这还不是该协议的全部。同理,这个过程并非完全等价,对于给定的一组outputs、inputs和交易kernel,我们有可能重构一笔新的伪合法交易。于是,Mimblewimble协议引入了offset的概念:每一笔交易kernel后附带一个offset,有sum(outputs)-sum(inputs)=sum(kernel_excess)+kernel_offset,也就是把密钥k分解成k1*G(excess)和k2(offset)两部分,签名交易依然使用k1*G的部分,而单独的k2是不可能再被分解去重构交易的。(使用随机nonce签名交易、Schnorr challenge的过程非Mimblewimble协议的重点,故在本文已略,感兴趣的可自行查看技术文档)用大白话说,offset像一个防伪标签阻止了交易的重构。

Mimblewimble的巧妙之处在于,通过致盲因子既能证明交易方资产的所有权,又能将交易金额模糊化,同时用数学方法证明没有Grin凭空产生。它的意义不仅在于从根本上隐藏了交易方的信息,更对区块信息进行了压缩,提升区块链的运转效率,因为Grin不需要像BTC、ETH一样在全节点上公开保存所有的outputs和inputs。

5. 其他

还有一些“小”匿名币,本次研报没有详细介绍,这里的“小”并非指的是市值,而是技术概念和创新性上较“小”。例如,Verge(XVG)是DogecoinDark(译为“暗黑狗狗币”)采用Tor和i2p的多重匿名网络,主打超快速的小额匿名交易,拓展了不少商业和网络支付渠道,其中最重量级的伙伴包括世界最大的成人网站Pornhub。不少海外投资者戏称,终于能够使用匿名币在线购买Pornhub会员和成人内容了。Pornhub的母公司MindGeek甚至还将在其他子品牌支持XVG支付。有意思的是,在Verge与Pornhub的合作公布后,XVG币价大跌近25%。

还有Zcoin(XZC,中文“小零币”)采用zk-proof中的zerocoin算法,使用铸币、取回的流程隐藏交易方的信息,后来者有不少运用此算法开发匿名币,比如笔者在潜力币研报中提到的Veil。不过,zerocoin算法在学术上一直是有安全性方面的争议的。果不其然,2019年4月XZC曝出黑客伪造了不到流通量1%的假币,这一漏洞并非基于代码攻击,而是zerocoin算法内生性的证明逻辑漏洞。

另外一个匿名币Horizen(ZEN,原名Zencash)也运用了zk-proof技术,它是Zcash第一个“不友好分叉”Zclassic(ZCL)的分叉,也就是说ZEN是ZEC的“孙子”。ZEN亮点在于博采众长,既有ZEC强隐匿性、view key才能够访问交易的特性,又借鉴了DASH的masternode机制,将节点网络分为安全节点和超级节点,这其实还吸取了传统分布式网络的玩法。当然,抽丝剥茧其根本,还在于全球第一比特币信托Grayscale投资了ZEN,并将其写入了2018年度报告。

此外,2018年也涌现了一批小市值的匿名矿币,瞄准数据隐私保护这个领域,大多是把Bytecoin的cryptonote、Monero、Dash的代码和节点机制重新组合混合一下,其中的佼佼者包括Loki、Dero,限于篇幅在此不做详细说明。

6. 总结

上文主要简述了XMR、DASH、ZEC、GRIN四种匿名币不同的基本面背景和技术原理。交易的隐私保护无非是从发送方、接收方、交易金额三方面考虑。从设计理念上说,ZEC、GRIN的解决方案最切入问题的根本,因为ZEC使用零知识证明从源头隐藏了三方信息、GRIN直接忽略了地址的概念;XMR的随机隐匿地址和环签方案虽没有逃出思维定势,但匿名技术也有足够的技术支撑;DASH的方案最为朴素,只是采用混币的方式混淆视线,本质是降低解密的概率,不断量变使得破译困难,而不是像ZEC一样在源头质变。DASH最大的优势在于商业支付落地应用。从缺点上说,ZEC的纯匿名交易生成复杂,并且view key有被监管操控的风险;Grin的主要风险来源于Mimblewimble协议未经过长时间的检验;XMR的工程实践性和技术支撑都较好,没有明显的缺陷,非要说的话,如果接收方是新手用户,反复使用之前用过的隐匿地址,则会导致匿名效果的削弱;DASH的主要风险在于参与混币的人或轮次过少,有被解密的可能,其次主节点趋向中心化的问题不可避免。

四、Privacy Coin的数据

本节,我们将对匿名币的一些数据做出展示和分析。

1. 链上数据

第一,我们选取了DASH、ZEC、XVG的链上交易量、活跃地址等数据,分析其区块链网络的发展,Grin由于没有地址,故在本节没有被纳入分析范围。

(注:①XMR的实际交易金额数据在浏览器中因rct值的存在被隐匿。②为平衡偶然性,数据做了7天avg处理。③数据截取至2019年5月27日)

从上图能够发现,DASH的链上交易数和活跃地址数均位列第一,而其流通市值和XMR不相上下,故当前估值非常合理,或小幅低估;ZEC的链上交易数和活跃地址数均明显小于DASH、XMR,不过交易金额非常高,说明有一批人使用ZEC进行大额交易,故ZEC从现在的数据看并没有被显著低估,但比较有潜力;XMR各项数据都不错,实至名归;XVG则在用户数、网络使用频率上均显著弱于竞品。

2. 相关性

第二,我们截取了XMR、DASH、ZEC的价格相关性检验结果,考虑到Grin刚上线不久,价格波动的参考意义有限,因此没有纳入统计。

(注:蓝线代表DASH-XMR相关性曲线,灰线代表XMR-ZEC相关性曲线,紫线代表DASH-ZEC相关性曲线)

经Spearman检验,我们发现,XMR与ZEC的相关性最强,达0.828,不过这三者相互之间的相关性均在0.8左右,呈强相关的特征。此外,2016-2017年的牛市,币种之间的相关性总体呈上升趋势,匿名的联动性显著增强。

3. 币本位价格

第三,我们截取了XMR、DASH、ZEC上市以来的BTC价格,出于同样的原因,暂时排除了Grin的分析。

(注:褐色线段代表ZEC的BTC价格趋势线,浅蓝线段代表DASH的BTC价格趋势线,黄色线段代表XMR的BTC价格趋势线)

我们得出以下结论:

①ZEC在近3年没有跑赢BTC,可能的原因在于前期高通胀的预期压制(上文探讨过)、用户使用门槛过高的实际应用偏弱。

②DASH长线显著跑赢BTC,呈现较强的白马特质,可能的原因在于落地生态的丰富、主节点机制的涟漪效应。

③XMR略微跑赢BTC,但幅度不大,显示出在加密货币中较为稳健的资产特征,可能的原因在于门罗技术的实践性强、社区自治共识强。

④Grin虽然没有在统计中,但由于同样有新颖的概念(Mimblewimble)和初期的高通胀,因此ZEC的BTC价格走势可能对于Grin的长期投资有一定的借鉴意义。

五、Privacy Coin的展望

“方兴未艾”这个词用来形容现在匿名币的发展最合适不过,由于大众对加密货币的认知尚浅,更不用说将认识提高到保护自己链上交易的数据隐私的层面。所以,广义上的隐私保护类区块链项目在未来大有可为,只不过仅仅专注于“Privacy”的匿名币能否在未来公链、跨链生态中屹立不倒是值得思考的。当公链项目在部分交易引入匿名币的技术层时,纯粹的Privacy Coin是否还有足够的竞争力是有疑问的。

并且,政府的监管是不可能忽视的问题。虽然技术是分布式可匿的,但是监管层的管理往往是中心化的。比如Zcash即使做到了纯匿名交易,但当其涉及严重的非法案件时,执法机关必然介入,这时母公司和创始人仍有被控制风险。再举一个已经发生过的例子就是维基解密的“阿桑奇”。

所以,如何平衡“保障普通用户的财产隐私和链上数据隐私”与“现实世界政府对犯罪行为的介入和打击”是匿名币的终极难题。因为随着时间的流逝,技术难题总会被解决,而这种社会学问题是人类千百年来都在探索的话题。

另一方面,调研报告显示灰色地带的加密货币交易仍然更加青睐比特币,说到底还是因为一笔交易的基础是交易双方的货币共识,而第三方混币器等手段已经足够达到他们的匿名需求。

因此,Privacy、Fungibility之外,匿名币能否拓展成Store of Value的辅助手段,也许是社区突围的关键。

总结:

本期匿名币研报,币橙研究院按逻辑顺序介绍了Privacy Coin由来的背景、发展,简述了XMR、DASH、ZEC、GRIN这四大

匿名币的技术原理,并对链上和二级市场数据做了简略的分析,限于篇幅原因隐私保护协议和项目(如Orchid、Starkware、Keep、Zether、Origo等)未做介绍,后期会再做详细剖析。

【免责声明】

本报告只作项目分析、解读,仅供阅读者了解、学习资料,不作为投资参考的依据。本报告最终解释权归币橙评测所有。

币橙网

专注于区块链项目投研分析、测评领域。通过分布式、社区协作的方式形成评测报告,致力于公正,公平,客观的角度剖析区块链项目本身。目前拥有评测报告(文字报告)和庖丁解币(视频解读)。

+1
0