基于无密钥签名技术的政务数据安全研究

2020-10-14 01:03刘康明艾鸽
网络安全技术与应用 2020年10期
关键词:数字签名哈希完整性

◆刘康明 艾鸽

基于无密钥签名技术的政务数据安全研究

◆刘康明 艾鸽

(深圳市国家保密科技测评中心 广东 518028)

随着信息技术的迅速发展,各种基于网络信息系统的政务应用服务蓬勃兴起,为推进政务治理体系现代化发挥功效。但海量政务数据带来的安全问题也变得越来越突出,所面临的最大安全问题就是如何保证信息的真实性、完整性、机密性和不可抵赖性。区块链技术具有去中心化、匿名性、信息不可篡改等天然特性,可以用于保障政务数据的完整性。无密钥签名技术就是一种替换基于密钥数据验证系统的区块链项目,通过给数据进行签名和验证签名来保护数据自身的安全,它将签名数据保存到区块链存储中,安全有效地保证了签名数据的完整性。因此,基于无密钥签名技术的政务数据安全保护被提出,旨在解决上述问题。本文将研究无密钥签名技术,并使其能高效、安全地认证政务数据的完整性及签名时间的不可抵赖性。

无密钥签名;区块链;数据完整性;政务数据安全

1 引言

政务部门因其履职的需要,会处理大量的政务数据,而随着大数据和云计算时代的到来,数据安全风险越发突出,加强电子政务领域数据安全保护研究刻不容缓,关键在于如何保证信息的真实性、完整性、机密性和不可抵赖性,“数字签名”是解决上述问题的常用手段。所谓“数字签名”就是通过某种密码运算生成一系列符号及代码组成电子密码进行签名,用来代替手书签名或印章[1]。目前,政务数据安全中最为成熟的解决方案就是利用PKI(公钥基础设施)技术。但随着PKI技术的大规模应用与网络体系结构的快速发展,目前PKI应用也面临着私钥泄露隐患、即时撤销花费大、难以抵挡量子攻击等一系列难题。区块链技术的诞生为数据完整性的研究提供新的探索方向。

区块链是一个去中心化分布式数据库系统,由区块链网络中所有节点共同参与维护。它因为“拥有点对点(P2P)、时间戳、共识机制和加密算法等核心技术,天然地具备去中心化、透明可信、防篡改、安全可靠等特性”,可有效解决数据完整性保护问题。2019年10月习近平总书记在主持中共中央政治局第十八次集体学习时特别指出,全球主要国家都在发展区块链技术,我们也要利用区块链技术“为人民群众提供更加智能、更加便捷、更加优质的公共服务”[2]。

KSI(Keyless Signatures Infrastructure,无密钥签名基础设施)是数据安全初创企业GuardTime公司开展的区块链项目,其目的是代替基于密钥的数据验证系统,这种技术称为“无密钥签名技术”。它是基于一种“去中心化”的设计理念,可以实现对数据完整性和不可否认性保护。KSI在一些国家的电子政务方面也产开实质的应用。在爱沙尼亚,KSI对所有政府流程进行独立验证,并向公众提供电子政务服务。因此,通过基于区块链的无密钥数字签名技术对政务数据进行安全防护,能够保证数据的完整性和不可抵赖性,是一个有意义的研究和应用方向。

2 区块链技术介绍

2.1 区块链概述

区块链是一种由多方维护,以块链结构存储数据,使用密码学保证传输和访问安全,能够实现数据一致存储、无法篡改、无法抵赖的技术体系。与传统的数据库存储技术所不同的是,在区块链网络中,数据是去中心化的,即采用平等性、扁平化、开放式的系统结构,是利用先进的密码学技术分布式记录在所有的区块链节点中,每一个节点都能复制获得一份完整的数据副本,同时因为这些节点之间又采用了复杂的共识算法来确保数据的一致性,所以即使网络中部分节点遭受到黑客攻击或者因为故障而停机,也不会影响整个网络系统的正常运行[3]。

区块是记录交易信息的数据单元,由区块头和区块内容两部分组成。区块头数据的哈希值负责完成区块的链接,作为所有区块的唯一标识,区块头数据的哈希值记录的父区块哈希值在区块链中是唯一的链接区块。通过这种方式,每个区块都能链接到各自父区块,并序列创建了一条从最新区块追溯到第一个区块的链条,从而形成所有区块的一种链状数据结构,如图1所示。

区块链网络采用高度依赖节点算力的“工作量证明”的竞争机制来产生新区块,区块链网络中的每个节点都可参与该竞争。当新区块产生并且发布到网络后,新区块链网络的合法性由每个节点共同参与验证,只有被验证为合法的区块才会被区块链网络节点记录下来。区块链共识过程本质上是一种共识节点间的任务分包过程。通过汇聚大规模共识节点的算力资源,区块链可实现共享区块链的数据验证工作[4]。

图1 区块链区块结构示意

2.2 区块链技术安全机制

区块链网络中没有中心服务器,每个参与系统的节点都有义务验证交易和区块的合法性、参与交易和区块的存储转发,也同时具有丢弃其认为不合法的交易和区块的功能。因此,区块链系统中的所有节点均是平等的,每个节点都具有完整的数据记录。即使系统中的某个或某些节点受到攻击或破坏,不会对系统的完整性和可用性造成威胁。区块链采用数字签名等密码学机制对其记录的每项信息进行保护,保证了信息是可验证的,实现了信息本身无法被伪造和篡改。采用“工作量证明”的竞争机制来记录信息,使得记录到区块中的信息很难被撤销或销毁,参与系统的节点数量越多,系统的安全性越高。

3 无密钥签名技术研究

3.1 无密钥签名概述

无密钥签名是数据安全初创企业GuardTime的区块链项目,目的是替换基于密钥的数据验证系统。无密钥签名是为数据的已知原始状态创建哈希签名,并对这些包含时间戳的哈希值持续监控,通过系统对数据是否被篡改进行验证。无密钥签名是传统PKI签名的替代解决方案,它是通过一个构建类似传统签名解决方案PKI的无密钥签名基础设施(KSI)来实现。无密钥并不意味着在签名创建期间不使用加密密钥。在认证中密钥仍然是需要的,但是可以在不保证密钥的持续保密性的情况下,可靠地验证签名[5]。无密钥签名不容易受到密钥泄露影响,从而为长期有效性的问题提供了解决方案。传统的PKI签名可能受到时间戳的保护,但只要是时间戳技术本身是基于PKI的,密钥泄露的问题仍然没有解决。

从执行角度来看,PKI和KSI数字签名技术的主要区别如表1所示:

表1 PKI和KSI数字签名技术对比

KSI是一种全球分布式系统,用于提供时间戳和服务器支持的数字签名服务。该基础设施由聚合服务器的层次结构组成,其创建全球哈希树。第一层聚合服务器-网关,负责直接从客户端收集请求;每个聚合服务器从低一层服务器接收请求,将它们一起散列成哈希树,并将树的顶部哈希值发送请求到更高级层的服务器。然后,服务器等待来自上级服务器的响应并将收到的响应与其自己的哈希树中的哈希链组合起来创建和传递到每个下级服务器。如图2所示,在每个聚合周期,聚合树的顶部存储在日历区块链中。为了使链接到日历区块链中哈希值不可逆转,使新叶只添加到树的一侧。日历区块链是永久的,数据只附加到其中。日历区块链的根节点定期发布在报纸和电子媒体上,以确保长期的完整性。该哈希链是全球唯一且公开的,对所有第三方开放审计。

图2 KSI服务架构

在无密钥签名方案中,签名者身份认证功能和证据完整性保护功能被分离并委托给适合这些功能的加密工具。例如,签名者身份认证仍然可以通过使用非对称加密来完成,但签名数据的完整性受到单向无碰撞的哈希函数的保护,这是公共标准,不涉及任何密钥的转换。

3.2 KSI安全机制

KSI区块链技术旨在为电子数据提供可扩展的基于身份认证的数字签名。与依赖于非对称密钥加密技术的传统方法不同,KSI仅使用哈希函数来加密,允许验证仅依赖哈希函数的安全性及区块链的可用性。

KSI区块链克服了主流区块链技术的三个主要弱点,使KSI也适用于网络安全和数据管理应用:

(1)可扩展性:传统区块链方法以O(n)规模复杂度扩展,规模随交易数量呈线性增长。而KSI区块链可以在O(t)空间复杂度的范围内扩展,随时间呈线性增长,独立于交易数量,不会因为交易数目增长而失去控制。

(2)结算时间:与广泛分布的加密货币法相反,KSI区块链可以同步达成共识,消除对工作证明的需求,并确保在一秒内可以进行结算。

(3)正式的安全性证明:与其他区块链不同,KSI区块链接已经能实现端到端的正式数学证明,可以保证协议的准确性。

KSI提供全球范围的时间戳和服务器辅助的数字签名服务;其安全性是可以证明的且信任要求最低并具有强不可更改性。其保证全球独一无二的公共哈希日历值,使系统篡改,特别是时钟值,对所有用户都高度可见[6]。

4 基于无密钥签名技术的政务数据完整性保护方案

4.1 无密钥签名技术应用于政务数据的研究意义

政务数据是政务部门组织和执行各项事务或活动中产生的数据,政务数据被恶意篡改,数据就不真实不完整,极有可能导致政务部门基于恶意数据做出错误决策。因此,政务系统和数据的完整性和真实性尤其突出。无密钥签名技术由于其保护数据的完整性及不可篡改性,在政府治理领域有很广阔的应用场景,如电子政务、工资审核、税务征收等方面的潜在应用,下面我们将重点阐述无密钥技术在政务数据完整性安全防护方面的应用。

4.2 无密钥签名系统的使用

通过无密钥签名系统能实现对政务数据的签名和验证两大功能。签名功能是指用户(政务部门组织)上传一个签名政务数据的哈希值,系统对该哈希值进行签名运算,返回用户一个签名文件。验证是指系统对已签过的政务数据再进行一次哈希运算,将得到的哈希值进行验证运算,返回验证结果。基于无密钥签名的政务数据完整性保护方案工作原理如图3所示:

图3 无密钥签名应用流程

图4说明了无密钥系统中的签名的完整过程,即将产生的电子数据通过内部的哈希算法得到一个哈希值;KSI网关将得到的哈希值通过HTTP协议传输到区块链网络中进行无钥签名服务;网络返回带有签名信息的电子数据(即签名值)。

图4 调用签名服务

数据签名后,用户需要对上传数据的真实性进行验证。如图5所示,即用户(政务部门组织)向SDK提供签名文件哈希值、签名值及信任根具体数据(如发布字符串);提供此信息的SDK通过HTTP协议将执行相应的验证服务并返回验证结果。如果验签成功,证明签名数据是完整不被篡改的。在失败的情况下,具体原因将被列出。

图5 调用验证服务

4.3 基于无密钥签名的政务数据安全性分析

无密钥签名区块链有以下安全特性:基于网络共识算法和时间戳技术,本身就具备不可篡改性;在此系统中公共哈希日历值由该时刻所有终端的用户共同参与,任何一个终端都没有强制性的中心控制功能;拥有无单点故障的高可用性和高性能响应方案;在无密钥签名系统中,终端的用户提供哈希文件和签名值,服务器端可通过正式的数学证明来比较验签数据的准确性。这种端到端的证明算法可以独立验证,永不失效[7]。

基于区块链项目的无密钥签名技术针对政务数据安全构建的政务数据完整性保护方案,其工作原理是:政务数据待保护的数字资产运用无密钥签名系统产生“数据签名值”,并在区块链上存储这些签名值。如果能够确保这些关键数据最初是和实际相符的,那么这些资产的真实性和完整性就可以随时得到验证。从论述工作原理得知,政务数据完整性保护方案在如何确保数据的完整性上,主要是签名功能和验证功能。无密钥签名电子档案数据经过本地计算及KSI全球网络运算获得签名,从而防止数据在传输过程中被悄然篡改,证明数据的可靠性和不可抵赖性。基于区块链以及无密钥签名技术的引入,为政务数据在网络环境下的完整性提供了数学证明,使得网络攻击产生的破坏力降低,规避风险,让政府部门精准科学决策。

5 结语

本文分析了现有的以PKI为代表的传统电子签名方案在政务数据完整性认证存在的问题,提出了一个保证签名信息的完整性的替代方案无密钥签名基础设施KSI,并其将应用于政务数据安全保护中。相比传统的数据完整性保护技术,本方案利用安全高效的无密钥签名技术,对政务数据进行完整性保护,并将签名数据存储在区块链中,这种只存储签名数据的机制将极大减少对存储的要求,但是本方案存在一定的验证延迟,无法做到持续监测关键数据的完整性状态,还未实现利用无密钥签名技术实现签名者身份认证以保证签名起源的不可篡改性。所以研究主动完整性保护技术,利用无密钥签名技术实现对签名者身份的认证以此来保证整个签名内容、签名起源、签名时间的完整性与不可篡改性是下一步的研究目标。

[1]肖攸安,李腊元.数字签名技术的发展[J].交通与计算机,2003(02):6-9.

[2]杨柠聪,白平浩.区块链技术的政府治理实践:应用、挑战及对策[J].党政研究,2020(02):100-107.

[3]孙岩,雷震,詹国勇.基于区块链的军事数据安全研究[J].指挥与控制学报,2018,4(3):189-194.

[4]谢辉,王健.区块链技术及其应用研究[J].信息网络安全,2016(9):192-195.

[5]Buldas A,Laanoja R,Truu A. Efficient Quantum-Immune Keyless Signatures with Identity[J]. IACR Cryptology ePrint Archive,2014,321.

猜你喜欢
数字签名哈希完整性
基于特征选择的局部敏感哈希位选择算法
关于防火门耐火完整性在国标、英标、欧标和美标中的比对分析
哈希值处理 功能全面更易用
交通运输行业数字签名系统的设计与实现分析
文件哈希值处理一条龙
浅析计算机安全防护中数字签名技术的应用
ELM及IS/OS完整性对年龄相关性黄斑变性预后视力的影响
更正说明
数字签名技术在计算机安全防护中的应用
巧用哈希数值传递文件