陆明远,张帆
(天津大学管理与经济学部,天津 300000)
大数据时代的到来使数据成为人力、资本、能源外的第四类社会发展关键资源,如何实现状态、行为、交易、特征等数据的安全、有序管理成为挖掘信息资源价值的前提。伴随着数据爆炸时代的来临,集中式数据管理不堪重负,为缓解服务器压力、提高效率,越来越多的领域接受了分布式记录数据的方式,即将任务分割交给不同的节点[1-3]。但是,分布式系统的应用需要基于不可信的互联网环境实现可信、准确、充分的身份认证[4]。中本聪创立的比特币,其背后的技术支持体系——区块链技术为分布式环境中的共享技术设计提供了新思路[5]。区块链的每个区块由哈希指针顺序连接,每一哈希指针中的哈希值由上一区块的所有内容计算得出,实现区块排列的链式结构。更改某一区块中的一点,需要更改哈希指针中的哈希值。区块链技术基于POW、POA等共识机制实现了去中心化或弱中心化的分布式系统,让所有节点都可以共享同一本“账本”,从而实现了大规模数据管理的高速率、安全性、不可篡改性[6]。
区块链按照去中心化程度分为公有链(Public blockchains)、联盟链(Consortium blockchains)、私有链(Private blockchains)3 种类型,不同类型区块链的特点如表1 所示。公有链最大的优势是完全去中心化、匿名化带来的公开透明,所有节点权限均等地参与区块数据读取并公平竞争写入数据的机会;私有链采取部分中心化或弱中心化的方式,仅对特定个人或组织开放,数据读、写及共识机制设计都遵从私有链管理者的规定,能最大限度维护敏感数据不被非法访问、篡改;联盟链介于两者之间,共识过程由预选节点掌控[7]。
表1 不同类型区块链特点
由分析可知,上述任意一种区块链类型都难以同时实现去中心化、高效、权威安全这3 个功能[8]。私有链保留了可信中心,虽然没有去中心化公开透明的优势,但是只要得到管理方许可即可实践决策,无需得到其他节点的同意,执行效率高;同时,由于私有链非公开的特点,体系内不涉及大量低信任度、低相关度的节点,极大地提高了数据处理速率及读写吞吐率;私有链不支持匿名化,保障了数据监管的顺利实施;私有链仅对组织内部开放,保障了敏感数据的机密性;更为重要的是,私有链仍然保留了区块链中共享“账本”的核心特点,保障了数据的不可篡改性。私有链的这些特点,极为符合大型企业、公安部门、保密机构等组织对于信息安全体系私密安全、分布式、轻量级、高效率、可审计追踪、不可篡改的要求。因此,将私有链技术应用到信息安全系统建设中,能解决很多传统模式下无法解决的问题。基于上述目标,建立基础框架模型,如图1 所示。
图1 私有区块链信息安全防御系统框架模型
区块由块头、块身两个部分构成。块头包括父区块头哈希值(Parent block header hash)、时间戳(Time)、Merkle 根(Merkle root)以及随机数(Nonce);块头中记载父区哈希值实现了区块之间的链式结构,也保证了数据的完整性。由于哈希函数抗碰撞(Collision Resistance)、不可逆(Hiding)的特点,只要记录最终的哈希值就可以知道数据是否被改动。块身部分采用Merkle 树结构记录本区详细信息,Merkle 树与普通二叉树(Binary Tree)相比的特殊之处在于,用哈希指针代替了普通指针。Merkle 树最下面一层是数据块(Data Blocks),中间n层内部节点都是哈希指针(Hash Pointers),第一层是根节点,根节点取哈希为根哈希(Root Hash);底层区块取哈希值保存在上一层节点中,同一节点的哈希值拼在一起取哈希存于上层节点,从此不断向上最后汇总到根节点,最终实现以Merkle 树的根哈希值记录本区全部数据信息的目标[9-10]。Merkle 树有很多优势,一方面,只要记录根哈希值就能检测出对任何部位的修改,且数据一旦写入区块将被发送给所有有权限的节点,实现数据永久记录、可溯源;另一方面,Merkle树结构下只要将底层哈希值按顺序排列,就可以实现信息查找、不存在证明(Proof of Non-membership)等功能,极大地便利了信息管理。
图2 区块链数据结构
区块链以P2P(Peer-to-Peer)的结构实现数据传输,特点是在分布式环境中可直接实现端对端的传输;要进入某一P2P 网络,首先,要知道至少一个种子节点,以便与种子节点联系获得网络中的其他节点;节点之间通过TCP 通信,以便穿透防火墙。区块链中邻居节点的选取是随机的,没有考虑底层的拓扑结构。比如一个在青岛的节点,它的邻居节点可能被分配在石家庄。在不考虑底层拓扑结构的前提下,信息系统的鲁棒性得到了极大地提升,但是牺牲的是效率,向物理距离一米的人发送信息和一万千米之外的人发送信息的速度是差不多的。此外,在节点中心化程度方面,在公有链中,以比特币为例,去中心环境中所有的P2P 节点都是平等的;但是在私有链中,仍然保留了中心化特征,部分节点被赋予了身份认证、许可发行等任务,可能会产生所谓的超级节点(Super Node)。P2P 网络虽实现了数据的高效率传输,但面临着节点身份认证的问题。
在分布式环境中,节点正确、可信的身份认证是信息安全的前提,为实现这一目标,引入密码学中的非对称加密技术(Asymmetric Encryption Algorithm),建立数字签名认证体系。非对称加密是相较于对称加密体系(Symmetric Encryption Algorithm)建立的,对称加密体系下密文的加密方和解密方共用一个秘钥进行加密、解密,密文的安全以保证秘钥在双方传输过程中的安全性为前提,秘钥的分发往往要耗费大量人、财、物成本,即使如此,互联网传输环境也并不能被完全信任。为解决上述问题,非对称加密体系应运而生。在非对称加密体系中,每个节点在创建账户时被赋予了独属于自己的秘钥对,即公钥和私钥(Public key,Private key),有且仅有配对的公、私钥对可以相互加密、解密,节点的公钥可以在一定范围内公开,类似银行账号;私钥则由节点自己管理,类似银行卡密码。一方面,非对称加密技术的出现极大地提高了密文传输的安全性,假设A 给B 传输密文,A 只要用B 公开的公钥加密密文,那么只有掌握对应私钥的B 就可以解密该密文,即使密文在传输过程中被非法截获,也无法被破解,从而保证了信息的机密性;另一方面,建立了基于数字签名的身份认证体系,假设B 要接收来自A 的信息,那么A 只要用自己的私钥对信息进行签名,若B 用A 的公钥能解密,则证明这确实是来自A 的信息。数字签名的实现,以公、私钥对的唯一性为前提,现有的钥对产生方式是随机的,相同的公、私钥对基本不存在,这就要求在产生钥对及每次签名时都要以好的随机源为基础。
针对保障用户身份真实性以及匿名性的双向需求,使用ChainAchor 框架作为身份认证工具。ChainAchor 框架基于零知识理论,实现了私有链节点匿名化的真实身份认证服务,同一节点可创建几个匿名账户进行信息发布,有选择性地暴露自己的真实身份以防范内外部攻击[11]。同时,共识节点借助只读公钥列表核实节点的共享许可来管理区块链。ChainAchor 框架工作流程如图3 所示。
当前,为解决分布式数据碎片化、共享效率低、传输过程不安全、隐私保护等问题,出现了多种共识机制。例如,比特币的POW(Power of work)、以太坊的POA(Proof of Activity),还有POS(Proof of Stake)、DPOS(Delegated Proof of Stake)等。但是,为适用于私有链对安全性、私密性的访问控制要求,在设计私有链信息安全防御控制系统时,没有选用上述主流的共识机制,而是使用MedRec 框架。
MedRec 的优势是结合智能合约达成了访问权限的自动化控制。MedRec 包含3 层智能合约结构,第一层为注册中心(Register Contract),实现节点身份的分发与管理;第二层为信任代理中心(Provider Contract),基于智能合约的强制规定实现节点权限的管理;第三层为简要合同层(Summary Contract),在该层,智能合约对网络节点的传输进行控制,并将用户节点的身份信息与区块读、写权限相关联[12]。
具体来说,首先,参照ChainAchor 架构设计节点身份分发和认证的智能合约,实现用户身份认证真实性及匿名性的双向需求;其次,基于智能合约对各节点的读、写权限以及本节点信息被读、写的权限进行强制规定,可限定除非经过节点同意否则不得访问隐私数据;最后,基于简要合约整合节点与权限之间的对应关联,确定每一节点拥有的权限。MedRec框架需逐一梳理账户与权限之间的关系,虽然成本较高,但是在对数据私密性、安全性较高的行业领域,能依据智能合约实现对隐私数据的保护,仍有一定的建设意义。
图3 ChainAchor工作流程
私有链技术对信息安全防御系统建设的贡献在于提供了一种文件共享及安全管理的新思路。以往的信息安全系统通过防火墙、VPN 等防御技术加强内部环境的可信性,但是私有区块链技术则直接放弃了这一目标,转为默认系统所在的P2P 环境是零信任的,通过共享账本以及特殊的数据结构建立了一套新的数据传输结构。同时,在数据结构构造过程中,注重对存在证明、信息查询、信息追溯等功能的应用,实现了组织信息的安全、管理。
在实际工作中,可将基于私有区块链技术的分布式信息安全系统应用到对信息安全性、私密性要求较高的档案服务机构、金融机构、公安部门等。
在数据已位列第五大社会要素的当今时代,急需实现对海量数据安全、高效的管理,区块链技术的快速成长正是顺应这一趋势的结果。基于区块链的银行联盟平台[13]、电子政务信息共享平台[14-15]、电能交易平台[16]、电子招投标[17]、云审计平台[18]等纷纷建立,但基于私有区块链技术的信息安全防御系统建设却相对缓慢。应当注意的是,私有链技术虽然具有安全、不可篡改、可溯源等优势,但也有响应的劣势,例如,系统对信任中心的安全性要求较高;虽不存在公有链中的51%攻击威胁,但中心化的结构容错性较低等。