[go: up one dir, main page]

CN107911222B - 数字签名生成、验证方法及其设备和存储介质 - Google Patents

数字签名生成、验证方法及其设备和存储介质 Download PDF

Info

Publication number
CN107911222B
CN107911222B CN201711178114.5A CN201711178114A CN107911222B CN 107911222 B CN107911222 B CN 107911222B CN 201711178114 A CN201711178114 A CN 201711178114A CN 107911222 B CN107911222 B CN 107911222B
Authority
CN
China
Prior art keywords
digital
digital signature
digital certificate
path
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.)
Active
Application number
CN201711178114.5A
Other languages
English (en)
Other versions
CN107911222A (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.)
Wotong Electronic Certification Service Co ltd
Original Assignee
Wotong Electronic Certification Service 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 Wotong Electronic Certification Service Co ltd filed Critical Wotong Electronic Certification Service Co ltd
Priority to CN201711178114.5A priority Critical patent/CN107911222B/zh
Priority to PCT/CN2017/120026 priority patent/WO2019100531A1/zh
Publication of CN107911222A publication Critical patent/CN107911222A/zh
Application granted granted Critical
Publication of CN107911222B publication Critical patent/CN107911222B/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
    • H04L9/3249Cryptographic 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 using RSA or related signature schemes, e.g. Rabin scheme

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种数字签名生成方法及其设备,数字签名验证方法及其设备和计算机可读存储介质。其中,该数字签名生成方法包括:获取第一目标数据及其对应的数字证书的路径,计算第一目标数据的第一摘要信息,根据第一摘要信息和数字证书的路径生成报文摘要,通过与数字证书中的公钥对应的私钥对报文摘要进行数字签名。本申请技术方案使数字签名在验证时可通过添加的路径获取数字证书后进行验证,使数字签名中可无需直接添加数字证书从而实现数字签名数据量的减少,从而加快数字签名验证和传输的速度,减少数字签名应用时的占用空间和耗电量。

Description

数字签名生成、验证方法及其设备和存储介质
技术领域
本发明涉及数字签名技术领域,尤其涉及数字签名生成方法及其设备,数字签名验证方法及其设备和计算机可读存储介质。。
背景技术
数字签名就是使用数字证书对数据或文件进行签名,可以用于证明数据或文件的完整性,证明数据签名者的身份。
验证数字签名需要验证签名者的公钥证书,而目前数字签名标准的应用是在签名中嵌入签名证书的证书链,这使得签名数据多达6K字节,这对于PC时代的文件签名不是问题,但是在移动互联网时代则是一个比较大的数据负担。数字签名将广泛应用于移动互联网各种应用,传统的基于PC时代的数字签名验证方法不仅浪费移动用户的流量,而且会占用用户手机CPU和存储空间资源,也将造成了手机耗电量的增加,减少待机时间。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种数字签名生成方法,旨在减少数字签名的数据量,从而加快数字签名验证和传输的速度,减少数字签名应用时的占用空间和耗电量。
为实现上述目的,本发明提供一种数字签名生成方法,所述数字签名生成方法,所述数字签名生成方法包括以下步骤:
获取第一目标数据及其对应的数字证书的路径;
计算所述第一目标数据的第一摘要信息;
根据所述第一摘要信息和所述数字证书的路径生成报文摘要;
通过与所述数字证书中的公钥对应的私钥对所述报文摘要进行数字签名。
优选地,所述根据所述第一摘要信息和所述数字证书的路径生成报文摘要的步骤包括:
根据所述第一摘要信息生成摘要属性,根据所述数字证书的路径生成路径属性;
根据所述摘要属性和所述路径属性构造签名属性集;
根据所述签名属性集生成所述报文摘要。
优选地,所述获取第一目标数据及其对应的数字证书的路径的步骤前,还包括:
获取所述数字证书并生成所述数字证书的路径;
将所述数字证书储存到所述数字证书的路径中。
优选地,所述生成所述数字证书的路径的步骤包括:
提取所述数字证书的标识信息;
根据所述标识信息生成所述数字证书的路径。
此外,为实现上述目的,本发明还提供一种数字签名生成设备,其特征在于,所述数字签名生成设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上面任一项所述的数字签名生成方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数字签名验证程序,所述数字签名生成程序被处理器执行时实现如上面任一项所述的数字签名生成方法的步骤。
此外,为实现上述目的,本发明还提供一种数字签名验证方法,基于如上面任一项所述的数字签名生成方法生成的数字签名,所述数字签名验证方法包括以下步骤:
获取所述数字签名;
提取所述数字签名中的报文摘要;
解析所述数字签名中报文摘要中的的数字证书的路径签名属性集;所述签名属性集由摘要属性和路径属性构造而成,所述摘要属性根据第一目标数据计算得到的第一摘要信息生成,所述路径属性根据数字证书的路径生成;
解析所述签名属性集,得到所述数字证书的路径;根据所述数字证书的路径获取对应的数字证书;
运用所述数字证书验证所述数字签名。
优选地,所述解析所述数字签名中的数字证书的路径的步骤包括:
解析所述数字签名的签名属性集;
解析所述签名属性集的数据结构中所述数字证书的路径的特征字段;
从所述特征字段中提取所述数字证书的路径。
优选地,所述运用所述数字证书验证所述数字签名的步骤之前,还包括:
获取与所述数字签名关联的第二目标数据;
计算所述第二目标数据的第二摘要信息,解析并提取所述签名属性集中的第一摘要信息;
判断所述第二摘要信息和所述第一摘要信息是否一致;
若是,则执行所述运用所述数字证书验证所述数字签名的步骤;
若否,则输出验证不通过的结果。
优选地,所述根据所述数字证书的路径获取对应的数字证书的步骤包括:
根据所述数字证书的路径判断所述本地服务器是否存在所述数字证书;
若存在,则从所述本地服务器获取所述数字证书;
若不存在,则根据所述数字证书的路径从远程服务器获取所述数字证书。
此外,为实现上述目的,本发明还提供一种数字签名验证设备,其特征在于,所述数字签名验证设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上面任一项所述的数字签名验证方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数字签名验证程序,所述数字签名验证程序被处理器执行时实现如上面任一项所述的数字签名验证方法的步骤。
本发明实施例提出的一种数字签名生成方法,通过在数字签名中添加数字证书的路径,使数字签名在验证时可通过添加的路径获取数字证书后进行验证,使数字签名中可无需直接添加数字证书从而实现数字签名数据量的减少,从而加快数字签名验证和传输的速度,减少数字签名应用时的占用空间和耗电量。
附图说明
图1是本发明实施例数字签名生成方法方案涉及的硬件运行环境的设备结构示意图;
图2是本发明实施例数字签名验证方法方案涉及的硬件运行环境的设备结构示意图;
图3为本发明实施例数字签名生成方法的第一流程示意图;
图4为本发明实施例数字签名生成方法的第二流程示意图;
图5为本发明实施例数字签名生成方法的第三流程示意图;
图6为本发明实施例数字签名验证方法的第一流程示意图;
图7为本发明实施例数字签名验证方法的第二流程示意图;
图8为本发明实施例数字签名验证方法的第三流程示意图;
图9为本发明实施例数字签名验证方法的第四流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:获取第一目标数据及其对应的数字证书的路径,计算所述第一目标数据的第一摘要信息,根据所述第一摘要信息和所述数字证书的路径生成报文摘要,通过与所述数字证书中的公钥对应的私钥对所述报文摘要进行数字签名。
由于现有技术在签名中嵌入签名证书的证书链,这使得签名数据量大,对数字签名的传输和应用造成较大的数据负担。
本发明提供一种解决方案,通过在数字签名中添加数字证书的路径,使数字签名在验证时可通过添加的路径获取数字证书后进行验证,使数字签名中可无需直接添加数字证书从而实现数字签名数据量的减少,从而加快数字签名验证和传输的速度,减少数字签名应用时的占用空间和耗电量。
如图1和图2所示,图1是本发明实施例方案数字签名生成方法涉及的硬件运行环境的设备结构示意图,图2是本发明实施例方案数字签名验证方法涉及的硬件运行环境的设备结构示意图。
本发明实施例中的数字签名生成方法和数字签名验证方法适用于所有数字签名服务的场景,同时支持PC应用、移动应用和物联网应用,如RFC3161时间戳服务、代码签名应用、文档签名应用、设备通信签名应用等。
运行本发明实施例数字签名生成方法或数字签名验证方法的设备可以包括:处理器1001,例如CPU,网络接口1002,存储器1003,通信总线1004。其中,通信总线1004用于实现这些组件之间的连接通信。网络接口1002可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1003可以是高速RAM存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1003可是设备的内置存储装置,还可以是独立于设备且与设备连接的存储装置。网络接口1002主要用于连接网络,通过网络与其他服务器进行数据通信。
本领域技术人员可以理解,图1和图2中示出的设备结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,在设备用作数字签名生成时,作为一种计算机存储介质的存储器1003中可以包括操作系统、网络通信模块以及数字签名生成程序。处理器1001可以用于调用存储器1003中存储的数字签名生成程序,并执行以下实施例中数字签名生成方法各步骤的操作。具体的,该计算机可读存储介质可以为U盘、移动存储硬盘等移动存储设备,也可以为内置于各数字签名生成设备中的存储器。
如图2所示,在设备用作数字签名验证时,作为一种计算机存储介质的存储器1003中可以包括操作系统、网络通信模块以及数字签名验证程序。处理器1001可以用于调用存储器1003中存储的数字签名验证程序,并执行以下实施例中数字签名验证方法各步骤的操作。具体的,该计算机可读存储介质可以为U盘、移动存储硬盘等移动存储设备,也可以为内置于各数字签名生成设备中的存储器。
在实际使用中,用户可根据实际需求在设备的计算机存储介质或与外置于设备且与设备连接的计算机存储介质中储存数字签名生成程序或数字签名验证程序,使设备可执行数字签名生成方法或数字签名验证方法的步骤。此外,同一个设备的计算机存储介质可同时存有数字签名的生成和验证程序,使设备可同时具备执行数字签名生成方法或数字签名验证方法的步骤的功能。具体的,数字签名生成设备或数字签名验证设备可具体为手机、计算机、平板电脑、交付终端(如柜员机等)等所有需进行数字签名生成或数字签名验证的设备。
参照图3,本发明实施例提供一种数字签名生成方法,所述数字签名生成方法包括:
步骤S10,获取第一目标数据及其对应的数字证书的路径;
在进行数字签名生成之前,可先创建并存储数字证书的路径,一个路径对应唯一一个用于数字签名的数字证书,该数字证书中包括与用于第一目标数据签名的私钥对应的公钥,根据数据证书的路径可从网络获取到对应的数字证书。路径可单独储存,也作为数字证书的一个属性信息储存在数字证书中。路径可为基于用户需要基于不同的协议下访问地址,具体可优选为基于超文本传输协议的URL地址,如:
http://aia.wotrus.com/ts/77167C0042400E66C9937539CC2CV806.cer,便于所有联网的数字签名服务应用均可获取到数字证书,使数字证书的获取具有广泛适用性。
在进行数字签名生成时,获取需要进行数字签名的第一目标数据以及与第一目标数据对应的数字证书的路径。当一设备为某一特定用户的数据进行数字签名生成时,预存有唯一的数字证书的路径时,可直接获取第一目标数据对应的数字证书的路径。由于可能有同一设备为多种第一目标数据进行数据签名,如不同用户运用同一台计算机对其文件进行签名时,不同第一目标数据可需要不同的数字证书的进行签名,设备可对应的预存有多个数字证书的路径,因此当第一目标数据和数字证书的路径不是唯一确定而无法直接获取时,可在获取第一目标数据后,根据第一目标数据选择获取对应的数字证书的路径,便于设备为不同的第一目标数据进行数字签名。
当路径为数字证书的一个属性信息,数字证书的路径的获取可通过获取数字证书后,对数字证书的属性信息进行解析得到数字证书的路径。也可在根据路径获取到数字证书后,将数字证书的路径在本地保存至数字证书的属性信息,可便于数字证书的区分和后续应用。
步骤S20,计算所述第一目标数据的第一摘要信息;
对需要数字签名的第一目标数据(如图片、文件、消息等)运用报文摘要算法计算得到第一摘要信息,如MD5或SHA算法等,得到的第一摘要信息具体表现为DER编码。该第一摘要信息表征第一目标数据的主要内容。
步骤S30,根据所述第一摘要信息和所述数字证书的路径生成报文摘要;
根据第一目标数据的摘要和数字证书的路径生成DER编码结果。具体的,除了第一目标数据的摘要和数字证书的路径之外,上述DER编码结果还可结合与第一目标数据相关的属性信息生成,如签名时间等。将包含数字证书路径的DER编码结果通过哈希算法计算得到数字签名的报文摘要。报文摘要是指单向哈希函数算法将任意长度的输入报文经计算得出固定位的输出,用于检查第一目标数据是否正确完整。
步骤S40,通过与所述数字证书中的公钥对应的私钥对所述报文摘要进行数字签名。
包含数字证书路径的报文摘要生成后,使用与添加的路径中数字证书的公钥对应的私钥对报文摘要进行签名,以确保路径的可信度,具体可采用短密钥额ECC或SM2加密算法。
本发明实施例方案中,提出的一种数字签名生成方法,通过根据第一目标数据的第一摘要信息和数字证书的路径生成报文摘要,使数字签名在验证时可通过解析数字签名中数字证书的路径远程获取数字证书后进行验证,使数字签名中可无需直接添加数字证书从而实现数字签名数据量的减少,从而加快数字签名验证和传输的速度,减少数字签名应用时的占用空间和耗电量。
具体的,参照图4,根据所述第一摘要信息和所述数字证书的路径生成报文摘要第一摘要信息的步骤包括:
步骤S31,根据所述第一摘要信息生成摘要属性,根据所述数字证书的路径生成路径属性;
步骤S32,根据所述摘要属性和所述路径属性构造签名属性集;
步骤S33,根据所述签名属性集生成所述报文摘要。
在无需添加数字证书的路径以及签名时间等数字签名的属性信息时,数字签名的报文摘要可直接通过第一摘要信息计算得到。而为了进一步满足用户需求,在数字签名生成过程中,除了第一目标数据的主要内容还需添加数字证书的路径、签名时间等数字签名的属性信息来生成数字签名时,可通过先构造签名属性集,签名属性集为数字签名的路径、时间、类型、内容等各种表征数字签名的属性值的集合,具体可为系统中的预设参数,也可为获取的用户设置参数。在签名属性集构造过程中,可将计算得到的第一摘要信息作为签名属性集中的摘要属性,将所需添加的数字证书的路径生成路径扩展属性,此外还可根据实际使用需求获取数字签名的其他属性信息生成第一目标数据的相关属性,将摘要属性、路径扩展属性和第一目标数据的相关属性所有属性以DER编码的形式整合到一起形成签名属性集,并根据签名属性集生成报文摘要,对报文摘要进行数字签名即可实现将用于验证数字签名的数字证书的路径添加到数字签名中。
具体地,为了符合通信行业标准,提高本发明数字签名生成方法和数字签名验证方法的普遍适用性,签名属性集的数据结构中包括contentType、messageDigest等关键属性值以及其他需要添加的非关键扩展属性,而每个属性值都有各自定义的ASN数据。其中messageDigest值为根据标准定义的相关数据结构和第一目标数据计算得到的生成的扩展字段,contentType为根据标准定义的相关数据结构以及与第一目标数据类型相关的信息生成的扩展字段(如时间戳、Microsoft代码等);非关键扩展属性则可根据实际需求进行添加,具体的路径属性作为非关键扩展属性可优选为AIA扩展属性。AIA扩展为我国通信行业标准中,关于证书扩展项中的一个非关键扩展,用于制定取得其他CA信息的方法。
具体的,根据所述数字证书的路径生成路径扩展属性的步骤可具体为:将数字证书的路径(如:
http://aia.wotrus.com/ts/77167C0042400E66C9937539CC2CV806.cer)
添加到通信行业标准定义的AIA扩展的ASN.1结构中生成包含数字证书路径的AIA扩展字段,如:
Access Method=签名者证书访问(1.3.6.1.4.1.50570.2.8)
Alternative Name:
URL=http://aia.wotrus.com/ts/77167C0042400E66C9937539CC2CV806.cer
生成包含数字证书路径的AIA扩展字段后,将AIA扩展字段添加到签名属性集第一摘要信息的ASN数据结构中。
具体的,参照图5,所述获取第一目标数据及其对应的数字证书的路径的步骤前,还包括:
步骤S01,获取所述数字证书并生成所述数字证书的路径;
步骤S02,将所述数字证书储存到所述数字证书的路径中。
在对第一目标数据进行数字签名前,可先获取用于第一目标数据数字签名的数字证书并生成数字证书的路径,将数字证书保存到对应的路径中。具体的,可将数字证书上传到服务器中,服务器生成可访问数字证书的路径,将数字证书保存到生成的路径当中。路径可根据实际情况具有多种,只需保证一个路径对应一个证书即可。
具体的,生成所述数字证书的路径的步骤包括
步骤S001,提取所述数字证书的标识信息;
步骤S002,根据所述标识信息生成所述数字证书的路径。
获取数字证书后,可对数字证书进行解析得到其标识信息,标识信息为区别该数字证书和其他数字证书的特征信息,如证书的编号等。在数字证书路径的生成时,将标识信息添加到路径中,可作为数字证书的标识。如路径http://aia.wotrus.com/ts/77167C0042400E66C9937539CC2CV806.cer中的“77167C0042400E66C9937539CC2CV806”为数字证书的编号。
本发明实施例还提出一种数字签名验证方法,基于如上述实施例中的数字签名生成方法生成的数字签名,如图6所示,所述数字签名验证方法包括以下步骤:
步骤S100,获取所述数字签名;
步骤S200,解析所述数字签名中的数字证书的路径;
步骤S300,根据所述数字证书的路径获取对应的数字证书;
步骤S400,运用所述数字证书验证所述数字签名。
当使用数字签名的安全文件需要进行验证时,对该文件进行数字签名提取,提取数字签名中的报文摘要,对报文摘要进行解析得到签名属性集中的各种签名属性,在签名属性集的数据结构中识别得到数字证书的路径,如:http://aia.wotrus.com/ts/77167C0042400E66C9937539CC2CV806.cer。根据得到的路径从本地服务器或远程服务器获取对应的数字证书。在获取到数字证书后,使用数字证书中的公钥对数字签名进行验证,当数字证书中的签名值与数字签名中的签名属性集数据结构中的签名值一致则验证通过,若不一致则验证不通过。
具体的,如图7所示,所述解析所述数字签名中的数字证书的路径的步骤包括:
步骤S210,解析所述数字签名的签名属性集;
步骤S220,解析所述签名属性集的数据结构中所述数字证书的路径的特征字段;
步骤S230,从所述特征字段中提取所述数字证书的路径。
数字证书路径获取具体为:对数字签名的报文摘要进行解析得到签名属性集的ASN数据结构,从数据结构中按照预设协议识别数字证书的路径的特征字段,预设协议为数字签名生成方和数字签名验证方约定的通信协议,当双方均遵循通信行业协议时,该特征字段可优选为AIA扩展字段。对特征字段进行识别并提取当中的数字证书的路径。
为了便于用户再次使用,所述数字签名验证方法还包括:
步骤S500,在所述数字签名验证通过后,在本地服务器保存所述数字证书。
由于数字证书从远程服务器获取,使用通过地址获取到的数字证书对数字签名验证通过后,可在本地服务器保存获取到的数字证书,其中数字证书的文件名可以直接用数字证书的路径进行命名;也可根据路径解析得到数字证书的标识信息进行命名;也可对获取到的数字证书的属性信息解析,将该数字证书的区别于其他证书的属性信息作为保存的文件名,便于在同一设备内存有多个数字证书时用以区分。进一步的,由于可能存在同一设备多次使用同一数字证书的情况,在保存数字证书时,可先判断本地服务器中是否已存在该数字证书,具体可使用证书的标识信息查找文件名的方式,若存在,则不需对当前数字证书进行保存,若不存在则对当前数字证书进行保存。
本发明实施例方案中,提出的一种数字签名验证方法,在数字签名验证时,根据实习签名中解析到的数字证书的路径获取对应的数字证书,并运用获取到的数字证书验证,使数字签名验证设备所获取到的数字签名的数据量少,加快数字签名验证的速度,减少数字签名在设备上的占用空间和验证时的耗电量。
具体的,在数字签名的安全应用中,使用数字签名对进行签名后,数字签名与第一目标数据共同构成安全文件。在安全文件传输时,若对该安全文件中的数据修改会导致安全文件生成时的第一目标数据和在验证时的第二目标数据不一致。因而,出于保证数据完整性的需求,对安全文件进行验证时,数字签名的验证与第二目标数据的验证关联,因此,参照图9,所述根据所述数字证书的路径获取对应的数字证书的步骤之前,还包括:
步骤S600,获取与所述数字签名关联的第二目标数据;
从使用数字签名的文件中提取第二目标数据,该第二目标数据为在安全文件中使用上述数字签名进行签名的数据,第二目标数据与数字签名关联。需要说明的是,在实际执行时,步骤S600与步骤S100没有明确的先后次序,可同时进行。
步骤S700,计算所述第二目标数据的第二摘要信息,解析并提取所述签名属性集中的第一摘要信息;
使用与数字签名生成时计算第一摘要信息一样的算法对第二目标数据进行计算,得到第二摘要信息,而且在解析得到数字签名中的签名属性集后,对签名属性集进行解析并提取数字签名生成时得到的第一摘信息。需要说明的是,第一摘要的解析与数字证书的路径的特征字段的解析没有明确的先后次序。
步骤S800,判断所述第二摘要信息和所述第一摘要信息是否一致;若是,则执行步骤S400,若否,则执行步骤S900;
步骤S900,输出验证不通过的结果。
比对第一摘要信息和第二摘要信息是否一致,当第一摘要信息和第二摘要信息一致时,可判定第二目标数据与生成该数字签名的第一目标数据一致,保证了目标数据的一致性后,可进一步使用上述实施例中提及的方法使用通过数字证书的路径获取到的数字证书对数字签名进行验证,当第一摘要信息和第二摘要信息不一致时,可认为第二目标数据与生成该数字签名的第一目标数据不一致,第二目标数据为经过删改后的数据,则可直接在数字签名验证设备中输出验证不通过的结果,无需再使用数字证书进行数字签名的验证,以满足使用数字签名对数据进行签名时的安全性需求。需要说明的是,根据数字证书的路径获取对应的数字证书的步骤在第二摘要信息验证通过前或者通过后进行,不存在明确的先后次序。
通过上述方式,可保证使用数字签名对目标数据进行签名应用时数字签名验证设备获取到的目标数据的完整性。
进一步的,基于在本地服务器可对数字证书进行保存,因此,参照图8,所述根据所述数字证书的路径获取对应的数字证书的步骤包括:
步骤S310,根据所述数字证书的路径判断所述本地服务器是否存在所述数字证书;
若存在,则执行步骤S320,若不存在,则执行步骤S330,
步骤S320,则从所述本地服务器获取所述数字证书;
步骤S330,则根据所述数字证书的路径从远程服务器获取所述数字证书。
在数字证书的获取时,首先可先判断本地服务器中是否存在与数字证书的路径对应的数字证书,如利用数字证书的路径或路径中的标识信息进行查找,存在时,则可直接从本地服务器获取证书用于数字签名的验证,不存在时,则根据数字证书的路径从远程服务器获取数字证书。
具体的,所述根据所述数字证书的路径判断所述本地服务器是否存在所述数字证书的步骤包括:
步骤S311,解析所述数字证书的路径中的数字证书的标识信息;
步骤S312,根据所述标识信息查找所述本地服务器是否存在所述数字证书。
获取数字证书的路径后,对数字证书的路径进行解析,得到路径中数字证书的标识信息,根据标识信息查找本地服务器中是否存在与标识信息匹配的文件,匹配到的文件即为所需获取的数字证书。
需要说明的是,数字证书在本地服务器保存时用于识别区分该数字证书的特征信息和在获取数字证书的路径后用于判断本地服务器中是否存在对应的数字证书的特征信息是对应的。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (11)

1.一种数字签名生成方法,其特征在于,所述数字签名生成方法包括以下步骤:
获取第一目标数据及其对应的数字证书的路径;
计算所述第一目标数据的第一摘要信息;
根据所述第一摘要信息和所述数字证书的路径生成报文摘要;
通过与所述数字证书中的公钥对应的私钥对所述报文摘要进行数字签名;
所述根据所述第一摘要信息和所述数字证书的路径生成报文摘要的步骤包括:
根据所述第一摘要信息生成摘要属性,根据所述数字证书的路径生成路径属性;
根据所述摘要属性和所述路径属性构造签名属性集;
根据所述签名属性集生成所述报文摘要。
2.如权利要求1所述的数字签名生成方法,其特征在于,所述获取第一目标数据及其对应的数字证书的路径的步骤前,还包括:
获取所述数字证书并生成所述数字证书的路径;
将所述数字证书储存到所述数字证书的路径中。
3.如权利要求2所述的数字签名生成方法,其特征在于,所述生成所述数字证书的路径的步骤包括:
提取所述数字证书的标识信息;
根据所述标识信息生成所述数字证书的路径。
4.一种数字签名生成设备,其特征在于,所述数字签名生成设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至3中任一项所述的数字签名生成方法的步骤。
5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数字签名生成程序,所述数字签名生成程序被处理器执行时实现如权利要求1至3中任一项所述的数字签名生成方法的步骤。
6.一种数字签名验证方法,基于如权利要求1至3中任一项所述的数字签名生成方法生成的数字签名,其特征在于,所述数字签名验证方法包括以下步骤:
获取所述数字签名;
提取所述数字签名中的报文摘要;
解析所述报文摘要中的签名属性集;所述签名属性集由摘要属性和路径属性构造而成,所述摘要属性根据第一目标数据计算得到的第一摘要信息生成,所述路径属性根据数字证书的路径生成;
解析所述签名属性集,得到所述数字证书的路径;
根据所述数字证书的路径获取对应的数字证书;
运用所述数字证书验证所述数字签名。
7.如权利要求6所述的数字签名验证方法,其特征在于,所述解析所述签名属性集,得到所述数字证书的路径的步骤包括:
解析所述签名属性集的数据结构中所述数字证书的路径的特征字段;
从所述特征字段中提取所述数字证书的路径。
8.如权利要求7所述的数字签名验证方法,其特征在于,所述运用所述数字证书验证所述数字签名的步骤之前,还包括:
获取与所述数字签名关联的第二目标数据;
计算所述第二目标数据的第二摘要信息,解析并提取所述签名属性集中的第一摘要信息;
判断所述第二摘要信息和所述第一摘要信息是否一致;
若是,则执行所述运用所述数字证书验证所述数字签名的步骤;
若否,则输出验证不通过的结果。
9.如权利要求8所述的数字签名验证方法,其特征在于,所述根据所述数字证书的路径获取对应的数字证书的步骤包括:
根据所述数字证书的路径判断本地服务器是否存在所述数字证书;
若存在,则从所述本地服务器获取所述数字证书;
若不存在,则根据所述数字证书的路径从远程服务器获取所述数字证书。
10.一种数字签名验证设备,其特征在于,所述数字签名验证设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求6至9中任一项所述的数字签名验证方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数字签名验证程序,所述数字签名验证程序被处理器执行时实现如权利要求6至9中任一项所述的数字签名验证方法的步骤。
CN201711178114.5A 2017-11-21 2017-11-21 数字签名生成、验证方法及其设备和存储介质 Active CN107911222B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201711178114.5A CN107911222B (zh) 2017-11-21 2017-11-21 数字签名生成、验证方法及其设备和存储介质
PCT/CN2017/120026 WO2019100531A1 (zh) 2017-11-21 2017-12-29 数字签名生成、验证方法及其设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711178114.5A CN107911222B (zh) 2017-11-21 2017-11-21 数字签名生成、验证方法及其设备和存储介质

Publications (2)

Publication Number Publication Date
CN107911222A CN107911222A (zh) 2018-04-13
CN107911222B true CN107911222B (zh) 2020-08-28

Family

ID=61847180

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711178114.5A Active CN107911222B (zh) 2017-11-21 2017-11-21 数字签名生成、验证方法及其设备和存储介质

Country Status (2)

Country Link
CN (1) CN107911222B (zh)
WO (1) WO2019100531A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108683507B (zh) * 2018-05-03 2021-06-29 湖南东方华龙信息科技有限公司 通过可追溯链表验证云端证书完整性的方法
CN108846650A (zh) * 2018-05-24 2018-11-20 北京比特大陆科技有限公司 一种实现交易信息验证的方法和装置
CN108764867A (zh) * 2018-05-24 2018-11-06 北京比特大陆科技有限公司 一种实现交易信息验证的方法和装置
CN108764921A (zh) * 2018-05-24 2018-11-06 北京比特大陆科技有限公司 一种实现交易信息验证的方法和装置
CN108764869A (zh) * 2018-05-28 2018-11-06 北京比特大陆科技有限公司 一种实现交易信息加密的方法和装置
CN110825918B (zh) * 2018-07-23 2023-01-13 中国移动通信有限公司研究院 一种数字证书的获取方法、存储方法及装置
CN109889325B (zh) * 2019-01-21 2023-06-02 Oppo广东移动通信有限公司 校验方法、装置、电子设备及介质
CN110009342B (zh) * 2019-02-22 2023-07-07 创新先进技术有限公司 数据发送、接收方法、装置及电子设备
CN110753257A (zh) * 2019-10-14 2020-02-04 深圳创维-Rgb电子有限公司 数据显示方法、显示终端、服务器、显示系统和存储介质
CN114282506A (zh) * 2021-12-14 2022-04-05 苏州众言网络科技股份有限公司 证书生成方法、系统、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101488169A (zh) * 2008-01-18 2009-07-22 富士施乐株式会社 信息处理装置、信息处理系统以及信息处理方法
CN104683306A (zh) * 2013-12-03 2015-06-03 中国人民公安大学 一种安全可控的互联网实名认证机制
CN104901931A (zh) * 2014-03-05 2015-09-09 财团法人工业技术研究院 证书管理方法与装置
CN106888094A (zh) * 2017-02-16 2017-06-23 中国移动通信集团公司 一种签名方法及服务器

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070277037A1 (en) * 2001-09-06 2007-11-29 Randy Langer Software component authentication via encrypted embedded self-signatures
KR100755683B1 (ko) * 2003-05-07 2007-09-05 삼성전자주식회사 컨텐츠 제공자 인증 및 컨텐츠 무결성 보장 방법
CN104410635B (zh) * 2014-11-27 2017-10-31 中国科学院计算机网络信息中心 一种基于dane的ndn安全认证方法
CN106685641A (zh) * 2016-12-23 2017-05-17 光锐恒宇(北京)科技有限公司 安装包签名方法及装置
CN106789091B (zh) * 2017-02-24 2020-02-21 中金金融认证中心有限公司 一种Open XML文档数字签名和验签的实现方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101488169A (zh) * 2008-01-18 2009-07-22 富士施乐株式会社 信息处理装置、信息处理系统以及信息处理方法
CN104683306A (zh) * 2013-12-03 2015-06-03 中国人民公安大学 一种安全可控的互联网实名认证机制
CN104901931A (zh) * 2014-03-05 2015-09-09 财团法人工业技术研究院 证书管理方法与装置
CN106888094A (zh) * 2017-02-16 2017-06-23 中国移动通信集团公司 一种签名方法及服务器

Also Published As

Publication number Publication date
WO2019100531A1 (zh) 2019-05-31
CN107911222A (zh) 2018-04-13

Similar Documents

Publication Publication Date Title
CN107911222B (zh) 数字签名生成、验证方法及其设备和存储介质
CN109639661B (zh) 服务器证书更新方法、装置、设备及计算机可读存储介质
CN109951435B (zh) 一种设备标识提供方法及装置和风险控制方法及装置
CN102231746B (zh) 验证标识信息的方法及终端
CN105306534A (zh) 一种基于开放平台的信息校验方法和开放平台
CN110888838A (zh) 基于对象存储的请求处理方法、装置、设备及存储介质
CN113225324B (zh) 区块链匿名账户创建方法、系统、设备及存储介质
CN105025041A (zh) 文件上传的方法、装置和系统
CN108092947B (zh) 一种对第三方应用进行身份鉴别的方法及装置
CN109582907B (zh) 网页资源完整性的校验方法、装置、设备及可读存储介质
CN110708335A (zh) 访问认证方法、装置及终端设备
CN111506632A (zh) 一种数据处理方法及装置
CN105162604A (zh) 一种基于特征图像识别的验证方法、服务器及系统
CN111310233A (zh) 应用界面显示方法、装置、设备以及存储介质
CN105072616B (zh) 刷机rom的验证方法和刷机rom的验证装置
CN111698204B (zh) 一种双向身份认证的方法及装置
CN115567271B (zh) 鉴权方法和装置、页面跳转方法和装置、电子设备及介质
CN112329000A (zh) 设备校验方法、主控设备、被控设备及可读存储介质
CN113806815B (zh) 一种文件签署方法和系统
CN108574658B (zh) 一种应用登录方法及其设备
CN111324914B (zh) 文件的传输方法、装置、服务器、设备和介质
CN111104629B (zh) 一种动态二维码的验证方法及装置
CN118861464B (zh) 通过原生应用加载网页应用内容的方法、相关装置和介质
CN105141586B (zh) 一种对用户进行验证的方法和系统
CN112994900A (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