CN104766029B - 对pdf文档进行国密电子签章处理的方法和装置 - Google Patents

对pdf文档进行国密电子签章处理的方法和装置 Download PDF

Info

Publication number
CN104766029B
CN104766029B CN201410082078.2A CN201410082078A CN104766029B CN 104766029 B CN104766029 B CN 104766029B CN 201410082078 A CN201410082078 A CN 201410082078A CN 104766029 B CN104766029 B CN 104766029B
Authority
CN
China
Prior art keywords
data
pdf document
filled
signature
state
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.)
Active
Application number
CN201410082078.2A
Other languages
English (en)
Other versions
CN104766029A (zh
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.)
Aisino Corp
Original Assignee
Aisino Corp
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 Aisino Corp filed Critical Aisino Corp
Priority to CN201410082078.2A priority Critical patent/CN104766029B/zh
Publication of CN104766029A publication Critical patent/CN104766029A/zh
Application granted granted Critical
Publication of CN104766029B publication Critical patent/CN104766029B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Document Processing Apparatus (AREA)

Abstract

本发明实施例提供了一种对PDF文档进行国密电子签章处理的方法和装置。该方法包括:选择电子印章,根据电子印章构造符合PDF标准的签名字典结构,将签名字典结构填充到PDF文档中;根据电子印章和填充了签名字典结构的PDF文档的原文数据构造符合PDF标准的包含电子签名的P7数据,将P7数据填充到签名字典结构中;提取填充了P7数据的PDF文档的原文数据,使用电子印章对填充了P7数据的PDF文档的原文数据进行盖章,生成国密电子签章数据,将国密电子签章数据填充到签名字典结构中,得到包含国密电子签章数据的PDF文档。利用本发明使得加盖国密电子签章数据后的PDF文档,在符合PDF标准的同时,又支持国密电子签章标准,有效地提高了PDF文档的安全性。

Description

对PDF文档进行国密电子签章处理的方法和装置
技术领域
本发明涉及电子签章技术领域,尤其涉及一种对PDF文档进行国密电子签章处理的方法和装置。
背景技术
随着技术的发展,越来越多的企事业单位及国家机关逐渐采取了电子化办公,极大的提高了工作效率。随之而来的便是电子办公所带来的安全性问题,由于电子文档易被拷贝或篡改,所签发的电子文档是否被修改,是否签发人所签发等问题随之而来。电子签章产品的出现解决了上述问题,为电子文档的安全需求提供了技术依据。
PDF文档格式作为一种广泛使用的国际标准格式,支持电子签章应用具有非常重要的意义。现有PDF文档标准中支持电子签名的技术,根据该技术,国内不少厂商使用图片与电子签章相结合,推出了PDF电子签章产品。
上述PDF文档标准中支持电子签名的技术与国密局制定的电子签章标准不符合,仅对文档做了电子签名,缺乏电子印章的概念,以及不规范的盖章、验章的流程,并且不支持国密SM2算法等等,仅为电子签名的一种应用,并不能代表作为符合国密标准的电子签章产品。因此,如何能够在文档格式中无缝的支持具有中国特色的国密电子签章标准,在使用现有的PDF文档标准之上,能够支持国密电子签章标准,是一个亟待解决的问题。
发明内容
本发明的实施例提供了一种对PDF文档进行国密电子签章处理的方法和装置,以使得在使用现有的PDF文档标准之上,能够支持国密电子签章标准。
本发明提供了如下方案:
一种对PDF文档进行国密电子签章处理的方法,包括:
选择电子印章,根据所述电子印章构造符合PDF标准的签名字典结构,将所述签名字典结构填充到PDF文档中;
根据所述电子印章和所述填充了签名字典结构的PDF文档的原文数据构造符合PDF标准的包含电子签名的P7数据,将所述P7数据填充到所述签名字典结构中;
提取所述填充了P7数据的PDF文档的原文数据,使用所述电子印章对所述填充了P7数据的PDF文档的原文数据进行盖章,生成国密电子签章数据,将所述国密电子签章数据填充到所述签名字典结构中,得到包含国密电子签章数据的PDF文档。
所述的选择电子印章,根据所述电子印章构造符合PDF标准的签名字典结构,将所述签名字典结构填充到PDF文档中,包括:
选择要使用的电子印章,从所述电子印章中提取印模、用户公钥证书,根据所述电子印章计算出国密电子签章数据长度,并预算出签名字典结构中存放P7数据的内容CONTENT字段的设定长度;
构造符合PDF标准中的包含证书字段、图片字段和CONTENT字段的签名字典结构,该签名字典结构中的证书字段中填充所述用户公钥证书,图片字段中填充所述印模,CONTENT字段的长度为所述设定长度,所述CONTENT字段内容的全部填充为0;
解析PDF文档,并将所述签名字典结构填充到所述PDF文档中。
所述的根据所述电子印章和所述填充了签名字典结构的PDF文档的原文数据构造符合PDF标准的包含电子签名的P7数据,将所述P7数据填充到所述签名字典结构中,包括:
对所述填充了签名字典结构的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为填充了签名字典结构的PDF文档的原文数据;
构造包含用户证书字段、签名字段和原文字段的符合PDF标准的P7数据,在所述用户证书字段中填充所述用户公钥证书,在所述签名字段中填充使用电子印章所对应的用户私钥对所述填充了签名字典结构的PDF文档的原文数据进行签名后的数据,在所述原文字段中填充0,所述原文字段的长度为所述计算出的国密电子签章数据长度;
将所述P7数据填充到所述PDF文档中的签名字典结构中的CONTENT字段中。
所述的提取所述填充了P7数据的PDF文档的原文数据,使用所述电子印章对所述填充了P7数据的PDF文档的原文数据进行盖章,生成国密电子签章数据,将所述国密电子签章数据填充到所述签名字典结构中,得到包含国密电子签章数据的PDF文档,包括:
对所述填充了P7数据的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为填充了P7数据的PDF文档的原文数据。
基于国密接口用所述电子印章对所述填充了P7数据的PDF文档的原文数据进行盖章处理,生成国密电子签章数据;
将所述国密电子签章数据填充到所述PDF文档中的签名字典结构中的P7数据中的原文字段中,得到包含国密电子签章数据的PDF文档。
所述的方法还包括:
解析所述包含国密电子签章数据的PDF文档,查找到所述PDF文档中的签名字典结构,按照P7格式解析所述签名字典结构中的CONTENT字段中的数据,得到签名字典结构中的P7数据,提取并保存述P7数据中包含的国密电子签章数据;
将所述P7数据中的原文字段填充为0,得到盖章处理前的PDF文档,对所述盖章处理前的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为盖章处理前的PDF文档的原文数据;
基于国密验签接口,使用所述国密电子签章数据对所述盖章处理前的PDF文档的原文数据进行验证。
一种对PDF文档进行国密电子签章处理的装置,包括:
签名字典结构填充模块,用于选择电子印章,根据所述电子印章构造符合PDF标准的签名字典结构,将所述签名字典结构填充到PDF文档中;
P7数据填充模块,用于根据所述电子印章和所述填充了签名字典结构的PDF文档的原文数据构造符合PDF标准的包含电子签名的P7数据,将所述P7数据填充到所述签名字典结构中;
国密电子签章数据填充模块,用于提取所述填充了P7数据的PDF文档的原文数据,使用所述电子印章对所述填充了P7数据的PDF文档的原文数据进行盖章,生成国密电子签章数据,将所述国密电子签章数据填充到所述签名字典结构中,得到包含国密电子签章数据的PDF文档。
所述的签名字典结构填充模块,具体用于选择要使用的电子印章,从所述电子印章中提取印模、用户公钥证书,根据所述电子印章计算出国密电子签章数据长度,并预算出签名字典结构中存放P7数据的内容CONTENT字段的设定长度;
构造符合PDF标准中的包含证书字段、图片字段和CONTENT字段的签名字典结构,该签名字典结构中的证书字段中填充所述用户公钥证书,图片字段中填充所述印模,CONTENT字段的长度为所述设定长度,所述CONTENT字段内容的全部填充为0;
解析PDF文档,并将所述签名字典结构填充到所述PDF文档中。
所述的P7数据填充模块,具体用于对所述填充了签名字典结构的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为填充了签名字典结构的PDF文档的原文数据;
构造包含用户证书字段、签名字段和原文字段的符合PDF标准的P7数据,在所述用户证书字段中填充所述用户公钥证书,在所述签名字段中填充使用电子印章所对应的用户私钥对所述填充了签名字典结构的PDF文档的原文数据进行签名后的数据,在所述原文字段中填充0,所述原文字段的长度为所述计算出的国密电子签章数据长度;
将所述P7数据填充到所述PDF文档中的签名字典结构中的CONTENT字段中。
所述的国密电子签章数据填充模块,具体用于对所述填充了P7数据的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为填充了P7数据的PDF文档的原文数据;
基于国密接口用所述电子印章对所述填充了P7数据的PDF文档的原文数据进行盖章处理,生成国密电子签章数据;
将所述国密电子签章数据填充到所述PDF文档中的签名字典结构中的P7数据中的原文字段中,得到包含国密电子签章数据的PDF文档。
所述的装置还包括:
国密电子签章数据验证模块,用于解析所述包含国密电子签章数据的PDF文档,查找到所述PDF文档中的签名字典结构,按照P7格式解析所述签名字典结构中的CONTENT字段中的数据,得到签名字典结构中的P7数据,提取并保存述P7数据中包含的国密电子签章数据;
将所述P7数据中的原文字段填充为0,得到盖章处理前的PDF文档,对所述盖章处理前的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为盖章处理前的PDF文档的原文数据;
基于国密验签接口,使用所述国密电子签章数据对所述盖章处理前的PDF文档的原文数据进行验证。
由上述本发明的实施例提供的技术方案可以看出,本发明实施例在不影响PDF文档格式中签名字典结构的标准格式的情况下,将国密电子签章格式数据填充到PDF文档格式中签名字典结构中,从而使得加盖国密电子签章数据后的PDF文档,在符合PDF标准的同时,又支持国密电子签章标准,即支持ADOBE等标准PDF阅读器显示并验证电子签名,又能够支持定制的PDF阅读器提取文档中国密电子签章格式数据,并按照国密标准验证电子印章、电子签章数据。能够形成一套完善安全的国密电子签章处理系统,有效地提高了PDF文档的安全性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的一种对PDF文档进行国密电子签章的盖章的方法的处理流程图;
图2为本发明实施例一提供的一种对PDF文档进行国密电子签章的验章的方法的处理流程图;
图3为本发明实施例二提供的一种对PDF文档进行国密电子签章处理的装置的结构图,图中,签名字典结构填充模块310,P7数据填充模块320,国密电子签章数据填充模块330,国密电子签章数据验证模块340。
具体实施方式
为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。
实施例一
本发明实施例提供了一种对PDF文档进行国密电子签章处理的方法,该方法包括对PDF文档进行国密电子签章的盖章和验章两个过程,在符合PDF标准的同时,又支持国密电子签章标准,能够形成一套完善安全的电子签章方案。
盖章即为将国密电子签章格式数据填充到PDF文档中,生成带有电子签章数据的PDF文档。当用户使用编辑器完成PDF文档编辑定稿后,便进入对PDF文档执行国密电子签章的盖章过程。该实施例提供了一种对PDF文档进行国密电子签章的盖章的方法的处理流程如图1所示,包括如下的处理步骤:
步骤S110、预处理PDF文档,生成包含签名字典结构的PDF文档数据;
该步骤的目的是为了预先构造标准的签名字典结构,并为包含国密电子签章数据的P7数据分配好预留空间。在签名字典结构中填充电子印章中的印模、证书等属性,从而兼容在PDF标准阅读器中标准电子签名的显示与验证。
具体处理过程包括:选择电子印章,从该电子印章中提取印模、用户公钥证书,根据所选择的电子印章计算出国密电子签章数据长度,并预算签名字典结构中存放P7数据的CONTENT(内容)字段长度。
构造符合PDF标准的包含证书字段、图片字段和CONTENT字段的签名字典结构,在签名字典结构的证书字段中填充上述用户公钥证书,图片字段中填充上述印模,该签名字典结构的CONTENT字段的长度为上述计算出的存放P7数据的CONTENT字段的长度,内容全部填充为0。
然后,解析PDF文档,并将上述签名字典结构填充到PDF文档中。
步骤S120、生成PDF标准中的包含电子签名的P7数据,将该P7数据填充到PDF文档的CONTENT字段中。
对上述填充了签名字典结构的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为填充了签名字典结构的PDF文档的原文数据。
使用上述电子印章所对应的用户私钥构造符合PDF标准的包含电子签名的P7数据,该P7数据中包括:用户证书字段、签名字段和原文字段,上述用户证书字段中填充上述电子印章所对应的用户公钥证书,签名字段中填充使用电子印章所对应的用户私钥对上述填充了签名字典结构的PDF文档的原文数据进行签名后的数据,原文字段的长度为上述计算出的国密电子签章数据长度,内容全部填充为0。
然后,将上述P7数据填充到所述PDF文档的签名字典结构中的CONTENT字段中。
该步骤的目的为了支持PDF标准电子签名验证时的一致性,并在标准P7数据中扩展出存放国密电子签章数据的预留空间。
步骤S130、生成国密电子签章数据,并填充到PDF文档中,创建经过盖章的PDF文档。
对上述填充了P7数据的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为填充了P7数据的PDF文档的原文数据。
基于国密接口使用上述电子印章对上述填充了P7数据的PDF文档的原文数据进行盖章处理,生成国密电子签章数据。将上述国密电子签章数据填充到PDF文档中签名字典结构中P7数据中的原文字段中,从而生成最终含有国密电子签章数据的PDF文档。
本领域技术人员应能理解上述P7数据、国密电子签章数据在签名字典结构中的填充方式仅为举例,其他现有的或今后可能出现的P7数据、国密电子签章数据的的填充方式如可适用于本发明实施例,也应包含在本发明保护范围以内,并在此以引用方式包含于此。
验章即为从包含电子签章数据的PDF文档中提取国密电子签章数据,并验证文档有效性。当用户使用阅读器打开PDF文档后,用户便进入本发明实施例提供的对PDF文档进行国密电子签章数据的验章过程。该实施例提供的一种对PDF文档进行国密电子签章的验章的方法的处理流程如图2所示,包括如下的处理步骤:
步骤S210、解析PDF文档,查找PDF文档中的签名字典结构。
步骤S220、提取签名字典结构中的CONTENT字段,按照P7格式解析CONTETNT字段中的数据,得到签名字典结构中的P7数据。
步骤S230、验证所述签名字典结构中的P7数据中是否包含国密电子签章数据,比如,验证是否符合标准的国密电子签章数据的格式。如果是,则执行步骤S231;否则,执行步骤S233。
步骤S231、在验证所述P7数据中包含国密电子签章数据后,提取并保存述P7数据中包含的国密电子签章数据。将所述国密电子签章数据对应的P7数据中的原文字段填充为0,得到盖章处理前的PDF文档,上述原文字段中原来填充的是国密电子签章数据。上述盖章处理前的PDF文档为除了国密电子签章数据外的全文数据。
对上述盖章处理前的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为盖章处理前的PDF文档的原文数据。执行步骤S232。
步骤S232、调用国密签章验证接口,验证文档有效性;
基于国密验签接口,使用所述验证通过的国密电子签章数据对所述盖章处理前的PDF文档的原文数据进行验证。上述国密验签接口就是一个函数调用,传入原文数据与签章数据,返回得到验证结果。具体流程应该是首先计算原文数据的HASH值,并提取国密电子签章数据中的原文HASH值进行比较,一致表明文档未被修改;然后提取签章数据中电子印章数据,验证其有效性,验证通过后表明该印章有效;使用电子印章中盖章人公钥证书,验证签章数据中签名信息,验证通过后表明签章有效,以上都验证通过方认为该文档中签章有效文档未被修改。
步骤S233、在验证所述P7数据中不包含国密电子签章数据后,提取所述P7数据中包含的标准电子签名数据,验证该标准电子签名数据的有效性。执行步骤S234。
步骤S234、将所述标准电子签名数据对应的P7数据中的原文字段填充为0,得到填充了签名处理前的PDF文档。对上述签名处理前的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为填充了签名处理前的PDF文档的原文数据。
使用标准签名算法及用户公钥证书验证上述签名处理前的PDF文档的原文数据的有效性。
实施例二
该实施例提供了一种对PDF文档进行国密电子签章处理的装置,其具体实现结构如图3所示,具体可以包括如下的模块:
签名字典结构填充模块310,用于选择要使用的电子印章,根据所述电子印章构造符合PDF标准的签名字典结构,将所述签名字典结构填充到PDF文档中;
P7数据填充模块320,用于根据所述电子印章和所述填充了签名字典结构的PDF文档的原文数据构造符合PDF标准的包含电子签名的P7数据,将所述P7数据填充到所述签名字典结构中;
国密电子签章数据填充模块330,用于提取所述填充了P7数据的PDF文档的原文数据,使用所述电子印章对所述填充了P7数据的PDF文档的原文数据进行盖章,生成国密电子签章数据,将所述国密电子签章数据填充到所述签名字典结构中,得到包含国密电子签章数据的PDF文档。
进一步地,所述的签名字典结构填充模块310,具体用于选择要使用的电子印章,从所述电子印章中提取印模、用户公钥证书,根据所述电子印章计算出国密电子签章数据长度,并预算出签名字典结构中存放P7数据的内容CONTENT字段的设定长度;
构造符合PDF标准中的包含证书字段、图片字段和CONTENT字段的签名字典结构,该签名字典结构中的证书字段中填充所述用户公钥证书,图片字段中填充所述印模,CONTENT字段的长度为所述设定长度,所述CONTENT字段内容的全部填充为0;
解析PDF文档,并将所述签名字典结构填充到所述PDF文档中。
进一步地,所述的P7数据填充模块320,具体用于对所述填充了签名字典结构的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为填充了签名字典结构的PDF文档的原文数据;
构造包含用户证书字段、签名字段和原文字段的符合PDF标准的P7数据,在所述用户证书字段中填充所述用户公钥证书,在所述签名字段中填充使用电子印章所对应的用户私钥对所述填充了签名字典结构的PDF文档的原文数据进行签名后的数据,在所述原文字段中填充0,所述原文字段的长度为所述计算出的国密电子签章数据长度;
将所述P7数据填充到所述PDF文档中的签名字典结构中的CONTENT字段中。
进一步地,所述的国密电子签章数据填充模块330,具体用于对所述填充了P7数据的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为填充了P7数据的PDF文档的原文数据;
基于国密接口用所述电子印章对所述填充了P7数据的PDF文档的原文数据进行盖章处理,生成国密电子签章数据;
将所述国密电子签章数据填充到所述PDF文档中的签名字典结构中的P7数据中的原文字段中,得到包含国密电子签章数据的PDF文档。
进一步地,所述的装置还包括:
国密电子签章数据验证模块340,用于解析所述包含国密电子签章数据的PDF文档,查找到所述PDF文档中的签名字典结构,按照P7格式解析所述签名字典结构中的CONTENT字段中的数据,得到签名字典结构中的P7数据,提取并保存述P7数据中包含的国密电子签章数据;
将所述P7数据中的原文字段填充为0,得到盖章处理前的PDF文档,对所述盖章处理前的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为盖章处理前的PDF文档的原文数据;
基于国密验签接口,使用所述国密电子签章数据对所述盖章处理前的PDF文档的原文数据进行验证。
用本发明实施例的装置进行对PDF文档进行国密电子签章处理的具体过程与前述方法实施例类似,此处不再赘述。
综上所述,本发明实施例在不影响PDF文档格式中签名字典结构的标准格式的情况下,将国密电子签章格式数据填充到PDF文档格式中签名字典结构中,从而使得加盖国密电子签章数据后的PDF文档,在符合PDF标准的同时,又支持国密电子签章标准,即支持ADOBE等标准PDF阅读器显示并验证电子签名,又能够支持定制的PDF阅读器提取文档中国密电子签章格式数据,并按照国密标准验证电子印章、电子签章数据。能够形成一套完善安全的国密电子签章处理系统,有效地提高了PDF文档的安全性。
本发明实施例在电子签章的PDF文档应用中具有很高的使用价值,在能够保障PDF文档标准性的前提下,又提高了PDF文档的安全性。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (10)

1.一种对PDF文档进行国密电子签章处理的方法,其特征在于,包括:
选择电子印章,根据所述电子印章构造符合PDF标准的签名字典结构,将所述签名字典结构填充到PDF文档中;
根据所述电子印章和所述填充了签名字典结构的PDF文档的原文数据构造符合PDF标准的包含电子签名的PKCS#7格式签名数据,将所述PKCS#7格式签名数据填充到所述签名字典结构中;
提取所述填充了PKCS#7格式签名数据的PDF文档的原文数据,使用所述电子印章对所述填充了PKCS#7格式签名数据的PDF文档的原文数据进行盖章,生成国密电子签章数据,将所述国密电子签章数据填充到所述签名字典结构中,得到包含国密电子签章数据的PDF文档。
2.根据权利要求1所述的对PDF文档进行国密电子签章处理的方法,其特征在于,所述的选择电子印章,根据所述电子印章构造符合PDF标准的签名字典结构,将所述签名字典结构填充到PDF文档中,包括:
选择要使用的电子印章,从所述电子印章中提取印模、用户公钥证书,根据所述电子印章计算出国密电子签章数据长度,并预算出签名字典结构中存放PKCS#7格式签名数据的内容CONTENT字段的设定长度;
构造符合PDF标准中的包含证书字段、图片字段和CONTENT字段的签名字典结构,该签名字典结构中的证书字段中填充所述用户公钥证书,图片字段中填充所述印模,CONTENT字段的长度为所述设定长度,所述CONTENT字段内容的全部填充为0;
解析PDF文档,并将所述签名字典结构填充到所述PDF文档中。
3.根据权利要求2所述的对PDF文档进行国密电子签章处理的方法,其特征在于,所述的根据所述电子印章和所述填充了签名字典结构的PDF文档的原文数据构造符合PDF标准的包含电子签名的PKCS#7格式签名数据,将所述PKCS#7格式签名数据填充到所述签名字典结构中,包括:
对所述填充了签名字典结构的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为填充了签名字典结构的PDF文档的原文数据;
构造包含用户证书字段、签名字段和原文字段的符合PDF标准的PKCS#7格式签名数据,在所述用户证书字段中填充所述用户公钥证书,在所述签名字段中填充使用电子印章所对应的用户私钥对所述填充了签名字典结构的PDF文档的原文数据进行签名后的数据,在所述原文字段中填充0,所述原文字段的长度为所述计算出的国密电子签章数据长度;
将所述PKCS#7格式签名数据填充到所述PDF文档中的签名字典结构中的CONTENT字段中。
4.根据权利要求3所述的对PDF文档进行国密电子签章处理的方法,其特征在于,所述的提取所述填充了PKCS#7格式签名数据的PDF文档的原文数据,使用所述电子印章对所述填充了PKCS#7格式签名数据的PDF文档的原文数据进行盖章,生成国密电子签章数据,将所述国密电子签章数据填充到所述签名字典结构中,得到包含国密电子签章数据的PDF文档,包括:
对所述填充了PKCS#7格式签名数据的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为填充了PKCS#7格式签名数据的PDF文档的原文数据;
基于国密接口用所述电子印章对所述填充了PKCS#7格式签名数据的PDF文档的原文数据进行盖章处理,生成国密电子签章数据;
将所述国密电子签章数据填充到所述PDF文档中的签名字典结构中的PKCS#7格式签名数据中的原文字段中,得到包含国密电子签章数据的PDF文档。
5.根据权利要求1至4任一项所述的对PDF文档进行国密电子签章处理的方法,其特征在于,所述的方法还包括:
解析所述包含国密电子签章数据的PDF文档,查找到所述PDF文档中的签名字典结构,按照PKCS#7格式签名格式解析所述签名字典结构中的CONTENT字段中的数据,得到签名字典结构中的PKCS#7格式签名数据,提取并保存述PKCS#7格式签名数据中包含的国密电子签章数据;
将所述PKCS#7格式签名数据中的原文字段填充为0,得到盖章处理前的PDF文档,对所述盖章处理前的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为盖章处理前的PDF文档的原文数据;
基于国密验签接口,使用所述国密电子签章数据对所述盖章处理前的PDF文档的原文数据进行验证。
6.一种对PDF文档进行国密电子签章处理的装置,其特征在于,包括:
签名字典结构填充模块,用于选择电子印章,根据所述电子印章构造符合PDF标准的签名字典结构,将所述签名字典结构填充到PDF文档中;
PKCS#7格式签名数据填充模块,用于根据所述电子印章和所述填充了签名字典结构的PDF文档的原文数据构造符合PDF标准的包含电子签名的PKCS#7格式签名数据,将所述PKCS#7格式签名数据填充到所述签名字典结构中;
国密电子签章数据填充模块,用于提取所述填充了PKCS#7格式签名数据的PDF文档的原文数据,使用所述电子印章对所述填充了PKCS#7格式签名数据的PDF文档的原文数据进行盖章,生成国密电子签章数据,将所述国密电子签章数据填充到所述签名字典结构中,得到包含国密电子签章数据的PDF文档。
7.根据权利要求6所述的对PDF文档进行国密电子签章处理的装置,其特征在于:
所述的签名字典结构填充模块,具体用于选择要使用的电子印章,从所述电子印章中提取印模、用户公钥证书,根据所述电子印章计算出国密电子签章数据长度,并预算出签名字典结构中存放PKCS#7格式签名数据的内容CONTENT字段的设定长度;
构造符合PDF标准中的包含证书字段、图片字段和CONTENT字段的签名字典结构,该签名字典结构中的证书字段中填充所述用户公钥证书,图片字段中填充所述印模,CONTENT字段的长度为所述设定长度,所述CONTENT字段内容的全部填充为0;
解析PDF文档,并将所述签名字典结构填充到所述PDF文档中。
8.根据权利要求7所述的对PDF文档进行国密电子签章处理的装置,其特征在于:
所述的PKCS#7格式签名数据填充模块,具体用于对所述填充了签名字典结构的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为填充了签名字典结构的PDF文档的原文数据;
构造包含用户证书字段、签名字段和原文字段的符合PDF标准的PKCS#7格式签名数据,在所述用户证书字段中填充所述用户公钥证书,在所述签名字段中填充使用电子印章所对应的用户私钥对所述填充了签名字典结构的PDF文档的原文数据进行签名后的数据,在所述原文字段中填充0,所述原文字段的长度为所述计算出的国密电子签章数据长度;
将所述PKCS#7格式签名数据填充到所述PDF文档中的签名字典结构中的CONTENT字段中。
9.根据权利要求8所述的对PDF文档进行国密电子签章处理的装置,其特征在于:
所述的国密电子签章数据填充模块,具体用于对所述填充了PKCS#7格式签名数据的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为填充了PKCS#7格式签名数据的PDF文档的原文数据;
基于国密接口用所述电子印章对所述填充了PKCS#7格式签名数据的PDF文档的原文数据进行盖章处理,生成国密电子签章数据;
将所述国密电子签章数据填充到所述PDF文档中的签名字典结构中的PKCS#7格式签名数据中的原文字段中,得到包含国密电子签章数据的PDF文档。
10.根据权利要求6至9任一项所述的对PDF文档进行国密电子签章处理的装置,其特征在于,所述的装置还包括:
国密电子签章数据验证模块,用于解析所述包含国密电子签章数据的PDF文档,查找到所述PDF文档中的签名字典结构,按照PKCS#7格式签名格式解析所述签名字典结构中的CONTENT字段中的数据,得到签名字典结构中的PKCS#7格式签名数据,提取并保存述PKCS#7格式签名数据中包含的国密电子签章数据;
将所述PKCS#7格式签名数据中的原文字段填充为0,得到盖章处理前的PDF文档,对所述盖章处理前的PDF文档进行二进制编码后得到二进制数据,将该二进制数据作为盖章处理前的PDF文档的原文数据;
基于国密验签接口,使用所述国密电子签章数据对所述盖章处理前的PDF文档的原文数据进行验证。
CN201410082078.2A 2014-01-03 2014-03-07 对pdf文档进行国密电子签章处理的方法和装置 Active CN104766029B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410082078.2A CN104766029B (zh) 2014-01-03 2014-03-07 对pdf文档进行国密电子签章处理的方法和装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201410003373 2014-01-03
CN2014100033734 2014-01-03
CN201410082078.2A CN104766029B (zh) 2014-01-03 2014-03-07 对pdf文档进行国密电子签章处理的方法和装置

Publications (2)

Publication Number Publication Date
CN104766029A CN104766029A (zh) 2015-07-08
CN104766029B true CN104766029B (zh) 2018-01-16

Family

ID=53647848

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410082078.2A Active CN104766029B (zh) 2014-01-03 2014-03-07 对pdf文档进行国密电子签章处理的方法和装置

Country Status (1)

Country Link
CN (1) CN104766029B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105635187B (zh) * 2016-03-30 2019-12-20 北京奎牛科技有限公司 带印模的电子文件的生成方法与装置、认证方法与装置
CN108257197A (zh) * 2016-12-28 2018-07-06 航天信息股份有限公司 一种用于在电子文档分页处设置骑缝章的方法及系统
CN107947939A (zh) * 2017-11-21 2018-04-20 杭州尚尚签网络科技有限公司 支持sm3密码杂凑算法和sm2数字签名算法的pdf签名方法和系统
CN107947938A (zh) * 2017-11-21 2018-04-20 杭州尚尚签网络科技有限公司 针对pdf使用sm3算法和sm2算法数字签名的验证方法和系统
CN109445665A (zh) * 2018-09-17 2019-03-08 江苏敏行信息技术有限公司 一种国密电子签章中的套章方法
CN110379476A (zh) * 2019-06-28 2019-10-25 杭州师范大学 一种电子病历病程记录pdf电子签章的方法及装置
CN110532811B (zh) * 2019-08-30 2021-06-18 杭州天谷信息科技有限公司 一种pdf签章方法及pdf签章系统
CN111191295A (zh) * 2020-01-02 2020-05-22 山东同智伟业软件股份有限公司 Pdf文件下的无序电子签章方法
CN111914305A (zh) * 2020-09-23 2020-11-10 江西金格科技股份有限公司 一种基于uof文档进行国密电子签章处理系统及方法
CN113139210A (zh) * 2021-04-19 2021-07-20 广州腾盈信息技术有限公司 一种基于pdf文档的国密电子签章方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1758585A (zh) * 2004-10-10 2006-04-12 北京华旗数码影像技术研究院有限责任公司 数字水印认证签章的方法
CN101655946A (zh) * 2009-09-24 2010-02-24 青岛海信移动通信技术股份有限公司 一种实现电子印章的方法、系统和设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1758585A (zh) * 2004-10-10 2006-04-12 北京华旗数码影像技术研究院有限责任公司 数字水印认证签章的方法
CN101655946A (zh) * 2009-09-24 2010-02-24 青岛海信移动通信技术股份有限公司 一种实现电子印章的方法、系统和设备

Also Published As

Publication number Publication date
CN104766029A (zh) 2015-07-08

Similar Documents

Publication Publication Date Title
CN104766029B (zh) 对pdf文档进行国密电子签章处理的方法和装置
CN103729341B (zh) 定位电子印章的方法和装置以及实现电子印章的装置
CN105429754B (zh) 国标电子签章的管理方法和系统
CN106209886B (zh) web接口数据加密加签方法、装置及服务器
US8347083B1 (en) Encrypted cross-origin communication via an intermediary
WO2015161760A1 (zh) 短信息验证码的驻留方法及装置
CN109710533A (zh) 一种接口测试方法、装置及服务器
US9632851B1 (en) Secure inter-process communications for mobile devices
CN107070735A (zh) 异步接口测试的方法、测试终端及系统
CN105320900B (zh) Pdf数字签名方法和系统以及pdf数字签名验证方法和系统
CN106789091B (zh) 一种Open XML文档数字签名和验签的实现方法及装置
KR20160144995A (ko) 취약 패스워드 검출 방법 및 장치
CN107392618A (zh) 植入智能合约的方法和设备
CN101702150A (zh) 一种pdf文档页内容的保护、验证及撤销方法
JP2009239907A (ja) 編集文書の保全性を検証する方法及び装置
CN111553443B (zh) 裁判文书处理模型的训练方法、训练装置和电子设备
CN107609821A (zh) 一种快递实名寄送方法和系统以及揽收设备
CN106713336A (zh) 基于双重非对称加密技术的电子数据保管系统及方法
CN106411531A (zh) 一种弱口令的筛选方法
CN106330462A (zh) 一种支持多算法的pdf签名方法及系统
CN108038388A (zh) Web页面印章的实现方法和客户端、服务器
CN107294921A (zh) 一种web端访问的处理方法及装置
CN104142803A (zh) 用于将信息防复制地存储在数据载体上的方法
CN109002555A (zh) 一种icp备案方法、装置、设备及可读存储介质
CN110232021A (zh) 页面测试的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant