CN111191295A - Pdf文件下的无序电子签章方法 - Google Patents

Pdf文件下的无序电子签章方法 Download PDF

Info

Publication number
CN111191295A
CN111191295A CN202010002352.6A CN202010002352A CN111191295A CN 111191295 A CN111191295 A CN 111191295A CN 202010002352 A CN202010002352 A CN 202010002352A CN 111191295 A CN111191295 A CN 111191295A
Authority
CN
China
Prior art keywords
signature
document
pdf file
original
range
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN202010002352.6A
Other languages
English (en)
Inventor
孙建山
董甲彬
王珂
王永起
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Public Resources Trading Center
Shandong Tongzhi Weiye Software Co ltd
Original Assignee
Shandong Public Resources Trading Center
Shandong Tongzhi Weiye Software Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong Public Resources Trading Center, Shandong Tongzhi Weiye Software Co ltd filed Critical Shandong Public Resources Trading Center
Priority to CN202010002352.6A priority Critical patent/CN111191295A/zh
Publication of CN111191295A publication Critical patent/CN111191295A/zh
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)

Abstract

本发明公开了一种PDF文件下的无序电子签章方法,包括如下步骤:对每个签章端分发一个PDF文件副本进行单独签章处理;获取待合成PDF文件副本;遍历已签章的PDF文件,从已签章的PDF文件副本提取公钥证书、章模、签章位置和签名值;待合成文档副本的文档属性是否有原始文档范围,若有,则以文档属性中的原始文档范围为签名原文,利用提取的公钥证书、章模、签章位置预加盖签章,并填充提取的签名值;若无,则以文档所有数据为签名原文,利用提取的公钥证书、章模、签章位置预加盖签章,并填充提取的签名值,并在文档属性中记录原始文档范围。本发明实现高效率的并行签章,改善会签场景下的签章性能及用户体验。

Description

PDF文件下的无序电子签章方法
技术领域
本发明涉及一种PDF文件下的无序电子签章方法。
背景技术
在应用中,UKEY作为CA数字证书的一种载体,内部在存放数字证书的同时,也会存放对应的电子印章数据。通过CA的认证介质,能够将电子印章结合数字证书密钥对电子数据进行数字签名,形成有效的签名数据,作用于电子政务、电子商务等多个应用领域,解决了电子化签名的法律问题。
以公共资源交易为例,目前普遍采用CA数字证书+电子印章的方式贯穿于整个交易环节。在多个评委对评标结果进行会签场景时,每个评委用自己的UKEY对评标结果电子签章。目前很少采用多个评委对同一份评标结果一个一个的排序进行电子签章的方式进行会签,因为此方式效率最低。通常的解决方式是通过同步锁机制并发进行电子签章,但是由于PDF标准中后面签章的原文中包含前面签章对象,目前各个电子签章厂商的PDF电子签章实现都参照PDF格式规范进行实现,因此PDF文件的多个签章对象间存在前后依赖关系,导致采用副本会签时副本一致性同步控制问题(即多人并发签章,一人对副本签章,其他人能够立即看到修改),此控制类似多核CPU的缓存一致性控制问题,实现甚至更复杂,导致系统不稳定,而且在并发签章一个评委签章处理锁定期间,如果在输入PIN码等阻塞操作不及时处理会严重阻塞其它评委的处理,导致效率低下,体验性不佳。
如何有效的提高会签的效率,实现基于PDF文件的会签场景下的多人无序签章已成为了迫切需要破解的难题。
发明内容
为了解决上述问题,本发明提出一种实现高效率的并行签章,改善会签场景下的签章性能及用户体验,最终实现会签场景下的无序电子签章的PDF文件下的无序电子签章方法。
本发明的技术方案为:
PDF文件下的无序电子签章方法,包括如下签章合成的步骤:
对每个签章端分发一个PDF文件副本进行单独签章处理,每个签章端可以并行签章;
获取待合成PDF文件副本;
遍历已签章的PDF文件,从已签章的PDF文件副本提取公钥证书、章模、签章位置和签名值;
待合成文档副本的文档属性是否有原始文档范围,若有,则以文档属性中的原始文档范围为签名原文,利用提取的公钥证书、章模、签章位置预加盖签章,并填充提取的签名值;若无,则以文档所有数据为签名原文,利用提取的公钥证书、章模、签章位置预加盖签章,并填充提取的签名值,并在文档属性中记录原始文档范围。
该签章方法还包括如下验证步骤:
获取待验证签章对象的ByteRange(原始文档范围)和Contents(签名值);
根据ByteRange(原始文档范围)指示的签章原文范围获取签章原文;
根据签章原文计算文档哈希值Hash;
根据Contents(签名值)获取PKCS7签章结果;
验证PKCS7签章结果的完整性;
验证通过,则在PKCS7签章结果中获取文档哈希值Hash2;
Hash与Hash2比对,比对一致则验证通过,比对不一致则验证失败。
有益效果:
本发明通过改进PDF电子签章的文档保护范围,去除签章之间的先后依赖关系,进而可以使用文档可以根据提取签章信息无序的加盖合成,并且前端多人签章可以并发进行,而不依赖于其它签章人,后端再通过提取合成签章方式实现会签到同一PDF文件上,既保证文档安全性,又避开了复杂的同步控制处理。通过改进,可以避免复杂的同步控制,从而降低了系统复杂度,提高系统稳定性,也提升了可用性和用户体验。
附图说明
图1为本发明的签章合成流程图;
图2为本发明的验证流程图;
图3为本发明的签章原理图;
图4为本发明改进前后多人会签签章并发处理对比图;、
图5为本发明改进前后PDF签章追加方式和签章依赖关系对比图。
具体实施方式
下面结合附图1-5对本发明做详细介绍:
本发明签章合成时,遍历已签章PDF文件副本、从已签章PDF文件副本中提取公钥证书、印模、签章位置、签名值等信息,使用公钥证书、印模、签章位置预加盖签章,并用提取的签名值直接填充到签名值位置。
在合成首个签章时,在文档属性中记录原始文档范围,后续合成签章原文范围使用文档属性记录的原始文档范围作为签名原文。
如图1所示,签章合成流程如下:
第一步,对每个签章端分发一个PDF文件副本进行单独签章处理,每个签章端可以并行签章。
第二步,获取待合成PDF文件副本。
第三步,遍历已签章的PDF文件,从已签章的PDF文件副本提取公钥证书、章模、签章位置和签名值。
第四步,判断待合成文档副本的文档属性是否有原始文档范围;
若有原始文档范围,则以文档属性中的原始文档范围为签名原文,利用提取的公钥证书、章模、签章位置预加盖签章,并填充提取的签名值;
若无原始文档范围,则以文档所有数据为签名原文,利用提取的公钥证书、章模、签章位置预加盖签章,并填充提取的签名值,并在文档属性中记录原始文档范围。
验证时,根据签章结构中记录的签名范围、签名结果相关信息验证即可验证PKCS7签名结果完整性,并比对签名范围指定的签名原文摘要与PKCS7中保存的摘要进行比对是否一致,两者都验证通过,则签章验证通过,否则签章验证失败。具体的验证步骤如图2所示:
第一步,获取待验证签章对象的ByteRange(原始文档范围)和Contents(签名值);
第二步,根据ByteRange(原始文档范围)指示的签章原文范围获取签章原文;
第三步,根据签章原文计算文档哈希值Hash;
第四步,根据Contents(签名值)获取PKCS7签章结果;
第五步,验证PKCS7签章结果的完整性;
第六步,验证通过,则在PKCS7签章结果中获取文档哈希值Hash2;
第七步,Hash与Hash2比对,比对一致则验证通过,比对不一致则验证失败。
PDF电子签章是以增量方式更新文件,即签章对文件的修改都是在文件最后直接追加,原始文档范围内容不会做任何修改,通过改变签章对象的原文保护范围,使签章对象签名原文只依赖于原始的PDF文档范围(即在首次签章时文档中记录最原始的文档范围,使PDF文档自己知道自己的原始文档范围),去除签章之间的前后依赖关系,使PDF文件中的签章可以提取签章信息,并可以使用提取的签章信息合成签章到相同的副本上。这样由于签名原文是一样的,直接用提取的签章信息中的签名值去合成签章,合成后文档就可以正确的验证通过,无需再重新计算签名值,去除合成签章时对UKEY的依赖。
本发明的PDF签章实现会签场景下的无序电子签章应满足以下几个基础条件:
(1)PDF首次签章时在文档扩展字段中记录文档的原始范围。
(2)PDF电子签章对象间去依赖,每个电子签章只依赖原始文档。
(3)每个签章信息可以提取、并在副本合成。
(4)提取时提取签章必要信息,合成时重新加盖并填充提取信息。
(5)签章信息合成时,不再重新计算签名,直接合成就能验证。
对于多人签章情况,需要采用并发处理机制进行控制,本发明采用类似多线程中线程局部存储以空间换时间的思想,对每个签章端分发一个副本进行单独签章处理,使每个签章端可以并行签章。
本发明PDF签章实现会签场景下的无序电子签章应满足并行处理:
(1)每个签章端分发一个副本进行并行签章
基于以上基础条件和并行签章处理,就可以实现基于PDF文件的会签场景下的多人无序签章。此方式避开两个复杂问题,第一个:并行签章对副本的一致性控制问题。第二个:一致性控制和PDF签章对象前后依赖导致的必须按队列方式进行有序合成的问题。
在省公共资源交易中,在会签场景下,对多评委并发签章及用户体验有更高的要求,目前已经初步实现基于PDF版本文件的多个评委对评标结果无序电子签章的应用。
架构设计上,其结构原理图如图3所示。签章时,多个签章人在各自打开的待签章的PDF文件副本中进行签章;合成时,从已签章的PDF文件副本提取签章相关信息,在待合成PDF文件副本中重新加盖。为了签章合成后能验证通过,又避免重新插入UKEY签名,需要保持签名原文一致,始终以原始文档范围内容作为签名原文。
在具体实现方式细节上改进分两个方面进行对比:
多人电子签章会签并发处理上进行对比,如图4所示。
在PDF文件电子签章合成实现方式及签章之间先后依赖关系上进行对比,如图5所示。图5中,阴影部分表示签章保护原文范围,粗线框内内容表示签章追加的内容。
由图4和图5所示,PDF文档签章由于签名保护原文范围的不同,存在包含关系,导致签章之间存在先后依赖关系,继而导致多人签章时要实时同步,用户签章前需要先同步这种依赖关系再签章,才能保证签章提取合成后文档能验证通过,同步处理过程需要通过副本一致性协议来保证,即一方签章,其它方能实时看到,即便如此实现,多人签章的性能瓶颈主要取决于用户并发操作时界面阻塞时间的粒度,体验性不佳。
本发明通过改进PDF电子签章的文档保护范围,去除签章之间的先后依赖关系,进而可以使用文档可以根据提取签章信息无序的加盖合成,并且前端多人签章可以并发进行,而不依赖于其它签章人,后端再通过提取合成签章方式实现会签到同一PDF文件上,既保证文档安全性,又避开了复杂的同步控制处理。通过改进,可以避免复杂的同步控制,从而降低了系统复杂度,提高系统稳定性,也提升了可用性和用户体验。

Claims (2)

1.PDF文件下的无序电子签章方法,其特征在于,包括如下签章合成的步骤:
对每个签章端分发一个PDF文件副本进行单独签章处理,每个签章端可以并行签章;
获取待合成PDF文件副本;
遍历已签章的PDF文件,从已签章的PDF文件副本提取公钥证书、章模、签章位置和签名值;
待合成文档副本的文档属性是否有原始文档范围,若有,则以文档属性中的原始文档范围为签名原文,利用提取的公钥证书、章模、签章位置预加盖签章,并填充提取的签名值;若无,则以文档所有数据为签名原文,利用提取的公钥证书、章模、签章位置预加盖签章,并填充提取的签名值,并在文档属性中记录原始文档范围。
2.根据权利要求1所述的PDF文件下的无序电子签章方法,其特征在于,它还包括如下验证步骤:
获取待验证签章对象的ByteRange(原始文档范围)和Contents(签名值);
根据ByteRange(原始文档范围)指示的签章原文范围获取签章原文;
根据签章原文计算文档哈希值Hash;
根据Contents(签名值)获取PKCS7签章结果;
验证PKCS7签章结果的完整性;
验证通过,则在PKCS7签章结果中获取文档哈希值Hash2;
Hash与Hash2比对,比对一致则验证通过,比对不一致则验证失败。
CN202010002352.6A 2020-01-02 2020-01-02 Pdf文件下的无序电子签章方法 Withdrawn CN111191295A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010002352.6A CN111191295A (zh) 2020-01-02 2020-01-02 Pdf文件下的无序电子签章方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010002352.6A CN111191295A (zh) 2020-01-02 2020-01-02 Pdf文件下的无序电子签章方法

Publications (1)

Publication Number Publication Date
CN111191295A true CN111191295A (zh) 2020-05-22

Family

ID=70709849

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010002352.6A Withdrawn CN111191295A (zh) 2020-01-02 2020-01-02 Pdf文件下的无序电子签章方法

Country Status (1)

Country Link
CN (1) CN111191295A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111832080A (zh) * 2020-07-21 2020-10-27 杭州天谷信息科技有限公司 一种电子合同作废的方法
CN112994900A (zh) * 2021-04-25 2021-06-18 北京信安世纪科技股份有限公司 文件会签方法、装置、客户端、服务端和存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040230891A1 (en) * 2003-05-16 2004-11-18 Pravetz James D. Document modification detection and prevention
JP2011077933A (ja) * 2009-09-30 2011-04-14 Secom Co Ltd 電子署名検証装置
KR20130011868A (ko) * 2011-07-22 2013-01-30 (주)캡소프트 모바일 기기에서 이용 가능한 전자 문서의 생성 방법 및 이의 생성 장치
CN104486351A (zh) * 2014-12-24 2015-04-01 昆山百润科技有限公司 支持多人对同一份文件签章的客户端、服务器及处理方法
CN104766029A (zh) * 2014-01-03 2015-07-08 航天信息股份有限公司 对pdf文档进行国密电子签章处理的方法和装置
CN105320900A (zh) * 2014-07-24 2016-02-10 方正国际软件(北京)有限公司 Pdf数字签名方法和系统以及pdf数字签名验证方法和系统
CN105791414A (zh) * 2016-04-05 2016-07-20 江苏国泰新点软件有限公司 电子招投标文件签章方法、服务器和客户端
CN110175474A (zh) * 2019-05-31 2019-08-27 苏州国泰新点软件有限公司 电子签章的合并方法、装置、介质、服务器及用户终端
CN110532808A (zh) * 2019-08-20 2019-12-03 江西金格科技股份有限公司 一种基于电子文档图像对象的电子签章方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040230891A1 (en) * 2003-05-16 2004-11-18 Pravetz James D. Document modification detection and prevention
JP2011077933A (ja) * 2009-09-30 2011-04-14 Secom Co Ltd 電子署名検証装置
KR20130011868A (ko) * 2011-07-22 2013-01-30 (주)캡소프트 모바일 기기에서 이용 가능한 전자 문서의 생성 방법 및 이의 생성 장치
CN104766029A (zh) * 2014-01-03 2015-07-08 航天信息股份有限公司 对pdf文档进行国密电子签章处理的方法和装置
CN105320900A (zh) * 2014-07-24 2016-02-10 方正国际软件(北京)有限公司 Pdf数字签名方法和系统以及pdf数字签名验证方法和系统
CN104486351A (zh) * 2014-12-24 2015-04-01 昆山百润科技有限公司 支持多人对同一份文件签章的客户端、服务器及处理方法
CN105791414A (zh) * 2016-04-05 2016-07-20 江苏国泰新点软件有限公司 电子招投标文件签章方法、服务器和客户端
CN110175474A (zh) * 2019-05-31 2019-08-27 苏州国泰新点软件有限公司 电子签章的合并方法、装置、介质、服务器及用户终端
CN110532808A (zh) * 2019-08-20 2019-12-03 江西金格科技股份有限公司 一种基于电子文档图像对象的电子签章方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111832080A (zh) * 2020-07-21 2020-10-27 杭州天谷信息科技有限公司 一种电子合同作废的方法
CN112994900A (zh) * 2021-04-25 2021-06-18 北京信安世纪科技股份有限公司 文件会签方法、装置、客户端、服务端和存储介质
CN112994900B (zh) * 2021-04-25 2021-09-17 北京信安世纪科技股份有限公司 文件会签方法、装置、客户端、服务端和存储介质

Similar Documents

Publication Publication Date Title
US11356268B2 (en) Digital composition hashing
CN106599321B (zh) 一种dwg文件批注和签名的生成、解析插件及其使用方法
CN1936780B (zh) 信息处理装置、验证处理装置及其控制方法
US8977860B2 (en) Method and apparatus for tamper proof camera logs
US8037312B2 (en) Method and apparatus for digital signature authentication, and computer product
CN111191295A (zh) Pdf文件下的无序电子签章方法
US20060259516A1 (en) Nondisruptive method for encoding file meta-data into a file name
CN110532811B (zh) 一种pdf签章方法及pdf签章系统
US6751632B1 (en) Method of creating authenticated verifiable reproductions of electronic documents
CN111461751A (zh) 基于区块链的房产信息链上组织方法、历史状态追溯方法及装置
CN109785222A (zh) 一种用于网页的信息快速嵌入和提取的方法
Liu et al. Digital cardan grille: A modern approach for information hiding
EP2107711A1 (en) Method and apparatus for digital signature authentication, and computer product
US7818256B1 (en) Digital receipt for electronic data and methods and systems for generating same
CN113704794B (zh) 电子招投标系统中的投标文件处理方法及装置
CN113986822A (zh) 一种增值税电子发票的格式转换方法及系统
JPH03151738A (ja) 検証用データ生成装置
CN117150342A (zh) 一种票据数据的批量处理方法、装置及介质
CN111898982A (zh) 电子发票的生成方法
CN115758476B (zh) 基于手写签名的电子名章制作方法、设备及介质
CN111274615A (zh) 一种基于ofd格式文件的长效数字签名方法
CN112686648B (zh) 一种审核签章文件的电子签名管理方法及系统
CN112187909B (zh) 一种基于区块链融资信息生成系统及方法
US20070204340A1 (en) Cascaded digital signatures
CN114117544A (zh) Pdf文件分离式电子签章的生成方法、系统及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 250101 room 2301, 6 tower, Shun Tai Plaza, 2000 Shun Hua Road, hi tech Zone, Ji'nan, Shandong.

Applicant after: Tongzhi Weiye Software Co.,Ltd.

Applicant after: Shandong public resources trading center

Address before: 250101 room 2301, 6 tower, Shun Tai Plaza, 2000 Shun Hua Road, hi tech Zone, Ji'nan, Shandong.

Applicant before: SHANDONG TONGZHI WEIYE SOFTWARE Co.,Ltd.

Applicant before: Shandong public resources trading center

CB02 Change of applicant information
WW01 Invention patent application withdrawn after publication

Application publication date: 20200522

WW01 Invention patent application withdrawn after publication