CN111431724A - 数据传输方法、装置及电子设备 - Google Patents
数据传输方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111431724A CN111431724A CN202010228832.4A CN202010228832A CN111431724A CN 111431724 A CN111431724 A CN 111431724A CN 202010228832 A CN202010228832 A CN 202010228832A CN 111431724 A CN111431724 A CN 111431724A
- Authority
- CN
- China
- Prior art keywords
- data
- message
- public key
- private key
- requested
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
Abstract
本申请公开了一种数据传输方法、装置及电子设备,涉及网络安全技术领域。其中,在数据传输方法中,基于数据接收方与数据发送方通过报文协商确定的公钥对,并结合第一私钥以及安全散列算法对待请求数据进行数字签名得到第一报文摘要,进而对第一私钥、第一报文摘要、待请求数据以及数据发送方的标识信息进行打包生成信息请求报文,发送信息请求报文给数据接收方,使得数据接收方基于第一私钥、第一报文摘要验证待请求数据的完整性,以确保数据传输过程中的原始完整性。
Description
技术领域
本申请涉网络安全技术领域,尤其涉及一种数据传输方法、装置及电子设备。
背景技术
近年来,网络安全事件不断攀升,例如,用户在进行数据访问过程中,经常出现访问请求的参数、应答内容等被非法篡改的情况,导致无法确保数据请求或应答等传输数据的原始完整性。
发明内容
本申请实施例提供了一种数据传输方法、装置及电子设备,能够有效确保数据请求或应答等传输数据的原始完整性。
为了解决上述问题,本申请是这样实现的:
第一方面,本申请实施例提供一种数据传输方法,应用于数据发送方,所述方法包括:利用预设的公钥对、第一私钥以及安全散列算法对待请求数据进行数字签名得到第一报文摘要,其中,所述公钥对是数据接收方与所述数据发送方通过报文协商确定的;对所述第一私钥、所述第一报文摘要、所述待请求数据以及所述数据发送方的标识信息进行打包生成信息请求报文;发送所述信息请求报文给所述数据接收方,使得所述数据接收方基于所述第一私钥、所述第一报文摘要验证所述待请求数据的完整性。
进一步,作为一种可能的实现方式,利用预设的公钥对、第一私钥以及安全散列算法对待请求数据进行数字签名得到第一报文摘要的步骤,包括:利用预保存的公钥对对随机生成的第一私钥进行加密,得到第一秘钥密文;将所述第一私钥密文作为盐值,利用预设的安全散列算法对待请求数据进行数字签名得到第一报文摘要。
进一步,作为另一种可能的实现方式,利用预设的公钥对、第一私钥以及安全散列算法对待请求数据进行数字签名得到第一报文摘要的步骤之前,所述方法还包括:发送携带有所述标识信息的公钥协商报文给所述数据接收方,以使所述数据接收方生成公钥对;在接收到所述数据接收方反馈的携带有所述公钥对的公钥协商应答报文的情况下,提取所述公钥对,以及对所述公钥对和所述标识信息进行关联保存。
进一步,作为又一种可能的实现方式,所述公钥对中至少包括第一公钥和第二公钥,所述第一公钥为整数,所述第二公钥为质数,所述第二公钥>所述第一公钥>1。
进一步,作为又一种可能的实现方式,在发送所述信息请求报文给所述数据接收方的步骤之后,所述方法还包括:在接收到信息请求应答报文的情况下,提取所述信息请求应答报文中包含的应答数据、第二报文摘要以及第二私钥;利用所述公钥对、所述第二私钥以及所述安全散列算法对所述应答数据进行数字签名得到第三报文摘要;在所述第三报文摘要与所述第二报文摘要匹配的情况下,展示所述应答数据。
第二方面,本申请实施例还提供一种数据传输方法,应用于数据接收方,所述方法包括:在接收到信息请求报文的情况下,提取所述信息请求报文中包含的第一私钥、第一报文摘要、待请求数据以及标识信息;调用与所述标识信息对应的公钥对,利用所述公钥对、所述第一私钥以及预设的安全散列算法对所述待请求数据进行数字签名得到第四报文摘要,其中,所述公钥对是数据接收方与所述数据发送方通过报文协商确定的;在所述第四报文摘要与提取到的所述第一报文摘要匹配的情况下,获取与所述待请求数据对应的应答数据,以及反馈所述应答数据给所述标识信息对应的数据发送方。
进一步,作为一种可能的实现方式,反馈所述应答数据给所述标识信息对应的数据发送方的步骤,包括:生成第二私钥,利用所述公钥对、所述第一私钥、所述第二私钥以及安全散列算法对所述应答数据进行数字签名得到第二报文摘要;对所述第二私钥、所述第二报文摘要以及所述应答数据进行打包生成信息请求应答报文;发送所述信息请求应答报文给所述数据发送方,使得所述数据发送方基于所述第一私钥、所述第二私钥、所述第二报文摘要验证所述应答数据的完整性。
进一步,作为另一种可能的实现方式,在接收到信息请求报文的情况下,提取所述信息请求报文中包含的私钥、报文摘要、待请求数据以及标识信息的步骤之前,所述方法还包括:在接收到公钥协商报文的情况下,提取所述公钥协商报文中携带的标识信息,并生成公钥对;对所述公钥对与所述标识信息进行关联保存,以及反馈携带有所述公钥对的公钥协商应答报文给所述标识信息对应的数据发送方。
第三方面,本申请实施例还提供一种数据传输装置,应用于数据发送方,所述装置包括:签名模块,用于利用预设的公钥对、第一私钥以及安全散列算法对待请求数据进行数字签名得到第一报文摘要,其中,所述公钥对是数据接收方与所述数据发送方通过报文协商确定的;打包模块,用于对所述第一私钥、所述第一报文摘要、所述待请求数据以及所述数据发送方的标识信息进行打包生成信息请求报文;发送模块,用于对发送所述信息请求报文给所述数据接收方,使得所述数据接收方基于所述第一私钥、所述第一报文摘要验证所述待请求数据的完整性。
第四方面,本申请实施例还提供一种数据传输装置,应用于数据接收方,所述装置包括:接收模块,用于在接收到信息请求报文的情况下,提取所述信息请求报文中包含的第一私钥、第一报文摘要、待请求数据以及标识信息;调用模块,用于调用与所述标识信息对应的公钥对,利用所述公钥对、所述第一私钥以及预设的安全散列算法对所述待请求数据进行数字签名得到第四报文摘要,其中,所述公钥对是数据接收方与所述数据发送方通过报文协商确定的;验证模块,用于在所述第四报文摘要与提取到的所述第一报文摘要匹配的情况下,获取与所述待请求数据对应的应答数据,以及反馈所述应答数据给所述标识信息对应的数据发送方。
第五方面,本申请实施例还提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现上述的数据传输方法。
第六方面,本申请实施例还提供一种计算机可读存储介质,当所述存储介质中的指令由电子设备中的处理器执行时,使得电子设备能够执行上述的数据传输方法。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
本实施例给出的前述数据传输方法、装置及电子设备中,数据发送方利用报文协商方式获取公钥对,进而基于公钥对、私钥以及预设的散列算法对待请求数据进行数字签名得到报文摘要,最后将报文摘要、待请求数据、私钥一并打包发送给数据接收方,以为后续数据完整性的验证提供可靠保障,降低数据被篡改的风险,确保数据请求或应答等传输数据的原始完整性。
上述说明仅是申请技术方案的概述,为了能够更清楚了解本申请的技术手段,可依照说明书的内容予以实施,并且为了让本申请的上述和其他目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为根据一示例性实施例提供的数据传输方法的流程图。
图2为根据另一示例性实施例提供的数据传输方法的流程图。
图3为根据又一示例性实施例提供的数据传输方法的流程图。、
图4为根据又一示例性实施例提供的数据传输方法的交互流程图。
图5为根据一示例性实施例提供的数据传输装置的框图。
图6为根据另一示例性实施例提供的数据传输装置的框图。
图7为根据一示例性实施例提供的电子设备的框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
如图1所示,为本申请的一个实施例提供的数据传输方法的流程示意图,该方法可以应用,但不限于数据发送方,具体可由数据发送方中的软件或硬件实现,数据发送方可以是终端设备或服务器,本实施例对此不做限制。再次参阅图1,本实施例给出的数据传输方法可以包括如下步骤。
S110,利用预设的公钥对、第一私钥以及安全散列算法对待请求数据进行数字签名得到第一报文摘要。
其中,公钥对可以是,但不限于数据接收方与数据发送方通过报文协商确定的,本实施例中采用协商方式预先确定公钥对,能够避免在信息请求报文发送或信息应答报文接收过程中,由于公钥暴露在网络上而存在的公钥泄露问题,从而降低数据传输过程中的非法被篡改的风险。实际实施时,公钥对可以由数字、字母、符号中的至少一种构成。第一私钥可以是,但不限于数据发送方随机生成的,如在本实施例中,第一私钥可以为取值较大的整数,如20、30等,本实施例在此不做限制。
安全散列算法可以选用,但不限于SHA(Secure Hash Algorithm,安全散列算法)-256算法、SHA-384等,以用于根据待请求数据生成一定长度的报文摘要,该报文摘要不可逆转。实际应用中,由于安全散列算法为单向散列,因此,如果进行散列运算时的待请求数据相同,那么其散列值(第一报文摘要)必然相同,反之,如果数据传输过程中,待请求数据被篡改或出现数据缺失问题等,基于该篡改后的待请求数据,或出现数据缺失问题待请求数据进行散列运算得到的报文摘要必然不同,从而使得数据接收方能够根据接收到的报文摘要验证数据接收方发送的待请求数据的原始完整性。
可选地,待请求数据是指用户需要获取的数据所对应的关键词、标识信息、网址信息等,本实施例在此不做限制。例如,待请求数据可以是用户发起的微博内容请求中的博文mid字段等。
S120,对第一私钥、第一报文摘要、待请求数据以及数据发送方的标识信息进行打包生成信息请求报文。
其中,标识信息(User Identification,UID)可以是数据发送方的标识信息,也可以是用户通过数据发送方所访问的应用(如微博等)的应用标识等,本实施例对此不做限制。
S130,发送信息请求报文给数据接收方,使得数据接收方基于第一私钥、第一报文摘要验证待请求数据的完整性。
实际应用中,数据接收方基于第一私钥、第一报文摘要验证待请求数据的完整性的实现方式可以有多种,例如,数据接收方可以采用与数据发送方相应的报文摘要生成方式,进而通过验证报文摘要的匹配性来判断待请求数据是否完整等,本实施例在此不做具体限制。需要注意的是,所述完整性是指在报文传输过程中,信息请求报文中包含的待请求数据是否存在被非法篡改、数据缺失等问题。
在本实施例给出的前述数据传输方法中,数据发送方利用报文协商方式获取公钥对,进而基于该公钥对、私钥以及预设的安全散列算法对待请求数据进行数字签名得到报文摘要,最后将报文摘要、待请求数据、私钥一并打包发送给数据接收方,由此,有效利用安全散列算法的单向散列性以及协商确定的公钥的隐蔽性,为数据的完整传输提供可靠保障,降低数据被篡改的风险
如图2所示,为本申请的另一个实施例提供的数据传输方法的流程示意图,该方法可以应用,但不限于数据发送方,具体可由数据发送方中的软件或硬件实现,数据发送方可以是终端设备或服务器,本实施例对此不做限制。再次参阅图2,本实施例给出的数据传输方法可以包括如下步骤。
S210,发送携带有标识信息的公钥协商报文给数据接收方,以使数据接收方生成公钥对。
其中,标识信息可以是数据发送方的标识信息,也可以是用户通过数据发送方所访问的应用的应用标识等,本实施例对此不做限制。可选地,公钥对是由数据接收方根据接收到的公钥协商报文随机生成的。
实际应用中,公钥对可以至少包括第一公钥和第二公钥,第一公钥为整数,第二公钥为质数,第二公钥>第一公钥>1。本实施例中,公钥对采用一个质数一个整数的目的是:确保在基于该公钥对进行mod运算所得到的结果的唯一性,进而确保在对待请求数据进行数字签名时的签名结果的唯一性。
此外,为了便于数据接收方在接收到信息发送方后续发送的待请求报文的原始完整性的验证,数据接收方在生成公钥对后,可以公钥对以及标识信息进行关联保存。
在一些实现方式中,为了避免由于频繁或长时间使用公钥对导致可能存在公钥对泄露的风险,数据发送方与数据接收方可定期对公钥对进行更新。
S220,在接收到数据接收方反馈的携带有公钥对的公钥协商应答报文的情况下,提取公钥对,以及对公钥对和标识信息进行关联保存。
其中,通过对公钥对和标识信息的关联保存,能够在进行数据请求时,准确的获取对应的公钥对,尤其是在标识信息为安装于数据发送方上的应用的标识信息的情况下,能够快速调用与标识信息对应的公钥对。
S230,利用预设的公钥对、第一私钥以及安全散列算法对待请求数据进行数字签名得到第一报文摘要。
关于S230的具体执行过程除了可参照前述S110的详细描述之外,在本实施例的一种可能的实现方式中,S230的实现过程可以包括:利用预保存的公钥对对随机生成的第一私钥进行加密,得到第一秘钥密文;将第一私钥密文作为盐值(Salt),利用预设的安全散列算法对待请求数据进行数字签名得到第一报文摘要。
示例性地,假设公钥对中至少包括第一公钥g和第二公钥p,第一公钥g为整数,第二公钥p为质数,p>g>1,第一私钥为r,那么,利用预保存的公钥对对随机生成的第一私钥进行加密,得到第一秘钥密文R的过程可以是:R=grmodp。
此外,需要说明的是,在进行安全散列运算时添加盐值的目的是:为了进一步加强单向散列算法的安全性,其中,关于安全散列运算过程进行加盐的实际运算过程本实施例对此不做赘述。
S240,对第一私钥、第一报文摘要、待请求数据以及数据发送方的标识信息进行打包生成信息请求报文。
关于S240的具体执行过程可参照前述对S120的详细描述,本实施例在此不再赘述。
S250,发送信息请求报文给数据接收方,使得数据接收方基于第一私钥、第一报文摘要验证待请求数据的完整性。
关于S250的具体执行过程除了可参照前述S130的详细描述之外,在本实施例的一种可能的实现方式中,延续S230中给出的实现方式,S250中给出的数据接收方验证接收到的信息请求报文中的待请求数据的原始完整性的过程可以包括:数据接收方在接收到信息请求报文的情况下,可根据信息请求报文中携带的标识信息调用对应的公钥对,如g、p,再基于该公钥对、信息请求报文中包含的第一私钥,采用与前述数据发送方相同的报文摘要生成方法生成第四报文摘要,如果第四报文摘要与信息请求报文中包含的第一报文摘要匹配,则表征数据接收方接收到的信息请求报文中包含的待请求数据是完整且未被非法篡改的。反之,如果第四报文摘要与第一报文摘要不匹配,则表征待请求数据不完整,且可能已被非法篡改。
在本实施例给出的数据传输方法中,通过数据收发双方协商的方式确定公钥对,能够避免数据传输过程中,公钥需要穿越网络时存在的公钥泄露问题,能够有效提高后续基于公钥实现的数字签名结果的可靠性。
如图3所示,为本申请的另一个实施例提供的数据传输方法的流程示意图,该方法可以应用,但不限于数据发送方,具体可由数据发送方中的软件或硬件实现,数据发送方可以是终端设备或服务器,本实施例对此不做限制。再次参阅图3,本实施例给出的数据传输方法可以包括如下步骤。
S310,利用预设的公钥对、第一私钥以及安全散列算法对待请求数据进行数字签名得到第一报文摘要。
S320,对第一私钥、第一报文摘要、待请求数据以及数据发送方的标识信息进行打包生成信息请求报文。
S330,发送信息请求报文给数据接收方,使得数据接收方基于第一私钥、第一报文摘要验证待请求数据的完整性。
关于S310至S330的具体执行过程可参照前述对S110至S130的详细描述,或前述对S230至S250的详细描述,本实施例在此不再赘述。
S340,在接收到信息请求应答报文的情况下,提取信息请求应答报文中包含的应答数据、第二报文摘要以及第二私钥。
其中,第二私钥是数据接收方随机生成的,用于对待发送的应答数据进行数字签名,例如,可以是一个取值较大的整数。
实际应用中,数据接收方在对接收到的信息请求报文进行完整性验证后,如果待请求数据完整,那么,数据接收方可获取与待请求数据对应的应答数据,以及生成用于应答数据发送时进行数字签名的私钥,即前述的第二私钥,进而利用公钥对、第一私钥、第二私钥等对应答数据进行数字签名得到第二报文摘要,并将应答数据、第二报文摘要以及第二私钥打包得到信息请求应答报文,发送给数据接收方。
需要说明的是,数据接收方在生成第二报文摘要时,可以采用,但不限于与前述第一报文摘要相同或相应的生成方式。例如,本实施例中,为了提高数据传输过程中的安全性,进一步降低数据被非法篡改的风险。数据接收方生成第二报文摘要的过程可以包括:根据信息请求报文中包括的标识信息调用公钥对,根据公钥对、第一私钥、第二私钥以及预设的安全散列算法对应答数据进行数字签名,得到第二报文摘要。
具体地,假设公钥对中至少包括第一公钥g和第二公钥p,第一公钥g为整数,第二公钥p为质数,p>g>1,第二私钥为s,那么,数据接收方可根据公钥对对第一私钥、第二私钥进行加密得到秘钥密文k,如k=RSmodp,其中,R=grmodp;将秘钥密文k作为盐值,利用预设的安全散列算法对待请求数据进行数字签名得到第二报文摘要,其中,安全散列算法可采用SHA-256等。
S350,利用公钥对、第二私钥以及安全散列算法对应答数据进行数字签名得到第三报文摘要。
其中,数据发送方生成第三报文摘要所采用的生成规则,是与数据接收方预先协定的,从而确保完整性验证结果的可靠性。例如,作为一种可能的实现方式,S350的实现方式包括:利用公钥对对第一私钥、第二私钥加密得到私钥密文k',k'=Srmodp,S=gsmodp,r为数据发送方随机生成的第一私钥,s为数据接收方随机生成的第二私钥,再将私钥密文k'作为盐值,用预设的安全散列算法对待请求数据进行数字签名得到第三报文摘要。
S360,在第三报文摘要与第二报文摘要匹配的情况下,展示应答数据。
其中,在第三报文摘要与第二报文摘要匹配的情况下,可判定数据发送方接收到的信息请求应答报文中的应答数据为完整未发生非法篡改,因此,可将应答数据展示给用户。反之,则判定接收到的信息请求应答报文中的应答数据不完整,可能已经发生非法篡改,数据发送方可重新向数据接收方发起数据请求。
在前述给出的数据传输方法中,通过对数据收发双发进行数据传输过程中涉及的请求数据和应答数据进行双向数字签名,能够有效降低数据被篡改的风险,确保数据传输的原始完整性。
如图4所示,为本申请的另一个实施例提供的数据传输方法的流程示意图,方法可以应用,但不限于数据接收方,具体可由数据接收方中的软件或硬件实现,数据发送方可以是终端设备或服务器,本实施例对此不做限制。再次参阅图4,本实施例给出的数据传输方法可以包括如下步骤。
S410,在接收到信息请求报文的情况下,提取信息请求报文中包含的第一私钥、第一报文摘要、待请求数据以及标识信息。
S420,调用与标识信息对应的公钥对,利用公钥对、第一私钥以及预设的安全散列算法对待请求数据进行数字签名得到第四报文摘要。
其中,公钥对是数据接收方与数据发送方通过报文协商确定的。
S430,在所述第四报文摘要与提取到的第一报文摘要匹配的情况下,获取与待请求数据对应的应答数据,以及反馈所述应答数据给所述标识信息对应的数据发送方。
在一种可能的实现方式中,S430中的反馈应答数据给标识信息对应的数据发送方的步骤可以包括:生成第二私钥,利用公钥对、第一私钥、第二私钥以及安全散列算法对应答数据进行数字签名得到第二报文摘要;对第二私钥、第二报文摘要以及应答数据进行打包生成信息请求应答报文;发送信息请求应答报文给数据发送方,使得数据发送方基于第一私钥、第二私钥、第二报文摘要验证应答数据的完整性。
其中,关于S410至S430的具体执行过程可参照前述S340至S360关于数据接收进行数据完整性验证以及应答数据反馈的相关描述,本实施例在此不再赘述。
进一步,在一种实现方式中,本实施例给出的数据接收方在执行S410之前,还可包括公钥协商过程,该过程包括:在接收到公钥协商报文的情况下,提取公钥协商报文中携带的标识信息,并生成公钥对;对公钥对与标识信息进行关联保存,以及反馈携带有公钥对的公钥协商应答报文给标识信息对应的数据发送方。需要说明的是,前述公钥协商过程的执行过程可参阅前述S210和S220的详细描述,本实施例对此不再赘述。
在本实施例给出的数据传输过程中,数据接收方可利用接收到的信息请求报文中包含的标识信息获取对应的公钥对,进而基于该公钥对、私钥对待请求数据进行数字签名得到报文摘要,再基于该报文摘要对接收到的信息请求报文的完整性进行验证,最后基于验证结果判断数据传输过程中是否发生数据缺失或被非法篡改的问题,有效利用安全散列算法的单向散列性以及协商确定的公钥的隐蔽性,为数据的完整传输提供可靠保障,降低数据被篡改的风险。
需要注意的是,前述给出的各实施例中,根据应用场景的不同,数据发送方、数据接收方之间可以进行角色互换,例如,数据接收方也可执行S110至S130中给出的数据传输方法的相关步骤,数据发送方也可执行S410至S430中给出的数据传输得到相关步骤,本实施例对此不做限制。
如图5所示,本申请的另一个实施例还提供一种数据传输装置500,该装置500应用数据发送方,装置500包括签名模块510、打包模块520和发送模块530。
签名模块510,用于利用预设的公钥对、第一私钥以及安全散列算法对待请求数据进行数字签名得到第一报文摘要,其中,公钥对是数据接收方与数据发送方通过报文协商确定的。
打包模块520,用于对第一私钥、第一报文摘要、待请求数据以及数据发送方的标识信息进行打包生成信息请求报文。
发送模块530,用于对发送信息请求报文给数据接收方,使得数据接收方基于第一私钥、第一报文摘要验证待请求数据的完整性。
关于本实施例中的数据传输装置500,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
如图6所示,本申请的另一个是实施例还提供一种数据传输装置600,该装置600应用数据接收方,装置600包括接收模块610、调用模块620和验证模块630。
接收模块610,用于在接收到信息请求报文的情况下,提取信息请求报文中包含的私钥、报文摘要、待请求数据以及标识信息;
调用模块620,用于调用与标识信息对应的公钥对,利用公钥对、私钥以及预设的安全散列算法对待请求数据进行数字签名得到第四报文摘要;
验证模块630,用于在第四报文摘要与提取到的报文摘要匹配的情况下,获取与待请求数据对应的应答数据,以及反馈应答数据给标识信息对应的数据发送方。
关于本实施例中的数据传输装置600,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
请参阅图7,为根据一示例性实施例提供的一种电子设备700的框图,该电子设备700可至少包括处理器710,用于存储处理器710可执行指令的存储器720。其中,处理器710被配置为执行指令,以实现如上述实施例中的信息交互方法的全部步骤或部分步骤。
处理器710、存储器720之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
其中,处理器710用于读/写存储器中存储的数据或程序,并执行相应地功能。
存储器720用于存储程序或者数据,如存储处理器710可执行指令。该存储器720可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read OnlyMemory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
进一步,作为一种可能的实现方式,电子设备700还可包括电源组件、多媒体组件、音频组件、输入/输出(I/O)接口、传感器组件以及通信组件等。
电源组件为电子设备700的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源、以及其他与为电子设备700生成、管理和分配电力相关联的组件。
多媒体组件包括在电子设备700和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件包括一个前置摄像头和/或后置摄像头。当电子设备700处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件被配置为输出和/或输入音频信号。例如,音频组件包括一个麦克风(MIC),当电子设备700处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器720或经由通信组件发送。在一些实施例中,音频组件还包括一个扬声器,用于输出音频信号。
I/O接口为处理组件和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件包括一个或多个传感器,用于为电子设备700提供各个方面的状态评估。例如,传感器组件可以检测到电子设备700的打开/关闭状态,组件的相对定位,例如组件为电子设备700的显示器和小键盘,传感器组件还可以检测电子设备700或电子设备700一个组件的位置改变,用户与电子设备700接触的存在或不存在电子设备700方位或加速/减速和电子设备700的温度变化。传感器组件可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件被配置为便于电子设备700和其他设备之间有线或无线方式的通信。电子设备700可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备700可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
应当理解的是,图7所示的结构仅为电子设备700的结构示意图,该电子设备700还可包括比图7中所示更多或者更少的组件,或者具有与图7所示不同的配置。图7中所示的各组件可以采用硬件、软件或其组合实现。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器720,上述指令可由电子设备700的处理器710执行以完成上述页面处理方法。例如,非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (12)
1.一种数据传输方法,其特征在于,应用于数据发送方,所述方法包括:
利用预设的公钥对、第一私钥以及安全散列算法对待请求数据进行数字签名得到第一报文摘要,其中,所述公钥对是数据接收方与所述数据发送方通过报文协商确定的;
对所述第一私钥、所述第一报文摘要、所述待请求数据以及所述数据发送方的标识信息进行打包生成信息请求报文;
发送所述信息请求报文给所述数据接收方,使得所述数据接收方基于所述第一私钥、所述第一报文摘要验证所述待请求数据的完整性。
2.根据权利要求1所述的数据传输方法,其特征在于,利用预设的公钥对、第一私钥以及安全散列算法对待请求数据进行数字签名得到第一报文摘要的步骤,包括:
利用预保存的公钥对对随机生成的第一私钥进行加密,得到第一秘钥密文;
将所述第一私钥密文作为盐值,利用预设的安全散列算法对待请求数据进行数字签名得到第一报文摘要。
3.根据权利要求1所述的数据传输方法,其特征在于,利用预设的公钥对、第一私钥以及安全散列算法对待请求数据进行数字签名得到第一报文摘要的步骤之前,所述方法还包括:
发送携带有所述标识信息的公钥协商报文给所述数据接收方,以使所述数据接收方生成公钥对;
在接收到所述数据接收方反馈的携带有所述公钥对的公钥协商应答报文的情况下,提取所述公钥对,以及对所述公钥对和所述标识信息进行关联保存。
4.根据权利要求1-3中任一项所述的数据传输方法,其特征在于,所述公钥对中至少包括第一公钥和第二公钥,所述第一公钥为整数,所述第二公钥为质数,所述第二公钥>所述第一公钥>1。
5.根据权利要求1所述的数据传输方法,其特征在于,在发送所述信息请求报文给所述数据接收方的步骤之后,所述方法还包括:
在接收到信息请求应答报文的情况下,提取所述信息请求应答报文中包含的应答数据、第二报文摘要以及第二私钥;
利用所述公钥对、所述第一私钥、所述第二私钥以及所述安全散列算法对所述应答数据进行数字签名得到第三报文摘要;
在所述第三报文摘要与所述第二报文摘要匹配的情况下,展示所述应答数据。
6.一种数据传输方法,其特征在于,应用于数据接收方,所述方法包括:
在接收到信息请求报文的情况下,提取所述信息请求报文中包含的第一私钥、第一报文摘要、待请求数据以及标识信息;
调用与所述标识信息对应的公钥对,利用所述公钥对、所述第一私钥以及预设的安全散列算法对所述待请求数据进行数字签名得到第四报文摘要,其中,所述公钥对是所述数据接收方与数据发送方通过报文协商确定的;
在所述第四报文摘要与提取到的所述第一报文摘要匹配的情况下,获取与所述待请求数据对应的应答数据,以及反馈所述应答数据给所述标识信息对应的数据发送方。
7.根据权利要求6所述的数据传输方法,其特征在于,反馈所述应答数据给所述标识信息对应的数据发送方的步骤,包括:
生成第二私钥,利用所述公钥对、所述第一私钥、所述第二私钥以及安全散列算法对所述应答数据进行数字签名得到第二报文摘要;
对所述第二私钥、所述第二报文摘要以及所述应答数据进行打包生成信息请求应答报文;
发送所述信息请求应答报文给所述数据发送方,使得所述数据发送方基于所述第一私钥、所述第二私钥、所述第二报文摘要验证所述应答数据的完整性。
8.根据权利要求6所述的数据传输方法,其特征在于,在接收到信息请求报文的情况下,提取所述信息请求报文中包含的第一私钥、第一报文摘要、待请求数据以及标识信息的步骤之前,所述方法还包括:
在接收到公钥协商报文的情况下,提取所述公钥协商报文中携带的标识信息,并生成公钥对;
对所述公钥对与所述标识信息进行关联保存,以及反馈携带有所述公钥对的公钥协商应答报文给所述标识信息对应的数据发送方。
9.一种数据传输装置,其特征在于,应用于数据发送方,所述装置包括:
签名模块,用于利用预设的公钥对、第一私钥以及安全散列算法对待请求数据进行数字签名得到第一报文摘要,其中,所述公钥对是数据接收方与所述数据发送方通过报文协商确定的;
打包模块,用于对所述第一私钥、所述第一报文摘要、所述待请求数据以及所述数据发送方的标识信息进行打包生成信息请求报文;
发送模块,用于对发送所述信息请求报文给所述数据接收方,使得所述数据接收方基于所述第一私钥、所述第一报文摘要验证所述待请求数据的完整性。
10.一种数据传输装置,其特征在于,应用于数据接收方,所述装置包括:
接收模块,用于在接收到信息请求报文的情况下,提取所述信息请求报文中包含的第一私钥、第一报文摘要、待请求数据以及标识信息;
调用模块,用于调用与所述标识信息对应的公钥对,利用所述公钥对、所述第一私钥以及预设的安全散列算法对所述待请求数据进行数字签名得到第四报文摘要,其中,所述公钥对是所述数据接收方与数据发送方通过报文协商确定的;
验证模块,用于在所述第四报文摘要与提取到的所述第一报文摘要匹配的情况下,获取与所述待请求数据对应的应答数据,以及反馈所述应答数据给所述标识信息对应的数据发送方。
11.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现权利要求1-5中任一项所述的数据传输方法,或权利要求6-8中任一项所述的数据传输方法。
12.一种计算机可读存储介质,其特征在于,当所述存储介质中的指令由电子设备中的处理器执行时,使得电子设备能够执行权利要求1-5中任一项所述的数据传输方法,或权利要求6-8中任一项所述的数据传输方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010228832.4A CN111431724B (zh) | 2020-03-27 | 2020-03-27 | 数据传输方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010228832.4A CN111431724B (zh) | 2020-03-27 | 2020-03-27 | 数据传输方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111431724A true CN111431724A (zh) | 2020-07-17 |
CN111431724B CN111431724B (zh) | 2023-06-30 |
Family
ID=71548928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010228832.4A Active CN111431724B (zh) | 2020-03-27 | 2020-03-27 | 数据传输方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111431724B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112261002A (zh) * | 2020-09-25 | 2021-01-22 | 山东浪潮通软信息科技有限公司 | 数据接口对接的方法及设备 |
CN112953720A (zh) * | 2021-01-28 | 2021-06-11 | 上海微盟企业发展有限公司 | 一种网络请求处理方法、装置、设备及存储介质 |
CN114499969A (zh) * | 2021-12-27 | 2022-05-13 | 天翼云科技有限公司 | 一种通信报文的处理方法、装置、电子设备及存储介质 |
CN114844716A (zh) * | 2022-05-25 | 2022-08-02 | 中国联合网络通信集团有限公司 | 数字签名报文处理方法、装置、设备及计算机介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080005562A1 (en) * | 2005-12-13 | 2008-01-03 | Microsoft Corporation | Public key infrastructure certificate entrustment |
US8589693B2 (en) * | 2008-10-22 | 2013-11-19 | Paycool International Ltd. | Method for two step digital signature |
US8726009B1 (en) * | 2010-01-26 | 2014-05-13 | David P. Cook | Secure messaging using a trusted third party |
US9692770B2 (en) * | 2014-05-27 | 2017-06-27 | Panasonic Intellectual Property Management Co., Ltd. | Signature verification using unidirectional function |
CN107733648A (zh) * | 2017-10-30 | 2018-02-23 | 武汉大学 | 一种基于身份的rsa数字签名生成方法及系统 |
CN108347419A (zh) * | 2017-01-24 | 2018-07-31 | 腾讯科技(深圳)有限公司 | 数据传输方法和装置 |
US20180227131A1 (en) * | 2017-02-06 | 2018-08-09 | ShoCard, Inc. | Electronic identification verification methods and systems with storage of certification records to a side chain |
CN108512848A (zh) * | 2018-03-31 | 2018-09-07 | 深圳大普微电子科技有限公司 | 防重放攻击的方法以及相关装置 |
CN109391480A (zh) * | 2018-10-19 | 2019-02-26 | 微梦创科网络科技(中国)有限公司 | 一种数据存储方法、装置及电子设备 |
CN109688098A (zh) * | 2018-09-07 | 2019-04-26 | 平安科技(深圳)有限公司 | 数据的安全通信方法、装置、设备及计算机可读存储介质 |
CN109802825A (zh) * | 2017-11-17 | 2019-05-24 | 深圳市金证科技股份有限公司 | 一种数据加密、解密的方法、系统及终端设备 |
-
2020
- 2020-03-27 CN CN202010228832.4A patent/CN111431724B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080005562A1 (en) * | 2005-12-13 | 2008-01-03 | Microsoft Corporation | Public key infrastructure certificate entrustment |
US8589693B2 (en) * | 2008-10-22 | 2013-11-19 | Paycool International Ltd. | Method for two step digital signature |
US8726009B1 (en) * | 2010-01-26 | 2014-05-13 | David P. Cook | Secure messaging using a trusted third party |
US9692770B2 (en) * | 2014-05-27 | 2017-06-27 | Panasonic Intellectual Property Management Co., Ltd. | Signature verification using unidirectional function |
CN108347419A (zh) * | 2017-01-24 | 2018-07-31 | 腾讯科技(深圳)有限公司 | 数据传输方法和装置 |
US20180227131A1 (en) * | 2017-02-06 | 2018-08-09 | ShoCard, Inc. | Electronic identification verification methods and systems with storage of certification records to a side chain |
CN107733648A (zh) * | 2017-10-30 | 2018-02-23 | 武汉大学 | 一种基于身份的rsa数字签名生成方法及系统 |
CN109802825A (zh) * | 2017-11-17 | 2019-05-24 | 深圳市金证科技股份有限公司 | 一种数据加密、解密的方法、系统及终端设备 |
CN108512848A (zh) * | 2018-03-31 | 2018-09-07 | 深圳大普微电子科技有限公司 | 防重放攻击的方法以及相关装置 |
CN109688098A (zh) * | 2018-09-07 | 2019-04-26 | 平安科技(深圳)有限公司 | 数据的安全通信方法、装置、设备及计算机可读存储介质 |
CN109391480A (zh) * | 2018-10-19 | 2019-02-26 | 微梦创科网络科技(中国)有限公司 | 一种数据存储方法、装置及电子设备 |
Non-Patent Citations (6)
Title |
---|
VIDYA RAO ECT.: "Comparative Study of Lightweight Hashing Functions for Resource Constrained Devices of IoT", 《2019 4TH INTERNATIONAL CONFERENCE ON COMPUTATIONAL SYSTEMS AND INFORMATION TECHNOLOGY FOR SUSTAINABLE SOLUTION (CSITSS)》 * |
暴金雨: "RSA公钥密码体制的原理及应用", 《科技传播》 * |
暴金雨: "RSA公钥密码体制的原理及应用", 《科技传播》, 25 March 2019 (2019-03-25) * |
武亚宁: "RSA公钥算法的新探讨及改进", 《信息安全与技术》 * |
武亚宁: "RSA公钥算法的新探讨及改进", 《信息安全与技术》, no. 09, 10 September 2012 (2012-09-10) * |
肖辉远;肖培森;葛利军;: "基于ECC的数字签名方案在网络可信身份认证中的设计与实现", 警察技术, no. 04 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112261002A (zh) * | 2020-09-25 | 2021-01-22 | 山东浪潮通软信息科技有限公司 | 数据接口对接的方法及设备 |
CN112261002B (zh) * | 2020-09-25 | 2022-11-22 | 浪潮通用软件有限公司 | 数据接口对接的方法及设备 |
CN112953720A (zh) * | 2021-01-28 | 2021-06-11 | 上海微盟企业发展有限公司 | 一种网络请求处理方法、装置、设备及存储介质 |
CN114499969A (zh) * | 2021-12-27 | 2022-05-13 | 天翼云科技有限公司 | 一种通信报文的处理方法、装置、电子设备及存储介质 |
CN114844716A (zh) * | 2022-05-25 | 2022-08-02 | 中国联合网络通信集团有限公司 | 数字签名报文处理方法、装置、设备及计算机介质 |
CN114844716B (zh) * | 2022-05-25 | 2023-07-25 | 中国联合网络通信集团有限公司 | 数字签名报文处理方法、装置、设备及计算机介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111431724B (zh) | 2023-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111431724B (zh) | 数据传输方法、装置及电子设备 | |
CN109472166B (zh) | 一种电子签章方法、装置、设备及介质 | |
US20180367315A1 (en) | Method and apparatus for signing and verifying application installation package, and storage medium | |
CN109639661B (zh) | 服务器证书更新方法、装置、设备及计算机可读存储介质 | |
US20140115340A1 (en) | Unique device identifier provision method and apparatus | |
CN105119888B (zh) | 插件安装包上传方法、安装方法及装置 | |
WO2016115889A1 (zh) | 一种对信息进行加密控制、解析信息的方法、系统和终端 | |
CN112287372B (zh) | 用于保护剪贴板隐私的方法和装置 | |
CN109039990B (zh) | 基于验证码进行行为验证的方法及装置 | |
CN103914520B (zh) | 数据查询方法、终端设备和服务器 | |
RU2603549C2 (ru) | Способ, устройство и система верификации для защиты от подделок | |
CN108900553B (zh) | 一种通信方法、装置及计算机可读存储介质 | |
KR20070105826A (ko) | 공개키 인증시스템 및 그 인증방법 | |
CN112003696A (zh) | Sm9密钥生成方法、系统、电子设备、装置及存储介质 | |
CN111030827A (zh) | 信息交互方法、装置、电子设备、及存储介质 | |
CN110417740B (zh) | 用户数据的处理方法、智能终端、服务器及存储介质 | |
WO2022205906A1 (zh) | 数据加密方法、装置、电子设备及存储介质 | |
CN108092947B (zh) | 一种对第三方应用进行身份鉴别的方法及装置 | |
CN112243000B (zh) | 应用数据的处理方法,装置、计算机设备及存储介质 | |
US11570268B2 (en) | Proxy system for bot connectivity to communication channels | |
JP2011086018A (ja) | 携帯電話を用いた電子押印システム | |
CN113076362A (zh) | 业务执行方法及装置 | |
CN107566354B (zh) | 网页内容检测方法、装置及存储介质 | |
CN116579890A (zh) | 基于区块链的在线签约系统 | |
CN116488873A (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 |