区块链 + 数字货币

论坛 期权论坛 期权     
靳论固收   2019-10-27 11:56   1838   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(即ff,可得出f
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:
帖子:
精华:
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP