美文网首页区块链研习社区块链大学
简介新一代隐私币Grin和新区块链协议MimbleWimble

简介新一代隐私币Grin和新区块链协议MimbleWimble

作者: 区块老韭菜 | 来源:发表于2019-01-17 00:27 被阅读46次

    在熊市寒冬中,一个名为Grin的新加密货币主网在今天上线了。

    看到国外的Telegram社群在谈论这个新货币还有MimbleWimble谈得很凶,我花了一些时间整理目前所看到的可靠信息,让大家理解这个新一代的区块链和建立在其上的第一个应用:Grin 。

    MimbleWimble

    MimbleWimble是个专注在于可替代性、隐私性与可扩展性的区块链协议,他缘起于2016年7月,有位化名为Tom Elvis Jedusor的人在IRC channel #bitcoin-wizard上提出了一种新的方式,来解决比特币和区块链小区所面临的隐私以及可扩展性的问题。而Mimblewimble的起源据说是来自哈利波特,就是一个念了让人说不出话的咒语。

    在Tom Elvis Jedusor的白皮书中,他说到了比特币现存的问题:

    比特币是第一个广泛使用的金融系统,所有必要的验证系统状态的数据,都可以由任何人以密码的方式来进行验证,的问题在于每个想要检查的人都必须下载完整本交易账本,其实对于想要加入节点的人而言是件比较吃力的事情。因此,如果我们负责查账的人只需要检查总输入和输出的数据,那就轻松多了,但在比特币的架构下,这个问题很难被解决。同时账本中其实仍然会曝露很多个人的信息,例如发送方、接收方的地址以及传送金额等在公链上大家都看的到,这使得隐私这件事其实受到挑战。

    后续Greg Maxwell等BitcoinCore的专家又继续针对这个议题提出了 "CoinJoin"和 “confidential transactions”等专案去延伸这个议题。MimbleWimble最后开发出了解决"隐私泄漏"还有"需要加载大量不必要信息"等问题的新区块链协议,并且确保两个不让货币崩溃的条件:

    一、能够验证接收的币的数量与发送的币的数量相等

    二、我只能从自己的银行账户转账给我要的人

    透过了椭圆曲线加密技术(Exploring Elliptic Curve,ECC),他们成功了隐藏了交易双方是谁,并且能够验证所有权;同时,也透过了ECC隐藏了交易金额,并且确定了发送的币和接受的币价值相等。虽然椭圆曲线很复杂(有兴趣深入研究的可以看官方推荐的文件,或者之前CryptoCow有篇好文),但其实概念很简单: 那就是要乘出两个数的积是多少很容易,但看到一个数要拆解成唯一两个乘他的数却很困难

    (k+j)*H= k*H + j*H

    在ECC中,我们如果选择一个很大很大的是数字k作为私钥,而k * H作为相应的公钥,我们难以推导出k,在上面的算式中kj都是私钥。当然这是简化的概念,但透过这样的方式,我们能够用未知数去隐藏信息,同时要破解也相当困难。

    隐藏实际交易值:等式平衡

    Pedersen Commitment是他们用来确保交易值正确,同时能够隐藏金额的方法,他们的方式是利用椭圆曲线,外加一个来捣乱的很大很大的数字。其实也有点故技重施,在一个Mimblewimble交易中,总共会有两个edersen Commitment一个用来纪录进入交易的货币数;另个则用来记录交易

    算式如下:

    (ri1*G+ vi1*H) + (ri2*G + vi2*H) = (ro3*G + vo3*H)=ro3*G + vo3*H)

    [(发送货币数量*大数1)+(私钥1*大数2)]+[(收到的货币数量*大数1)+(私钥2*大数2)]

    并同时要求ri1 + ri2 = ro3,这个方式可以让交易在完全不知道交易实际值的情况下,依然能够被验证。

    所有权:透过一个非常大的数字做为私钥,也能够使得所有权在椭圆曲线中获得验证

    Cut-through:压缩账本达到可扩展性(scalablility)

    最后再附带提一个我个人觉得MimbleWimble非常有趣的地方,就是他可以透过核销(cut-through)的方式,去压缩链上面所需存储的数据,并且保证总输入等于总输出。大致来介绍他如何去运行,官方介绍cut-through的示意图满烂的,我觉得有位叫做 Jordan Clifford的大大讲的图很传神:

    在未经核销前,整个区块的状态大致如左边,但其实我们可以发现,如果要使最初的Input1等于最后的输出,那其实在这个等式中,我们是不需要纪录Output1的,他同时会出现在等式的两边

    Input1+Output1=Ouput1+Change1+Output2+Change2

    以此类推,当产生10000笔交易甚至更多时,我们其实就能够减少更多的储存数据,让整个区块能变得更紧凑、更有扩展性,因为让整个区块传输的数据变得很小。这个方式同时能够让MimbleWimble提供很好的隐私保证,让某笔交易不会在区块链中被揭露身分,因为无法区分单笔交易。但也同时可以透过密码学来保证交易的安全性。

    综合而言,我认为MimbleWimble专门解决的是加密货币所遇到的问题,但像智能合约,或者区块链可作为不可窜改的追溯账本等特性,就不是MimbleWimble可以满足的。

    Grin

    Grin是一个建立在MimbleWimble协议上的一个应用:隐私币(另一个MimbleWimble上的项目叫做Beam) ,基于建立在MimbleWimble上,他能够保证隐私,并且维持点对点的匿名传输。同时比较特别的是,Grin是一种小区驱动的加密货币,并宣称能够保有隐私性、规模性以及维持去中心化,Grin不会进行ICO或者基金会税(foundation tax),也不进行預挖矿,目的是为了能让Grin币不受特定单一实体操作,成为真正的去中心化加密货币。

    目前他们在官网上有很多周边的衣服啊等等的商品,可以购买当作捐赠发展基金

    像比特币一样,Grin使用POW共识(classical Nakamoto consensus),但是使用了完全不同的演算,我们可以将它称作Cuckoo Cycles,是个可以抗ASIC的算法。

    目前最红的议题是Grin的挖矿议题,Grin在1/15号正式开挖,要加入Grin挖矿的先决条件是并需要有Linux (x86–64 only) or MacOS的系统,比较特别的是Grin目前释出的挖矿算法分为两种,分别是对GPU友好(CuckARoo)以及对矿机友好(CuckAToo),所需规格如下:

    CuckARoo(or ASIC Resistant) :6GB+GPU(目前NVIDIA的运行状况比AMD好)

    CuckAToo(or ASIC Targeted) :11GB+ GPUs.

    目前差不多写到这边,如果繁中过几天还没有挖矿文章,我会试着写写看,看国外不少矿池蠢蠢欲动哈哈。

    参考数据:

    [1]Mimblewimble介绍

    https://github.com/mimblewimble/grin/blob/master/doc/intro.md

    https://medium.com/beam-mw/mimblewimble-explained-like-youre-12-d779a5bb483d

    [2]关于椭圆曲线

    https://medium.com/cryptocow/exploring-elliptic-curve-pairings-e322a3f029e8

    https://codertw.com/%E7%A8%8B%E5%BC%8F%E8%AA%9E%E8%A8%80/43964/

    [3]挖矿官方文章

    https://github.com/mimblewimble/docs/wiki/How-to-mine-Grin


    聲明:本文存就技術與資訊分享的角度,不支持購買任何非法的虛擬貨幣

    相关文章

      网友评论

        本文标题:简介新一代隐私币Grin和新区块链协议MimbleWimble

        本文链接:https://www.haomeiwen.com/subject/rzqbdqtx.html