CN114785524A - 电子印章生成方法、装置、设备和介质 - Google Patents

电子印章生成方法、装置、设备和介质 Download PDF

Info

Publication number
CN114785524A
CN114785524A CN202210486373.9A CN202210486373A CN114785524A CN 114785524 A CN114785524 A CN 114785524A CN 202210486373 A CN202210486373 A CN 202210486373A CN 114785524 A CN114785524 A CN 114785524A
Authority
CN
China
Prior art keywords
seal
certificate
information
electronic seal
signature
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.)
Granted
Application number
CN202210486373.9A
Other languages
English (en)
Other versions
CN114785524B (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.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202210486373.9A priority Critical patent/CN114785524B/zh
Publication of CN114785524A publication Critical patent/CN114785524A/zh
Application granted granted Critical
Publication of CN114785524B publication Critical patent/CN114785524B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/64Self-signed certificates

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

本公开提供了一种电子印章生成方法,可以应用于信息安全技术领域和金融领域。该方法包括:获取印章生成请求,其中,印章生成请求中携带有证书标识和印章实体图像;基于证书标识和预设字符串,从加密服务器中获取证书信息;基于印章实体图像和证书信息,生成数字签名;以及基于印章实体图像、证书信息和数字签名,生成目标电子印章。此外,本公开还提供了一种电子印章生成装置、设备和存储介质。

Description

电子印章生成方法、装置、设备和介质
技术领域
本公开涉及信息安全技术领域和金融领域,更具体地,涉及一种电子印章生成方法、装置、设备和介质。
背景技术
电子印章是以先进的数字技术模拟传统实物印章,其管理、使用方式符合实物印章的习惯和体验,其加盖的电子文件具有与实物印章加盖的纸张文件相同的外观、相同的有效性和相似的使用方式。电子印章可以是通过印章的方式将不可见的电子签名进行可视化,对于用户而言,具有较强的可操作性、易懂性、直观性。以数字证书为基础,以数字签名为核心技术,将数字签名与印章图片以及被签章对象绑定在一起,为签章对象提供完整性验证和真实性验证,电子印章是数字签名可视化的表现形式之一。
在实现本公开构思的过程种,发明人发现相关技术中至少存在如下技术问题:相关技术中生成的电子印章的安全性较低,存在被攻击的风险。
发明内容
有鉴于此,本公开提供了一种电子印章生成方法、一种电子印章生成装置、一种电子设备、一种可读存储介质和一种计算机程序产品。
本公开的一个方面提供了一种电子印章生成方法,包括:获取印章生成请求,其中,所述印章生成请求中携带有证书标识和印章实体图像;基于所述证书标识和预设字符串,从加密服务器中获取证书信息;基于所述印章实体图像和所述证书信息,生成数字签名;以及基于所述印章实体图像、所述证书信息和所述数字签名,生成目标电子印章。
根据本公开的实施例,所述基于所述证书标识和预设字符串,从加密服务器中获取证书信息,包括:向所述加密服务器发送所述证书标识和所述预设字符串,其中,所述加密服务器对所述证书标识和所述预设字符串进行签名处理,得到签名信息;在接收到所述签名信息的情况下,向所述加密服务器发送所述签名信息,其中,所述加密服务器对所述签名信息进行验签处理,得到验签信息;以及在接收到所述验签信息的情况下,解析所述验签信息,得到所述证书信息。
根据本公开的实施例,所述基于所述印章实体图像和所述证书信息,生成数字签名,包括:基于所述印章实体图像和所述证书信息,确定待签名对象;计算所述待签名对象的第一摘要数据;以及利用加密算法对所述第一摘要数据进行加密,得到所述数字签名。
根据本公开的实施例,所述利用加密算法对所述第一摘要数据进行加密,得到所述数字签名,包括:对所述第一摘要数据进行分组,得到多组第二摘要数据;利用所述加密算法,对多组所述第二摘要数据分别进行加密,得到多个摘要密文;以及将多个所述摘要密文进行拼接,得到所述数字签名。
根据本公开的实施例,所述利用所述加密算法,对多组所述第二摘要数据分别进行加密,得到多个摘要密文,包括:对于每组所述第二摘要数据,基于所述加密算法生成加密密钥;基于所述加密密钥,确定轮密钥;以及利用所述轮密钥对所述第二摘要数据进行加密,得到所述摘要密文。
根据本公开的实施例,所述加密算法包括国密分组密码算法。
根据本公开的实施例,所述基于所述印章实体图像、所述证书信息和所述数字签名,生成目标电子印章,包括:基于所述印章实体图像,生成电子印章印模;创建与所述电子印章印模关联的电子印章数据表;以及基于所述证书信息和所述数字签名配置所述电子印章数据表的属性,得到所述目标电子印章。
本公开的另一个方面还提供了一种电子印章生成装置:包括:第一获取模块,用于获取印章生成请求,其中,所述印章生成请求中携带有证书标识和印章实体图像;第二获取模块,用于基于所述证书标识和预设字符串,从加密服务器中获取证书信息;第一生成模块,用于基于所述印章实体图像和所述证书信息,生成数字签名;以及第二生成模块,用于基于所述印章实体图像、所述证书信息和所述数字签名,生成目标电子印章。
本公开的另一个方面还提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个指令,其中,当所述一个或多个指令被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述的电子印章生成方法。
本公开的另一个方面还提供了一种计算机可读存储介质,其上存储有可执行指令,所述可执行指令被处理器执行时使处理器实现上述电子印章生成方法。
本公开的另一个方面还提供了一种计算机程序产品,所述计算机程序产品包括计算机可执行指令,所述计算机可执行指令在被执行时用于实现上述电子印章生成方法。
根据本公开的实施例,通过基于证书标识和预设字符串,从加密服务器中获取证书信息的技术手段,对生成电子印章时所需要的证书信息进行了保护,所以至少部分地克服了相关技术中生成的电子印章的安全性较低,存在被攻击风险的技术问题,进而达到了提高电子印章在生成过程中的安全性的技术效果。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了可以应用本公开的电子印章生成方法和装置的示例性系统架构;
图2示意性示出了根据本公开实施例的电子印章生成方法的流程图;
图3示意性示出了根据本公开实施例的基于证书标识和预设字符串,从加密服务器中获取证书信息的方法的流程图;
图4示意性示出了根据本公开另一实施例的电子印章生成方法的流程图;
图5示意性示出了根据本公开实施例的电子印章生成装置的框图;以及
图6示意性示出了根据本公开实施例的适于实现电子印章生成方法的电子设备的框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
电子印章的签发和使用,不仅保证各业务系统中用户的身份鉴别,同时还可以为业务系统的关键操作提供依据。因此生成保密性好、安全性强的电子印章,实现对重要数据的加密和完整性保护以便提升应用安全水平,是十分必要的。但相关技术中生成的电子印章的安全性较低,存在被攻击的风险。
有鉴于此,本公开的实施例可以针对现有电子印章生成技术中安全性较低的缺点,提供一种可以基于国密算法的电子印章生成方法,并从加密服务器中获取证书信息,提升电子印章的安全性,有效降低对RSA等加密算法的依赖性。
具体地,本公开的实施例提供了一种电子印章生成方法、一种电子印章生成装置、一种电子设备、一种可读存储介质和一种计算机程序产品。可以提升电子印章生成过程的安全性。该方法包括获取印章生成请求,其中,所述印章生成请求中携带有证书标识和印章实体图像;基于所述证书标识和预设字符串,从加密服务器中获取证书信息;基于所述印章实体图像和所述证书信息,生成数字签名;以及基于所述印章实体图像、所述证书信息和所述数字签名,生成目标电子印章。
需要说明的是,本公开实施例确定的电子印章生成方法和装置可用于信息安全技术领域和金融领域。本公开实施例确定的电子印章方法和装置也可用于除信息安全技术领域和金融领域之外的任意领域。本公开实施例确定的电子印章生成方法和装置的应用领域不做限定。
在本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供、公开和应用等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。在本公开的技术方案中,在获取或采集用户个人信息之前,均获取了用户的授权或同意。
图1示意性示出了根据本公开实施例的可以应用电子印章生成方法和装置的示例性系统架构。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,根据该实施例的系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线和/或无线通信链路等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端和/或社交平台软件等(仅为示例)。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
需要说明的是,本公开实施例所提供的电子印章生成方法一般可以由服务器105执行。相应地,本公开实施例所提供的电子印章生成装置一般可以设置于服务器105中。本公开实施例所提供的电子印章生成方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的电子印章生成装置也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。或者,本公开实施例所提供的电子印章生成方法也可以由终端设备101、102、或103执行,或者也可以由不同于终端设备101、102、或103的其他终端设备执行。相应地,本公开实施例所提供的电子印章生成装置也可以设置于终端设备101、102、或103中,或设置于不同于终端设备101、102、或103的其他终端设备中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
图2示意性示出了根据本公开实施例的电子印章生成方法的流程图。
如图2所示,该方法包括操作S201~S204。
在操作S201,获取印章生成请求,其中,印章生成请求中携带有证书标识和印章实体图像。
在操作S202,基于证书标识和预设字符串,从加密服务器中获取证书信息。
在操作S203,基于印章实体图像和证书信息,生成数字签名。
在操作S204,基于印章实体图像、证书信息和数字签名,生成目标电子印章。
根据本公开的实施例,印章生成请求可以是由客户端通过浏览器或签章系统向赋码机构发起。印章生成请求中携带的证书标识可以是证书的数据标识号、证书的序列号、证书的名称等。
根据本公开的实施例,预设字符串可以是预先自定义的字符串;加密服务器可以是算法加密服务器;证书信息可以包括证书的序列号、预设字符串、证书的实体信息、以及与服务器相关的信息等内容。
根据本公开的实施例,基于印章实体图像和证书信息生成的数字签名可以是只有信息的发送者才能产生的且并不能被伪造的一段数字串,这段数字串也可以是对信息发送者所发送信息真实性的一个有效证明。
根据本公开的实施例,电子印章可以是通过印章的方式将不可见的电子签名可视化,对于用户而言,具有较强的可操作性、易懂性、直观性。目标电子印章可以是与印章生成请求相关联的印章。将印章实体图像、证书信息以及数字签名绑定在一起,可以为签章对象提供完整性验证和真实性验证。
根据本公开的实施例,通过基于证书标识和预设字符串,从加密服务器中获取证书信息的技术手段,对生成电子印章时所需要的证书信息进行了保护,所以至少部分地克服了相关技术中生成的电子印章的安全性较低,存在被攻击风险的技术问题,进而达到了提高电子印章在生成过程中的安全性的技术效果。
下面参考图3,结合具体实施例对图2所示的方法做进一步说明。
图3示意性示出了根据本公开实施例的基于证书标识和预设字符串,从加密服务器中获取证书信息的方法的流程图。
如图3所示,从加密服务器中获取证书信息的方法可以包括操作S301~303。
在操作S301,向加密服务器发送证书标识和预设字符串,其中,加密服务器对证书标识和预设字符串进行签名处理,得到签名信息。
在操作S302,在接收到签名信息的情况下,向加密服务器发送签名信息,其中,加密服务器对签名信息进行验签处理,得到验签信息。
在操作S303,在接收到验签信息的情况下,解析验签信息,得到证书信息。
根据本公开的实施例,可以将证书标识和预设字符串作为输入源,由算法加密服务器使用签名方法进行加密签名处理,返回此次的签名结果,将此次的签名结果作为得到的签名信息。
根据本公开的实施例,将操作S301中得到的签名结果可以再作为输入源,由算法加密服务器进行延期,例如调用算法加密服务器的验证签名进行验签,此时,可以返回此次的验签结果,将此次的验签结果作为验签信息。
根据本公开的实施例,通过加密服务器的签名处理和验签处理,可以保护证书信息的安全性,防止证书信息被伪造,进而提高带电子印章生成过程的安全性。
根据本公开的实施例,通过解析该验签信息,可以得到证书信息,例如得到证书的序列号、预设字符串、证书的实体、以及与服务器相关的信息等内容。
根据本公开的实施例,电子印章的属性内容可以包括电子印章数据版本号、电子印章颁发者、电子印章数据标识、电子印章数据名称、电子印章数据类型编码、电子印章数据性质编码、印章图片信息数据、电子签章制作人证书内容、电子印章数据附属主题信息、电子印章数据生效日期、电子印章数据失效日期、电子印章数据制作时间、电子签章制作人签名等。在一实施例中,还可以将电子印章中的电子印章制作人证书内容属性设置为获取到的证书实体信息。
根据本公开的实施例,操作203还可以包括如下操作:基于印章实体图像和证书信息,确定待签名对象;计算待签名对象的第一摘要数据;以及利用加密算法对第一摘要数据进行加密,得到数字签名。
根据本公开的实施例,可以将获取得到的印章实体图像、证书的实体信息、以及电子印章信息等组合在一起作为待签名对象,通过Hash数字摘要算法计算得到该待签名对象的第一摘要数据。
根据本公开的实施例,加密算法可以包括国密分组密码(SM4)算法。该加密算法还可以是其他国密算法,包括但不限于SM1、SM2、SM3加密算法。
根据本公开的实施例,利用加密算法对第一摘要数据进行加密,得到数字签名可以包括:对第一摘要数据进行分组,得到多组第二摘要数据;利用加密算法,对多组第二摘要数据分别进行加密,得到多个摘要密文;以及将多个摘要密文进行拼接,得到数字签名。
根据本公开的实施例,对第一摘要数据的分组操作可以包括:可以将第一摘要数据转换为Byte字节流,再将字节流可以按照128bit一组进行分组,对最后长度不足128bit的第一摘要数据进行填充以至最后满足长度要求,每组第二摘要数据的长度可以为128bit。在另一实施例中,还可以对第二摘要数据继续进行分组,例如将一组128bit的第一摘要数据可以分为4个32bit的第二摘要数据x1、x2、x3、x4
根据本公开的实施例,利用加密算法,对多组第二摘要数据分别进行加密,得到多个摘要密文可以包括:对于每组第二摘要数据,基于加密算法生成加密密钥;基于加密密钥,确定轮密钥;以及利用轮密钥对第二摘要数据进行加密,得到摘要密文。
根据本公开的实施例,对于每组第二摘要数据,基于加密算法生成的加密密钥可以为M(Mk0、Mk1、Mk2、Mk3),其中Mki(i=0、1、2、3)的长度可以为32bit;基于加密密钥M通过密钥扩展算法可以得到轮密钥R(rk0、rk1、rk2...、rk31),其中rki(i=0、1、...、31)的长度可以为32bit。在另一实施例中,还可以设置系统参数为Fk(Fk0、Fk1、Fk2、Fk3),其中Fki(i=0、1、2、3)的长度可以为32bit;设置固定参数Ck(Ck0、Ck1、Ck2...、Ck31),其中Cki(i=0、1、...、31)的长度可以为32bit。
根据本公开的实施例,基于加密密钥确定轮密钥的过程可以包括如下操作。
将加密密钥M与系统参数为Fk进行异或操作得到值(K0、K1、K2、K3)。
将K1、K2、K3与Ck0做异或操作,得到值A;将32bit长度的A拆分为4个8bit的字节依次送入S盒,进行非线性变换,依次输出得到变换后的值B。S盒可以是一种“代替”操作,例如S盒可以是将48bit压缩成32bit,具体地,S盒可以接受特定数量的输入48bit,经过8个盒可以将48bit转换为32bit并输出。S盒接受输入的长度和输出的长度还可以根据实际需要进行适应性调整。
令C=B⊕(B<<13)⊕(B<<23),将C可以作为非线性变换的输出。其中⊕可以表示异或操作,<<可以表示向左移位的操作。
再令rk0=K0⊕C。重复上述步骤32次,即可获取轮密钥R(rk0、rk1、rk2...、rk31)。
根据本公开的实施例,利用轮密钥对其中的一组第二摘要数据进行加密的过程可以包括如下操作。
设一组的第二摘要数据为X(x1、x2、x3、x4)。
将x2、x3、x4与rk0做异或操作,得到值AX;将32bit长度的AX拆分为4个8bit的字节依次送入S盒,进行非线性变换,依次输出得到变换后的值BX
令Cx=Bx⊕(Bx<<2)⊕(Bx<<10)⊕(Bx<<18)⊕(Bx<<24),将Cx可以作为非线性变换的输出。
令x4=x0⊕Cx。重复上述步骤32次,可以得到数据X(x32、x33、x34、x35)。
将数据X(x32、x33、x34、x35)进行反序变换得到值Y(x35、x34、x33、x32),Y值即为第二摘要数据X进行加密后得到的数据。反序变换也可以是倒序变换,例如可以是将原有的数据位置之间进行调换操作,以达到最终需要的数据。
根据本公开的实施例,对所有分组后得到的第二摘要数据均重复上述操作,可以得到多组加密后的摘要密文,再将多组摘要密文进行内容拼接,完成对第一摘要数据的加密,得到数字签名。
根据本公开的实施例,通过使用国密算法对摘要数据进行加密,可以实现在生成电子印章的过程中,对所需要的证书信息的保护,提高电子印章在生成过程中的安全性。
根据本公开的实施例,操作S240还可以包括如下操作:基于印章实体图像,生成电子印章印模;创建与电子印章印模关联的电子印章数据表;以及基于证书信息和数字签名配置电子印章数据表的属性,得到目标电子印章。
根据本公开的实施例,电子印章模的图案可以与印章实体图像相关联,电子印章数据表中可以包括与电子印章实体图像、电子印章模、以及与电子印章实体图像和电子印章模相关联的编码信息。例如,可以将电子印章实体图像和电子印章模进行ASN.1编码,并将编码后的电子印章保存到电子印章数据表中。
根据本公开的实施例,还可以将基于证书信息和数字签名后得到的电子印章结果转换为Byte字节流,将该字节流设置为电子印章数据表中电子印章中的电子签章制作人签名属性,具体地,电子签章制作人签名的格式可以是GM/T0010中签名数据的格式,签署的内容可以是利用DER(Distinguished Encoding Rules,可辨别编码规则)编码方法编码的电子印章数据。
需要说明的是,本公开实施例中的流程图所示的操作除非明确说明不同操作之间存在执行的先后顺序,或者不同操作在技术实现上存在执行的先后顺序,否则,多个操作之间的执行顺序可以不分先后,多个操作也可以同时执行。
图4示意性示出了根据本公开另一实施例的电子印章生成方法的流程图。
如图4所示,另一实施例的电子印章生成方法可以包括操作S401~S414。
在操作S401,上传电子印章的实物图像。
在操作S402,签名、验签。
根据本公开的实施例,操作S401还可以向操作S402提供证书的序列号等信息供操作S402进行签名、验签操作,再由操作S402签名、验签得到的证书信息返回给操作S401。在一实施例中,操作S401~402可以参考操作S201~S202,或参考操作S301~S303。
在操作S403,获得电子印章对象。具体地,可以根据操作S401中的获得的证书信息和印章的实物图像获得电子印章对象。
在操作S404,获取第一摘要值。
在操作S405,数据分组。
在操作S406,参数初始化。
在操作S407,轮密钥获取。
在操作S408,第一摘要数据加密。
在操作S409,获取属性。
根据本公开的实施例,在一实施例中,操作S404~409可以参考操作S203。
在操作S410,电子签章制作人签名。
在操作S411,得到电子印章。
在操作S412,烧制保存。具体地,可以是对得到的电子印章进行烧制并保存。
根据本公开的实施例,在一实施例中,操作S410~412可以参考操作S204。
图5示意性示出了根据本公开的实施例的电子印章生成装置的框图。
如图5所示,电子印章生成装置包括第一获取模块510、第二获取模块520、第一生成模块530、第二生成模块540。
第一获取模块510,用于获取印章生成请求,其中,所述印章生成请求中携带有证书标识和印章实体图像;
第二获取模块520,用于基于所述证书标识和预设字符串,从加密服务器中获取证书信息;
第一生成模块530,用于基于所述印章实体图像和所述证书信息,生成数字签名;以及
第二生成模块540,用于基于所述印章实体图像、所述证书信息和所述数字签名,生成目标电子印章。
根据本公开的实施例,通过基于证书标识和预设字符串,从加密服务器中获取证书信息的技术手段,对生成电子印章时所需要的证书信息进行了保护,所以至少部分地克服了相关技术中生成的电子印章的安全性较低,存在被攻击风险的技术问题,进而达到了提高电子印章在生成过程中的安全性的技术效果。
根据本公开的实施例,第二获取模块520还可以包括第一发送子模块、第二发送子模块、解析子模块。
第一发送子模块用于向所述加密服务器发送所述证书标识和所述预设字符串,其中,所述加密服务器对所述证书标识和所述预设字符串进行签名处理,得到签名信息。
第二发送子模块用于在接收到所述签名信息的情况下,向所述加密服务器发送所述签名信息,其中,所述加密服务器对所述签名信息进行验签处理,得到验签信息。
解析子模块用于在接收到所述验签信息的情况下,解析所述验签信息,得到所述证书信息。
根据本公开的实施例,第一生成模块530还可以包括:确定子模块、计算子模块、加密子模块。
确定子模块用于基于所述印章实体图像和所述证书信息,确定待签名对象。
计算子模块用于计算所述待签名对象的第一摘要数据。
加密子模块用于利用加密算法对所述第一摘要数据进行加密,得到所述数字签名。
根据本公开的实施例,加密子模块还包括分组单元、加密单元、拼接单元。
分组单元用于对所述第一摘要数据进行分组,得到多组第二摘要数据。
加密单元用于利用所述加密算法,对多组所述第二摘要数据分别进行加密,得到多个摘要密文。
拼接单元用于将多个所述摘要密文进行拼接,得到所述数字签名。
根据本公开的实施例,加密单元包括生成子单元、确定子单元、加密子单元。
生成子单元用于对于每组所述第二摘要数据,基于所述加密算法生成加密密钥。
确定子单元用于基于所述加密密钥,确定轮密钥。
加密子单元用于利用所述轮密钥对所述第二摘要数据进行加密,得到所述摘要密文。
根据本公开的实施例,第二生成模块540还可以包括生成子模块、创建子模块、配置子模块。
生成子模块用于基于所述印章实体图像,生成电子印章印模。
创建子模块用于创建与所述电子印章印模关联的电子印章数据表。
配置子模块用于基于所述证书信息和所述数字签名配置所述电子印章数据表的属性,得到所述目标电子印章。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,第一获取模块510、第二获取模块520、第一生成模块530、第二生成模块540中的任意多个可以合并在一个模块/单元/子单元中实现,或者其中的任意一个模块/单元/子单元可以被拆分成多个模块/单元/子单元。或者,这些模块/单元/子单元中的一个或多个模块/单元/子单元的至少部分功能可以与其他模块/单元/子单元的至少部分功能相结合,并在一个模块/单元/子单元中实现。根据本公开的实施例,第一获取模块510、第二获取模块520、第一生成模块530、第二生成模块540中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,第一获取模块510、第二获取模块520、第一生成模块530、第二生成模块540中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
需要说明的是,本公开的实施例中电子印章生成装置部分与本公开的实施例中电子印章生成方法部分是相对应的,电子印章生成装置部分的描述具体参考电子印章生成方法部分,在此不再赘述。
图6示意性示出了根据本公开实施例的适于实现电子印章生成方法的电子设备的框图。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,根据本公开实施例的计算机电子设备600包括处理器601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。处理器601例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器601还可以包括用于缓存用途的板载存储器。处理器601可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 603中,存储有电子设备600操作所需的各种程序和数据。处理器601、ROM602以及RAM 603通过总线604彼此相连。处理器601通过执行ROM 602和/或RAM 603中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 602和RAM 603以外的一个或多个存储器中。处理器601也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,电子设备600还可以包括输入/输出(I/O)接口605,输入/输出(I/O)接口605也连接至总线604。电子设备600还可以包括连接至I/O接口605的以下部件中的一项或多项:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被处理器601执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质。例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 602和/或RAM 603和/或ROM 602和RAM 603以外的一个或多个存储器。
本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行本公开实施例所提供的方法的程序代码,当计算机程序产品在电子设备上运行时,该程序代码用于使电子设备实现本公开实施例所提供的电子印章生成方法。
在该计算机程序被处理器601执行时,执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分609被下载和安装,和/或从可拆卸介质611被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

Claims (11)

1.一种电子印章生成方法,包括:
获取印章生成请求,其中,所述印章生成请求中携带有证书标识和印章实体图像;
基于所述证书标识和预设字符串,从加密服务器中获取证书信息;
基于所述印章实体图像和所述证书信息,生成数字签名;以及
基于所述印章实体图像、所述证书信息和所述数字签名,生成目标电子印章。
2.根据权利要求1所述的方法,其中,所述基于所述证书标识和预设字符串,从加密服务器中获取证书信息,包括:
向所述加密服务器发送所述证书标识和所述预设字符串,其中,所述加密服务器对所述证书标识和所述预设字符串进行签名处理,得到签名信息;
在接收到所述签名信息的情况下,向所述加密服务器发送所述签名信息,其中,所述加密服务器对所述签名信息进行验签处理,得到验签信息;以及
在接收到所述验签信息的情况下,解析所述验签信息,得到所述证书信息。
3.根据权利要求1所述的方法,其中,所述基于所述印章实体图像和所述证书信息,生成数字签名,包括:
基于所述印章实体图像和所述证书信息,确定待签名对象;
计算所述待签名对象的第一摘要数据;以及
利用加密算法对所述第一摘要数据进行加密,得到所述数字签名。
4.根据权利要求3所述的方法,其中,所述利用加密算法对所述第一摘要数据进行加密,得到所述数字签名,包括:
对所述第一摘要数据进行分组,得到多组第二摘要数据;
利用所述加密算法,对多组所述第二摘要数据分别进行加密,得到多个摘要密文;以及
将多个所述摘要密文进行拼接,得到所述数字签名。
5.根据权利要求4所述的方法,其中,所述利用所述加密算法,对多组所述第二摘要数据分别进行加密,得到多个摘要密文,包括:
对于每组所述第二摘要数据,基于所述加密算法生成加密密钥;
基于所述加密密钥,确定轮密钥;以及
利用所述轮密钥对所述第二摘要数据进行加密,得到所述摘要密文。
6.根据权利要求3~5中任一项所述的方法,其中,所述加密算法包括国密分组密码算法。
7.根据权利要求1所述的方法,其中,所述基于所述印章实体图像、所述证书信息和所述数字签名,生成目标电子印章,包括:
基于所述印章实体图像,生成电子印章印模;
创建与所述电子印章印模关联的电子印章数据表;以及
基于所述证书信息和所述数字签名配置所述电子印章数据表的属性,得到所述目标电子印章。
8.一种电子印章生成装置,包括:
第一获取模块,用于获取印章生成请求,其中,所述印章生成请求中携带有证书标识和印章实体图像;
第二获取模块,用于基于所述证书标识和预设字符串,从加密服务器中获取证书信息;
第一生成模块,用于基于所述印章实体图像和所述证书信息,生成数字签名;以及
第二生成模块,用于基于所述印章实体图像、所述证书信息和所述数字签名,生成目标电子印章。
9.一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个指令,
其中,当所述一个或多个指令被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有可执行指令,所述可执行指令被处理器执行时使处理器实现权利要求1至7中任一项所述的方法。
11.一种计算机程序产品,所述计算机程序产品包括计算机可执行指令,所述计算机可执行指令在被执行时用于实现权利要求1至7中任一项所述的方法。
CN202210486373.9A 2022-05-06 2022-05-06 电子印章生成方法、装置、设备和介质 Active CN114785524B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210486373.9A CN114785524B (zh) 2022-05-06 2022-05-06 电子印章生成方法、装置、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210486373.9A CN114785524B (zh) 2022-05-06 2022-05-06 电子印章生成方法、装置、设备和介质

Publications (2)

Publication Number Publication Date
CN114785524A true CN114785524A (zh) 2022-07-22
CN114785524B CN114785524B (zh) 2023-12-29

Family

ID=82434825

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210486373.9A Active CN114785524B (zh) 2022-05-06 2022-05-06 电子印章生成方法、装置、设备和介质

Country Status (1)

Country Link
CN (1) CN114785524B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116401433A (zh) * 2023-06-07 2023-07-07 易签链(深圳)科技有限公司 一种电子公章与实物公章同源处理的方法
CN116828203A (zh) * 2023-08-30 2023-09-29 北京点聚信息技术有限公司 一种电子印章智能加密保护方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003169051A (ja) * 2001-11-29 2003-06-13 Shachihata Inc 電子印鑑システム
CN101163001A (zh) * 2006-10-11 2008-04-16 中国民生银行股份有限公司 电子印章制作系统以及方法
CN108206831A (zh) * 2017-12-29 2018-06-26 北京书生电子技术有限公司 电子印章的实现方法和服务器、客户端及可读存储介质
CN109472166A (zh) * 2018-11-01 2019-03-15 恒生电子股份有限公司 一种电子签章方法、装置、设备及介质
CN114157415A (zh) * 2021-10-15 2022-03-08 中国工商银行股份有限公司 数据处理方法、计算节点、系统、计算机设备和存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003169051A (ja) * 2001-11-29 2003-06-13 Shachihata Inc 電子印鑑システム
CN101163001A (zh) * 2006-10-11 2008-04-16 中国民生银行股份有限公司 电子印章制作系统以及方法
CN108206831A (zh) * 2017-12-29 2018-06-26 北京书生电子技术有限公司 电子印章的实现方法和服务器、客户端及可读存储介质
CN109472166A (zh) * 2018-11-01 2019-03-15 恒生电子股份有限公司 一种电子签章方法、装置、设备及介质
CN114157415A (zh) * 2021-10-15 2022-03-08 中国工商银行股份有限公司 数据处理方法、计算节点、系统、计算机设备和存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116401433A (zh) * 2023-06-07 2023-07-07 易签链(深圳)科技有限公司 一种电子公章与实物公章同源处理的方法
CN116828203A (zh) * 2023-08-30 2023-09-29 北京点聚信息技术有限公司 一种电子印章智能加密保护方法
CN116828203B (zh) * 2023-08-30 2023-10-27 北京点聚信息技术有限公司 一种电子印章智能加密保护方法

Also Published As

Publication number Publication date
CN114785524B (zh) 2023-12-29

Similar Documents

Publication Publication Date Title
US10880100B2 (en) Apparatus and method for certificate enrollment
CN111460453A (zh) 机器学习训练方法、控制器、装置、服务器、终端和介质
CN111177801B (zh) 电子文档的签章方法、装置、存储介质和电子设备
US9614681B2 (en) Private electronic signature service for electronic documents
CN110138739B (zh) 数据信息加密方法、装置、计算机设备及存储介质
CN108848058A (zh) 智能合约处理方法及区块链系统
CN114785524B (zh) 电子印章生成方法、装置、设备和介质
CN109845182A (zh) 密码消息与认证指令
CN111934873A (zh) 一种投标文件加解密方法及装置
CN113610526A (zh) 一种数据信任方法、装置、电子设备及存储介质
CN110798433B (zh) 一种验证码校验方法及装置
CN112734423A (zh) 一种基于区块链的交易方法及终端设备
CN111404892B (zh) 数据监管方法、装置和服务器
Somaiya et al. Implementation and evaluation of EMAES–A hybrid encryption algorithm for sharing multimedia files with more security and speed
CN111552950B (zh) 一种软件授权方法、装置及计算机可读存储介质
EP2892206A1 (en) A system and method for push framework security
CN110414269B (zh) 应用安装包的处理方法、相关装置、存储介质及系统
CN117040750A (zh) 证书请求文件的生成方法和装置、电子设备及存储介质
CN114499893B (zh) 基于区块链的投标文件加密存证方法和系统
CN115883212A (zh) 信息处理方法、装置、电子设备和存储介质
CN113810779B (zh) 码流验签方法、装置、电子设备和计算机可读介质
CN115766244A (zh) 车联网信息加密方法、装置、计算机设备和存储介质
CN110474967B (zh) 块链实验系统及方法
CN113626848A (zh) 样本数据生成方法、装置、电子设备及计算机可读介质
CN110611674B (zh) 不同计算机系统之间的协议交互方法、系统及存储介质

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
GR01 Patent grant
GR01 Patent grant