CN110166242A - 报文传输方法及装置 - Google Patents

报文传输方法及装置 Download PDF

Info

Publication number
CN110166242A
CN110166242A CN201910428968.7A CN201910428968A CN110166242A CN 110166242 A CN110166242 A CN 110166242A CN 201910428968 A CN201910428968 A CN 201910428968A CN 110166242 A CN110166242 A CN 110166242A
Authority
CN
China
Prior art keywords
message
random number
encryption
asymmetric
character
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
CN201910428968.7A
Other languages
English (en)
Other versions
CN110166242B (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.)
Jilin Billion Bank Ltd By Share Ltd
Original Assignee
Jilin Billion Bank Ltd By Share 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 Jilin Billion Bank Ltd By Share Ltd filed Critical Jilin Billion Bank Ltd By Share Ltd
Priority to CN201910428968.7A priority Critical patent/CN110166242B/zh
Publication of CN110166242A publication Critical patent/CN110166242A/zh
Application granted granted Critical
Publication of CN110166242B publication Critical patent/CN110166242B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/045Network 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 hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • 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
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms

Abstract

本发明提供了一种报文传输方法及装置,该方法包括:当获取到待传输报文时,确定预先生成的随机数,并对随机数进行取余运算,获得第一目标字符,从随机数中确定第一字符和第二字符,并确定与第一字符对应的第一对称加密密钥,以及确定与第二字符对应的第一非对称加密公钥,根据第一对称加密密钥、第一非对称加密公钥,以及预先获取的第二非对称加密公钥,加密待传输报文,获得目标加密报文,依据目标加密报文、随机数、预先获取的设备ID和启动时间戳,生成请求信息,将请求信息发送至服务端。应用本发明提供的方法,通过依据对称加密方式与非对称加密方式的组合,对待传输报文进行加密,使得加密后的报文不易被破解,保障用户信息的安全。

Description

报文传输方法及装置
技术领域
本发明涉及网络安全领域,尤其涉及一种报文传输方法及装置。
背景技术
随着计算机网络的不断发展,全球信息化已经成为人类发展的大趋势,但由于计算机网络具有联接形式多样性、终端分布不均匀和网络的开放性等特征,致使网络易受到黑客、恶意软件的攻击,所以网络信息的安全和保密是一个至关重要的问题,而保障信息安全的最常用方法就是对传输的报文进行加密传输。
现有的报文加密传输方法为,客户端对待发报文通过单一对称加密或非对称加密的方式进行加密传输。经发明人通过对现有的报文加密传输方法进行研究发现,现有的报文加密传输方法加密方式单一易于破解,不利于保障用户信息的安全。
发明内容
本发明所要解决的技术问题是提供一种报文传输方法,依据预先生成的随机数,确定每次加密报文的对称加密方式和非对称加密方式,并通过所确定的对称加密方式和非对称加密方式对报文进行加密,使得加密后的报文不易被破解,有利于保障用户信息的安全。
本发明还提供了一种报文传输装置,用于保证上述方法在实际中的实现及应用。
一种报文传输方法,应用于客户端,所述方法包括:
获取待传输报文,并确定所述客户端中预先生成的随机数;所述待传输报文中包含原报文和所述原报文的生成时间;
确定所述随机数中首位字符所对应的数值,并确定所述随机数的位数,将所述数值对所述位数进行取余运算,获得第一余数值;
依据所述第一余数值,确定所述随机数中与所述第一余数值对应的第一目标字符;
选取所述随机数中与所述第一目标字符存在关联关系的第一字符和第二字符;
将所述第一字符对应的数值对预设的第一数值进行取余运算,获得第二余数值,并将所述第二字符对应的数值对预设的第二数值进行取余运算,获得第三余数值;
确定与所述第二余数值对应的第一对称加密密钥,以及与所述第三余数值对应的第一非对称加密公钥;
依据所述第一对称加密密钥、所述第一非对称加密公钥和预先获取的第二非对称加密公钥,加密所述待传输报文,获得与所述待传输报文对应的目标加密报文;
依据所述目标加密报文、所述随机数、预先获取的设备ID和启动时间戳,生成请求信息,并将所述请求信息发送至服务端。
上述的方法,可选的,所述依据所述第一对称加密密钥、所述第一非对称加密公钥和预先获取的第二非对称加密公钥,加密所述待传输报文,获得与所述待传输报文对应的目标加密报文,包括:
依据所述第一对称加密密钥对所述待传输报文进行加密,获得第一加密报文;
依据所述第一非对称加密公钥对所述第一加密报文进行加密,获得第二加密报文;
依据预先获取的第二非对称加密公钥对所述第二加密报文进行加密,获得与所述待传输报文对应的目标加密报文;
依据所述第一非对称加密公钥对所述待传输报文进行加密,获得第三加密报文;
依据所述第一对称加密密钥对所述第三加密报文进行加密,获得第四加密报文;
依据预先获取的第二非对称加密公钥对所述第四加密报文进行加密,获得与所述待传输报文对应的目标加密报文。
上述的方法,可选的,所述依据所述目标加密报文、所述随机数、预先获取的设备ID和启动时间戳,生成请求信息之后,还包括:
将与所述原报文对应的第一消息摘要发送至所述服务端;其中,所述与原报文对应的第一消息摘要是依据预设的第一安全哈希算法,对所述待传输报文中的原报文进行哈希计算获得的。
上述的方法,可选的,所述将所述请求信息发送至服务端,包括:
向服务端发送非对称加密公钥请求;
当接收到所述服务端反馈的与所述非对称加密公钥请求对应的第三非对称加密公钥时,将所述第三加密公钥和所述预先获取的第二非对称加密公钥进行比对;
当比对一致时,将所述请求信息发送至服务端。
上述的方法,可选的,所述随机数的生成过程,包括:
依据预先获取的设备ID和启动时间戳,通过预设的消息摘要算法,对所述设备ID和所述启动时间戳进行计算,获得与所述设备ID和所述启动时间戳对应的随机数。
一种报文传输装置,应用于客户端,所述装置包括:
第一获取单元,用于获取待传输报文,并确定所述客户端中预先生成的随机数;所述待传输报文中包含原报文和所述原报文的生成时间;
第一计算单元,用于确定所述随机数中首位字符所对应的数值,并确定所述随机数的位数,将所述数值对所述位数进行取余运算,获得第一余数值;
第二获取单元,用于依据所述第一余数值,确定所述随机数中与所述第一余数值对应的第一目标字符;
选取单元,用于选取所述随机数中与所述第一目标字符存在关联关系的第一字符和第二字符;
第二计算单元,用于将所述第一字符对应的数值对预设的第一数值进行取余运算,获得第二余数值,并将所述第二字符对应的数值对预设的第二数值进行取余运算,获得第三余数值;
第三获取单元,用于确定与所述第二余数值对应的第一对称加密密钥,以及与所述第三余数值对应的第一非对称加密公钥;
加密单元,用于依据所述第一对称加密密钥、所述第一非对称加密公钥和预先获取的第二非对称加密公钥,加密所述待传输报文,获得与所述待传输报文对应的目标加密报文;
发送单元,用于依据所述目标加密报文、所述随机数、预先获取的设备ID和启动时间戳,生成请求信息,并将所述请求信息发送至服务端。
一种报文传输方法,应用于服务端,所述方法包括:
当接收到客户端发送的请求信息时,获取所述请求信息中的设备ID和启动时间戳;
判断预先构建的缓存池中是否存在与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥;
若存在,则依据所述缓存池中与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥,以及预先获取的第一非对称解密私钥,解密所述请求信息中的目标加密报文。
上述的方法,可选的,所述依据所述缓存池中与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥,以及预先获取的第一非对称解密私钥,解密所述请求信息中的目标加密报文之后,还包括:
判断所述缓存池中是否存在与所述设备ID和所述启动时间戳对应的消息摘要;
若不存在,则获取已解密的目标加密报文中的原报文,并通过预设的第二安全哈希算法,对所述已解密的目标加密报文中的原报文进行哈希计算,获得与所述已解密的目标加密报文中的原报文对应的第二消息摘要;
将所述第二消息摘要与所述客户端发送的第一消息摘要进行比对;
当比对一致时,判断从所述已解密的目标报文中的原报文生成时间到完成解密所述目标加密报文的时间之间的时间差是否大于预设的时间阈值;
若不大于,则确定所述请求信息中的目标加密报文未被攻击,并执行与所述已解密的目标加密报文对应的业务逻辑。
上述的方法,可选的,还包括:
若所述缓存池中不存在与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥,则获取所述请求信息中的随机数;
将所述随机数中首位字符所对应的数值对所述随机数的位数进行取余运算,获得第四余数值;
依据所述第四余数值,确定所述随机数中与所述第四余数值对应的第二目标字符;
选取所述随机数中与所述第二目标字符存在关联关系的第三字符和第四字符;
将所述第三字符对应的数值对预设的第三数值进行取余运算,获得第五余数值,并将所述第四字符对应的数值对预设的第四数值进行取余运算,获得第六余数值;
确定与所述第五余数值对应的对称解密密钥,以及与所述第六余数值对应的第二非对称解密私钥;
依据所述与所述第五余数值对应的对称解密密钥和所述第二非对称解密私钥,以及预先获取的第一非对称解密私钥,解密所述请求信息中的目标加密报文。
一种报文传输装置,应用于服务端,所述装置包括:
第四获取单元,用于当接收到客户端发送的请求信息时,获取所述请求信息中的设备ID和启动时间戳;
判断单元,用于判断预先构建的缓存池中是否存在与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥;
解密单元,用于若存在,则依据所述缓存池中与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥,以及预先获取的第一非对称解密私钥,解密所述请求信息中的目标加密报文。
一种存储介质,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行上述的报文传输方法。
一种电子设备,包括存储器,以及一个或者一个以上的指令,其中一个或者一个以上指令存储于存储器中,且经配置以由一个或者一个以上处理器执行上述的报文传输方法。
与现有技术相比,本发明包括以下优点:
本发明提供了一种报文传输方法,包括:当获取到待传输报文时,确定客户端中预先生成的随机数,并对随机数进行取余运算,获得第一目标字符,从随机数中确定第一字符和第二字符,并确定与第一字符对应的第一对称加密密钥,以及确定与第二字符对应的第一非对称加密公钥,根据第一对称加密密钥、第一非对称加密公钥,以及预先获取的第二非对称加密公钥,加密待传输报文,获得目标加密报文,依据目标加密报文、随机数、预先获取的设备ID和启动时间戳,生成请求信息,将请求信息发送至服务端。应用本发明提供的报文传输方法,通过依据对称加密方式与非对称加密方式的组合,对待传输报文进行加密,使得加密后的报文不易被破解,并且对称加密方式和非对称加密方式的确定是由每次客户端启动所随机生成的随机数来确定,使得每次启动后,依据随机数所确定的对称加密方式和非对称加密方式发生改变,从而保障用户信息的安全。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明提供的一种报文传输方法的方法流程图;
图2为本发明提供的一种报文传输装置的结构示意图;
图3为本发明提供的一种报文传输方法的又一方法流程图;
图4为本发明提供的一种报文传输装置的又一结构示意图;
图5为本发明提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
本发明实施例提供了一种报文传输方法,该方法可以应用在多种系统平台,其执行主体可以为客户端,所述报文传输方法的流程图如图1所示,具体包括:
S101:获取待传输报文,并确定所述客户端中预先生成的随机数;所述待传输报文中包含原报文和所述原报文的生成时间;
本发明实施例提供的方法中,客户端首先获取待传输报文,该待传输报文中包含原报文,以及原报文的生成时间,并获取在客户端启动时所生成的随机数,其中,随机数与客户端启动的时间戳以及客户端的设备ID相关联,可选的,该随机数可以为由数字和字母组成的32位数,其中,原报文为依据用户的请求信息所生成的报文,例如当用户登录时,依据用户的登录信息,生成原报文,并记录生成原报文的时间,即为原报文的生成时间。
S102:确定所述随机数中首位字符所对应的数值,并确定所述随机数的位数,将所述数值对所述位数进行取余运算,获得第一余数值;
本发明实施例提供的方法中,获取随机数中第一位所对应的字符,若该字符为数字,则直接将字符对随机数的位数取余,获得第一余数值;若该字符为字母,则将字符经过ASCII码转换成与字母对应的数值,并将经ASCII码转换获得的数值对随机数的位数取余,获得第一余数值,可选的,随机数为32位,随机数中首位字符所对应的数值对32取余,余数为0-31中的任意一位数值;例如随机数的第一位为9,则将9对32取余等于9,则第一余数值为9,若第一位为a,a的ASCII码值为65,则65对32取余等于1,则第一余数值为1。
S103:依据所述第一余数值,确定所述随机数中与所述第一余数值对应的第一目标字符;
本发明实施例提供的方法中,依据取余计算获得的第一余数值,确定随机数中与第一余数值对应的第一目标字符,第一余数值表征为随机数中第一目标字符的位置;例如余数值为1,则确定为随机数中的第二位,随机数中的第二位对应的字符则为第一目标字符。
S104:选取所述随机数中与所述第一目标字符存在关联关系的第一字符和第二字符;
本发明实施例提供的方法中,选取所述随机数中与所述第一目标字符存在关联关系的第一字符和第二字符,可选的,可以选取随机数中第一目标字符所在位置的前一位字符为第一字符,目标字符所在位置的后一位字符为第二字符,需要说明的是,若随机数取余32等于0,则第一目标字符所在位置的前一位是随机数中的末位,第一目标字符所在位置的后一位是随机数中的第二位,若随机数对32取余等于31,则第一目标字符所在位置的前一位是随机数中的第三十一位,第一目标字符所在位置的后一位是随机数中的第一位。
也可以选取随机数中目标字符所在位置往前数第二位对应的字符为第一字符,和目标字符所在位置往后数第二位对应的字符为第二字符。
需要说明的是,具体的关联关系可以是多样的,只需客户端和服务端设置为相同的关联关系即可。
S105:将所述第一字符对应的数值对预设的第一数值进行取余运算,获得第二余数值,并将所述第二字符对应的数值对预设的第二数值进行取余运算,获得第三余数值;
本发明实施例提供的方法中,若第一字符和第二字符为数字,则直接将第一字符对预设第一数值取余,第二字符对预设第一数值取余,若第一字符和第二字符为字母,则对应转换成相应的ASCII码值,再将转换后的获得的值对相应的数值取余,所述预设的第一数值与客户端预先存储的对称加密方式的种类相关联,即存在三种对称加密方式时,第一数值为3,存在四种对称加密方式时,第一数值为4;所述预设的第二数值与客户端预先存储的非对称加密方式的种类相关联,即存在三种非对称加密方式时,第二数值为3,存在四种非对称加密方式时,第二数值为4;将第一字符对应的数值对第一数值取余获得第二余数值,将第二字符对应的数值对第二数值取余获得第三余数值。
S106:确定与所述第二余数值对应的第一对称加密密钥,以及与所述第三余数值对应的第一非对称加密公钥;
本发明实施例提供的方法中,从客户端预先存储的对称加密方式中,选取与第二余数值对应的第一对称加密方式,并确定第一加密方式的密钥为第一对称加密密钥;从客户端预先存储的非对称加密方式中,选取与第三余数值对应的第一非对称加密方式,并确定第一非对称加密方式的加密公钥为第一非对称加密公钥;例如,客户端中预先存储的对称加密方式为DES(Data Encryption Standard,数据加密标准)、3DES(Triple DES,三重加密算法)和AES(Advanced Encryption Standard,高级加密标准),第二余数值为1选取3DES对称加密方式,第二余数为0,则选取DES对称加密方式,第二余数为2,则选取AES对称加密方式;客户端中预先存储的非对称加密方式为RSA、DSA和ECC(Error Correcting Code,错误检查与纠正),第三余数值为0,则选取RSA非对称加密方式,第三余数值为1,则选取DSA非对称加密方式,第三余数值为2,则选取ECC非对称加密方式。
S107:依据所述第一对称加密密钥、所述第一非对称加密公钥和预先获取的第二非对称加密公钥,加密所述待传输报文,获得与所述待传输报文对应的目标加密报文;
本发明实施例提供的方法中,依据第二余数确定的第一对称加密密钥、第三余数确定的第一非对称加密公钥以及预先获得的第二非对称加密公钥,对待传输报文进行加密,获得目标加密报文,其中,以第一对称加密密钥、第一非对称加密公钥和第二非对称加密公钥对待传输报文进行加密的加密顺序不做限定,即以任意顺序对待传输报文进行加密均是可行的。
S108:依据所述目标加密报文、所述随机数、预先获取的设备ID和启动时间戳,生成请求信息,并将所述请求信息发送至服务端。
本发明实施例提供的方式中,将请求信息发送至服务端,其中,请求信息包含目标加密报文、随机数、预先获取的设备ID和启动时间戳,随机数是依据设备ID和启动时间戳生成的。
本发明实施例提供的报文传输方法中,当客户端获取到待传输报文时,确定客户端中预先生成的随机数,并以随机数的首位字符对应的数值对随机数的位数取余,以确定第一目标字符,并从随机数中确定与第一目标字符存在关联关系的第一字符和第二字符,依据第一字符确定对称加密方式的第一对称加密密钥,依据第二字符确定非对称加密方式的第一非对称加密公钥,根据第一对称加密密钥、第一非对称加密公钥,以及预先获取的第二非对称加密公钥,加密待传输报文,获得目标加密报文,并依据目标加密报文、随机数、预先获取的设备ID和启动时间戳,生成请求信息,并将请求信息发送至服务端。应用本发明实施例提供的报文传输方法,通过依据对称加密方式与非对称加密方式的组合,对报文进行加密,使得加密后的报文不易被破解,并且对称加密方式和非对称加密方式的确定是由每次客户端启动所随机生成的随机数来确定,使得每次启动后,依据随机数所确定的对称加密方式和非对称加密方式发生改变,从而保障用户信息的安全。
上述本发明实施例图1公开的步骤S107涉及到的,依据所述第一对称加密密钥、所述第一非对称加密公钥和预先获取的第二非对称加密公钥,加密所述待传输报文,获得与所述待传输报文对应的目标加密报文,包括以下步骤:
依据所述第一对称加密密钥对所述待传输报文进行加密,获得第一加密报文;
依据所述第一非对称加密公钥对所述第一加密报文进行加密,获得第二加密报文;
依据预先获取的第二非对称加密公钥对所述第二加密报文进行加密,获得与所述待传输报文对应的目标加密报文;
依据所述第一非对称加密公钥对所述待传输报文进行加密,获得第三加密报文;
依据所述第一对称加密密钥对所述第三加密报文进行加密,获得第四加密报文;
依据预先获取的第二非对称加密公钥对所述第四加密报文进行加密,获得与所述待传输报文对应的目标加密报文。
本发明实施例提供的方法中,依据第一对称加密密钥、第一非对称加密公钥和第二非对称加密公钥对待传输报文进行加密的顺序不做限定,即通过三种加密方式可得出6种加密顺序,第一种加密顺序可以为:先以第一对称加密密钥加密待传输报文,获得第一加密报文,再以第一非对称加密公钥加密第一加密报文,获得第二加密报文,最后在以第二非对称加密公钥加密第二加密报文,获得目标加密报文;第二种加密顺序可以为:先以第一非对称加密公钥加密待传输报文,获得第三加密报文,再以第一对称加密密钥加密第三加密报文,获得第四加密报文,最后再以第二非对称加密公钥加密第四加密报文,获得目标加密报文;第三种加密顺序可以为:先以第一对称加密密钥加密待传输报文,再以第二非对称加密公钥加密,最后以第一非对称加密公钥加密,获得目标加密报文;依次类推,可获得共6种不同的加密顺序。本发明实施例优选的,以第一种加密顺序加密待传输报文。
需要说明的是,第二非对称加密公钥为客户端启动时,通过向服务端发送第一非对称加密公钥请求获得的,客户端启动时,向服务端发送第一非对称加密公钥获取请求,并在接收到服务端反馈与第一非对称加密公钥请求对应的非对称加密公钥时,将服务端反馈的非对称加密公钥和本地预置的公钥进行比对,若比对一致,则将服务端反馈的非对称加密公钥作为第二非对称加密公钥,若比对不一致,则终止交互,服务端反馈的非对称加密公钥和本地预置的公钥不一致时,表征该服务端不是特定服务端,而客户端只接收特定服务端的数据。在比对一致时,客户端会定期向服务端申请非对称加密公钥,当服务端接收到客户端的申请时,判断与申请对应的公钥是否发生变更,若变更,则下发变更后的公钥,客户端接收到服务端下发的变更后的公钥,则将本地预置的公钥更新为服务端下发的变更后的公钥。应用本发明实施例提供的报文传输方法,通过将服务端反馈的非对称加密公钥和本非预置的公钥进行比对,以确定该服务端为特定服务端,使得报文传输更加安全,并且当服务端发现有被破解的风险时,变更非对称加密公钥,提升报文被破解的难度。
上述本发明实施例图1公开的步骤S108涉及到的,依据所述目标加密报文、所述随机数、预先获取的设备ID和启动时间戳,生成请求信息之后,还包括以下步骤:
将与所述原报文对应的第一消息摘要发送至所述服务端;其中,所述与原报文对应的第一消息摘要是依据预设的第一安全哈希算法,对所述待传输报文中的原报文进行哈希计算获得的。
本发明实施例提供的方法中,依据第一安全哈希算法,对待传输报文中的原报文进行哈希计算,获得与原报文对应的第一消息摘要,并将第一消息摘要发送至服务端,应用本发明实施例提供的报文生成方法,通过安全哈希算法,不同的原报文,产生不同的消息摘要,可以有效的防止报文内容被串改,提高报文传输的安全性。
上述本发明实施例图1公开的步骤S108涉及到的,将所述请求信息发送至服务端,包括以下步骤:
向服务端发送非对称加密公钥请求;
当接收到所述服务端反馈的与所述非对称加密公钥请求对应的第三非对称加密公钥时,将所述第三加密公钥和所述预先获取的第二非对称加密公钥进行比对;
当比对一致时,将所述请求信息发送至服务端。
本发明实施例提供的方法,将请求信息发送至服务端之前,需要验证来自服务端的第三非对称公钥是否和预先获取的第二非对称公钥一致,只有验证一致时,才将请求信息发送至服务端;当存在中间人攻击时,服务端检测到有被破解的风险,此时服务端将变更预存的非对称加密公钥为第三非对称加密公钥,并在客户端申请非对称公钥时将第三非对称加密公钥下发,客户端依据服务端下发的第三非对称加密公钥,只是将本地预置的公钥进行变更,而预先的获取的第二非对称加密公钥还是和客户端之前的本地预置的公钥相同,所以在存在中间人攻击时,第二非对称加密公钥和服务器反馈的第三非对称加密公钥是不一致的,通过向服务端发送非对称加密公钥请求,可以有效的防止中间人攻击。
上述本发明实施例图1公开的步骤S101涉及到的随机数,所述随机数的生成过程,包括以下步骤:
依据预先获取的设备ID和启动时间戳,通过预设的消息摘要算法,对所述设备ID和所述启动时间戳进行计算,获得与所述设备ID和所述启动时间戳对应的随机数。
本发明实施例提供的方法中,随机数与客户端的设备ID和当前客户端的启动时间的时间戳均关联,随机数是通过预设的消息摘要算法,对客户端的设备ID和启动时间戳进行计算获得的,可选的,消息摘要算法可以是MD5,对设备ID和启用时间戳进行MD5计算,可获得32位的MD5值。将32位MD5值作为随机加密的随机因子,即随机数是一个32位的数,将随机数对32取余,可获得0-31中的任意一个数值。需要说明的是,设备ID、启动时间戳和随机数在客户端启动时生成。应用本发明实施例提供的方法,客户端每次启动时生成的随机数是不一样的,所以每次加密待传输报文的方式是不同的,若传输的报文被破解,用户的数据就不会处于长期暴露的状态,可以更好的保护传输的报文数据。
与图1所述的方法相对应,本发明实施例还提供了一种报文传输装置,用于对图1中方法的具体实现,其执行主体可以为客户端,其结构示意图如图2所示,具体包括:
第一获取单元201,用于获取待传输报文,并确定所述客户端中预先生成的随机数;所述待传输报文中包含原报文和所述原报文的生成时间;
第一计算单元202,用于确定所述随机数中首位字符所对应的数值,并确定所述随机数的位数,将所述数值对所述位数进行取余运算,获得第一余数值;
第二获取单元203,用于依据所述第一余数值,确定所述随机数中与所述第一余数值对应的第一目标字符;
选取单元204,用于选取所述随机数中与所述第一目标字符存在关联关系的第一字符和第二字符;
第二计算单元205,用于将所述第一字符对应的数值对预设的第一数值进行取余运算,获得第二余数值,并将所述第二字符对应的数值对预设的第二数值进行取余运算,获得第三余数值;
第三获取单元206,用于确定与所述第二余数值对应的第一对称加密密钥,以及与所述第三余数值对应的第一非对称加密公钥;
加密单元207,用于依据所述第一对称加密密钥、所述第一非对称加密公钥和预先获取的第二非对称加密公钥,加密所述待传输报文,获得与所述待传输报文对应的目标加密报文;
发送单元208,用于依据所述目标加密报文、所述随机数、预先获取的设备ID和启动时间戳,生成请求信息,并将所述请求信息发送至服务端。
本发明实施例提供的报文传输装置,当客户端获取到待传输报文时,确定客户端中预先生成的随机数,并以随机数的首位字符对应的数值对随机数的位置取余,以获得第一目标字符,并从随机数中确定与第一目标字符存在关联关系的第一字符和第二字符,依据第一字符确定对称加密方式的第一对称加密密钥,依据第二字符确定非对称加密方式的第一非对称加密公钥,根据第一对称加密密钥、第一非对称加密公钥,以及预先获取的第二非对称加密公钥,加密待传输报文,获得目标加密报文,并将目标加密报文、随机数、预先获取的设备ID和启动时间戳,生成请求信息,并将请求信息发送至服务端。应用本发明实施例提供的报文传输装置,通过对称加密方式与非对称加密方式的组合,对报文进行加密,使得加密后的报文不易被破解,并且对称加密方式和非对称加密方式的确定是由每次客户端启动所随机生成的随机数来确定,保障用户信息的安全。
在本发明的一个实施例中,基于前述方案,加密单元207具体用于:
依据所述第一对称加密密钥对所述待传输报文进行加密,获得第一加密报文;
依据所述第一非对称加密公钥对所述第一加密报文进行加密,获得第二加密报文;
依据预先获取的第二非对称加密公钥对所述第二加密报文进行加密,获得与所述待传输报文对应的目标加密报文;
依据所述第一非对称加密公钥对所述待传输报文进行加密,获得第三加密报文;
依据所述第一对称加密密钥对所述第三加密报文进行加密,获得第四加密报文;
依据预先获取的第二非对称加密公钥对所述第四加密报文进行加密,获得与所述待传输报文对应的目标加密报文。
在本发明的一个实施例中,基于前述方案,生成单元208还配置为:
第一发送子单元,用于将与所述原报文对应的第一消息摘要发送至所述服务端;其中,所述与原报文对应的第一消息摘要是依据预设的第一安全哈希算法,对所述待传输报文中的原报文进行哈希计算获得的。
在本发明的一个实施例中,基于前述方案,生成单元208配置为:
第二发送子单元,用于向服务端发送非对称加密公钥请求;
第一比对子单元,用于当接收到所述服务端反馈的与所述非对称加密公钥请求对应的第三非对称加密公钥时,将所述第三加密公钥和所述预先获取的第二非对称加密公钥进行比对;
第三发送子单元,用于当比对一致时,将所述请求信息发送至服务端。
在本发明的一个实施例中,基于前述方案,第一获取单元201配置为:
第一计算子单元,用于依据预先获取的设备ID和启动时间戳,通过预设的消息摘要算法,对所述设备ID和所述启动时间戳进行计算,获得与所述设备ID和所述启动时间戳对应的随机数。
本发明实施例提供了一种报文传输方法,该方法可以应用在多种系统平台,其执行主体可以为服务端,所述报文传输方法的流程图如图3所示,具体包括:
S301:获取客户端发送的请求信息中的设备ID和启动时间戳;
本发明实施例提供的方法中,当接收到客户端发送的请求信息时,获取请求信息中的设备ID和启动时间戳。
S302:判断缓存池中是否存在与设备ID和启动时间戳对应的对称解密密钥和非对称解密私钥;
本发明实施例提供的方法中,若客户端在本次启动后,第一次向该服务端发送请求信息,则缓存池中不存在与设备ID和启动时间戳对应的对称解密钥和非对称解密私钥,若客户端在本次启动后并非第一次向该服务端发送请求信息,则缓存池中可能存在与设备ID和启动时间戳对应的对称解密密钥和非对称解密私钥,若判断为缓存池中存在与设备ID和启动时间戳对应的对称解密密钥和非对称解密私钥,则执行步骤S303,若判断为缓存池中不存在与设备ID和启动时间戳对应的对称解密密钥和非对称解密私钥,则执行步骤S304。
需要说明的是,本发明实施例提供的方法中,服务端可以以<key,value>的形式存储于缓存池中,其中key为设备ID+启动时间戳,value为随机数+对称解密密钥+非对称解密私钥。
需要说明的是,因缓存量很大,需要定期根据启动时间戳对缓存池进行清理。
S303:依据缓存池中的对称解密密钥和非对称解密私钥,和预先获取的第一非对称解密私钥,解密请求信息中的目标加密报文;
本发明实施例提供的方法中,若判断为缓存池中存在与设备ID和启动时间戳对应的对称解密密钥和非对称解密私钥,则依据缓存池中的与设备ID和启动时间戳对应的对称解密密钥和非对称解密私钥,以及预先获得的第一非对称解密私钥,解密请求信息中的目标加密报文。
需要说明的是,服务端解密目标加密报文的顺序和客户端加密待传输报文的顺序是对应的,客户端以何种顺序对待传输报文进行加密,服务端以与该顺序相反的顺序进行解密;例如,客户端加密待传输报文的顺序为第一对称加密密钥、第一非对称加密公钥和第二非对称加密公钥,那么服务端解密目标加密报文的顺序为预先获取的第一非对称解密私钥、与设备ID和启动时间戳对应的非对称解密私钥,以及与设备ID和启动时间戳对应的对称解密密钥。
S304:获取请求信息中的随机数;
本发明实施例提供的方法中,若判断为缓存池中不存在与设备ID和启动时间戳对应的对称解密密钥和非对称解密私钥,则获取请求信息中的随机数。
S305:确定与随机数对应的对称解密密钥和第二非对称解密私钥;
本发明实施例提供的方法中,服务端依据随机数确定解密的对称解密密钥和第二非对称解密私钥,其中与随机数对应的对称解密密钥和上述的第一对称加密密钥为同一加解密方式对应的加密密钥和解密密钥,第二非对称解密私钥与上述的第一非对称加密公钥是相对应的;服务端依据随机数确定解密的对称解密密钥和第二非对称解密私钥具体包括:将随机数中首位字符所对应的数值对所述随机数的位数进行取余运算,获得第四余数值,该第四余数值与上述提及的第一余数值相等,第四余数值额获取过程与上述的实施例图1中的步骤S102类似,此处不再赘述;依据第四余数值,确定随机数中与第四余数值对应的第二目标字符的过程与实施例图1中的步骤S103类似,此处不再赘述,该第二目标字符与上述的第一目标字符为相同的字符;选取随机数中与所述第二目标字符存在关联关系的第三字符和第四字符的过程与实施例图1中的步骤S104类似,此处不再赘述,该第三字符和上述的第一字符为相同的字符,该第四字符和上述的第二字符为相同的字符;将第三字符对应的数值对预设的第三数值进行取余运算,获得第五余数值,并将所述第四字符对应的数值对预设的第四数值进行取余运算,获得第六余数值,的过程与上述实施例图1中的步骤S105类似,此处不再赘述,该第五余数值与上述提及的第二余数值是相同的,该第六余数值与上述提及的第三余数值是相同的;确定与第五余数值对应的对称解密密钥,以及与第六余数值对应的第二非对称解密私钥,的过程与上述实施例图1中的步骤S106类似,此处不再赘述。
S306:依据与随机数对应的对称解密密钥和第二非对称解密私钥,和第一非对称解密私钥,解密目标加密报文;
本发明实施例提供的方法中,依据与随机数对应的对称解密密钥和第二非对称解密私钥,以及预先获取的第一非对称解密私钥,解密目标加密报文,服务端解密目标加密报文的顺序和客户端加密待传输报文的顺序是对应的,客户端以何种顺序对待传输报文进行加密,服务端以与该顺序相反的顺序进行解密;例如,客户端加密待传输报文的顺序为第一对称加密密钥、第一非对称加密公钥和第二非对称加密公钥,那么服务端解密目标加密报文的顺序为预先获取的第一非对称解密私钥、与第二随机数对应的非对称解密私钥,以及与第二随机数对应的对称解密密钥。
S307:判断缓存池中是否存在与设备ID和启动时间戳对应的消息摘要;
本发明实施例提供的方法中,通过key(设备ID+启动时间戳)到缓存池中查找与key对应的消息摘要,若在缓存池中查找到与key对应的消息摘要,则判断为客户端重复提交请求信息,并结束;若在缓存池中未查找到与key对应的消息摘要,则判断为客户端发送的请求信息为新请求,并执行步骤S308。
S308:获取已解密的目标加密报文中的原报文,并依据原报文,生成第二消息摘要;
本发明实施例提供的方法中,获取已解密的目标加密报文中的待传输报文中的原报文,并通过预设的第二安全哈希算法,对目标加密报文中的原报文进行哈希计算获得与目标加密报文中的原报文对应的第二消息摘要,其中第二安全哈希算法和上述提及的第一安全哈希算法是相同的哈希算法。
S309:判断第二消息摘要和客户端发送的第一消息摘要是否一致;
本发明实施例提供的方法中,将第二消息摘要与客户端发送的第一消息摘要进行比对,若比对一致,则表征在目标报文在传输过程中未被串改,并执行步骤S310;若比对不一致,则表征在目标报文的传输过程中已经被串改,并终止交互,直接结束。
S310:判断已解密的目标加密报文中的原报文生成时间到完成解密目标加密报文的时间的时间差是否大于预设的时间阈值;
本发明实施例提供的方法中,判断从已解密的目标加密报文中的原报文生成时间到完成解密目标加密报文的时间差是否大于预设时间,若大于,则表征目标加密报文中的待传输报文为无效报文,并终止交互,直接结束。若不大于,则执行步骤S311。优选的,本发明实施例的时间阈值为60S;通过判断从已解密的目标加密报文中的原报文生成时间到完成解密目标加密报文的时间差是否大于预设时间,可以控制报文的时效性,有效防止攻击者抓取昨天的报文,今天攻击使用,以及如果攻击者在中途破解时间过长,也会受实效性控制。
S311:执行与已解密的目标报文对应的业务逻辑。
本发明实施例提供的方法中,若从已解密的目标加密报文中的原报文生成时间到完成解密目标加密报文的时间差大于预设时间,则确定目标加密报文未被攻击,并执行与已解密的目标加密报文中对应的业务逻辑。
应用本发明实施例提供的方法,当服务端接收到客户端发送的请求信息时,获取请求信息中的设备ID和启动时间戳,并依据设备ID和启动时间戳,判断预先构建的缓存池中是否存在与设备ID和启动时间戳对应的对称解密密钥和非对称解密私钥,若存在,则依据对称解密密钥和非对称解密私钥,以及预先获取的第一非对称解密私钥解密请求信息中的目标加密报文,若不存在,则获取请求信息中的随机数,并基于随机数,确定与随机数对应的对称解密密钥和第二非对称解密私钥,并依据与随机数对应的对称解密密钥和第二非对称解密私钥,以及预先获取的第一非对称解密私钥,解密请求信息中的目标加密报文,并当缓存池中不存在与设备ID和启动时间戳对应的消息摘要时,通过第二安全哈希算法,计算已解密的目标加密报文中的原报文的消息摘要,获得第二消息摘要,并在第二消息摘要和客户端发送的第一消息摘要比对一致,以及从已解密的目标加密报文中的原报文生成时间到完成解密目标加密报文的时间差是否大于预设时间时,判断目标加密报文未被攻击,并执行与已解密的目标加密报文相应的业务逻辑。应用本发明实施例提供的报文传输方法,客户端通过对称加密方式加非对称加密方式,对传输的报文加密,服务端在相应的进行解密,增加报文被破解的难度,通过验证客户端的消息摘要,可以有效防止报文被串改,以及控制报文的失效性,增加破解的难度,使得待传输报文更加安全,。
与图3所述的方法相对应,本发明实施例还提供了一种报文传输装置,用于对图3中方法的具体实现,其执行主体可以为服务端,其结构示意图如图4所示,具体包括:
第四获取单元401,用于当接收到客户端发送的请求信息时,获取所述请求信息中的设备ID和启动时间戳;
判断单元402,用于判断预先构建的缓存池中是否存在与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥;
解密单元403,用于若存在,则依据所述缓存池中与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥,以及预先获取的第一非对称解密私钥,解密所述请求信息中的目标加密报文。
在本发明的一个实施例中,基于前述方案,解密单元403还可以配置为:
第一判断子单元,用于判断所述缓存池中是否存在与所述设备ID和所述启动时间戳对应的消息摘要;
第二计算子单元,用于若不存在,则获取已解密的目标加密报文中的原报文,并通过预设的第二安全哈希算法,对所述已解密的目标加密报文中的原报文进行哈希计算,获得与所述已解密的目标加密报文中的原报文对应的第二消息摘要;
第二比对子单元,用于将所述第二消息摘要与所述客户端发送的第一消息摘要进行比对;
第二判断子单元,用于当比对一致时,判断从所述已解密的目标报文中的原报文生成时间到完成解密所述目标加密报文的时间之间的时间差是否大于预设的时间阈值;
执行子单元,用于若不大于,则确定所述请求信息中的目标加密报文未被攻击,并执行与所述已解密的目标加密报文对应的业务逻辑。
在本发明的一个实施例中,基于前述方案,判断单元402还配置为:
第一获取子单元,用于若所述缓存池中不存在与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥,则获取所述请求信息中的随机数;
第三计算子单元,用于将所述随机数中首位字符所对应的数值对所述随机数的位数进行取余运算,获得第四余数值;
第二获取子单元,用于依据所述第四余数值,确定所述随机数中与所述第四余数值对应的第二目标字符;
选取子单元,用于选取所述随机数中与所述第二目标字符存在关联关系的第三字符和第四字符;
第三获取子单元,用于将所述第三字符对应的数值对预设的第三数值进行取余运算,获得第五余数值,并将所述第四字符对应的数值对预设的第四数值进行取余运算,获得第六余数值;
第四获取子单元,用于确定与所述第五余数值对应的对称解密密钥,以及与所述第六余数值对应的第二非对称解密私钥;
解密子单元,用于依据所述与所述第五余数值对应的对称解密密钥和所述第二非对称解密私钥,以及预先获取的第一非对称解密私钥,解密所述请求信息中的目标加密报文。
本发明实施例还提供了一种存储介质,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行上述报文传输方法。
本发明实施例还提供了一种电子设备,其结构示意图如图5所示,具体包括存储器501,以及一个或者一个以上的指令502,其中一个或者一个以上指令502存储于存储器501中,且经配置以由一个或者一个以上处理器503执行所述一个或者一个以上指令502进行以下操作:
获取待传输报文,并确定所述客户端中预先生成的随机数;所述待传输报文中包含原报文和所述原报文的生成时间;
确定所述随机数中首位字符所对应的数值,并确定所述随机数的位数,将所述数值对所述位数进行取余运算,获得第一余数值;
依据所述第一余数值,确定所述随机数中与所述第一余数值对应的第一目标字符;
选取所述随机数中与所述第一目标字符存在关联关系的第一字符和第二字符;
将所述第一字符对应的数值对预设的第一数值进行取余运算,获得第二余数值,并将所述第二字符对应的数值对预设的第二数值进行取余运算,获得第三余数值;
确定与所述第二余数值对应的第一对称加密密钥,以及与所述第三余数值对应的第一非对称加密公钥;
依据所述第一对称加密密钥、所述第一非对称加密公钥和预先获取的第二非对称加密公钥,加密所述待传输报文,获得与所述待传输报文对应的目标加密报文;
依据所述目标加密报文、所述随机数、预先获取的设备ID和启动时间戳,生成请求信息,并将所述请求信息发送至服务端。
优选的,还可以执行以下操作:
当接收到客户端发送的请求信息时,获取所述请求信息中的设备ID和启动时间戳;
判断预先构建的缓存池中是否存在与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥;
若存在,则依据所述缓存池中与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥,以及预先获取的第一非对称解密私钥,解密所述请求信息中的目标加密报文。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明所提供的一种报文传输方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种报文传输方法,其特征在于,应用于客户端,所述方法包括:
获取待传输报文,并确定所述客户端中预先生成的随机数;所述待传输报文中包含原报文和所述原报文的生成时间;
确定所述随机数中首位字符所对应的数值,并确定所述随机数的位数,将所述数值对所述位数进行取余运算,获得第一余数值;
依据所述第一余数值,确定所述随机数中与所述第一余数值对应的第一目标字符;
选取所述随机数中与所述第一目标字符存在关联关系的第一字符和第二字符;
将所述第一字符对应的数值对预设的第一数值进行取余运算,获得第二余数值,并将所述第二字符对应的数值对预设的第二数值进行取余运算,获得第三余数值;
确定与所述第二余数值对应的第一对称加密密钥,以及与所述第三余数值对应的第一非对称加密公钥;
依据所述第一对称加密密钥、所述第一非对称加密公钥和预先获取的第二非对称加密公钥,加密所述待传输报文,获得与所述待传输报文对应的目标加密报文;
依据所述目标加密报文、所述随机数、预先获取的设备ID和启动时间戳,生成请求信息,并将所述请求信息发送至服务端。
2.根据权利要求1所述的方法,其特征在于,所述依据所述第一对称加密密钥、所述第一非对称加密公钥和预先获取的第二非对称加密公钥,加密所述待传输报文,获得与所述待传输报文对应的目标加密报文,包括:
依据所述第一对称加密密钥对所述待传输报文进行加密,获得第一加密报文;
依据所述第一非对称加密公钥对所述第一加密报文进行加密,获得第二加密报文;
依据预先获取的第二非对称加密公钥对所述第二加密报文进行加密,获得与所述待传输报文对应的目标加密报文;
依据所述第一非对称加密公钥对所述待传输报文进行加密,获得第三加密报文;
依据所述第一对称加密密钥对所述第三加密报文进行加密,获得第四加密报文;
依据预先获取的第二非对称加密公钥对所述第四加密报文进行加密,获得与所述待传输报文对应的目标加密报文。
3.根据权利要求1所述的方法,其特征在于,所述依据所述目标加密报文、所述随机数、预先获取的设备ID和启动时间戳,生成请求信息之后,还包括:
将与所述原报文对应的第一消息摘要发送至所述服务端;其中,所述与原报文对应的第一消息摘要是依据预设的第一安全哈希算法,对所述待传输报文中的原报文进行哈希计算获得的。
4.根据权利要求1所述的方法,其特征在于,所述将所述请求信息发送至服务端,包括:
向服务端发送非对称加密公钥请求;
当接收到所述服务端反馈的与所述非对称加密公钥请求对应的第三非对称加密公钥时,将所述第三加密公钥和所述预先获取的第二非对称加密公钥进行比对;
当比对一致时,将所述请求信息发送至服务端。
5.根据权利要求1所述的方法,其特征在于,所述随机数的生成过程,包括:
依据预先获取的设备ID和启动时间戳,通过预设的消息摘要算法,对所述设备ID和所述启动时间戳进行计算,获得与所述设备ID和所述启动时间戳对应的随机数。
6.一种报文传输装置,其特征在于,应用于客户端,所述装置包括:
第一获取单元,用于获取待传输报文,并确定所述客户端中预先生成的随机数;所述待传输报文中包含原报文和所述原报文的生成时间;
第一计算单元,用于确定所述随机数中首位字符所对应的数值,并确定所述随机数的位数,将所述数值对所述位数进行取余运算,获得第一余数值;
第二获取单元,用于依据所述第一余数值,确定所述随机数中与所述第一余数值对应的第一目标字符;
选取单元,用于选取所述随机数中与所述第一目标字符存在关联关系的第一字符和第二字符;
第二计算单元,用于将所述第一字符对应的数值对预设的第一数值进行取余运算,获得第二余数值,并将所述第二字符对应的数值对预设的第二数值进行取余运算,获得第三余数值;
第三获取单元,用于确定与所述第二余数值对应的第一对称加密密钥,以及与所述第三余数值对应的第一非对称加密公钥;
加密单元,用于依据所述第一对称加密密钥、所述第一非对称加密公钥和预先获取的第二非对称加密公钥,加密所述待传输报文,获得与所述待传输报文对应的目标加密报文;
发送单元,用于依据所述目标加密报文、所述随机数、预先获取的设备ID和启动时间戳,生成请求信息,并将所述请求信息发送至服务端。
7.一种报文传输方法,其特征在于,应用于服务端,所述方法包括:
当接收到客户端发送的请求信息时,获取所述请求信息中的设备ID和启动时间戳;
判断预先构建的缓存池中是否存在与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥;
若存在,则依据所述缓存池中与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥,以及预先获取的第一非对称解密私钥,解密所述请求信息中的目标加密报文。
8.根据权利要求7所述的方法,其特征在于,所述依据所述缓存池中与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥,以及预先获取的第一非对称解密私钥,解密所述请求信息中的目标加密报文之后,还包括:
判断所述缓存池中是否存在与所述设备ID和所述启动时间戳对应的消息摘要;
若不存在,则获取已解密的目标加密报文中的原报文,并通过预设的第二安全哈希算法,对所述已解密的目标加密报文中的原报文进行哈希计算,获得与所述已解密的目标加密报文中的原报文对应的第二消息摘要;
将所述第二消息摘要与所述客户端发送的第一消息摘要进行比对;
当比对一致时,判断从所述已解密的目标报文中的原报文生成时间到完成解密所述目标加密报文的时间之间的时间差是否大于预设的时间阈值;
若不大于,则确定所述请求信息中的目标加密报文未被攻击,并执行与所述已解密的目标加密报文对应的业务逻辑。
9.根据权利要求7所述的方法,其特征在于,还包括:
若所述缓存池中不存在与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥,则获取所述请求信息中的随机数;
将所述随机数中首位字符所对应的数值对所述随机数的位数进行取余运算,获得第四余数值;
依据所述第四余数值,确定所述随机数中与所述第四余数值对应的第二目标字符;
选取所述随机数中与所述第二目标字符存在关联关系的第三字符和第四字符;
将所述第三字符对应的数值对预设的第三数值进行取余运算,获得第五余数值,并将所述第四字符对应的数值对预设的第四数值进行取余运算,获得第六余数值;
确定与所述第五余数值对应的对称解密密钥,以及与所述第六余数值对应的第二非对称解密私钥;
依据所述与所述第五余数值对应的对称解密密钥和所述第二非对称解密私钥,以及预先获取的第一非对称解密私钥,解密所述请求信息中的目标加密报文。
10.一种报文传输装置,其特征在于,应用于服务端,所述装置包括:
第四获取单元,用于当接收到客户端发送的请求信息时,获取所述请求信息中的设备ID和启动时间戳;
判断单元,用于判断预先构建的缓存池中是否存在与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥;
解密单元,用于若存在,则依据所述缓存池中与所述设备ID和所述启动时间对应的对称解密密钥和非对称解密私钥,以及预先获取的第一非对称解密私钥,解密所述请求信息中的目标加密报文。
CN201910428968.7A 2019-05-22 2019-05-22 报文传输方法及装置 Active CN110166242B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910428968.7A CN110166242B (zh) 2019-05-22 2019-05-22 报文传输方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910428968.7A CN110166242B (zh) 2019-05-22 2019-05-22 报文传输方法及装置

Publications (2)

Publication Number Publication Date
CN110166242A true CN110166242A (zh) 2019-08-23
CN110166242B CN110166242B (zh) 2022-10-21

Family

ID=67631919

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910428968.7A Active CN110166242B (zh) 2019-05-22 2019-05-22 报文传输方法及装置

Country Status (1)

Country Link
CN (1) CN110166242B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110708164A (zh) * 2019-09-25 2020-01-17 青岛海尔科技有限公司 一种物联网设备的控制方法、装置、存储介质及电子装置
CN111641651A (zh) * 2020-05-29 2020-09-08 南方电网科学研究院有限责任公司 一种基于哈希链的访问验证方法及装置
CN112367171A (zh) * 2020-10-27 2021-02-12 杭州安恒信息技术股份有限公司 一种基于rsa和MD5的数据传输方法及组件
CN113596054A (zh) * 2021-07-14 2021-11-02 中国电子科技集团公司第二十八研究所 一种信息系统间传输软跳频加密方法
CN113612852A (zh) * 2021-08-11 2021-11-05 山东爱德邦智能科技有限公司 一种基于车载终端的通信方法、装置、设备及存储介质
CN113726830A (zh) * 2020-05-25 2021-11-30 网联清算有限公司 一种报文标识生成方法及装置
CN113783887A (zh) * 2021-09-22 2021-12-10 广东九联科技股份有限公司 基于网络通信的远程控制方法、系统及存储介质
CN114095165A (zh) * 2021-11-22 2022-02-25 中国建设银行股份有限公司 密钥更新方法、服务端设备、客户端设备及存储介质
CN114244788A (zh) * 2022-02-25 2022-03-25 广州锦行网络科技有限公司 数据的响应方法、装置以及系统
WO2022126980A1 (zh) * 2020-12-15 2022-06-23 平安科技(深圳)有限公司 一种数据传输方法、装置、终端及存储介质
CN115086032A (zh) * 2022-06-15 2022-09-20 上海领雾软件科技有限公司 一种传感器数据保护系统及方法
CN116015981A (zh) * 2023-03-21 2023-04-25 深圳市星火数控技术有限公司 一种缝纫数控文件数据加密方法
CN116208420A (zh) * 2023-03-08 2023-06-02 武汉维高凡科技有限公司 一种监测信息安全传输方法、系统、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170279777A1 (en) * 2016-03-28 2017-09-28 Le Holdings (Beijing) Co., Ltd. File signature system and method
CN108809940A (zh) * 2018-05-04 2018-11-13 四川理工学院 电网系统服务器与客户端交互加密方法
CN109462602A (zh) * 2018-12-13 2019-03-12 平安普惠企业管理有限公司 登录信息存储方法、登录验证方法、装置、设备及介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170279777A1 (en) * 2016-03-28 2017-09-28 Le Holdings (Beijing) Co., Ltd. File signature system and method
CN108809940A (zh) * 2018-05-04 2018-11-13 四川理工学院 电网系统服务器与客户端交互加密方法
CN109462602A (zh) * 2018-12-13 2019-03-12 平安普惠企业管理有限公司 登录信息存储方法、登录验证方法、装置、设备及介质

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110708164B (zh) * 2019-09-25 2022-03-04 青岛海尔科技有限公司 一种物联网设备的控制方法、装置、存储介质及电子装置
CN110708164A (zh) * 2019-09-25 2020-01-17 青岛海尔科技有限公司 一种物联网设备的控制方法、装置、存储介质及电子装置
CN113726830B (zh) * 2020-05-25 2023-09-12 网联清算有限公司 一种报文标识生成方法及装置
CN113726830A (zh) * 2020-05-25 2021-11-30 网联清算有限公司 一种报文标识生成方法及装置
CN111641651A (zh) * 2020-05-29 2020-09-08 南方电网科学研究院有限责任公司 一种基于哈希链的访问验证方法及装置
CN111641651B (zh) * 2020-05-29 2022-08-02 南方电网科学研究院有限责任公司 一种基于哈希链的访问验证方法及装置
CN112367171A (zh) * 2020-10-27 2021-02-12 杭州安恒信息技术股份有限公司 一种基于rsa和MD5的数据传输方法及组件
WO2022126980A1 (zh) * 2020-12-15 2022-06-23 平安科技(深圳)有限公司 一种数据传输方法、装置、终端及存储介质
CN113596054A (zh) * 2021-07-14 2021-11-02 中国电子科技集团公司第二十八研究所 一种信息系统间传输软跳频加密方法
CN113612852A (zh) * 2021-08-11 2021-11-05 山东爱德邦智能科技有限公司 一种基于车载终端的通信方法、装置、设备及存储介质
CN113783887A (zh) * 2021-09-22 2021-12-10 广东九联科技股份有限公司 基于网络通信的远程控制方法、系统及存储介质
CN114095165A (zh) * 2021-11-22 2022-02-25 中国建设银行股份有限公司 密钥更新方法、服务端设备、客户端设备及存储介质
CN114095165B (zh) * 2021-11-22 2024-04-26 中国建设银行股份有限公司 密钥更新方法、服务端设备、客户端设备及存储介质
CN114244788A (zh) * 2022-02-25 2022-03-25 广州锦行网络科技有限公司 数据的响应方法、装置以及系统
CN115086032A (zh) * 2022-06-15 2022-09-20 上海领雾软件科技有限公司 一种传感器数据保护系统及方法
CN115086032B (zh) * 2022-06-15 2024-05-10 上海领雾软件科技有限公司 一种传感器数据保护系统及方法
CN116208420A (zh) * 2023-03-08 2023-06-02 武汉维高凡科技有限公司 一种监测信息安全传输方法、系统、设备及存储介质
CN116208420B (zh) * 2023-03-08 2024-03-12 武汉维高凡科技有限公司 一种监测信息安全传输方法、系统、设备及存储介质
CN116015981A (zh) * 2023-03-21 2023-04-25 深圳市星火数控技术有限公司 一种缝纫数控文件数据加密方法
CN116015981B (zh) * 2023-03-21 2023-06-23 深圳市星火数控技术有限公司 一种缝纫数控文件数据加密方法

Also Published As

Publication number Publication date
CN110166242B (zh) 2022-10-21

Similar Documents

Publication Publication Date Title
CN110166242A (zh) 报文传输方法及装置
US10785019B2 (en) Data transmission method and apparatus
CN107086915B (zh) 一种数据传输方法、数据发送端及数据接收端
CN101051904B (zh) 一种保护网络应用程序使用账号密码进行登录的方法
US6125185A (en) System and method for encryption key generation
WO2018025991A1 (ja) 通信システム、通信用クライアント、通信用サーバ、通信方法、プログラム
KR20180114182A (ko) 비밀 공유를 위한 타원 곡선 암호를 사용하는 개인용 장치 보안
CA2747891C (en) Method for generating an encryption/decryption key
CN108347419A (zh) 数据传输方法和装置
US10050789B2 (en) Kerberos preauthentication with J-PAKE
CN108199847B (zh) 数字安全处理方法、计算机设备及存储介质
CN108449756A (zh) 一种网络密钥更新的系统、方法及装置
WO2018030289A1 (ja) Ssl通信システム、クライアント、サーバ、ssl通信方法、コンピュータプログラム
CN111538983A (zh) 用户密码生成方法、装置、计算机设备及存储介质
CN110999202A (zh) 用于对数据进行高度安全、高速加密和传输的计算机实现的系统和方法
CN107733633A (zh) 一种基于算力的防爬虫方法
CN112713995A (zh) 一种用于物联网终端的动态通信密钥分发方法及装置
US20140237239A1 (en) Techniques for validating cryptographic applications
CN110581829A (zh) 通信方法及装置
JP2009267900A (ja) 鍵生成装置、証明書生成装置、サービス提供システム、鍵生成方法、証明書生成方法、サービス提供方法およびプログラム
Chen et al. An efficient nonce-based authentication scheme with key agreement
CN110493124A (zh) 保护数据安全的加密即时通信系统及通信方法
WO2020042023A1 (zh) 一种即时通信的数据加密方法及装置
CN106713256A (zh) 一种税控专用计算机软硬件绑定的认证方法
CN108650277A (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