CN113382002B - 数据请求方法、请求应答方法、数据通信系统及存储介质 - Google Patents

数据请求方法、请求应答方法、数据通信系统及存储介质 Download PDF

Info

Publication number
CN113382002B
CN113382002B CN202110648564.6A CN202110648564A CN113382002B CN 113382002 B CN113382002 B CN 113382002B CN 202110648564 A CN202110648564 A CN 202110648564A CN 113382002 B CN113382002 B CN 113382002B
Authority
CN
China
Prior art keywords
signature
request message
user
private key
response data
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
CN202110648564.6A
Other languages
English (en)
Other versions
CN113382002A (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.)
DBAPPSecurity Co Ltd
Original Assignee
DBAPPSecurity 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 DBAPPSecurity Co Ltd filed Critical DBAPPSecurity Co Ltd
Priority to CN202110648564.6A priority Critical patent/CN113382002B/zh
Publication of CN113382002A publication Critical patent/CN113382002A/zh
Application granted granted Critical
Publication of CN113382002B publication Critical patent/CN113382002B/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • 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

Abstract

本发明公开了一种数据请求方法,应用于客户端,包括:当对目标数据进行请求时,生成目标数据对应的请求消息;对请求消息进行哈希计算,得到消息摘要;利用SM9用户签名私钥对消息摘要进行加密,得到请求消息签名;其中,SM9用户签名私钥为利用SM9签名主私钥与客户端对应的用户唯一标识计算生成的私钥;利用SM9加密主公钥和用户唯一标识对请求消息、消息摘要以及请求消息签名进行加密,得到请求消息密文;将用户唯一标识和请求消息密文发送至目标数据所在的服务端。本发明较大地简化了通信过程,实现了双方通信内容的加密、签名,避免了信息被篡改的风险。本发明还公开了一种请求应答方法、数据通信系统及存储介质,具有相应技术效果。

Description

数据请求方法、请求应答方法、数据通信系统及存储介质
技术领域
本发明涉及通信技术领域,特别是涉及一种数据请求方法、请求应答方法、数据通信系统及计算机可读存储介质。
背景技术
随着通信技术的发展,用户可利用通信终端进行高效数据通信,但是大都采用明文的形式进行传输数据,网络通信的过程中存在着各种各样的安全问题。
现有的解决通信网络安全问题的手段主要分为两种,一种是类似SSL/HTTPS的通信方法;另一种是客户端与服务端通过公私钥对的方式进行通信。但是以上两种方法均存在各自的缺点,首先,SSL/HTTPS证书体系中需要第三方机构提供证书验证支撑,通信过程复杂。其次,目标采用的公私钥对否方式,各客户端均保存有公私钥对,公私钥对中的私钥可以用来解密其他客户端的加密信息,即第三方可以修改通信内容,存在冒充风险,即第三方可以冒充他人身份参与通信,无法避免篡改风险。
综上所述,如何有效地解决现有的通信方式通信过程复杂,存在篡改风险等问题,是目前本领域技术人员急需解决的问题。
发明内容
本发明的目的是提供一种数据请求方法,该方法较大地简化了通信过程,实现了双方通信内容的加密、签名,避免了信息被篡改的风险;本发明的另一目的是提供一种请求应答方法、数据通信系统及计算机可读存储介质。
为解决上述技术问题,本发明提供如下技术方案:
一种数据请求方法,应用于客户端,包括:
当对目标数据进行请求时,生成所述目标数据对应的请求消息;
对所述请求消息进行哈希计算,得到消息摘要;
利用SM9用户签名私钥对所述消息摘要进行加密,得到请求消息签名;其中,所述SM9用户签名私钥为利用SM9签名主私钥与所述客户端对应的用户唯一标识计算生成的私钥;
利用SM9加密主公钥和所述用户唯一标识对所述请求消息、所述消息摘要以及所述请求消息签名进行加密,得到请求消息密文;
将所述用户唯一标识和所述请求消息密文发送至所述目标数据所在的服务端。
在本发明的一种具体实施方式中,对所述请求消息进行哈希计算,包括:
利用SM3杂凑算法对所述请求消息进行哈希计算。
在本发明的一种具体实施方式中,在将所述用户唯一标识和所述请求消息密文发送至所述目标数据所在的服务端之后,还包括:
接收所述服务端返回的应答数据密文;
利用SM9用户加密私钥与所述用户唯一标识对所述应答数据密文进行解密,得到应答数据、应答数据摘要以及应答数据签名;其中,所述SM9用户加密私钥为利用SM9加密主私钥与所述用户唯一标识计算生成的私钥;
利用所述应答数据摘要对所述应答数据签名进行验签,得到应答验签结果;
当所述应答验签结果为通过时,确定所述应答数据为所述目标数据。
一种请求应答方法,应用于服务端,包括:
接收客户端发送的请求消息密文和用户唯一标识;
调取所述用户唯一标识对应的SM9用户加密私钥;
利用所述SM9用户加密私钥和所述用户唯一标识对所述请求消息密文进行解密,得到请求消息、消息摘要以及请求消息签名;
利用所述消息摘要对所述请求消息签名进行验签操作,得到请求验签结果;
当所述请求验签结果为通过时,对所述请求消息进行应答操作。
在本发明的一种具体实施方式中,对所述请求消息进行应答操作,包括:
查找所述请求消息对应的应答数据;
对所述应答数据做哈希计算,得到应答数据摘要;
利用SM9用户签名私钥与所述用户唯一标识对所述应答数据摘要进行加密,得到应答数据签名;
利用SM9加密主公钥和所述用户唯一标识对所述应答数据、所述应答数据摘要以及所述应答数据签名进行加密,得到应答数据密文;
将所述应答数据密文返回给所述客户端。
在本发明的一种具体实施方式中,对所述应答数据做哈希计算,包括:
利用SM3杂凑算法对所述应答数据做哈希计算。
一种数据通信系统,包括:
客户端,用于当对目标数据进行请求时,生成所述目标数据对应的请求消息;对所述请求消息进行哈希计算,得到消息摘要;利用SM9用户签名私钥对所述消息摘要进行加密,得到请求消息签名;其中,所述SM9用户签名私钥为利用SM9签名主私钥与所述客户端对应的用户唯一标识计算生成的私钥;利用SM9加密主公钥和所述用户唯一标识对所述请求消息、所述消息摘要以及所述请求消息签名进行加密,得到请求消息密文;将所述用户唯一标识和所述请求消息密文发送至所述目标数据所在的服务端;
所述服务端,用于接收所述请求消息密文和所述用户唯一标识;调取所述用户唯一标识对应的SM9用户加密私钥;利用所述SM9用户加密私钥和所述用户唯一标识对所述请求消息密文进行解密,得到所述请求消息、所述消息摘要以及所述请求消息签名;其中,所述SM9用户加密私钥为利用SM9加密主私钥与所述用户唯一标识计算生成的私钥;利用所述消息摘要对所述请求消息签名进行验签操作,得到请求验签结果;当所述请求验签结果为通过时,对所述请求消息进行应答操作。
在本发明的一种具体实施方式中,所述客户端,具体用于利用SM3杂凑算法对所述请求消息进行哈希计算。
在本发明的一种具体实施方式中,所述服务端,具体用于查找所述请求消息对应的应答数据;对所述应答数据做哈希计算,得到应答数据摘要;利用SM9用户签名私钥与所述用户唯一标识对所述应答数据摘要进行加密,得到应答数据签名;利用SM9加密主公钥和所述用户唯一标识对所述应答数据、所述应答数据摘要以及所述应答数据签名进行加密,得到应答数据密文;将所述应答数据密文返回给所述客户端。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述数据请求方法或请求应答方法的步骤。
本发明所提供的数据请求方法,应用于客户端,当对目标数据进行请求时,生成目标数据对应的请求消息;对请求消息进行哈希计算,得到消息摘要;利用SM9用户签名私钥对消息摘要进行加密,得到请求消息签名;其中,SM9用户签名私钥为利用SM9签名主私钥与客户端对应的用户唯一标识计算生成的私钥;利用SM9加密主公钥和用户唯一标识对请求消息、消息摘要以及请求消息签名进行加密,得到请求消息密文;将用户唯一标识和请求消息密文发送至目标数据所在的服务端。
由上述技术方案可知,通过采用国密算法SM9对双方通信内容进行加密,不需要第三方机构提供证书验证支撑,较大地简化了通信过程。并且利用SM9签名主私钥结合客户端的用户唯一标识计算该客户端独有的SM9用户签名私钥,且利用SM9加密主私钥结合客户端的用户唯一标识计算该客户端独有的SM9用户加密私钥,从而实现了双方通信内容的加密、签名,避免了信息被篡改的风险。
相应的,本发明还提供了与上述数据请求方法相对应的请求应答方法、数据通信系统和计算机可读存储介质,具有上述技术效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中数据请求方法的一种实施流程图;
图2为本发明实施例中数据请求方法的另一种实施流程图;
图3为本发明实施例中请求应答方法的一种实施流程图;
图4为本发明实施例中请求应答方法的另一种实施流程图;
图5为本发明实施例中一种数据通信系统的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,图1为本发明实施例中数据请求方法的一种实施流程图,应用于客户端,该方法可以包括以下步骤:
S101:当对目标数据进行请求时,生成目标数据对应的请求消息。
当客户端需要向服务端请求目标数据时,生成目标数据对应的请求消息。如当需要请求某业务数据时,生成该业务数据对应的请求消息,以利用该请求消息进行业务数据请求。
目标数据为服务端预先存储的数据。
S102:对请求消息进行哈希计算,得到消息摘要。
在生成目标数据对应的请求消息之后,对请求消息进行哈希(Hash)计算,得到消息摘要。
消息摘要是一个唯一对应请求消息的固定长度的值,其由一个单向哈希加密函数对请求消息进行作用而产生。如果请求消息在传输途中改变了,则接收者通过对收到请求消息的新产生的摘要与原摘要比较,就可确定请求消息是否被篡改,因此消息摘要保证了请求消息的完整性。
S103:利用SM9用户签名私钥对消息摘要进行加密,得到请求消息签名。
其中,SM9用户签名私钥为利用SM9签名主私钥与客户端对应的用户唯一标识计算生成的私钥。
客户端与服务端在进行数据传输之前,预先建立加密通信机制。加密通信机制建立过程可以包括:客户端生成随机SM2密钥对,向服务端发送生成的SM2公钥和客户端自身的用户唯一标识。服务端接收SM2公钥和用户唯一标识,生成SM9加密主密钥对和SM9签名主密钥对。服务端采用SM9加密主密钥对中的SM9加密主私钥与用户唯一标识计算生成SM9用户加密私钥,采用SM9签名主密钥对中的SM9签名主私钥与用户唯一标识计算生成SM9用户签名私钥。服务端利用接收到的SM2公钥将生成的SM9用户加密私钥和SM9用户签名私钥进行加密生成SM9用户私钥密文,并将SM9用户私钥密文生成的SM9加密主公钥和SM9签名主公钥一起发送给客户端。客户端接收服务端的SM9用户私钥密文、SM9加密主公钥和SM9签名主公钥,利用SM2私钥对SM9用户私钥密文解密,得到SM9用户加密私钥和SM9用户签名私钥,从而建立完成客户端与服务端之间的加密通信机制。通过SM2非对称算法的加解密保证了SM9用户加密私钥和SM9用户签名私钥的安全传输。
在计算得到消息摘要之后,可以利用SM9用户签名私钥对消息摘要进行加密,得到请求消息签名。
S104:利用SM9加密主公钥和用户唯一标识对请求消息、消息摘要以及请求消息签名进行加密,得到请求消息密文。
在得到请求消息签名之后,利用SM9加密主公钥和用户唯一标识对请求消息、消息摘要以及请求消息签名一起加密,得到请求消息密文。
S105:将用户唯一标识和请求消息密文发送至目标数据所在的服务端。
得到请求消息密文之后,将用户唯一标识和请求消息密文发送至目标数据所在的服务端。通过为客户端生成唯一对应的SM9用户加密私钥和SM9用户签名私钥,避免了不同客户端之间共享同一个SM9主私钥。通过SM9标识密码算法的加解密来进行身份验证,保证数据的安全传输,同时通过SM9标识密码算法的签名验签来保证数据的完整性。且采用国密算法SM9对双方通信内容进行加密,不需要第三方机构提供证书验证支撑,较大地简化了通信过程。
由上述技术方案可知,通过采用国密算法SM9对双方通信内容进行加密,不需要第三方机构提供证书验证支撑,较大地简化了通信过程。并且利用SM9签名主私钥结合客户端的用户唯一标识计算该客户端独有的SM9用户签名私钥,且利用SM9加密主私钥结合客户端的用户唯一标识计算该客户端独有的SM9用户加密私钥,从而实现了双方通信内容的加密、签名,避免了信息被篡改的风险。
需要说明的是,基于上述实施例,本发明实施例还提供了相应的改进方案。在后续实施例中涉及与上述实施例中相同步骤或相应步骤之间可相互参考,相应的有益效果也可相互参照,在下文的改进实施例中不再一一赘述。
参见图2,图2为本发明实施例中数据请求方法的另一种实施流程图,应用于服务端,该方法可以包括以下步骤:
S201:当对目标数据进行请求时,生成目标数据对应的请求消息。
S202:利用SM3杂凑算法对请求消息进行哈希计算,得到消息摘要。
可以采用SM3杂凑算法对请求消息进行哈希计算,通过国密SM3杂凑算法对请求消息进行哈希计算,对请求消息有效加密的同时,不需要第三方机构提供证书验证支撑,较大地简化了通信过程。
S203:利用SM9用户签名私钥对消息摘要进行加密,得到请求消息签名。
其中,SM9用户签名私钥为利用SM9签名主私钥与客户端对应的用户唯一标识计算生成的私钥。
S204:利用SM9加密主公钥和用户唯一标识对请求消息、消息摘要以及请求消息签名进行加密,得到请求消息密文。
S205:将用户唯一标识和请求消息密文发送至目标数据所在的服务端。
S206:接收服务端返回的应答数据密文。
服务端在接收到用户唯一标识和请求消息密文之后,会对请求消息密文进行验签,若验签通过,确定解密得到的请求消息为用户唯一标识对应的客户端发送的请求,传输过程中未被篡改。服务端会查找请求消息对应的应答数据,并对应答数据进行加密并签名,得到应答数据密文,将应答数据密文返回给用户唯一标识对应的客户端,客户端接收服务端返回的应答数据密文。
S207:利用SM9用户加密私钥与用户唯一标识对应答数据密文进行解密,得到应答数据、应答数据摘要以及应答数据签名。
其中,SM9用户加密私钥为利用SM9加密主私钥与用户唯一标识计算生成的私钥。
应答数据密文为服务端利用SM9签名主公钥和用户唯一标识对应答数据、应答数据摘要以及应答数据签名一起加密之后发给客户端的数据密文。客户端在接收到应答数据密文之后,利用SM9用户加密私钥与用户唯一标识对应答数据密文进行解密,得到应答数据、应答数据摘要以及应答数据签名。
S208:利用应答数据摘要对应答数据签名进行验签,得到应答验签结果。
在解密得到应答数据、应答数据摘要以及应答数据签名之后,利用应答数据摘要对应答数据签名进行验签,得到应答验签结果。即通过SM9用户签名私钥对应答数据签名进行解密,得到解密后应答数据摘要,通过对应答数据进行哈希计算,得到新生成的应答数据摘要,将解密后应答数据摘要、新生成的应答数据摘要、以及对应答密文解密得到的应答数据摘要进行对比,若均一致,则确认验签通过,若否,说明验签失败。
S209:当应答验签结果为通过时,确定应答数据为目标数据。
当确认应答验签结果为通过时,说明当前接收到的应答数据在传输过程为未发生篡改,确定应答数据为目标数据。
参见图3,图3为本发明实施例中请求应答方法的一种实施流程图,应用于服务端,该方法可以包括以下步骤:
S301:接收客户端发送的请求消息密文和用户唯一标识。
当客户端需要向服务端请求数据时,客户端生成请求消息密文,将请求消息密文和客户端自身的用户唯一标识一起发送给服务端。服务端接收客户端发送的请求消息密文和用户唯一标识。
S302:调取用户唯一标识对应的SM9用户加密私钥。
服务端在接收到客户端发送的请求消息密文和用户唯一标识之后,调取用户唯一标识对应的SM9用户加密私钥。
S303:利用SM9用户加密私钥和用户唯一标识对请求消息密文进行解密,得到请求消息、消息摘要以及请求消息签名。
请求消息密文为客户端利用SM9加密主公钥和用户唯一标识对请求消息、消息摘要以及请求消息签名进行加密得到的密文。服务端在调取到SM9用户加密私钥之后,利用SM9用户加密私钥和用户唯一标识对请求消息密文进行解密,得到请求消息、消息摘要以及请求消息签名。
S304:利用消息摘要对请求消息签名进行验签操作,得到请求验签结果。
服务端在解密得到请求消息、消息摘要以及请求消息签名之后,利用消息摘要对请求消息签名进行验签操作,得到请求验签结果。即通过SM9用户签名私钥对请求消息签名进行解密,得到解密后消息摘要,通过请求消息进行哈希计算,得到新生成的消息摘要,将解密后消息摘要、新生成的消息摘要、以及对请求消息密文解密得到的消息摘要进行对比,若均一致,则确认验签通过,若否,说明验签失败。
S305:当请求验签结果为通过时,对请求消息进行应答操作。
当确认请求验签结果为通过时,说明当前接收到的请求消息在传输过程为未发生篡改,对请求消息进行应答操作。
参见图4,图4为本发明实施例中请求应答方法的另一种实施流程图,该方法可以包括以下步骤:
S401:接收客户端发送的请求消息密文和用户唯一标识。
S402:调取用户唯一标识对应的SM9用户加密私钥。
S403:利用SM9用户加密私钥和用户唯一标识对请求消息密文进行解密,得到请求消息、消息摘要以及请求消息签名。
S404:利用消息摘要对请求消息签名进行验签操作,得到请求验签结果。
S405:当请求验签结果为通过时,查找请求消息对应的应答数据。
当请求验签结果为通过时,服务端查找请求消息对应的应答数据。
S406:利用SM3杂凑算法对应答数据做哈希计算,得到应答数据摘要。
服务端利用SM3杂凑算法对应答数据做哈希计算,得到应答数据摘要。通过国密SM3杂凑算法对应答数据进行哈希计算,对应答数据有效加密的同时,不需要第三方机构提供证书验证支撑,较大地简化了通信过程。
S407:利用SM9用户签名私钥与用户唯一标识对应答数据摘要进行加密,得到应答数据签名。
在查找到应答数据之后,利用SM9用户签名私钥与用户唯一标识对应答数据摘要进行加密,得到应答数据签名。
S408:利用SM9加密主公钥和用户唯一标识对应答数据、应答数据摘要以及应答数据签名进行加密,得到应答数据密文。
在加密得到应答数据签名之后,利用SM9加密主公钥和用户唯一标识对应答数据、应答数据摘要以及应答数据签名进行加密,得到应答数据密文。
S409:将应答数据密文返回给客户端。
在得到应答数据密文之后,将应答数据密文返回给客户端。
相应于上面的方法实施例,本发明还提供了一种数据通信系统,下文描述的数据通信系统与上文描述的数据请求方法及请求应答方法可相互对应参照。
参见图5,图5为本发明实施例中一种数据通信系统的结构框图,该系统可以包括:
客户端51,用于当对目标数据进行请求时,生成目标数据对应的请求消息;对请求消息进行哈希计算,得到消息摘要;利用SM9用户签名私钥对消息摘要进行加密,得到请求消息签名;其中,SM9用户签名私钥为利用SM9签名主私钥与客户端51对应的用户唯一标识计算生成的私钥;利用SM9加密主公钥和用户唯一标识对请求消息、消息摘要以及请求消息签名进行加密,得到请求消息密文;将用户唯一标识和请求消息密文发送至目标数据所在的服务端52;
服务端52,用于接收请求消息密文和用户唯一标识;调取用户唯一标识对应的SM9用户加密私钥;利用SM9用户加密私钥和用户唯一标识对请求消息密文进行解密,得到请求消息、消息摘要以及请求消息签名;其中,SM9用户加密私钥为利用SM9加密主私钥与用户唯一标识计算生成的私钥;利用消息摘要对请求消息签名进行验签操作,得到请求验签结果;当请求验签结果为通过时,对请求消息进行应答操作。
在本发明的一种具体实施方式中,客户端51,具体用于利用SM3杂凑算法对请求消息进行哈希计算。
在本发明的一种具体实施方式中,客户端51,还用于在将用户唯一标识和请求消息密文发送至目标数据所在的服务端52之后,接收服务端52返回的应答数据密文;利用SM9用户加密私钥与用户唯一标识对应答数据密文进行解密,得到应答数据、应答数据摘要以及应答数据签名;其中,SM9用户加密私钥为利用SM9加密主私钥与用户唯一标识计算生成的私钥;利用应答数据摘要对应答数据签名进行验签,得到应答验签结果;当应答验签结果为通过时,确定应答数据为目标数据。
在本发明的一种具体实施方式中,服务端52,具体用于查找请求消息对应的应答数据;对应答数据做哈希计算,得到应答数据摘要;利用SM9用户签名私钥与用户唯一标识对应答数据摘要进行加密,得到应答数据签名;利用SM9加密主公钥和用户唯一标识对应答数据、应答数据摘要以及应答数据签名进行加密,得到应答数据密文;将应答数据密文返回给客户端51。
在本发明的一种具体实施方式中,服务端52,具体用于利用SM3杂凑算法对应答数据做哈希计算。
相应于上面的方法实施例,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如下步骤:
当对目标数据进行请求时,生成目标数据对应的请求消息;对请求消息进行哈希计算,得到消息摘要;利用SM9用户签名私钥对消息摘要进行加密,得到请求消息签名;其中,SM9用户签名私钥为利用SM9签名主私钥与客户端对应的用户唯一标识计算生成的私钥;利用SM9加密主公钥和用户唯一标识对请求消息、消息摘要以及请求消息签名进行加密,得到请求消息密文;将用户唯一标识和请求消息密文发送至目标数据所在的服务端。
或:
接收客户端发送的请求消息密文和用户唯一标识;调取用户唯一标识对应的SM9用户加密私钥;利用SM9用户加密私钥和用户唯一标识对请求消息密文进行解密,得到请求消息、消息摘要以及请求消息签名;利用消息摘要对请求消息签名进行验签操作,得到请求验签结果;当请求验签结果为通过时,对请求消息进行应答操作。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本发明提供的计算机可读存储介质的介绍请参照上述方法实施例,本发明在此不做赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (4)

1.一种数据请求方法,其特征在于,应用于客户端,包括:
当对目标数据进行请求时,生成所述目标数据对应的请求消息;
对所述请求消息进行哈希计算,得到消息摘要;
利用SM3杂凑算法对所述请求消息进行哈希计算;
SM9签名主密钥对为利用SM2公钥和所述客户端对应的用户唯一标识生成的密钥,其中,所述SM2公钥为所述客户端生成随机;
利用所述SM9签名主密钥对中的SM9用户签名私钥对所述消息摘要进行加密,得到请求消息签名;其中,所述SM9用户签名私钥为利用SM9签名主私钥与所述客户端对应的用户唯一标识计算生成的私钥;
利用SM9加密主公钥和所述用户唯一标识对所述请求消息、所述消息摘要以及所述请求消息签名进行加密,得到请求消息密文;将所述用户唯一标识和所述请求消息密文发送至所述目标数据所在的服务端;
接收所述服务端返回的应答数据密文;
利用SM9用户加密私钥与所述用户唯一标识对所述应答数据密文进行解密,得到应答数据、应答数据摘要以及应答数据签名;其中,所述SM9用户加密私钥为利用SM9加密主私钥与所述用户唯一标识计算生成的私钥;
所述SM9加密主密钥为利用SM2公钥和所述客户端对应的用户唯一标识生成的密钥,其中,所述SM2公钥为所述客户端生成随机;
利用所述应答数据摘要对所述应答数据签名进行验签,得到应答验签结果;
当所述应答验签结果为通过时,确定所述应答数据为所述目标数据。
2.一种数据通信系统,其特征在于,包括:
客户端,用于当对目标数据进行请求时,生成所述目标数据对应的请求消息;对所述请求消息进行哈希计算,得到消息摘要;利用SM3杂凑算法对所述请求消息进行哈希计算;SM9签名主密钥对为利用SM2公钥和所述客户端对应的用户唯一标识生成的密钥,其中,所述SM2公钥为所述客户端生成随机;利用所述SM9签名主密钥对中的SM9用户签名私钥对所述消息摘要进行加密,得到请求消息签名;其中,所述SM9用户签名私钥为利用SM9签名主私钥与所述客户端对应的用户唯一标识计算生成的私钥;利用SM9加密主公钥和所述用户唯一标识对所述请求消息、所述消息摘要以及所述请求消息签名进行加密,得到请求消息密文;所述SM9加密主密钥为利用SM2公钥和所述客户端对应的用户唯一标识生成的密钥,其中,所述SM2公钥为所述客户端生成随机;将所述用户唯一标识和所述请求消息密文发送至所述目标数据所在的服务端;
所述服务端,用于接收所述请求消息密文和所述用户唯一标识;调取所述用户唯一标识对应的SM9用户加密私钥;利用所述SM9用户加密私钥和所述用户唯一标识对所述请求消息密文进行解密,得到所述请求消息、所述消息摘要以及所述请求消息签名;其中,所述SM9用户加密私钥为利用SM9加密主私钥与所述用户唯一标识计算生成的私钥;利用所述消息摘要对所述请求消息签名进行验签操作,得到请求验签结果;当所述请求验签结果为通过时,对所述请求消息进行应答操作。
3.根据权利要求2所述的数据通信系统,其特征在于,所述服务端,具体用于查找所述请求消息对应的应答数据;对所述应答数据做哈希计算,得到应答数据摘要;利用SM9用户签名私钥与所述用户唯一标识对所述应答数据摘要进行加密,得到应答数据签名;利用SM9加密主公钥和所述用户唯一标识对所述应答数据、所述应答数据摘要以及所述应答数据签名进行加密,得到应答数据密文;将所述应答数据密文返回给所述客户端。
4.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1所述数据请求方法的步骤。
CN202110648564.6A 2021-06-10 2021-06-10 数据请求方法、请求应答方法、数据通信系统及存储介质 Active CN113382002B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110648564.6A CN113382002B (zh) 2021-06-10 2021-06-10 数据请求方法、请求应答方法、数据通信系统及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110648564.6A CN113382002B (zh) 2021-06-10 2021-06-10 数据请求方法、请求应答方法、数据通信系统及存储介质

Publications (2)

Publication Number Publication Date
CN113382002A CN113382002A (zh) 2021-09-10
CN113382002B true CN113382002B (zh) 2022-11-22

Family

ID=77573666

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110648564.6A Active CN113382002B (zh) 2021-06-10 2021-06-10 数据请求方法、请求应答方法、数据通信系统及存储介质

Country Status (1)

Country Link
CN (1) CN113382002B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114553405A (zh) * 2022-02-10 2022-05-27 国网山东省电力公司电力科学研究院 基于国密sm9算法的5g二次认证方法和系统
CN115314208B (zh) * 2022-07-04 2024-04-02 武汉理工大学 一种安全可控的sm9数字签名生成方法及系统
CN115242471B (zh) * 2022-07-07 2024-01-09 成都卫士通信息产业股份有限公司 信息传输方法、装置、电子设备及计算机可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107124277A (zh) * 2016-02-25 2017-09-01 上海传真通信设备技术研究所有限公司 一种基于国家商用密码算法的硬拷贝控制系统
CN111030814A (zh) * 2019-12-25 2020-04-17 杭州迪普科技股份有限公司 秘钥协商方法及装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015056601A1 (ja) * 2013-10-16 2015-04-23 日本電信電話株式会社 鍵装置、鍵クラウドシステム、復号方法、およびプログラム
CN107682156A (zh) * 2017-11-16 2018-02-09 山东渔翁信息技术股份有限公司 一种基于sm9算法的加密通信方法及装置
US10797879B2 (en) * 2018-07-03 2020-10-06 Lawrence Liu Methods and systems to facilitate authentication of a user
US10673625B1 (en) * 2019-06-15 2020-06-02 University Of South Florida Efficient identity-based and certificateless cryptosystems
CN111106936B (zh) * 2019-11-27 2023-04-21 国家电网有限公司 一种基于sm9的属性加密方法与系统
CN111262691B (zh) * 2020-01-07 2023-04-25 武汉理工大学 基于混合主密钥的标识私钥生成及使用方法及系统和装置
CN111935213B (zh) * 2020-06-29 2023-07-04 杭州创谐信息技术股份有限公司 一种基于分布式的可信认证虚拟组网系统及方法
CN112688784B (zh) * 2020-12-23 2023-04-11 中科美络科技股份有限公司 一种数字签名、验证方法、装置及系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107124277A (zh) * 2016-02-25 2017-09-01 上海传真通信设备技术研究所有限公司 一种基于国家商用密码算法的硬拷贝控制系统
CN111030814A (zh) * 2019-12-25 2020-04-17 杭州迪普科技股份有限公司 秘钥协商方法及装置

Also Published As

Publication number Publication date
CN113382002A (zh) 2021-09-10

Similar Documents

Publication Publication Date Title
EP3661120B1 (en) Method and apparatus for security authentication
CN110380852B (zh) 双向认证方法及通信系统
CN107888560B (zh) 一种移动智能终端邮件安全传输系统及方法
CN113382002B (zh) 数据请求方法、请求应答方法、数据通信系统及存储介质
JP4709815B2 (ja) 認証方法および装置
CN101090316B (zh) 离线状态下存储卡与终端设备之间的身份认证方法
CN110048849B (zh) 一种多层保护的会话密钥协商方法
CN109800588B (zh) 条码动态加密方法及装置、条码动态解密方法及装置
CN112564912B (zh) 建立安全连接的方法、系统、装置和电子设备
CN113630248B (zh) 一种会话密钥协商方法
CN113806772A (zh) 基于区块链的信息加密传输方法及装置
CN111934884B (zh) 一种证书管理方法及装置
CN111080299B (zh) 一种交易信息的防抵赖方法及客户端、服务器
CN104200154A (zh) 一种基于标识的安装包签名方法及其装置
CN112564906A (zh) 一种基于区块链的数据安全交互方法及系统
CN114218548B (zh) 身份验证证书生成方法、认证方法、装置、设备及介质
CN111654503A (zh) 一种远程管控方法、装置、设备及存储介质
CN109995723B (zh) 一种域名解析系统dns信息交互的方法、装置及系统
GB2543359A (en) Methods and apparatus for secure communication
CN114760046A (zh) 一种身份鉴别方法和装置
CN110417722B (zh) 一种业务数据通信方法、通信设备及存储介质
CN115473655B (zh) 接入网络的终端认证方法、装置及存储介质
CN114157488B (zh) 密钥获取方法、装置、电子设备及存储介质
KR101256114B1 (ko) 다수의 mac검증서버에 의한 메시지인증코드 검증 방법 및 시스템
CN115766119A (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