欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 基于版式文档支持加盖电子签章时位置微调的实现方法独创技术8339字

基于版式文档支持加盖电子签章时位置微调的实现方法

2021-03-14 06:25:10

基于版式文档支持加盖电子签章时位置微调的实现方法

  技术领域

  本发明涉及版式文档中电子签章技术,特别涉及一种基于版式文档支持加盖电子签章时位置微调的实现方法。

  背景技术

  基于标准的版式文档签章时,按照标准的签章流程,签章后,如果调整签章的位置,会导致签章验证失败,文档被篡改,无法做到检测文档是否被篡改的目的。现有的办法是在盖章时,必须确定好签章的位置,如果位置出现偏差,则无法做到签章后支持签章位置的调整,必须撤销或删除现有的签章,然后重新加盖电子印章来解决此问题。现有的实现方式带来的影响是:第一是签章后无法调整签章位置;第二是如果需要调整签章位置,必须先撤销签章,再重新加盖,影响签章正常使用。

  发明内容

  本发明的目的在于提供一种支持加盖电子签章时位置微调的实现方法,在不改变签章数据生成步骤的情况下,生成中间过渡的数据,加入最后数字签名的步骤,达到生成符合要求的签章数据,通过对签章结构更改,达到调整签章位置之后,使签章内容得到有效的保护。

  为解决上述问题,本发明目的是这样实现的。基于版式文档支持加盖电子签章时位置微调的实现方法,其步骤如下:

  1)点击签章按钮时,在操作界面新增支持签章位置微调选项;

  2)按照签章生成流程,生成签章中间数据,并加入到版式文档中;

  3)将签章位置调整到合适的位置后,修改签章中间数据和相关文档数据;

  4)选择签章对象,右键菜单栏,新增数字签名选项;

  5)选择签章数字签名时,根据签章中间数据和调整位置的相关信息,做数字签名,并生成最终的完整签章数据;

  6)如果没有签章数字签名,关闭文档时,提示是否数字签名,如果选择否,则会定之前签章时生成的签章中间数据,做清理处理,签章操作失败;

  7)拿到文档需要保护的内容,利用杂凑算法SM3和SHA25对此内容进行计算,得到杂凑值;

  8)利用步骤7)中得到杂凑值以及印章数据和签章人证书,一起按照ASN.1的中SEQUENCE的方式封装成签章中间数据;

  9)把签章中间数据,加入版式文档中签章数据对应的存放路径;

  10)根据签章需要,调整签章位置;

  11)选择数字签名,根据位置调整信息,修改文档中签章位置信息,同时更新带保护内容,并重新计算杂凑值;

  12)根据步骤5)中重新计算的杂凑值和步骤2)中的签章中间数据,一起封装成标准的签章待签名数据;

  13)根据步骤6)中的待签名数据,利用智能密钥盘,对此数据进行数字签名,并最后组装成正式的签章数据;

  14)把签章数据,写入版式文档中对应的存放路径中。

  本发明在签章时,支持对签章位置进行调整,不影响签章的正常使用,能达到调整的效果;不会影响最后的验证结果和文档最终结构的变化,能满足正常的签章需求;签章过程更加灵活,支持可选操作。

  附图说明

  图1是本发明的业务流程图;

  图2是本发明的工作原理图;

  图3是本发明的数据原理图。

  具体实施方式

  以下结合附图和实施例对本发明作进一步说明。参见图1至图3,本发明在签章开始时(如图1所示),如果需要支持签章时位置微调,那么需要勾选位置微调选项,这样操作之后,会在原有的签章流程和签章数据结构的基础上,做相应的调整,达到既能满足签章后位置调整的要求,又不影响签章的正常使用,又无需撤销重新签章就能做到签章位置的微调效果。具体调整包括以下步骤:

  1)点击签章按钮进行签章操作,操作界面增加支持签章位置微调选项;

  2)如果勾选支持签章位置微调时,按照签章生成流程,生成签章中间数据。该签章中间数据结构按相应规则(如图3所示)拼装完成,加入到版式文档指定位置中;

  3)此时已完成签章第一步操作,签章图片已经正常在文档中显示,可以对签章位置进行调整。调整到合适的位置后,自动修改生成的签章中间数据,和文档中相关的数据;

  4)右键单击签章对象,弹出右键菜单栏,选择新增数字签名选项;

  5)选择签章数字签名选项时,根据签章中间数据,和调整位置的相关信息,做数字签名并生成最终的完整签章数据。

  6)如果没有进行签章数字签名,关闭文档时,会提示是否数字签名,如果选择否,会对之前签章时生成的签章中间数据和相关其他数据,做清理处理,签章操作取消;

  7)拿到版式文档需要保护的内容,利用杂凑算法SM3或SHA25等对此内容进行哈希计算,得到哈希值;

  8)利用步骤7)中得到哈希值和印章数据和签章人证书,一起按照ASN.1规则的中SEQUENCE的方式封装成签章中间数据(如图3所示);

  9)把签章中间数据,加入版式文档中签章数据对应的存放路径;

  10)根据签章需要,调整签章位置;

  11)选择数字签名根据位置调整信息,修改文档中签章位置信息,同时更新带保护内容,并重新计算杂凑值;

  12)根据步骤5)中重新计算的杂凑值和步骤2)中的签章中间数据,一起封装成标准的签章待签名数据;

  13)根据步骤6)中的待签名数据,利用智能密钥盘,对此数据进行数字签名,并最后组装成正式的完整签章数据;

  14)把签章数据,写入版式文档中对应的存放路径中。

  本发明的工作原理数据流(如图2所示)如下:

  1)对文档进行一序列杂凑算法,得到的文档待保护内容;

  2)分别读取印章数据内容、得到签章人证书和步骤1)中的待保护内容杂凑值;

  3)步骤2)中按ASN格式组装成的数据结构,然后将签章中间数据存放到文档中指定的位置;

  4)对签章位置进行调整之后,得到的位置调整信息,需要把此信息更新到文档中去并更新步骤3)中的数据;

  5)在步骤4)中更新的数据进行数字签名,重新生成最后的完整签章数据结构,然后保存到签章数据存放的位置。

  签章中间数据(如图3所示)包含如下模块:

  版本号:代表签章数据结构版本号。

  电子印章数据:代表生成电子签章使用的电子印章数据。

  时间信息:代表电子签章对应的时间信息,可以是时间截,也可以是UTCTIME时间。

  原文杂凑:代表待签名原文的杂凑值。

  原文属性信息:代表原文数据的属性信息,如:文档ID、日期、段落、原文内容的字节数、指示信息、签章保护范围等,此部分受签名保护,propertyInfo的具体含义可自行定义。

  签章人证书:代表执行本次签章操作的签章人数字证书。

  签名算法标识:代表签名算法OID,遵循GM/T 0006。例如:使用SM2签名的OID为1.2. 156.10197.1.501 。

  在签章前,如果需要支持签章时位置微调,那么需要勾选位置微调选项,这样会在原有的签章流程和签章数据结构的基础上,做相应的调整,已达到既能满足签章后位置调整的要求,又不影响签章的正常使用,无需撤销重新签章就能做到签章位置的微调效果。

  本发明新增签章位置微调选项和位置调整后的数字签名步骤,能自定义的签章中间数据结构,支持位置调整时,自动调整该数据结构;能做到不用撤销签章,直接调整签章位置;位置调整后,支持数字签名操作,达到完整签章过程。

《基于版式文档支持加盖电子签章时位置微调的实现方法.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)