常见问题欢迎来到大学堂论文网,权威的论文代写、论文发表平台,服务论文行业十二年,专业为您提供论文代写代发服务
点击咨询韦老师  点击咨询李老师
范文期刊如找不到所需论文资料、期刊 请您在此搜索查找
 
您当前的位置:主页 > 管理论文 >

如何保护电子政务中发布信息真实性

发布时间:2019-09-29

 

  1 引言
  
  电子政务是政府在国民经济和社会信息化的背景下,以提高政府办公效率和投资环境为目标,将政府的信息发布、管理、服务、沟通功能向国际互联网上迁移的系统解决方案。政府部门在国际互联网上进行信息发布是政务公开的载体和平台,也是政府与社会、企业、民众沟通的桥梁。通过信息发布,公众可以便捷地获取政府信息和服务,使公众与政府关系简单化[1].
  
  在数据的传输中,一方面,由于网络本身传输性能的可靠性以及物理设备的性能缺陷,可能会导致传输的数据部分丢失; 另一方面,数据在传输过程中被恶意攻击者非法篡改,甚至攻击者侵入数据源端( 如数据存储服务器) 对数据进行非法篡改,这样,获得的数据不但不真实,在某些关键的地方被恶意篡改,还会使用户无法获取完整有价值的信息,给用户造成不便,甚至会带来严重的后果。目前常用的完整性保护技术一般都是消息认证,验证接收到的信息来自真正的发送方并且未被修改。
  
  哈希函数是最常用的生成认证消息的方法,如常见的 MD5[2]、SHA-3[3],Myletundeng 等 提 出 的 基于 RSA 的压缩签名方法[4],采用可压缩的 RSA 数字签名一定程度上解决了数据完整性校验问题,但效率却不高。为解决这类问题,人们从不同应用方面提出了许多改进方法[5][6].本文针对政府电子政务中信息发布真实性问题,在一般哈希树结构的基础上,提出了基于 MHT( Merkle Hash Tree) 和时间戳的方法,保护电子政务中发布信息的真实性。
  
  2 相关知识
  
  Merkle 哈希树是一种特殊的数字签名方法,它利用安全的 Hash 函数来构造一个二叉树,实现数字签名和认证。Merkle 哈希树是指这样一个二叉树结构: 树的每一个叶节点由一个数据的 Hash 值构成; 每个父节点下面的两个子节点的 Hash 值组合到一起,再进行 Hash 运算就得到它们的父节点;依此类推直至得到树的根节点。Merkle 哈希树的主要优点是仅需通过对树根节点的一次签名运算就可以对所有的叶节点独立地提供真实性验证。
  
  对数据进行散列运算,将散列结果和日期进行签名,生成数字时间戳。时间戳的主要目的就是时间认证,证明某个文档的生成确定时间,带有时间戳的签名方案就是将不可篡改的时间信息纳入数字签名方案。
  
  下面通过一个具体的例子来介绍 Merkle 哈希树,如图 1 所示。对于数据 d1,d2,d3,d4,我们可以基于 d1,d2,d3,d4 构造一棵 Merkle 哈希树。每一个叶子节点 Ni 的值为 H( di) ( i=1,2,3,4) ,其中H 是一个安全的 Hash 函数。中间节点的值是通过他们的子节点计算出来的。例如,N12 = H( N1/ /N2) ( 其中“/ / ”表示连接符) ,N34 = H ( N3 / / N4) ,R*= H ( N12 / / N34) ,其中 R*是 Merkle 哈希树的根结点的值。我们定义,为了计算 R*,从每一个叶结点到根结点 R*之间的结点的值构成了相应的叶结点的认证路径。例如,图 1 中叶结点 d1 的认证路径为( N2,N34) ,d2 的认证路径为( N1,N34) ,d3的认证路径为( N4,N12) ,d4 的认证路径为( N3,N12) .每一个叶结点及其认证路径构成了叶结点的签名。
  


  验证 Merkle 签名是为了表明某个叶结点是否一定存在于原始的 Merkle 哈希树中。根据叶结点和相应的认证路径重新计算出 Merkle 哈希树的根结点的值 R**.把 R**与原始签名树的根结点的值 R*进行比较,如果相等,则表明相应的叶结点一定存在于原始的 Merkle 哈希树中。
  
  3 真实性保护的方法
  
  3.1 符号说明
  
  A: 政府部门; B: 用户( Ksig,Kver) : 政府部门 A 的公/私密钥对,政府部门 A 拥有相应的公钥证书;Q = SigA( X) : 表示 A 用私钥 Kver对信息 X 进行签名运算,产生数字签名 Q;VerA( Q) : 表示对 A 的数字签名 Q 的验证。
  
  M: 表示发布的信息; T: 表示网页发布时间;H: 代表安全的 Hash 函数。
  
  3.2 方法和步骤
  
  本文提出的保护政务信息真实性的思想是: 政府部门在发布信息时,先对网页构造 Merkle 哈希树,将主网页及链接子网页作为叶子节点,计算哈希值,并两两结合,得到 Merkle 哈希树的根节点的值 R( A) ,对 R( A) 和信息发布时间 T 的组合的Hash 值进行签名,生成数字时间戳,然后将签名和验证路径附加在网页里发送给第三方转载。客户端在第三方浏览时下载网页、数字签名和验证路径,对网页真实性进行验证。
  
  具体步骤如下:
  
  ( 1) A 先对发布信息网页构造 Merkle 哈希树;① 使用单向 Hash 函数( 如 MD5 或 SHA-1)计算各个网页 S1,S2,…,Si( i=1,…n) 的 Hash 值,这些 Hash 值作为 Merkle 哈希树的叶节点的值。② Merkle 哈希树的每个中间节点( 包括根节点) 的值是将其左右子节点的值拼接后计算出的Hash 值。假设有 4 个网页 S1,S2,S3 和 S4,则 Merkle 哈希树构成如图 2 所示。


  
  如果网页是奇数组成,而不是偶数,我们采取的方法是在把孩子层的结点从左到右两两配对后剩下的结点移到本层。如果本层的结点数仍成奇数,则再采取上述方法直至该结点找到与之配对的结点为止,如图 3 所示。


  
  ( 2) A 对 R( A) 和信息发布时间 T 的组合的Hash 值进行数字签名,生成数字时间戳: Q = SigA( H( R( A) / /T) ) ;( 3) A 将签名 Q 和要发布的各个网页及其验证路径发送给第三方;( 4) B 在第三方浏览网页时,下载网页、签名及验证路径;( 5) B 验证数字签名: VerA( Q) ;( 6) B 按下载的网页和验证路径重新计算Merkle 哈希树的根节点 R( B) ,然后计算 H( R( B)/ / T) ,并将结果与 H( R( A) / / T) 进行比较,如果相等,则说明网页真实,否则说明网页遭到破坏、篡改或替换。
  
  4 性能分析
  
  安全性讨论: 如果有人试图伪造( 通过非法修改或替换) 网页信息,一种方法是用伪造的网页和其他网页一起重新构造产生另一 Merkle 哈希树,然后对其根节点伪造 A 的签名,但是由于第三方不知道 A 的私钥,因此他无法伪造 A 的签名; 第二种方法是第三方对伪造网页生成相应的认证路径,使得通过它们计算出的根节点的值与合法的 R( A) 相同,但是由于 h( ) 是单向散列函数,这些参数想要从哈希函数逆推出来在计算上是无法实现的,离散对数难题使得这种计算是无法实现的。
  
  时间和空间的开销: 存储开销为信息发布时信息所需的存储空间和保存相应的 Merkle 签名树所需存储空间。假设主网页及其链接的子网页有 n个,则验证每个网页需要提供「log2n」个其他节点的值作为 Merkle 哈希树的认证路径; 验证所有的 n个网页节点,最坏情况下需要「log2n」×n 个其他节点的值作为 Merkle 哈希树的认证路径。
  
  Hash 函数采用 SHA-1 数据加密法,对于长度小于 2^64 位的消息,SHA1 会产生一个 160 位的消息摘要,每个节点的值采用 20 位的存储空间。
  
  表 1 中的分析结果表明: 本文所提出的模型产生的额外存储开销是可以接受的。
  
  在配置为 Intel CPU 2.7GHz,4GRAM 的机器上,使用 C++语言编写了 N=1000 参数的算法模拟程序。在程序运行中,全部节点的验证时间为52μs,时间开销是可以接受的。
  
  5 结语
  
  本文所提出的保护信息真实性的方法中,传输的数据除了网页数据以外,还有网页的认证信息,其中主要是网页的认证路径的信息,在政府发布信息时采用本文的方法增加的信息传输量不大,额外开销可以接受。这种基于 Merkle 树实现电子政务中信息发布真实性校验策略,使用基于时间戳的数字签名的方法保证获得信息的正确性和完整性,开销较小,是一种比较实用的数据真实性保护方法。
  
  此种方法还可扩大到实际运用的其它方面,例如云存储完整性检测、云计算中数据安全性检测等等。
  
  此种方法对于信息发布的数据量是有效的,对于云存储、云计算中,用户数目巨大,存在成千上万的节点认证路径,使用此方法代价太大,还有待于做进一步的研究扩展。
  
  参考文献
  
  [1]姚滢。网页防篡改系统的研究与设计方案[J].计算机安全,2010( 6) .
  
  [2]Rivest R. RFC 1321: The MD5 message -digest algorithm[J]. Internet activeties board,1992( 143) .
  
  [3]Bertoni G,Daemen J,Peeters M,et al. Thekeccak sha - 3 submission[J]. Submission to NIST( Round 3) ,2011 ( 8) .
  
  [4]Mykletun E. Narasimha M. Tsudik G. Au-thentication and integrity in outsourced databases[J].ACM Transactions on Storage,2006 ( 2) .
  
  [5]张晓燕,范冰冰。基于 Merkle 树的移动平台文件完整性校验 [J].计算机系统与应用,2010( 9) .
  
  [6]李添杰,刘述,高强。基于 Merkle 树的 P2P流媒体内容完整性校验 [J].计算机工程与设计,2015( 7) .

 

TAG标签: 信息真实性     电子政务    

相关论文