本文主要从区块链定义、区块链基础架构、核心机制、密码学安全保护关键技术及应用层面进行阐述,最后从网络安全和隐私保护角度展开浅析总结。
区块链本质是由各种技术和通信协议组成的,带有完整性数学证明的普适性互联网底层软件基础架构。在区块链架构中,底层数据被组合成区块这一特定数据结构,各区块按照时间顺序以类似链表的方式链接成区块链。各个区块数据是由分布式共识算法生成区块链的分布式账本,采用密码学方式以保证区块链数据结构不可篡改和不可伪造,使用P2P协议进行通信,通过共识机制达成一致,并基于此产生相对高级的各种应用[1]。总体来说,区块链架构中基于时间戳、不可篡改的链式区块结构、分布式节点的共识机制、基于共识机制的经济激励和灵活可编程的智能合约是区块链技术最具代表性的创新点。区块链系统由自下而上的数据层、网络层、共识层、激励层、合约层和应用层组成,其中构建区块链应用的必要因素主要包括数据层、网络层和共识层。1.数据层在数据层,封装了底层数据区块的链式结构,相关的非对称公私钥数据加密技术和时间戳等技术。大多数技术都已被发明数十年,并在计算机领域使用了很久,无须担心其安全性。其中,交易数据作为最根本的交易记录,是带有一定格式的交易信息,需要进一步加工封装才能写入区块内;区块链使用密码学算法(如SHA256算法)将原始交易记录经过特定的算力证明记录进区块;时间戳作为区块数据存在性证明,确定了区块的写入时间,加盖在区块头上,保证了区块链的时序性。2.网络层网络层主要实现区块链中去中心化记账节点之间的信息交流。网络层包括分布式组网机制、数据传播机制和数据验证机制等,由于采用了完全P2P的去中心化组网技术,网络中每个节点地位对等且以扁平式拓扑结构相互连通和交互,每个节点均会承担网络路由,验证传播交易信息等工作,也就意味着区块链是具有自动组网功能的。3.共识层共识层主要封装网络节点的各类共识机制算法。共识机制算法是区块链技术的核心技术,负责调配分布式网络记账节点的任务负载,使高度分散的节点在去中心化的系统中高效地达成共识,影响着整个系统的安全性和可靠性。最为知名的共识机制算法有工作量证明机制(Proof of Work ,Pow)、权益证明机制(Proof of Stake, PoS)、股份授权证明机制(Delegated Proof of Stake , DPoS)等。4.激励层激励层往往是一种博弈机制,激励更多遵守规则的节点愿意进行记账。该层将经济因素集成到区块链技术体系中来,主要包括经济激励的发行机制和分配机制等。激励层主要出现在公有链(Public Blockchain)中,以激励遵守规则参与记账的节点,并且惩罚不遵守规则的节点,让整个系统朝着良性循环的方向发展。5.合约层合约层主要封装各类脚本代码、算法机制以及智能合约等,赋予了区块链底层数据可编程特性。以比特币为例,比特币是一种可编程的货币,合约层封装的脚本中规定了比特币的交易方式和交易过程中所涉及的各种细节。而以太坊为首的新一代区块链系统试图完善比特币的合约层。如果把比特币看成是全球账本,那么以太坊就可以看作是一台“全球计算机”——任何人都可以上传和执行任意的应用程序,并且程序的有效执行能够得到保证,其区块链技术前景极为广阔。6.应用层应用层则封装了区块链的各种应用场景和案例。如封装在以太坊上的各类区块链应用就是部署在应用层。区块链网络采用P2P对等网络(peer to peer network)将所有节点连接起来,同时设计PoW或其他共识机制使无信任基础的双方在不需要第三方的情况下建立信任,使用广播的方式传播交易信息,加上激励机制来保证节点提供算力以维持整个网络的顺利运行。
区块链的自信任主要体现在去中心化,只需要信任区块链协议下的软件系统即可实现交易,这种自信任的前提就是区块链的共识机制。总体来说,区块链的本质属性是去中心化,而去中心化的核心机制就是共识机制。区块链正是运用基于共识的数学算法,在机器之间建立信任网络,从而通过技术背书而非中心化信用机构来进行全新的信用创造[2]。
2012年,Sunny King推出了Peercoin加密电子货币,其采用工作量证明机制(PoW)发行新币,采用权益证明机制(PoS)维护网络安全,这也是PoS在加密电子货币中的首次应用[3]。下文对工作量证明机制和权益证明机制进行简要概述:
工作量证明机制(PoW):其核心思想是指证明者提交已知难以计算但易于验证的计算结果,而其他任何人都能够通过验证这个答案就确信证明者为求得结果已经完成了大量的计算工作。比特币系统采用PoW机制,通过引入分布式节点的算力竞争(使当前区块的区块头的双SHA256运算结构小于或等于某个值,确定该节点并获得该区块的记账权)来保证数据一致性和共识的安全性。具体来说,在基于工作量证明机制构建的区块链网络中,节点通过计算随机哈希散列的数值解争夺记账权,求得正确的数值解以生成区块的能力是节点算力的具体表现。
权益证明机制(PoS):其本质是采用权益证明来代替PoW的算力证明,记账权由最高权益的节点获得,而不是最高算力的节点,以解决PoW共识机制算力资源被过多地浪费。而与PoW共识机制要求证明人执行一定量的计算工作不同,权益证明要求证明人提供一定量加密货币的所有权即可。权益证明机制的运作方式是:当创造一个新区块时,矿工需要创建一个“币权”交易,交易会按照预先设定的比例把一些币发送给矿工本身。权益证明机制根据每个节点拥有代币的比例和时间,依据算力等比例地降低节点挖矿难度,从而加快了寻找随机数的速度。
1.哈希算法哈希算法的思想是接收一段任意长度的明文,以一种不可逆的方式将它转化成一段长度较短、位数固定的输出散列。该加密过程具有不可逆性,意味着无法通过输出散列的内容推断出任何与原文有关的信息。该算法保证了区块链交易信息具有不可篡改的单项密码体制。在密码学中,哈希算法转化成的输出散列,即为固定长度的哈希值。区块链的哈希值可以唯一、准确地标识一个区块,并且任何节点通过对区块头进行简单地哈希计算均可以独立地获取该区块的哈希值。在区块链中,通常使用SHA-256的哈希算法进行区块加密,该算法的输出长度为256位,即生成长度为32字节的随机散列。如比特币使用双SHA-256散列函数,将任意长度的原始交易记录,经过2次SHA-256散列运算,得到一串256Bit的散列值,便于存储和查找。同时,SHA-256函数也是比特币使用的算力证明,即矿工们寻找一个随机数,使新区块头的双SHA-256散列值小于或等于一个目标散列值,并且加入难度值,使这个数学问题的解决时间平均为10min(产生新的区块)。2.非对称加密技术非对称加密技术在区块链中具有十分重要的意义,可以很好地解决提前分发秘钥的问题。在该加密体系中,加密秘钥和解密秘钥分别对应为公钥和私钥。而区块链技术正是利用公钥加私钥的方式进行信息传播,保证分布式网络中点对点信息传递的安全。在区块链系统内,价值信息转移过程的信任机制,主要是通过非对称加密机制实现两项任务,即通过私钥验证用户的“拥有权”、通过公钥验证用户对发送的价值信息数据是否“授权确认”。区块链上的交易信息都是公开透明的,但是账户身份信息却是高度加密的,只有在数据拥有者授权的情况下才能访问到,身份验证授权保证了账户数据的安全和个人的隐私。如比特币系统中,当用户向某个对象发送一些比特币时,该用户将创建一个消息事物,将对象的公钥附加到这些比特币上,并使用该用户的私钥进行签名。当交易广播到比特币系统时,全网就知道这些比特币的新拥有者是该公钥的所有者。
伴随比特币的设计出现,区块链技术自身价值日益显现,采用该技术实现的系统应用领域[4]主要包括:首先,区块链在金融领域的应用无疑是最直接获取的,如银行结算、跨境支付、基于互联网的股权众筹等。其次,在数据存储与管理方面,区块链能够实现基于数据隐私保护基础上的数据共享和开发利用。最后,在资产管理方面,区块链技术同样可以对知识产权等无形资产或者是结合物联网技术对固定资产实现确权及授权等操作。基于区块链的网络安全机制,利用去中心化、不可篡改、可追溯和高可信等特性,有利于提升网络安全和隐私保护能力。传统的数据存储和控制管理常常依赖于可信任的中央机构,中心节点的管理缺陷或漏洞易导致隐私数据泄露。而去中心化的系统结构能够消除中心节点的安全风险,使用区块链技术由各节点共同参与运行的分布式系统架构来管理数据,避免中心节点故障引起网络安全事故。下文介绍区块链技术在安全领域的应用实例[5]近年来,爱沙尼亚政府一直致力于将分布式账本技术应用于无钥签名设施(KSI,Keyless Signature Infrastructure)和密码学的哈希算法配合使用,以实现爱沙尼亚政府监管网络和数据存储中任何组件的状态记录。KSI具有可扩展性,可以每秒签名一个额外字节数字,而使用可以忽略不计的计算能力和网络开销。它不再需要依赖一个可信任的权威机构,它签名数据能够跨地域进行验证,并且可以彻底保护隐私,因为它不会自己窃取用户的数据。KSI区块链意味着当爱沙尼亚ID卡不可能出现信息泄露,政府可以确信任何人试图篡改公共数据都会100%被检测到。爱沙尼亚的一家本土公司Guardtime承担了该项的个人信息的完整性,避免了特权用户篡改政府网络中所记录信息的可能性。该项应用确保了爱沙尼亚公民的个人信息安全并且准确。爱沙尼亚是全世界最经常使用PKI(PKI,Public Key Infrastructure)的国家,政府官员可以使用ID卡来加密文件进行安全通信,审查和批准许可、合同和应用程序。部长甚至可以使用ID卡来准备和进行内阁会议,审查议程、提交立场和反对意见和回顾纪要。而目前当务之急是,政府需要知道它的记录是正确的记录,并且这些记录并没有被内部篡改,或者被网络攻击。区块链技术通过提供时间戳、特征和真实性证明帮助记录发现每次微小的变动。
自2008年至今,区块链从诞生、质疑到如今已经成为了备受全球广泛关注的新技术。区块链的发展可划分为三个阶段:
区块链1.0时代:更接近狭义的区块链技术的时代,代表应用是比特币;
区块链2.0时代:则是功能强大的智能合约时代,能够不断扩大区块链的应用场景;
区块链3.0时代:是将区块链技术的去中心化和共识机制发展到新的高度,从而影响人类意识形态的新时代。
区块链技术为我们提供了一种去中心化的、无需信任积累的信用建立范式。但是,在后互联网时代,由于美国斯诺登泄密事件,复杂多变的网络诈骗以及网络犯罪活动的发生,网络中用户与用户之间很难建立必要的信任,用户对网络安全及网络信用体系缺乏足够的信任;用户与用户、用户与设备、用户与网络之间的信任的形成和维系将面临较大困难。在这样的前提下,应务必考虑网络防护方案中隐私和匿名性的保护,并给予保护用户个人隐私的能力,使用户在无须信任其他用户、设备或网络的前提下仍能放心地使用接入网络设备,明确自己的个人信息和隐私不会在使用过程中泄露,进而应用区块链分布式记账技术。
目前,区块链技术已经不断延伸到物联网、金融、医疗以及政府管理等多维度层面,新的可编程经济时代正在到来,随之而来的网络安全威胁更不可忽视。通过分析相关的风险,制定合适的安全措施,考虑相应的对抗手段,同时更应加快技术规则监管的步伐,以应对区块链技术时代的发展新局面。
参考文献:
[1]S.Nakamoto,“Bitcoin:A Peer-to-Peer Electronic CashSystem,”2008.[Online].Available:http://bitcoin.org/bitcoin.pdf
[2]房卫东, 张武雄, 潘涛, et al. 区块链的网络安全:威胁与对策[J]. 信息安全学报,2017, 3(2).
[3]袁勇, 王飞跃. 区块链技术发展现状与展望[J]. 自动化学报, 2016, 42(4).
[4]Zyskind G, Nathan O, PentlandA '. Decentralizing Privacy: Using Blockchain to Protect Personal Data[C]//IEEE Security & Privacy Workshops. 2015.
[5]唐文剑. 区块链将如何重新定义世界[M]. 机械工业出版社, 2016.
近期精彩文章回顾
振动激光窃听
云计算安全的法律风险分析
僵尸网络浅析(2)
僵尸网络浅析(1)
浅析《电子签名法》应用