区块链技术下数字图书馆信息安全研究
摘要文章针对区块链技术在数字图书馆信息安全应用中出现新特点和技术优势,探讨了数字图书馆无中心网络信任安全问题,采用区块链共识算法设计一种网络传输信息安全和区块链结构的数据安全传输模式。针对传统公钥CA认证中心操作记录难公开、不透明等问题,文章结合区块链技术分布式存储、数据加密技术及云数据多租户特征,提出图书馆数字证书管理过程可审计且扩展的高可信度用户认证机制和个人数据保护模型,从而构建可信区块链的数字资源存储与共享安全架构,并从安全认证、可扩展的安全多方计算、完整性保护等方面,给出区块链下图书馆数字资源安全防护保障策略。
关键词:区块链;图书馆;信息安全;存储共享
区块链作为一项重要信息技术已引起社会极大关注,图书情报领域研究者也纷纷加入相关研究和实践中来。区块链在隐私保护领域的应用,已使数字图书馆用户个人信息隐私安全性得到一定程度提升,如:柳林子等人[1]提出通过加强行业自律、技术标准、馆员素质和信息保护教育等途径,来促进区块链技术保护读者个人信息的实施;汪琼等人[2]认为区块链技术在图书馆著作权保护中发挥的效用非常巨大。刘红[3]提出借助区块链技术实现用户和资源数据库“上下游终端”双向加密认证的馆藏资源安全存储应用途径。区块链在图书馆数据共享方面也有一定研究成果。徐俐华等人[4]引入区块链联盟链技术,构建了基于数字图书馆联盟链的信息资源安全共享模型,以此解决“信息孤岛”问题;房永壮等人[5]研究了大数据共享环境下区块链技术在图书馆信息服务中的应用,并提出要保障数据共享中的信息安全问题。但是,当前关于区块链技术下数字图书馆信息安全的研究尚不多见,由于信息安全技术不断升级,产生的安全威胁程度和破坏力也相应发生不可预测的变化,而这些都给数字图书馆信息安全带来了极大挑战。
1区块链关键技术
1.1区块和块链式结构
区块是链式存储结构中的数据元素,其中第一个区块被称为创始区块。区块作为区块链的基本结构单元,由记录当前区块的特征值区块头和实际数据的区块体构成。其中区块头包含了每个区块自身的身份识别信息、父区哈希值、时间戳等内容。区块体记录了所有的交易数据。
区块链由区块相互连接形成链式存储结构,它的数据结构含有父区哈希值、随机数、难度值和时间戳等信息,该结构将数据以区块为单位进行验证与存储,由于硬件或管理机构无中心特征,任意节点都是对等的,系统中具有维护功能的节点将对链上数据库进行共同维护。
1.2哈希算法
哈希算法是提供一个数据的摘要或者指纹,对数据进行完整性校验。哈希函数具有无冲突和不可逆的特点[6]。哈希算法有很多种,常见的哈希算法有MD5、SHA-1和SHA-256等,一般来讲,哈希算法越长,安全性也越高。在区块链中通常采用SHA-256算法,该算法能生成256位,即32字节长度的哈希值,能够满足当前区块链利用哈希算法对交易数据生成交易摘要信息,最终得到Merkle根值的需求。
1.3共识机制和智能合约
区块链网络系统共识机制是N多个参与者对一个交易或提案是否将交易提交到账本及交易排序达成一致意见的过程。共识机制推动了更多用户参与到区块链网络维护,增强了系统的稳定性。使用的共识机制不同,区块链网络及其出现的特点、性能也会有所不同。在当前算法中,主要有工作量证明机制(Pow)、权益证明(Pos)、拜占庭容错协议(PBFT)和改进授权拜占庭容错协议(dBFT)等。
智能合约是部署在区块链网络中的一种服务程序,区块链网络使用智能合约,对分布式账本进行受控访问,支持信息一致性更新。智能合约的编码信息具有开放性,且不受硬件设备的制约。智能合约这种高效、安全的约定协议,可以促使参与用户在区块链上自觉履行所有承诺的协议内容。
2区块链的数字图书馆无中心网络信任安全
2.1数字图书馆网络安全风险
目前,图书馆网络建设和应用大多采用中心化架构,在这种网络结构体系中分布式或联盟链上的节点之间的数据传输需由核心服务器控制、分配来完成,此种方式在通信过程容易出现非法获取、篡改、欺骗等数据安全问题。因中心化故障引发连锁反应,造成整个系统崩溃,中心化作用和地位已成为整个网络系统的潜在安全威胁。因此,需采取图书馆网络系统中各节点的身份进行管理和认证措施,以确保消息传输安全可靠。
2.2区块链的数字图书馆网络信任机制
区块链融合多维技术,发挥信任机制最大效果,需与人工智能、物联网等技术结合,打造一个超级账本,确保数据源头的真实、有效。图书馆无中心网络信任,需做到去中心化网络及对传输数据进行验证、审查。在数据使用过程中,由于源头数据问题,造成网络异常,通过相关时间、日志和交易等线索,进行反向追溯,查找问题的根源,找到威胁发起者,对其追责。引入惩罚激励机制,通过区块链网络生态资源,阻止对数据的伪造行为,并对用户正向行为给予奖励。区块链技术能够确保数据在网络中的完整、有效、真实的对等传递,不受制于人为因素的干扰或控制,在区块链的两端,做到人为与技术的结合,最小化信任问题。
2.3区块链的图书馆无中心网络信任安全传输模式
利用联盟区块链的数据加密、身份管理机制与共识算法,基于PBFT设计一种区块链的图书馆无中心网络信任安全传输模式,如图1所示。
网络节点模块用于对Node访问权限的控制和管理。ClientNode发起消息传输请求,构建联盟专用、封闭式通道,联盟区块链节点自主选择加入,但都会受到严格的身份审查,验证通过后才允许加入Channel通道中。AnchorNode负责与其他组织节点的通信,CryptoGenerator读取文件信息进行配置,快速生成证书和密钥。由于通道具有隔离和封闭性,对于外部节点不可见,能够保证内部参与节点完成交易发起和记账可信、有效,这种方式在一定程度上使图书馆数据的安全传输问题得到很好的解决。
采用信封结构对消息数据进行封装,节点传输数据不再发送至中心服务器,而是通过多节点集群共识模块完成数据完整性检查、消息内容的真实性和身份验证。同时,无需考虑加入节点使用何种通信方式,由此可满足图书馆不同网络协议或版本兼容性的要求。
数据信息处理使用认证授权区块链作为RootCA,将其存储到区块链网络的创世区块中,为节点用户提供登记、事务调用等证书服务。TLS证书保证用户或区块链组件之间通信的安全链接,以解决图书馆无中心网络信任数据来源权威性问题。
合约共识层PrimaryNodeCluster根据制定策略对发起的传输消息进行验证,若请求传输的消息被区块链网络中三分之二的节点投票通过,则把经过签名消息发给PrimaryNode排序服务节点,由其按时间戳来对传输消息进行排序,否则丢弃本次传输消息处理,并返回告警信息给发起端Client用户。排序后的消息在信息传输通道内部送达接收ExecutorNode,由其对接收到的消息内容进行处理,消息一旦被正确处理完成,生成消息传输区块记录,对链上的所有节点发起广播,最后将消息传输的执行结果响应给发起端Client用户,实现联盟区块链图书馆节点用户传输数据完整、可靠。
3区块链的数字图书馆用户数据信息保护
3.1数据泄露途径与区块链应用于个人信息保护适用性
数字图书馆不仅拥有规模巨大的电子资源数据,还存储大量的用户个人信息。脆弱的网络环境、功能低下的硬件系统、缺少风险意识的数据管理漏洞及不断升级的黑客攻击手段等,已成为当前图书馆用户信息泄露的主要途径。尤其在数字图书馆建设应用感知层,如果无线射频识别(RFID)标签信息被处于监控、识别、追踪的状态下,用户的基础信息、位置信息、行为信息都有被非法获取的可能性,根据获取得到的信息,分析、推断出用户数据隐私,增加读者用户数据泄露风险[7]。
利用区块链去中心化、信任化的特点,引入新的管理机制,信息集中管理向无中心或弱中心化管理转变,从意识、操作、技能等方面,在很大程度上减少图书馆数据管理者对接触用户数据泄露的机会。区块链对任何的交易行为和业务操作等都有时序记录,可对图书馆用户数据信息进行追溯。
在分布式、多节点、无中心的区块链网络体系中,传统图书馆中心化的信息服务平台不再被依赖,而是利用区块链可信任、透明的技术框架,按照智能合约规范对隐私信息自动执行不同等级的保护措施,最大程度限制使用大数据挖掘、知识关联等方式获取图书馆用户数据信息的可能性,降低读者数据信息泄露的风险。图书馆用户使用区块链非对称加密技术,通过匿名或非匿名的方式,关联个人行为数据,允许用户非实名制所持有公钥进行签名,并对数据加密私钥持有者身份进行验证,感知层用户数据得到匿名公钥加密保护,有效降低个人数据被非法获取、篡改的风险。
3.2区块链的图书馆用户全域化数据保护模型
应用区块链基础架构,设计图书馆用户全域化数据保护模型,引入智能合约块锁,使区块链对用户数据保护不再限于指定层级保护,达到保护全域化效果。图书馆用户数据信息的采集、存储、操作、销毁等全生命周期均能得到区块链技术的保护,以确保用户数据信息的安全。区块链的图书馆用户全域化数据保护模型如图2所示。
图书馆用户全域化数据保护模型采用(p,t)-门限NTRU算法对用户数据进行加密,保存Hash值,当需多租户使用共享密钥对数据解密时,私钥将被分成p份,某一个用户想要获取数据,那么至少需要其他t-1个用户同意,共同解密才能完成,调用数据访问接口实现数据的请求和访问。即使是部分用户通过数据中心对密文pagenumber_ebook=57,pagenumber_book=55得到求和结果,也无法推导出每一个用户的私钥Vk,Epk(Vk)不能被解密,该模型能较好满足数字图书馆用户信息安全防护保密性、防篡改功能要求。
4可信区块链的图书馆数字资源存储与共享保护
4.1可信区块链应用于数字资源存储与共享技术优势
在区块链体系中,任意节点用户可随时向图书馆联盟链无中心网络请求数据,对等节点不再受制于中心化平台或系统方面的影响,实现单节点或多节点集群海量数据的公开透明及安全数据的交互共享[8]。在信任问题上,传统馆内部门或馆际之间的信息共享主要出于业务信任关系方面的考虑,这种信任机制无法得到较好的保障。考虑核心智能合约技术可以对信任实施锚定,链上的任意节点均可相互监督,共享信息的参与主体,无论是馆与馆之间,还是馆与数据服务商之间,其信任问题均可解决。
应用区块链技术组织图书馆链式数据资源结构,允许用户或平台管理者参与数据库、安全存储建设,提供资源数据开放式服务,最大化利用数据资源。区块链技术无中心网络信息安全传输和加密算法,结合数据聚合和深度挖掘、知识关联等,完成信息安全认证,提升资源数据存储安全水平和等级。
4.2可信区块链数字资源存储与共享安全架构设计
区块链数据管理中,数据被记录到可信区块链上,元数据在各个参与主体的数据库中存储,程序记录海量数据信息,并将所有数据均存储在区块链网络计算机节点上,使用无中心结构,链上任意节点实时、同步更新存储数据,解决图书馆数字资源存储和共享数据完整、可靠性问题。可信区块链的图书馆数字资源存储与共享安全架构如图3所示。
数据存储和共享行动主体或行为一旦被记录到可信区块链上,节点每一次交易信息即被清晰、透明的组织起来,形成完整的交易明细清单。任何节点间交易都能够被查询、追溯,所有交易需使用一组公钥和私钥进行加解密处理,将其添加到可信区块链上,永久不可改变。当对某个区块值产生疑问时,可查看历史交易记录,判别该值的正确性,确定该值是否已被篡改或记录有误,确保数据的存储安全。
设计使用去中心化的机构联盟方式,各机构向信任区块链网络密文公布共享数据索引,通过透明、可控的机制实现机构间(馆—馆—数据商)数据流动和交互。机构与数据源提供者之间,通过数据接口对接,不接触数据平台,所有请求以匿名代码形式发送。整个区块链信任网络中数据索引在区块链中存储,机构获得请求后向区块链上各数据源进行查询,得到详细数据。不允许共享源数据环境下,应用这种共享服务模式,可以增强联盟链多节点数据的共享安全度。
4.3区块链的图书馆数字资源安全防护保障策略
4.3.1区块链的数字证书双链分离的审计与存储
资源数据的存储模式主要有区块数据结构、非对称加密和记录数据结构等[9],为增强图书馆数字资源存储审计服务、安全认证有效性,将分别记录签发、审计和撤销等相应信息的证书分发链、撤销链进行分离。CA为依赖方提供证书请求验证和管理服务,并将对证书的一系列操作记录保存到区块链中。区块链去中心化的证书状态,在线查询协议OCSP,服务接口对CA维护的撤销链证书状态记录进行审计,在证书分发链CA无伪造虚假情况下,将查询认证结果向发起证书申请者或客户反馈。
第三方其他节点通过CA提供的独立区块链查询,接口对双链上每一次操作都可以进行审计,通过共识机制达到一致性目的。双链分离安全认证在较小空间证书撤销链上,实现高频次数字证书审计数据的查询、认证操作,解决过度依赖中性化服务CA证书签发问题,有效防御针对数字图书馆信息发起的恶意攻击。
4.3.2可扩展的安全多方计算
将共识机制应用于分布式节点共同计算,以达到对数据有效性最大化共识的结果,亦是一种可扩展性、安全多方计算模式(MPCM)[10],用以解决图书馆数字资源安全体系在一致性、完整性和高时间复杂度等方面的问题。数据用户向区块链发送数据存储请求MemoryRequest,运行智能合约随机选择存储节点集合,使用公钥对分割数据集合{di}进行加密,将其发送给存储节点。为可支持系统扩展性,系统会设定时间对节点集合Qs重新计算,新产生数据分块集合经安全传输通信协议转储到Qs’中,一定时间内原节点数据仍会保留,期间一旦出现数据丢失,即可从原Qs相应节点恢复丢失数据。ServiceProvider向区块链发送计算服务请求,进行验证节点权限判断,验证过程由各计算节点异步完成,当获得数据持有者访问权限后,调用预设合约选取“一次性”计算节点集合Qc,加密共享对数据进行分块,作为新计算节点输入,当qc获得全部数据分块,进行数据的安全多方计算,计算结束需由日志信息组成事务信息对事务的合法性进行检验,最终将重构得到的正确计算结果返回ServiceProvider,并执行支付报酬或惩罚等相应的激励机制。
图书馆资源安全防护使用MPCM模型,参与任务计算的节点产生的特征数据通过协作,实现区块链的验证功能。各参与方仅获取与私密数据相应的输出数据,而无法得到任何其他有效信息,自身数据信息不会泄露其他参与计算节点。信息记录保证了资源数据可查询和追溯,通过验证各节点存储的元数据一致性,满足图书馆数字资源安全防护模型的可扩展、高效和安全性需求。
4.3.3云数据验证及完整性保护
网络系统部署由多组数据库服务器构成文件灾备体系,服务器节点对资源数据操作日志及源数据产生的审计验证作为元信息被存储到数据块。数据服务器对某个节点数据进行数据上传、修改等操作时,该操作发生的所有动作信息都会被审计和验证模块监控、记录,并生成一条包含操作类型和节点ID、数据存储路径、时间戳等内容的事务信息,信息验证通过,将被新增到块链上,且对其不可篡改。为确保数据的完整性,将元数据信息进行加密处理之后,再将其添加到区块链。
数据传输至云存储服务器,节点用户使用私钥加密处理文件数据,通过Hash值,对数据文件进行身份证明和参数完整性校验,以防止对数据恶意篡改及对未授权数据读取或下载,导致数据信息泄露或伪造。云服务器收到节点用户数据上传、提交请求后,检索、分配存储空间资源,然后将请求存储的加密数据进行Databasereplica多副本数据库备份。如果节点数据在传输过程中出现意外损坏,或是遭到恶意的篡改,使用云存储的数据库备份副本,即可对损坏数据实施恢复。
5结语
区块链网络作为一种共识机制、P2P传输及分布式数据存储等新技术应用模式在图情领域逐渐得到应用,使得节点之间Pow得到快速校验,数据高效传输,有效降低了中心化、单点数据故障所产生的影响。图书馆数字资源存储、共享的高安全性能为用户提供更加高效、优质的资源信息服务,进一步提升图书馆信息安全水平和资源安全保障能力,推动图书馆数字资源建设健康、可持续发展。