找回密码
 立即注册

手机号码,快捷登录

靳毅:区块链是多种技术的集大成者

小盈| 2019-11-13 09:02 阅读 3158 评论 0

一、数字货币初探

目前,数字货币尚没有公认的标准定义。从广义上讲,数字货币泛指一切以电子形式存在的货币。狭义的数字货币一般特指以非对称密码技术为基础的“密码货币”,这也是本文的主要研究对象。按照数字货币的发行者不同,可以被分为私人发行、不受法律保护的私人数字货币(比特币、以太币等)和中央银行发行并进行监管的法定数字货币(央行数字货币)。

随着计算机和互联网技术的迅猛发展,除了数字货币外,还出现了多种新的“货币”概念,如虚拟货币和电子货币。三者概念既有不同也有重合之处,法定数字货币和电子货币因均由央行发行容易被混淆,私人数字货币和虚拟货币因均由私人机构发行容易被混淆。我们首先对这些概念进行区分,以界定本文所研究的数字货币的范围。

电子货币和法定数字货币。1)电子货币是指法币的电子化,即纸币在银行或其他相关金融机构将法定货币电子化和网络存储和支付的形式,并没有创造新的货币类型,只是现有货币的电子形式。按照其发行主体的不同又可分为银行卡、储值卡(如公交卡、购物卡)和第三方支付(如支付宝、财付通)等。2)法定数字货币本身是货币(属于M0的范畴),与纸币、硬币共同构成现金,不仅仅是支付工具,如中国央行即将发行的央行数字货币。

虚拟货币和私人数字货币。1)虚拟货币通常指基于网络的虚拟性,由网络运营商提供发行并应用在网络虚拟空间的类货币,如腾讯公司发行的Q币,各大网游公司发行的游戏币等,一般只在自身生态内流通,政府出于稳定金融体系的目的规定其不可与法币双向流通。2)私人数字货币是指无发行主体或私人机构发行的可以被用于真实的商品和服务交易的“货币”,其不仅仅局限在虚拟空间中,如比特币、以太币等。

二、区块链:多种技术的集大成者

数字货币的产生及应用涉及复杂的底层技术,在梳理其发展历史之前,通俗的理解这些技术是必要的。

与名噪一时的比特币等数字货币一起声名鹊起的,莫过于区块链技术。也正因为区块链经常与比特币一起出现,所以很多人容易将两者混淆,更有甚者认为区块链就是比特币。

事实上,比特币只是区块链技术的一个具体应用,区块链不仅可应用于比特币等数字货币,还可以应用于所有数字化的领域,如数字票据、征信、政务服务、医疗记录等。数字货币也不一定应用区块链技术,我国央行相关人员也多次指出“法定数字货币未必使用区块链技术,区块链只是央行数字货币备选的底层技术之一”。那么,区块链技术究竟是什么呢?

当前,对于区块链的定义,业界尚未有唯一的明确答案。

从形式上看,区块链(BlockChain)是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构。每个区块(Block)主要包含三个部分:1)数据信息,具体的信息类型与区块链协议规定相关。例如,在比特币系统中是转账信息,包括付款人、收款人、比特币数量等。2)哈希值,表明区块内包含的所有信息。3)哈希指针,包含上一个区块的哈希值,表明上一个区块的信息。哈希指针可以将区块一个个连接起来形成“区块链”。

区块链 + 数字货币

从技术本质上看,区块链可以理解为一个由多个节点共同维护、能够系统运转的数据库储存系统。它是多种技术的集大成者,包括去中心化技术(P2P网络技术和分布式存储)、信息加密技术(密码学哈希函数和非对称加密技术)、共识机制(拜占庭容错算法、工作量证明机制、权益证明机制)等。

2.1、去中心化:P2P网络架构+分布式存储

P2P网络是区块链实现去中心化的基础,解决了节点与节点之间数据传输的问题。P2P网络(Peer-to-peer networking)又称对等网络,是一种在对等者(Peer)之间分配任务和工作负载的分布式应用架构。在目前网络中传统的服务端/客户端(Server/Client)结构中,数据传输传输需要经过一个中央服务器。

以发微博为例,用户发送的图文先通过网络传输发送至新浪服务器,新浪服务器再将图文发送给其他用户。在P2P网络中,不存在中央服务器这样的中心化节点,每个节点都是对等的,节点之间可以直接进行数据传输。

根据网络中不同节点之间如何建立连接通道,P2P存在四种不同的模式,不同的区块链应用可能采用不同的模式,具体分为:集中式、纯分布式、混合式、结构化模式。

1)集中式P2P网络是指存在一个中心节点保存了其他所有节点的索引信息,但数据传输无需经过中央服务器,可以直接点对点传输。例如,MP3共享软件Napster就使用这种P2P系统,Napster存在一个中央索引服务器保存所有用户上传的音乐文件索引和存放位置信息,当某个用户A需要某个音乐文件时,首先在Napster中央服务器进行检索,检索到存有该文件的用户B后,A可以请求B直接将文件传输给A。

2)纯分布式P2P结构式不存在中央服务器或中心节点,节点之间建立随机网络。数据传输时,某节点将信息传送给相邻节点,以此类推,以扩散的形式在网络中蔓延,直至传送到另一节点。比特币区块链即使用的这种P2P系统。

3)混合式P2P网络将集中式和分布式结构混合,网络中存在多个超级节点组成分布式网络,每个超级节点式则由多个普通节点与其组成局部的集中式网络。从Libra发布的白皮书可以推断,Libra即使用这种P2P系统。

4)结构化P2P网络是指所有节点按照某种结构有序组织,如环网网络和树状网络。

区块链 + 数字货币

P2P技术解决了点对点之间数据传输问题,而分布式存储解决了去中心化系统中数据储存的问题。在传统的储存方式中,所有数据都集中储存在一个中心化的节点中,而在P2P网络中,不存在中心化节点,需要使用分布式存储技术。简单来说,分布式存储就是将数据存储在多个计算机节点中。应用到区块链中,即各节点进行信息传输时,需要将该信息广播在系统中,收到信息的节点均储存该条信息。

区块链 + 数字货币

2.2、信息加密及验证:非对称加密技术+密码学哈希函数

在P2P网络系统中,节点之间数据传输采用广播的形式,例如A节点向B节点传输信息,A节点首先向相邻节点扩散信息,以此类推,直到信息传送至B。但在此过程中存在两个问题:1)当节点A向节点B发送信息时,由于数字信息可以轻易复制,用户身份容易被冒充或伪造,节点B如何验证信息发送人的身份是否是A;2)信息在传输过程中可能被恶意篡改,如何保证信息在传输过程中没有被篡改。

非对称加密技术可以用于身份验证。非对称加密又称公钥加密,与对称加密只有一个密钥(该密钥可以加密也可以解密)相比,非对称加密具有两个密钥:公开密钥和私有密钥。公钥和私钥是一对,如果用私钥加密,只有对应的公钥才能解密。公钥是公开的,可以表示节点的身份,发送者在发送信息时用私钥将信息加密,接收者收到信息后,用公钥进行解密,即可确认发送者的身份。

哈希函数的性质可以用于验证信息是否被篡改。哈希函数y=H(x)可以将任意长度的信息(输入值x)转化成固定长度的二进制字符串(输出值y),该输出值称为哈希值或散列值。哈希函数具有三个性质:1)不可能存在两个不同的输入值x对应同一个输出值y,即不可能有不同的信息对应同一个哈希值。2)输入x很容易通过哈希函数转化成y,但逆向计算可不行,即已知输出值y,不能计算出输入值x(只能使用穷举法,但解空间为2256)。3)输入值x的微小变动,哈希函数的输出值y都大相径庭且没有规律。

区块链 + 数字货币

哈希函数的三个性质可以验证信息是否被篡改,具体流程如下:首先,发送者将信息输入哈希函数,得到一个哈希值,并将哈希值用私钥加密。其次,发送者将原始信息、加密的哈希值以及公钥一起发送给接收者;最后,接收者收到后用公钥将哈希值解密,并将原始信息输入哈希函数,将得到的哈希值与收到的哈希值对比,即可验证原始信息是否在传输过程中遭到篡改。

区块链 + 数字货币

2.3、共识机制:拜占庭容错算法、工作量证明、权益证明

节点之间数据传输问题解决后,数据存储问题接踵而至。在中心化存储系统中,中心机构负责数据存储的完整性和准确性,而在分布式存储系统中,各节点记录、储存数据可能会出现以下问题:1)信息在记录和存储时被恶意篡改;2)信息无效、损坏或丢失,比如,由于通信网络无法正常工作,导致部分节点没有收到信息;3)信息传送延迟,由于各节点的地理位置、网络状况不同,不同节点对某一条信息收到的时间不同。

这些情况的存在,导致各节点对信息的记录和存储无法达成一致。解决方案是各节点向其他所有节点传递将要储存的信息内容,各节点根据收到的消息采用少数服从多数的原则来确定数据存储的一致性,但这一过程仍可能存在恶意节点向其他节点传输错误节点以破坏一致性,这就是著名的“拜占庭将军问题”。

“拜占庭将军问题”是分布式系统达成一致性的重要难题,由Leslie Lamport等科学家于1982年提出。基本思想如下:拜占庭帝国各军队分别驻扎在相隔很远的营地,只能靠信使传递消息,由于至少一半以上的军队同时攻击才能能够攻下帝国,将军们需要就是否攻击敌军达成共识。军队中可能存在叛徒,叛徒可能擅自变更进攻意向或进攻时间,以破坏将军之间的共识。

例如,共有11名将军,其中有一名反叛者,如果5名将军选择“进攻”,另外5名选择“撤退”,反叛者在收到这些消息后,向选择进攻的将军发送“进攻”消息,向选择撤退的将军发送“撤退”消息。由于反叛者的存在使得将军无法形成共识,5名将军选择“进攻”,5名将军选择“撤退”,结果必然是失败。

对标到分布式存储系统中,各营地驻扎的军队即是各个节点,节点之间要对某一信息达成共识,需要向其他节点传送自己记录的信息,达到半数以上认可的信息即可作为统一的储存信息。但在此过程中,可能存在恶意破坏一致性的节点。例如,某个节点,向网络中一半节点发送“A”信息的同时,向另一半节点发送“B”信息,使得尽管只有一个恶意节点,系统也无法形成统一的数据库。因此,需要一种机制以保证即使存在恶意节点,其他节点依然能够达成一致结果。

因此,共识机制是区块链技术的核心问题。目前,主流区块链的共识机制主要有三种,分别为拜占庭容错机制、工作量证明、权益证明。

(1)拜占庭容错算法

1999年,Miguel Castro和Barbara Liskov提出了实用拜占庭容错算法(Practical Byzantine Fault Tolerance,PBFT),可以保证系统中的恶意节点不超过1/3,即可达成共识。其基本思想为各节点收到其他节点发送来的信息后,并不立即根据多数做出判断,而是将收到的信息再传给其他节点,通过信息交换做出一致决定。在这种情况下,只要系统中恶意节点不超过1/3,则能解决拜占庭将军问题,即当超过2/3的节点宣布储存的信息一致时,即可实现共识。

为什么恶意节点不能超过三分之一?原因如下:假设系统中共有n个节点,其中恶意节点有f个,则忠诚节点有n-f个,忠诚节点发出n-f个真实信息。若通信网络中不存在信息传递延迟现象(各节点能立即收到其他节点发来的信息),要求真实信息的数量要大于错误信息时n-f>;f(即f<;1/2n),才能达成一致,也就是当收到一半以上的一致信息时,即可达成共识。但现实情况下,信息传递会出现延迟现象,在收到的n-f个信息里,可能最多有f个恶意节点发的错误信息,因此至少有n-f-f条真实信息大于错误信息时,才可以达成共识,即n-2f>;f,可得出f<;1/3n。

(2)工作量证明——比特币区块链的共识机制

工作量证明(Proof of Work,简称PoW)由比特币引入,可以保证恶意节点不超过51%即可达成共识,是目前区块链最经典、也是最久经考验的共识机制。其基本流程如下:

1)当节点进行数据传输时,传输的信息不会被各节点立即储存,而是被标记为“未确认的”存入内存池。

2)区块链系统中每隔一段时间产生一个新的区块,不同的区块链协议产生的时间不同(例如比特币区块链中是10分钟产生一个区块)。各节点在内存池将收集所有未确认的信息,打包在新的区块中,构造出候选区块。由于我们上述提到的问题,对于给定的信息集合,各节点区块中打包的信息可能不一致。

3)区块打包信息后会设置一个“密码谜题”,即在信息后添加一个随机数,然后对整个信息列表(包括随机数)使用哈希函数转换成一个哈希值。

4)各节点需要利用所得到的哈希值计算出该随机数。根据上文所提到的哈希函数的性质,逆向计算不可行,只能使用穷举法,因此,要计算出这个特殊数字需要进行海量的计算,这个过程就叫做工作量证明,可以简单理解为解“数学谜题”的过程。

5)当网络中某个节点率先找出随机数时,该节点会向全网广播,其他节点进行有效性进行验证,当51%的节点验证通过后,则区块会被自动链接到区块链的后面,无法通过验证的将重新进行计算。率先完成工作量证明的可以获得一定的奖励,既能激励全网各节点进行主动存储信息,又能避免节点存储错误信息——因为验证失败后的收益远远小于其成本。

例如在比特币区块链中,区块中包含一定量的币基,既率先找出随机数的节点通过验证后,即可获得区块中的新币奖励。由于这个过程与挖金矿有相似之处,因此使用PoW机制的数字货币的产生过程被称形象地称为“挖矿”。

区块链 + 数字货币

PoW的意义在于增加了各节点广播信息的成本,且该成本远大于发布虚假信息的收益,各节点就不会有做“叛徒”的动机。因为如果节点对信息有任何的修改,就会完全改变哈希值,哈希函数虽不易逆解但容易验证,当无法通过51%节点的验证时,该节点必须重做工作量证明,既会花费大量成本,又会降低率先完成的概率从而降低获得奖励的概率。其次,由于率先算出谜题的节点是随机的,所以我们无法得知下一个争得记录权的节点,各节点也无法掌控自己将获得哪个区块的记录权。

以上过程通过PoW机制解决了单个区块内信息储存的共识问题,但不能保证系统(整个区块链)的最终一致性。因为两个不同节点同时挖出区块(解出谜底)的情况也可能出现(由于网络通信问题,每个节点的区块信息可能不一致),这时区块链会出现分叉,网络各节点需要对哪条区块链上的交易能够得到确认形成共识。

整条区块链的共识遵循最长链原则,只有最长链上的交易能够得到确认,也就是包含的工作量最大的那条区块链。“分叉链”不可持续,在下一次区块竞争时,每个节点会选择在某条分叉链上进行下一次记账权的竞争,由于存在巨大的工作量证明,同一时间内两个节点同时挖出区块的概率将呈指数级下降,因此,很快就会有“最长链”出现,最长链上的交易将获得确认,同时,较短链上的交易信息也会随之释放,重新标记为“未确认”,打包在下一个区块中。

区块链 + 数字货币

但PoW机制并非完美,它有以下三个缺点:

1)51%攻击:当攻击者掌握了全网51%的算力时,其攻击总能成功,因为他总可以让自己的链成为最长的链。因此,全网节点越多,抗攻击能力越强,安全性越好。

2)高延迟:区块出现时间的间隔不能太短,出块时间过短意味着挖矿难度降低,会增加多个节点同时算出答案的概率,导致频繁分叉。但出块慢意味着确认时间长、高延迟。

3)资源浪费:计算机计算密码谜题需要大量的算力,需要高性能的计算机设备、消耗大量电力等资源。根据digiconomist的评估,比特币2018年度排放的二氧化碳达34.73百万吨,相当于丹麦的碳排放量;耗电量达73.12兆千瓦时,相当于奥地利的耗电量;产生电子废物9.8克拉,相当于卢森堡产生的电子废物。

区块链 + 数字货币

(3)权益证明——以太坊区块链的共识机制

权益证明机制(Proofof Stake,简称PoS)是对PoW机制的改进,与节点需要做计算工作证明不同,PoS按照各节点拥有的密码货币的数量和时间竞争记账权,这种模式下持有密码货币的数量越多、时间越长,率先“挖出”区块的概率就越高。这种机制类似于利息制度,PoS算法中有一个名词叫做“币天”,是货币数量与持有天数的乘积(例如若持有100个密码货币10天,则币天为1000),各节点每发现一个区块,拥有的币天就会被清零,每清空365个币天,可获得一定数量的新币奖励(相当于持币利息)。

PoS作为PoW的一种升级共识机制,成功地改进了PoW机制的一些缺陷。1)低延迟:根据每个节点所持有代币的数量和时间,等比例的降低挖矿难度,在一定程度上缩短了共识达成的时间。2)资源消耗少:不再需要消耗大量能源进行计算。

区块链 + 数字货币

厘清以上数字货币的范围及背后的复杂技术后,能够帮助我们更好地理解数字货币的发展。目前,比特币、以太币等私人数字货币热度不断攀升,各国央行的法定数字货币也呼之欲出。数字货币的出现,提出了一系列值得思考的问题。以比特币为代表的私人数字货币能否成为真正的货币?法定数字货币的研究进展如何?数字货币未来何去何从?我们接下来的系列报告,将会把客观的历史逻辑与主观的认识逻辑结合起来,通过梳理数字货币的发展轨迹,来探寻数字货币未来的发展方向!

三、风险提示

密码算法安全性、协议安全性不足。

作者:靳毅

来源:金融界

评论 0
推荐资讯

深入理解区块链二层扩展方案Rollup:为什么Vitalik对该方案大加赞赏?

背景最近,以太坊创始人 Vitalik Buterin 在一篇题为“混合式二层协议的曙光” 的文章里对 Rollup 方案大加赞赏,认为它为智能合约的可扩展性打开了大门。那么什么是 Rollup ?它包括哪些主流方案?这些方案各自有什么优缺点?它们未来发展前景怎么样?为了找到这些问题的答案,笔者对相关项目做了一番调研,将收集到的信息整理成下面这篇文章。Rollup 的出现最近两年,以太坊二层(Layer-2)扩容技术得到突飞猛进的发展。所谓二层技术,就是将一部分资金存储在主链上的智能合约内作为,在保证足够
陈丹
03-06
阅读3194 评论0

为符合央行新规,国内的区块链金融项目需要国密和监管改造

2月25日时,央行发布了《金融分布式账本技术安全规范》金融行业规范(以下简称规范),在密码算法、账本数据、身份管理、隐私保护等多方面,对金融领域的区块链机构、项目提出了更为正式的规范和要求,导致很多金融机构的,央行。因而,基于Fabric架构的区块链金融项目或需替换密码模块,以符合规范要求,以应对当前互联网安全的严峻考验。)安全审计基于Fabric的区块链金融项目,应二次开发以支持账本审计的需求。Fabric架构各审计功能(Fabric架构不符合要求。基于Fabric的项目如果无法这些隐私保护相关要求,则
邱月盈
03-02
阅读3077 评论0

从「模拟」理解零知识证明:平行宇宙与时光倒流

相信很多人都听说过零知识证明,但是只有极少数人听说过模拟,然而模拟是理解零知识的关键。我们在第一篇文章『初识「零知识」与「证明」』中介绍了一个简单的零知识交互系统:地图三染色问题。那么这个系统真的是零知识的吗?我们为什么要相信这个结论呢?有证明吗?在 Alice 与 Bob 的对话过程中,如果不零知识,Alice就被坑了。交互式系统的设计者「我」需要让 Alice 确信,这个对话确实是零知识的。如果从直觉主义角度解释,要证明一个交互系统中存在信息泄露,那么你只需要指证:第几个 bit 导致信息泄露即可;但
盈链科技
01-16
阅读3184 评论0

初识「零知识」与「证明」

引言我认为区块链很难称为一个“技术”。它更像是一个领域,包罗万象。或者形而上地说,区块链更像一个有机体,融合了各种不同的理论技术。零知识证明是构建信任的重要技术,也是区块链这个有机体中不可缺少的一环。零知识证明是打通链上数据与链下计算的关键技术,也是实现链上数据隐私保护的重要途径要解释「零知识证明」,我们需要先解释「证明」,然后解释什么是「知识」,最后再解释什么是「零知识」。"证明" 的前世今生什么是证明?很多人可能和我一样,看到这两个字,会不禁想起中学考卷中各种三角相似的几何图形,当
小盈
01-13
阅读3048 评论0

2020 焦点前瞻:公链的可扩展性到底如何解决?

大量明星公链即将在 2020 年上线,是时候全面看看可扩展性这个问题。比特币从设计上就是慢的。区块链并不一定是为了速度而创建。中本聪在设计比特币时,将安全性和去中心化置于首位,他也承认,在与中心化的竞争对手如主流信用卡网络竞争时,比特币系统将面临压力。而实际上,比特币的10 分钟出块时间和较小的区块却让它能够维护一个全球性的、无领导网络的共识,因为这样做减少了非故意的账本分叉的频率,又能维持节点运营的低成本和存储的低要求。比特币很慢:在过去一年中,它每秒处理的交易量(tps)还不到 4 次。而且比特币无法
链闻ChainNews
12-23
阅读3336 评论0

安永发布第三代零知识证明区块链技术,可通过批量处理降低交易成本

昨天,全球审计四巨头之一的安永宣布了其零知识证明(ZKP)技术的最新版本,该技术用于实现公有区块链上的私人交易。 这个被称为Nightfall开源协议于去年正式发布,侧重于区块链的可扩展性。来源:Pixabay像比特币和以太坊这样的公有区块链被设计成透明的,唯一的保护是用户身份是不透明的或假名的。但是事实证明,要识别用户很容易。缺乏隐私以及可扩展性和治理问题是企业采用公有区块链的重大障碍。零知识证明技术是用于解决隐私和可扩展性的关键隐私解决方案之一。它可以在不透露细节的情况下回答想要知道的答案。例如,一个
哈希链人
12-20
阅读3223 评论0

快讯

  • 目前BTC挖矿盈利为0.3384美元/天/THash/s

    据Bitinfocharts数据显示,当前BTC挖矿盈利为0.3384美元/天/THash/s;ETH挖矿盈利为0.
    2021-10-19
  • 西班牙国家警察警告加密货币相关骗局激增

    西班牙国家警察已就西班牙出现一波与加密货币相关的投资骗局发出警告。在国家警察最近
    2021-10-19
  • 波卡先行网Kusama通过开启定期、连续插槽拍

    Kusama理事会通过了Motion 377提案,开启Kusama网络的定期、连续拍卖。该提案计划在接
    2021-10-19
  • 以太坊无损彩票项目PoolTogether V4版本上

    以太坊无损彩票项目PoolTogether宣布V4版本上线,目前支持存入Polygon和以太坊上的USD
    2021-10-19
  • 数字资产交易所交易产品发行人Valour在法兰

    DeFi Technologies Inc.宣布其子公司Valour Inc.,一家数字资产交易所交易产品(“ETP
    2021-10-19
  • 加拿大央行重申其暂时没有推出数字货币的计

    加拿大央行重申其暂时没有推出数字货币的计划,但表示如果人们开始减少使用实物现金,
    2021-10-19
  • Uniswap V3在以太坊Layer 2上24小时交易量

    Uniswap创始人Hayden Adams发推称,Uniswap V3在以太坊Layer2(Arbitrum和Optimistic
    2021-10-19
  • 矿业公司Elite Mining Inc将移动挖矿设备的

    10月19日消息,Elite矿业公司(EMI)已于2021年9月将其总部迁至怀俄明州的夏延,EMI将
    2021-10-19
  • Michael Saylor:土耳其可以在央行国库中购

    根据个人财务比较网站Finder的报告,比特币将在2050年之前取代法定货币,处于 "超比特
    2021-10-19
  • 比特币矿企Bitfury首席执行官确认公司正在

    10月19日消息,Bitfury首席执行官Valery Vavilov证实,“随着Bitfury及其公司组合继续
    2021-10-19
浏览更多