H04L29/06 H04L9/08
1.一种报文处理方法,其特征在于,所述方法包括:
向转发设备发送密钥申请报文,所述密钥申请报文是电子设备中的应用模块被第三方应用程序调起时发送,所述应用模块根据预设服务通过软件开发工具包开发得到使所述应用模块能提供所述预设服务;
获得所述转发设备生成的会话标识和所述转发设备生成的随机数,向所述转发设备发送所述电子设备生成的随机数,所述会话标识是所述转发设备成功验签所述密钥申请报文时生成;
根据所述会话标识、所述转发设备生成的随机数和所述电子设备生成的随机数,生成会话密钥;
利用所述会话密钥对所述第三方应用程序发送的业务请求报文进行加密发送,所述会话密钥用于在所述会话标识有效的情况下加密所述业务请求报文。
2.根据权利要求1所述的方法,其特征在于,所述获得所述转发设备生成的会话标识和所述转发设备生成的随机数,向所述转发设备发送所述电子设备生成的随机数包括:
接收所述转发设备发送的携带有所述会话标识的第一响应报文;
如果所述第一响应报文成功验签,从所述第一响应报文中提取所述会话标识,并生成第一随机数;
通过公钥对所述第一随机数进行加密,得到加密随机数;
利用所述会话标识向所述转发设备发送所述加密随机数;
接收所述转发设备发送的携带有第二随机数的第二响应报文,所述第二随机数是所述转发设备利用私钥成功解密所述加密随机数的情况下生成。
3.根据权利要求2所述的方法,其特征在于,所述利用所述会话标识向所述转发设备发送所述加密随机数包括:
将所述加密随机数封装和所述会话标识封装在会话报文中,向所述转发设备发送所述会话报文,所述会话标识用于确定所述会话报文是否有效。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收所述转发设备发送的加密业务响应报文,所述加密业务响应报文是所述转发设备对业务响应报文加密得到,所述业务响应报文与所述业务请求报文对应且由服务器发送;
利用所述会话密钥对所述加密业务响应报文进行解密。
5.一种报文处理方法,其特征在于,所述方法包括:
接收电子设备发送的密钥申请报文,所述密钥申请报文是电子设备中的应用模块被第三方应用程序调起时发送,所述应用模块根据预设服务通过软件开发工具包开发得到使所述应用模块能提供所述预设服务;
向所述电子设备发送转发设备生成的会话标识和所述转发设备生成的随机数,接收所述电子设备发送的所述电子设备生成的随机数,所述会话标识是所述转发设备成功验签所述密钥申请报文时生成;
接收所述电子设备发送的加密业务请求报文;
根据所述会话标识、所述转发设备生成的随机数和所述电子设备生成的随机数,生成会话密钥;
利用所述会话密钥对加密业务请求报文进行解密,所述会话密钥用于在所述会话标识有效的情况下解密所述加密业务请求报文。
6.根据权利要求5所述的方法,其特征在于,所述向所述电子设备发送转发设备生成的会话标识和所述转发设备生成的随机数,接收所述电子设备发送的所述电子设备生成的随机数包括:
向所述电子设备发送携带有所述会话标识的第一响应报文;
接收所述电子设备发送的加密随机数,所述电子设备利用所述会话标识发送所述加密随机数,且所述加密随机数是通过公钥对第一随机数进行加密得到,所述第一随机数在所述电子设备成功验签所述第一响应报文时生成;
向所述电子设备发送携带有第二随机数的第二响应报文,所述第二随机数是所述转发设备利用私钥成功解密所述加密随机数的情况下生成。
7.根据权利要求5所述的方法,其特征在于,在利用所述会话密钥对所述加密业务请求报文进行解密,以得到业务请求报文后,所述方法还包括:
向服务器发送所述业务请求报文;
接收所述服务器发送的与所述业务请求报文对应的业务响应报文;
利用所述会话密钥对所述业务响应报文进行加密发送。
8.一种报文处理装置,其特征在于,所述装置包括:
发送单元,用于向转发设备发送密钥申请报文,所述密钥申请报文是电子设备中的应用模块被第三方应用程序调起时发送,所述应用模块根据预设服务通过软件开发工具包开发得到使所述应用模块能提供所述预设服务;
获得单元,用于获得所述转发设备生成的会话标识和所述转发设备生成的随机数,向所述转发设备发送所述电子设备生成的随机数,所述会话标识是所述转发设备成功验签所述密钥申请报文时生成;
生成单元,用于根据所述会话标识、所述转发设备生成的随机数和所述电子设备生成的随机数,生成会话密钥;
加密单元,用于利用所述会话密钥对所述第三方应用程序发送的业务请求报文进行加密发送,所述会话密钥用于在所述会话标识有效的情况下加密所述业务请求报文。
9.一种报文处理装置,其特征在于,所述装置包括:
接收单元,用于接收电子设备发送的密钥申请报文,所述密钥申请报文是电子设备中的应用模块被第三方应用程序调起时发送,所述应用模块根据预设服务通过软件开发工具包开发得到使所述应用模块能提供所述预设服务;
随机数获得单元,用于向所述电子设备发送转发设备生成的会话标识和所述转发设备生成的随机数,接收所述电子设备发送的所述电子设备生成的随机数,所述会话标识是所述转发设备成功验签所述密钥申请报文时生成;
所述接收单元,还用于接收所述电子设备发送的加密业务请求报文;
密钥生成单元,用于根据所述会话标识、所述转发设备生成的随机数和所述电子设备生成的随机数,生成会话密钥;
解密单元,用于利用所述会话密钥对加密业务请求报文进行解密,所述会话密钥用于在所述会话标识有效的情况下解密所述加密业务请求报文。
10.一种电子设备,其特征在于,所述电子设备包括:
存储器;
处理器,用于运行所述存储器中存储的计算机程序代码,以实现如权利要求1至4中任意一项所述的报文处理方法。
本申请属于通信技术领域,尤其涉及一种报文处理方法及装置。
软件开发工具包(Software Development Kit,SDK)是一些软件工程师为特定软件包、软件框架、硬件平台、操作系统等建立应用程序的开发工具的集合,通过SDK可以将银行服务以应用模块形式封装并安装到电子设备中,使安装这一应用模块的电子设备成为一个流动的“银行网点”。例如通过SDK开发具有银行支付功能的支付模块,将支付模块与第三方应用程序(如购物程序)关联,例如将支付模块与第三方应用程序的支付申请建立联系,当通过第三方应用程序发起诸如在线支付的业务请求报文,第三方应用程序调起支付模块,以使支付模块能够接收到用于进行支付的业务请求报文,通过支付模块向服务器转发用于进行支付的业务请求报文。
因通过SDK封装得到的应用模块的运行环境依赖于电子设备的运行环境,通过SDK封装得到的应用模块与服务器进行通信是SDK运用首要考虑的问题。目前在应用模块和服务器进行业务请求报文交互过程中,可通过预先协商的密钥对业务请求报文进行加密处理,这种利用预先协商的密钥对业务请求报文进行加密处理存在一定安全隐患。
有鉴于此,本申请的目的在于提供一种报文处理方法及装置,用于提高报文安全性。
一方面,本申请提供一种报文处理方法,所述方法包括:
向转发设备发送密钥申请报文,所述密钥申请报文是电子设备中的应用模块被第三方应用程序调起时发送,所述应用模块根据预设服务通过软件开发工具包开发得到使所述应用模块能提供所述预设服务;
获得所述转发设备生成的会话标识和所述转发设备生成的随机数,向所述转发设备发送所述电子设备生成的随机数,所述会话标识是所述转发设备成功验签所述密钥申请报文时生成;
根据所述会话标识、所述转发设备生成的随机数和所述电子设备生成的随机数,生成会话密钥;
利用所述会话密钥对所述第三方应用程序发送的业务请求报文进行加密发送,所述会话密钥用于在所述会话标识有效的情况下加密所述业务请求报文。
可选的,所述获得所述转发设备生成的会话标识和所述转发设备生成的随机数,向所述转发设备发送所述电子设备生成的随机数包括:
接收所述转发设备发送的携带有所述会话标识的第一响应报文;
如果所述第一响应报文成功验签,从所述第一响应报文中提取所述会话标识,并生成第一随机数;
通过公钥对所述第一随机数进行加密,得到加密随机数;
利用所述会话标识向所述转发设备发送所述加密随机数;
接收所述转发设备发送的携带有第二随机数的第二响应报文,所述第二随机数是所述转发设备利用私钥成功解密所述加密随机数的情况下生成。
可选的,所述利用所述会话标识向所述转发设备发送所述加密随机数包括:
将所述加密随机数封装和所述会话标识封装在会话报文中,向所述转发设备发送所述会话报文,所述会话标识用于确定所述会话报文是否有效。
可选的,所述方法还包括:
接收所述转发设备发送的加密业务响应报文,所述加密业务响应报文是所述转发设备对业务响应报文加密得到,所述业务响应报文与所述业务请求报文对应且由服务器发送;
利用所述会话密钥对所述加密业务响应报文进行解密。
另一方面,本申请提供一种报文处理方法,所述方法包括:
接收电子设备发送的密钥申请报文,所述密钥申请报文是电子设备中的应用模块被第三方应用程序调起时发送,所述应用模块根据预设服务通过软件开发工具包开发得到使所述应用模块能提供所述预设服务;
向所述电子设备发送转发设备生成的会话标识和所述转发设备生成的随机数,接收所述电子设备发送的所述电子设备生成的随机数,所述会话标识是所述转发设备成功验签所述密钥申请报文时生成;
接收所述电子设备发送的加密业务请求报文;
根据所述会话标识、所述转发设备生成的随机数和所述电子设备生成的随机数,生成会话密钥;
利用所述会话密钥对加密业务请求报文进行解密,所述会话密钥用于在所述会话标识有效的情况下解密所述加密业务请求报文。
可选的,所述向所述电子设备发送转发设备生成的会话标识和所述转发设备生成的随机数,接收所述电子设备发送的所述电子设备生成的随机数包括:
向所述电子设备发送携带有所述会话标识的第一响应报文;
接收所述电子设备发送的加密随机数,所述电子设备利用所述会话标识发送所述加密随机数,且所述加密随机数是通过公钥对第一随机数进行加密得到,所述第一随机数在所述电子设备成功验签所述第一响应报文时生成;
向所述电子设备发送携带有第二随机数的第二响应报文,所述第二随机数是所述转发设备利用私钥成功解密所述加密随机数的情况下生成。
可选的,在利用所述会话密钥对所述加密业务请求报文进行解密,以得到业务请求报文后,所述方法还包括:
向服务器发送所述业务请求报文;
接收所述服务器发送的与所述业务请求报文对应的业务响应报文;
利用所述会话密钥对所述业务响应报文进行加密发送。
再一方面,本申请提供一种报文处理装置,所述装置包括:
发送单元,用于向转发设备发送密钥申请报文,所述密钥申请报文是电子设备中的应用模块被第三方应用程序调起时发送,所述应用模块根据预设服务通过软件开发工具包开发得到使所述应用模块能提供所述预设服务;
获得单元,用于获得所述转发设备生成的会话标识和所述转发设备生成的随机数,向所述转发设备发送所述电子设备生成的随机数,所述会话标识是所述转发设备成功验签所述密钥申请报文时生成;
生成单元,用于根据所述会话标识、所述转发设备生成的随机数和所述电子设备生成的随机数,生成会话密钥;
加密单元,用于利用所述会话密钥对所述第三方应用程序发送的业务请求报文进行加密发送,所述会话密钥用于在所述会话标识有效的情况下加密所述业务请求报文。
再一方面,本申请提供一种报文处理装置,所述装置包括:
接收单元,用于接收电子设备发送的密钥申请报文,所述密钥申请报文是电子设备中的应用模块被第三方应用程序调起时发送,所述应用模块根据预设服务通过软件开发工具包开发得到使所述应用模块能提供所述预设服务;
随机数获得单元,用于向所述电子设备发送转发设备生成的会话标识和所述转发设备生成的随机数,接收所述电子设备发送的所述电子设备生成的随机数,所述会话标识是所述转发设备成功验签所述密钥申请报文时生成;
所述接收单元,还用于接收所述电子设备发送的加密业务请求报文;
密钥生成单元,用于根据所述会话标识、所述转发设备生成的随机数和所述电子设备生成的随机数,生成会话密钥;
解密单元,用于利用所述会话密钥对加密业务请求报文进行解密,所述会话密钥用于在所述会话标识有效的情况下解密所述加密业务请求报文。
再一方面,本申请提供一种电子设备,所述电子设备包括:
存储器;
处理器,用于运行所述存储器中存储的计算机程序代码,以实现上述报文处理方法。
再一方面,本申请提供一种转发设备,所述转发设备包括:
存储器;
处理器,用于运行所述存储器中存储的计算机程序代码,以实现上述报文处理方法。
再一方面,本申请提供一种存储介质,所述存储介质中存储有计算机程序代码,所述计算机程序代码被运行时实现上述报文处理方法。
上述报文处理方法及装置,向转发设备发送密钥申请报文,密钥申请报文是电子设备中的应用模块被第三方应用程序调起时发送,应用模块根据预设服务通过软件开发工具包开发得到使应用模块能提供预设服务,获得转发设备生成的会话标识和转发设备生成的随机数,向转发设备发送电子设备生成的随机数,会话标识是转发设备成功验签密钥申请报文时生成。根据会话标识、转发设备生成的随机数和电子设备生成的随机数,生成会话密钥,利用会话密钥对第三方应用程序发送的业务请求报文进行加密发送,会话密钥用于在会话标识有效的情况下加密业务请求报文。因会话密钥至少根据转发设备生成的随机数和电子设备生成的随机数生成,使得不同随机数生成的会话密钥不同,若破解得到会话密钥需要对不同随机数进行尝试,从而提高报文安全性。
并且会话密钥在会话标识有效的情况下加密业务请求报文,如果会话标识失效则会重新生成会话标识,进而重新生成会话密钥,使得会话密钥不固定,防止因长期使用一个会话密钥提高会话密钥被破解的可能性,提高报文安全性,且在会话标识有效期间内可以复用会话密钥,避免每次交互报文都协商会话密钥,从而在提高报文安全性的前提下提高效率。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种报文处理方法的系统架构图;
图2是本申请实施例提供的一种报文处理方法的信令图;
图3是本申请实施例提供的一种报文处理方法中得到会话密钥的信令图;
图4是本申请实施例提供的另一种报文处理方法的信令图;
图5是本申请实施例提供的一种报文处理装置的结构示意图;
图6是本申请实施例提供的另一种报文处理装置的结构示意图。
请参见图1,其示出了本申请实施例提供的报文处理方法对应的系统架构图,可以包括:电子设备10、转发设备20和服务器30,其中电子设备10中安装有第三方应用程序和应用模块,应用模块根据预设服务通过SDK开发得到使所述应用模块能提供所述预设服务,如预设服务是银行服务,通过SDK开发使得应用模块能够提供银行服务,使电子设备成为一个流动的“银行网点”,例如预设服务可以是但不限于是在线支付服务,通过应用模块提供在线支付服务,由此能够借助电子设备进行在线支付。第三方应用程序与应用模块相关联,以通过第三方应用程序调起应用模块,如第三方应用程序启用或监测到第三方应用程序存在使用预设服务的可能性,调起应用模块。
转发设备20作为连接在电子设备10和服务器30之间的设备,其中转发设备20的一种表现形式为网关,通过网关协助电子设备10和服务器30处理报文,如可通过转发设备20向服务器30发送业务请求报文,通过转发设备20向电子设备10发送业务响应报文,在通过转发设备20协助电子设备10和服务器30处理报文之前,电子设备10和转发设备20之间协商一个会话密钥,以通过会话密钥对报文进行处理,提高报文安全性。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参见图2,其示出了本申请实施例提供的一种报文处理方法的信令图,可以包括以下步骤:
101:电子设备向转发设备发送密钥申请报文,密钥申请报文是电子设备中的应用模块被第三方应用程序调起时发送,应用模块根据预设服务通过SDK开发得到使应用模块能提供预设服务。
在本实施例中,如果第三方应用程序启用或监测到第三方应用程序存在使用预设服务的可能性,调起应用模块,其中调起应用模块表示启动应用模块,使得第三方应用程序能够使用应用模块提供的预设服务器,例如第三方应用程序为购物应用程序,通过购物应用程序可能会发起在线支付请求,则提供在线支付服务(预设服务的一种表现形式)的应用模块被调起。
密钥申请报文用于指示转发设备与电子设备协商会话密钥,会话密钥用于在电子设备和转发设备交互业务请求报文过程中,对业务请求报文进行处理。其中密钥申请报文通过编码、按照预设协议拼接封装得到,预设协议是电子设备和转发设备进行交互时遵循的网络协议,预设协议用于规定电子设备和转发设备在进行交互时双方传输的数据格式,因此无论是电子设备还是转发设备,在交互数据过程中需要遵循预设协议规定的数据格式,对于预设协议的具体形式本实施例不进行限定。
102:电子设备获得转发设备生成的会话标识和转发设备生成的随机数,向转发设备发送电子设备生成的随机数,其中会话标识是转发设备成功验签密钥申请报文时生成。在本实施例中,转发设备对密钥申请报文进行验签和鉴权处理,如果成功通过,生成会话标识和随机数,其中会话标识用于作为转发设备和电子设备之间进行会话协商的标识,以通过会话标识可确定转发设备和电子设备之间的会话状态。
转发设备生成的会话标识的一种表现形式是转发设备生成的随机数,也就是说转发设备能够生成两个随机数,一个随机数作为会话标识,会话标识具有一定时间期限,以通过时间期限指示会话标识的有效时长,在会话标识的有效时长内视为转发设备和电子设备进行一次会话协商。并且以随机数作为会话标识能够提高会话标识的安全性,且赋予会话标识一定的有效时长,使得电子设备和转发设备能够在有效时长内持续使用该会话标识,避免每次会话都协商一个会话标识,提高效率。
在本实施例中,转发设备生成的会话标识和随机数可以分次生成,如转发设备生成的会话标识在成功验签密钥申请报文的情况下生成,随机数在其他时机下生成,如在电子设备生成随机数之后生成,后续结合附图对分次生成会话标识和随机数的过程进行说明。
103:电子设备根据会话标识、转发设备生成的随机数和电子设备生成的随机数,生成会话密钥。如电子设备通过密钥生成算法,结合会话标识、转发设备生成的随机数和电子设备生成的随机数,生成会话密钥,如电子设备利用散列算法结合会话标识、转发设备生成的随机数和电子设备生成的随机数,生成会话密钥,具体过程本实施例不再阐述。
其中散列算法需要满足:一是低碰撞率,即不同的三个随机数生成的散列值一定不同,或者在很大范围内不会出现重复;二是一致相关性,即改变三个随机数的其中一个都会导致散列值发生较大的变化,由此通过散列算法得到的会话密钥会存在很大区别,防止会话密钥被破解的可能性。
104:电子设备利用会话密钥对第三方应用程序发送的业务请求报文进行加密,得到加密业务请求报文,会话密钥用于在会话标识有效的情况下加密业务请求报文。
会话标识具有有效时长,在有效时长内会话标识有效,相对于的根据会话标识和其他随机数生成的会话密钥也在会话标识的有效时长内有效,如果会话标识的存在时长超过有效时长,会话标识和会话密钥失效,在这种情况下,电子设备需要重新生成一个会话标识和会话密钥,实现一次一密(一个会话标识对应一个会话密钥),使得电子设备使用一个可变的会话密钥进行加密,即便某个有效时长内的会话密钥被破解,在其失效后非法人员利用失效的会话密钥不能对报文进行破解,提高报文安全性。
在本实施例中,电子设备利用会话密钥对业务请求报文进行加密的方式不进行限定。
105:电子设备向转发设备发送加密业务请求报文。
106:转发设备根据会话标识、转发设备生成的随机数和电子设备生成的随机数,生成会话密钥。转发设备生成会话密钥的过程请参见上述电子设备生成会话密钥的过程,本实施例不进行限定。
107:转发设备利用会话密钥对加密业务请求报文进行解密,会话密钥用于在会话标识有效的情况下解密加密业务请求报文。
上述报文处理方法,向转发设备发送密钥申请报文,密钥申请报文是电子设备中的应用模块被第三方应用程序调起时发送,应用模块根据预设服务通过软件开发工具包开发得到使应用模块能提供预设服务,获得转发设备生成的会话标识和转发设备生成的随机数,向转发设备发送电子设备生成的随机数,会话标识是转发设备成功验签密钥申请报文时生成。根据会话标识、转发设备生成的随机数和电子设备生成的随机数,生成会话密钥,利用会话密钥对第三方应用程序发送的业务请求报文进行加密发送,会话密钥用于在会话标识有效的情况下加密业务请求报文。因会话密钥至少根据转发设备生成的随机数和电子设备生成的随机数生成,使得不同随机数生成的会话密钥不同,若破解得到会话密钥需要对不同随机数进行尝试,从而提高报文安全性。
并且会话密钥在会话标识有效的情况下加密业务请求报文,如果会话标识失效则会重新生成会话标识,进而重新生成会话密钥,使得会话密钥不固定,防止因长期使用一个会话密钥提高会话密钥被破解的可能性,提高报文安全性,且在会话标识有效期间内可以复用会话密钥,避免每次交互报文都协商会话密钥,从而在提高报文安全性的前提下提高效率。
在本实施例中,获得转发设备生成的会话标识和随机数,以及电子设备生成的随机数的一种可行方式如图3所示,可以包括以下步骤:
201:转发设备如果成功验签密钥申请报文,生成会话标识。
202:转发设备向电子设备发送携带有会话标识的第一响应报文。
203:电子设备如果第一响应报文成功验签,从第一响应报文中提取会话标识,并生成第一随机数。
电子设备利用本地存储的公钥对第一响应报文进行验签,公钥是转发设备生成的公私钥对中的公钥,并将公钥发送至电子设备,由电子设备将公钥存储在本地。其中电子设备将转发设备生成的公钥存储在本地的目的是:一是利用公钥对从转发设备侧接收到的报文进行验签从而达到对转发设备的身份进行验证的目的,防止中间人攻击和钓鱼;二是利用转发设备生成的公钥进行非对称加密,保证信息只能被持有私钥的转发设备才能解密。
如果电子设备利用公钥对第一响应报文成功验签,从第一响应报文中提取会话标识,其中会话标识用于作为转发设备和电子设备之间进行会话协商的标识,以通过会话标识可确定转发设备和电子设备之间的会话状态。
204:电子设备通过公钥对第一随机数进行加密,得到加密随机数。如通过公钥和RSA算法对第一随机数进行非对称加密。
205:电子设备利用会话标识向转发设备发送加密随机数。一种发送加密随机数的可行方式是,将加密随机数封装和会话标识封装在会话报文中,向转发设备发送会话报文,会话标识用于确定会话报文是否有效。
例如会话报文的一种形式是:HTTP(HyperText Transfer Protocol,超文本传输协议)报文,报文头中携带有会话标识和电子设备的身份标识,报文体中携带有加密随机数,其中会话标识和电子设备的身份标识在报文头中的形式为,Cookies:RS1,Cookies为电子设备的身份标识,RS1为会话标识,以通过Cookies和RS1标识会话报文,并能够使得转发设备通过Cookies和RS1验证会话报文是否有效,如在Cookies和RS1都有效的情况下确定会话报文有效。
206:转发设备利用私钥成功解密加密随机数的情况下,生成第二随机数。
如果加密随机数以会话报文形式发送,则转发设备在验证会话报文有效的情况下,从会话报文中提取加密随机数,然后利用私钥对加密随机数进行解码,如果解码成功,生成第二随机数。转发设备如通过私钥和RSA算法对第一随机数进行非对称解密,对加密随机数的解密过程,本实施例不在阐述。
207:转发设备向电子设备发送携带有第二随机数的第二响应报文。
上述电子设备和转发设备在交互随机数和会话标识过程中,能够结合转发设备生成的公私钥对进行处理,以提高安全性,并且转发设备在生成随机数过程中,需要对会话报文进行验签,如果成功才生成第二随机数,提高交互安全性。
请参见图4,其示出了本申请实施例提供的另一种报文处理方法的信令图,可以包括以下步骤:
301:电子设备向转发设备发送密钥申请报文,密钥申请报文是电子设备中的应用模块被第三方应用程序调起时发送,应用模块根据预设服务通过SDK开发得到使应用模块能提供预设服务。
302:电子设备获得转发设备生成的会话标识和转发设备生成的随机数,向转发设备发送电子设备生成的随机数,其中会话标识是转发设备成功验签密钥申请报文时生成
303:电子设备根据会话标识、转发设备生成的随机数和电子设备生成的随机数,生成会话密钥。
304:电子设备利用会话密钥对第三方应用程序发送的业务请求报文进行加密,得到加密业务请求报文,会话密钥用于在会话标识有效的情况下加密业务请求报文。
305:电子设备向转发设备发送加密业务请求报文。
306:转发设备根据会话标识、转发设备生成的随机数和电子设备生成的随机数,生成会话密钥。
307:转发设备利用会话密钥对加密业务请求报文进行解密,会话密钥用于在会话标识有效的情况下解密加密业务请求报文。
308:转发设备向服务器发送业务请求报文。业务请求报文是转发设备利用会话密钥对加密业务请求报文进行解密得到。
在本实施例中,转发设备和服务器位于内网中,因此转发设备和服务器之间可通过明文形式发送,在转发设备和服务器交互报文过程中不需要对报文进行加密。如果转发设备和服务器没有处于同一个内网中,例如转发设备位于服务器的外网中,则转发设备和服务器之间也通过上述会话密钥方式处理报文,其得到会话密钥的过程可参见上述说明,此处不再赘述。
309:服务器向转发设备发送与业务请求报文对应的业务响应报文。
310:转发设备利用会话密钥对业务响应报文进行加密,得到加密业务响应报文。转发设备在加密业务响应报文后,按照预设协议再次进行封装得到加密业务响应报文,预设协议是电子设备和转发设备进行交互时遵循的网络协议,预设协议用于规定电子设备和转发设备在进行交互时双方传输的数据格式,因此无论是电子设备还是转发设备,在交互数据过程中需要遵循预设协议规定的数据格式,对于预设协议的具体形式本实施例不进行限定。
311:转发设备向电子设备发送加密业务响应报文。
312:电子设备利用会话密钥对加密业务响应报文进行解密。
上述报文处理方法,转发设备接收到业务响应报文后,利用会话密钥对业务响应报文进行加密发送,使得电子设备和转发设备在交互业务响应报文过程中也能够进行加密,提高报文安全性。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
请参见图5,其示出了本申请实施例提供一种报文处理装置的可选结构,可以包括:发送单元100、获得单元200、生成单元300和加密单元400。
发送单元100,用于向转发设备发送密钥申请报文,密钥申请报文是电子设备中的应用模块被第三方应用程序调起时发送,应用模块根据预设服务通过软件开发工具包开发得到使应用模块能提供预设服务;密钥申请报文用于指示转发设备与电子设备协商会话密钥,会话密钥用于在电子设备和转发设备交互业务请求报文过程中,对业务请求报文进行处理,对于密钥申请报文的生成方式本实施例不再说明。
获得单元200,用于获得转发设备生成的会话标识和转发设备生成的随机数,向转发设备发送电子设备生成的随机数,会话标识是转发设备成功验签密钥申请报文时生成。
转发设备生成的会话标识的一种表现形式是转发设备生成的随机数,也就是说转发设备能够生成两个随机数,一个随机数作为会话标识,会话标识具有一定时间期限,以通过时间期限指示会话标识的有效时长,在会话标识的有效时长内视为转发设备和电子设备进行一次会话协商。并且以随机数作为会话标识能够提高会话标识的安全性,且赋予会话标识一定的有效时长,使得电子设备和转发设备能够在有效时长内持续使用该会话标识,避免每次会话都协商一个会话标识,提高效率。
生成单元300,用于根据会话标识、转发设备生成的随机数和电子设备生成的随机数,生成会话密钥。如电子设备通过密钥生成算法,结合会话标识、转发设备生成的随机数和电子设备生成的随机数,生成会话密钥,如电子设备利用散列算法结合会话标识、转发设备生成的随机数和电子设备生成的随机数,生成会话密钥,具体过程本实施例不再阐述。
加密单元400,用于利用会话密钥对第三方应用程序发送的业务请求报文进行加密发送,会话密钥用于在会话标识有效的情况下加密业务请求报文。
会话标识具有有效时长,在有效时长内会话标识有效,相对于的根据会话标识和其他随机数生成的会话密钥也在会话标识的有效时长内有效,如果会话标识的存在时长超过有效时长,会话标识和会话密钥失效,在这种情况下,电子设备需要重新生成一个会话标识和会话密钥,实现一次一密(一个会话标识对应一个会话密钥),使得电子设备使用一个可变的会话密钥进行加密,即便某个有效时长内的会话密钥被破解,在其失效后非法人员利用失效的会话密钥不能对报文进行破解,提高报文安全性。
请参见图6,其示出了本申请实施例提供的另一种报文处理装置的可选结构,可以包括:接收单元1000、随机数获得单元2000、密钥生成单元3000和解密单元4000。
接收单元1000,用于接收电子设备发送的密钥申请报文,密钥申请报文是电子设备中的应用模块被第三方应用程序调起时发送,应用模块根据预设服务通过软件开发工具包开发得到使应用模块能提供预设服务。
随机数获得单元2000,用于向电子设备发送转发设备生成的会话标识和转发设备生成的随机数,接收电子设备发送的电子设备生成的随机数,会话标识是转发设备成功验签密钥申请报文时生成。
接收单元1000,还用于接收电子设备发送的加密业务请求报文。
密钥生成单元3000,用于根据会话标识、转发设备生成的随机数和电子设备生成的随机数,生成会话密钥;会话密钥生成过程请参见上述说明。
解密单元4000,用于利用会话密钥对加密业务请求报文进行解密,会话密钥用于在会话标识有效的情况下解密加密业务请求报文。
因会话密钥至少根据转发设备生成的随机数和电子设备生成的随机数生成,使得不同随机数生成的会话密钥不同,若破解得到会话密钥需要对不同随机数进行尝试,从而提高报文安全性。并且会话密钥在会话标识有效的情况下加密业务请求报文,如果会话标识失效则会重新生成会话标识,进而重新生成会话密钥,使得会话密钥不固定,防止因长期使用一个会话密钥提高会话密钥被破解的可能性,提高报文安全性,且在会话标识有效期间内可以复用会话密钥,避免每次交互报文都协商会话密钥,从而在提高报文安全性的前提下提高效率。
在本实施例中,上述获得单元和随机数获得单元得到会话标识和随机数的过程是:
随机数获得单元中的生成子单元,用于如果成功验签密钥申请报文,生成会话标识;通过应用于转发设备中的报文处理装置的发送单元向电子设备发送携带有会话标识的第一响应报文。
获得单元中的生成子单元,用于如果第一响应报文成功验签,从第一响应报文中提取会话标识,并生成第一随机数。加密单元,还用于通过公钥对第一随机数进行加密,得到加密随机数。发送单元,还用于利用会话标识向转发设备发送加密随机数。一种发送加密随机数的可行方式是,将加密随机数封装和会话标识封装在会话报文中,向转发设备发送会话报文,会话标识用于确定会话报文是否有效。
随机数获得单元中的生成子单元,用于利用私钥成功解密加密随机数的情况下,生成第二随机数,通过应用于转发设备中的报文处理装置的发送单元向电子设备发送携带有第二随机数的第二响应报文。
此外,上述两个报文处理装置还能够交互业务响应报文,如接收单元接收服务器发送的与业务请求报文对应的业务响应报文。应用于转发设备中的报文处理装置的加密单元,用于利用会话密钥对业务响应报文进行加密,得到加密业务响应报文;应用于转发设备中的报文处理装置的发送单元,用于向电子设备发送加密业务响应报文;应用于电子设备中的报文处理装置的解密单元,用于利用会话密钥对加密业务响应报文进行解密。
本申请实施例还提供一种电子设备,电子设备包括:存储器和处理器,处理器,用于运行存储器中存储的计算机程序代码,以实现上述报文处理方法。
本申请实施例还提供一种转发设备,转发设备包括:存储器和处理器,处理器,用于运行存储器中存储的计算机程序代码,以实现上述报文处理方法。
本申请实施例还提供一种存储介质,存储介质中存储有计算机程序代码,计算机程序代码被运行时实现上述报文处理方法。
需要说明的是,本说明书中的各个实施例可以采用递进的方式描述、本说明书中各实施例中记载的特征可以相互替换或者组合,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
本文发布于:2023-04-14 05:24:01,感谢您对本站的认可!
本文链接:https://patent.en369.cn/patent/2/86021.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |