业务处理方法及装置
技术领域
本发明涉及通信领域,特别涉及一种业务处理方法及装置。
背景技术
安全套接层(英文:security socket layer;简称:SSL)协议及其继任者传输层安全(英文:transport layer security;简称,TLS)协议用于为网络通信提供加密、身份认证及数据完整性等服务,已被广泛地应用于浏览器与网络服务器之间的安全通信。其中,SSL/TLS协议位于传输层的传输控制协议(英文:transmission control protocol;简称:TCP)协议和应用层的超文本传送协议(英文:hypertext transfer protocol;简称:HTTP)之间。
相关技术提供的一种业务处理方法包括:用户代理(英文:user agent;简称:UA)基于下层使用了SSL/TLS协议的超文本传输安全协议(英文:hyper text transferprotocol over secure socket layer;简称:HTTPS)与网络服务器建立加密连接,并约定第一密钥和第二密钥,用户代理使用第一密钥加密业务信息后发送给网络服务器,网络服务器使用第二密钥解密得到业务信息,根据该业务信息生成业务数据,加密业务数据后发送给用户代理,用户代理使用第一密钥解密得到业务数据。其中,业务信息可以用于请求网络服务器的网页,也可以用于请求网络服务器中的对象。
通常,还可以在用户代理和网络服务器之间设置中间代理节点,中间代理节点是一种门户网站站点,相当于因特网入网的网关。门户网站一般都有搜索引擎,供用户查找自己所要访问的其它网站。具体地,中间代理节点提供一个包含输入框的网页,用户在输入框中输入所要访问的网站的网址,由中间代理节点转发用户触发的业务信息,并将网站返回的业务数据转发给用户。其中,中间代理节点可以是Portal。
在中间代理节点存在的场景下,当在用户代理和网络服务器之间建立加密连接时,用户代理和网络服务器之间传输的加密后得到的密文,由于中间代理节点不能获取到第一密钥和第二密钥,因此,中间代理节点无法解密密文,导致中间代理节点无法为用户代理提供业务优化。
发明内容
为了解决中间代理节点无法解密密文,导致中间代理节点无法为用户代理提供业务优化的问题,本发明实施例提供了一种业务处理方法及装置。所述技术方案如下:
第一方面,提供了一种业务处理方法,所述方法包括:
中间代理节点与用户代理建立第一连接,所述第一连接是所述中间代理节点顶替网络服务器,与所述用户代理建立的加密连接;
所述中间代理节点根据在所述第一连接上传输的第一指示信息触发与所述用户代理建立第二连接;
所述中间代理节点通过所述第二连接接收所述用户代理发送的业务信息;
所述中间代理节点对所述业务信息进行处理。
在第一方面的第一种可能的实现方式中,所述中间代理节点与用户代理建立第一连接,包括:
所述中间代理节点截获所述用户代理向所述网络服务器发送的传输控制协议TCP连接请求;
所述中间代理节点读取所述TCP连接请求中的信息,根据所述信息顶替所述网络服务器与所述用户代理建立TCP连接;
在所述TCP连接建立完成后,所述中间代理节点利用预存的与所述网络服务器对应的数字证书与所述用户代理建立所述第一连接。
根据第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述中间代理节点利用预存的与所述网络服务器对应的数字证书与所述用户代理建立所述第一连接,包括:
所述中间代理节点向所述用户代理发送第一数字证书,所述第一数字证书是证书颁发机构颁发的且与所述网络服务器对应的数字证书,所述证书颁发机构的第二数字证书预先配置在所述用户代理中或安装有所述用户代理的终端的操作系统中,以使所述用户代理根据所述第二数字证书验证所述第一数字证书,在验证通过后,与所述中间代理节点建立所述第一连接;或,
所述中间代理节点向所述用户代理发送第三数字证书和第四数字证书,所述第三数字证书是非授权证书颁发机构颁发的且与所述网络服务器对应的数字证书,所述第四数字证书是所述非授权证书颁发机构的数字证书,以使所述用户代理根据所述第四数字证书验证所述第三数字证书,在验证通过后,与所述中间代理节点建立所述第一连接。
根据第一方面的第一种可能的实现方式或第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述中间代理节点根据在所述第一连接上传输的第一指示信息触发与所述用户代理建立第二连接,包括:
所述中间代理节点通过所述第一连接截获所述用户代理向所述网络服务器发送的第一访问请求,所述第一访问请求用于请求访问所述网络服务器;
在所述中间代理节点截获到所述第一访问请求后,所述中间代理节点在所述第一连接上向所述用户代理发送所述第一指示信息,所述第一指示信息用于指示所述用户代理向所述中间代理节点发送连接建立请求;
所述中间代理节点根据所述连接建立请求与所述用户代理建立所述第二连接。
根据第一方面或第一方面的第一种可能的实现方式或第一方面的第二种可能的实现方式或第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述第一指示信息包括重定向响应消息。
根据第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,所述重定向响应消息包括所述中间代理节点的网址,或,所述重定向响应消息包括代理网址,所述代理网址由所述中间代理节点对所述网络服务器的第二指示信息添加代理指示得到,所述第二指示信息包括网页指示信息、网页中对象的对象指示信息、对所述网页指示信息或所述对象指示信息进行转换后得到的信息中的一种。
根据第一方面的第五种可能的实现方式,在第一方面的第六种可能的实现方式中,所述中间代理节点根据所述连接建立请求与所述用户代理建立所述第二连接,包括:
所述中间代理节点根据所述连接建立请求与所述用户代理建立TCP连接;
在所述TCP连接建立完成后,所述中间代理节点利用所述中间代理节点的数字证书与所述用户代理建立所述第二连接。
根据第一方面的第六种可能的实现方式,在第一方面的第七种可能的实现方式中,所述中间代理节点通过所述第二连接接收所述用户代理发送的业务信息,包括:
所述中间代理节点接收所述用户代理通过所述第二连接发送的第一密文,所述第一密文由所述用户代理使用第一密钥对所述业务信息进行加密得到;
所述中间代理节点根据第二密钥解密所述第一密文,得到所述业务信息;
其中,所述第一密钥和所述第二密钥是所述中间代理节点和所述用户代理在建立所述第二连接时约定的密钥。
根据第一方面的第七种可能的实现方式,在第一方面的第八种可能的实现方式中,当所述重定向响应消息包括所述中间代理节点的网址时,所述中间代理节点接收所述用户代理通过所述第二连接发送的第一密文之前,还包括:
所述中间代理节点接收所述用户代理发送的第二密文,所述第二密文由所述用户代理使用所述第一密钥对第二访问请求进行加密得到,所述第二访问请求用于请求访问所述中间代理节点;
所述中间代理节点使用所述第二密钥解密所述第二密文,得到所述第二访问请求;
所述中间代理节点获取所述中间代理节点的网页;
所述中间代理节点使用所述第二密钥加密所述网页,得到第三密文;
所述中间代理节点将所述第三密文发送给所述用户代理,以使所述用户代理使用所述第一密钥解密所述第三密文,得到所述网页,所述网页用于触发所述用户代理发送所述第一密文。
根据第一方面的第五种可能的实现方式,在第一方面的第九种可能的实现方式中,当所述重定向响应消息包括所述中间代理节点的网址时,所述中间代理节点根据在所述第一连接上传输的第一指示信息触发与所述用户代理建立第二连接之后,还包括:
所述中间代理节点接收所述用户代理发送的第二访问请求,所述第二访问请求用于请求访问所述中间代理节点;
所述中间代理节点获取所述中间代理节点的网页;
所述中间代理节点将所述网页发送给所述用户代理,所述网页用于触发所述用户代理发送所述业务信息。
根据第一方面或第一方面的第一种可能的实现方式或第一方面的第二种可能的实现方式或第一方面的第三种可能的实现方式或第一方面的第四种可能的实现方式或第一方面的第五种可能的实现方式或第一方面的第六种可能的实现方式或第一方面的第七种可能的实现方式或第一方面的第八种可能的实现方式或第一方面的第九种可能的实现方式,在第一方面的第十种可能的实现方式中,所述中间代理节点对所述业务信息进行处理,包括:
所述中间代理节点与所述网络服务器建立第三连接,并约定第三密钥和第四密钥;
所述中间代理节点使用所述第三密钥加密所述业务信息,得到第四密文;
所述中间代理节点将所述第四密文发送给所述网络服务器,以使所述网络服务器使用所述第四密钥解密所述第四密文,得到所述业务信息。
根据第一方面的第十种可能的实现方式,在第一方面的第十一种可能的实现方式中,所述中间代理节点将所述第四密文发送给所述网络服务器之后,还包括:
所述中间代理节点接收所述网络服务器发送的第五密文,所述第五密文由所述网络服务器使用所述第四密钥对业务数据进行加密得到;
所述中间代理节点使用所述第三密钥解密所述第五密文,得到所述业务数据;
所述中间代理节点使用所述第二密钥加密所述业务数据,得到第六密文;
所述中间代理节点将所述第六密文发送给所述用户代理,以使所述用户代理使用所述第一密钥解密所述第六密文,得到所述业务数据。
第二方面,提供了一种业务处理装置,用于中间代理节点中,所述装置包括:
第一建立模块,用于与用户代理建立第一连接,所述第一连接是所述中间代理节点顶替网络服务器,与所述用户代理建立的加密连接;
第二建立模块,用于根据在所述第一建立模块建立的所述第一连接上传输的第一指示信息触发与所述用户代理建立第二连接;
第一接收模块,用于通过所述第二建立模块建立的所述第二连接接收所述用户代理发送的业务信息;
信息处理模块,用于对所述第一接收模块接收到的所述业务信息进行处理。
在第二方面的第一种可能的实现方式中,所述第一建立模块,具体用于:
截获所述用户代理向所述网络服务器发送的传输控制协议TCP连接请求;
读取所述TCP连接请求中的信息,根据所述信息顶替所述网络服务器与所述用户代理建立TCP连接;
在所述TCP连接建立完成后,利用预存的与所述网络服务器对应的数字证书与所述用户代理建立所述第一连接。
根据第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述第一建立模块,具体用于:
向所述用户代理发送第一数字证书,所述第一数字证书是证书颁发机构颁发的且与所述网络服务器对应的数字证书,所述证书颁发机构的第二数字证书预先配置在所述用户代理中或安装有所述用户代理的终端的操作系统中,以使所述用户代理根据所述第二数字证书验证所述第一数字证书,在验证通过后,与所述中间代理节点建立所述第一连接;或,
向所述用户代理发送第三数字证书和第四数字证书,所述第三数字证书是非授权证书颁发机构颁发的且与所述网络服务器对应的数字证书,所述第四数字证书是所述非授权证书颁发机构的数字证书,以使所述用户代理根据所述第四数字证书验证所述第三数字证书,在验证通过后,与所述中间代理节点建立所述第一连接。
根据第二方面的第一种可能的实现方式或第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述第二建立模块,具体用于:
通过所述第一连接截获所述用户代理向所述网络服务器发送的第一访问请求,所述第一访问请求用于请求访问所述网络服务器;
在截获到所述第一访问请求后,在所述第一连接上向所述用户代理发送所述第一指示信息,所述第一指示信息用于指示所述用户代理向所述中间代理节点发送连接建立请求;
根据所述连接建立请求与所述用户代理建立所述第二连接。
根据第二方面或第二方面的第一种可能的实现方式或第二方面的第二种可能的实现方式或第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述第一指示信息包括重定向响应消息。
根据第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,所述重定向响应消息包括所述中间代理节点的网址,或,所述重定向响应消息包括代理网址,所述代理网址由所述中间代理节点对所述网络服务器的第二指示信息添加代理指示得到,所述第二指示信息包括网页指示信息、网页中对象的对象指示信息、对所述网页指示信息或所述对象指示信息进行转换后得到的信息中的一种。
根据第二方面的第五种可能的实现方式,在第二方面的第六种可能的实现方式中,所述第二建立模块,还用于:
根据所述连接建立请求与所述用户代理建立TCP连接;
在所述TCP连接建立完成后,利用所述中间代理节点的数字证书与所述用户代理建立所述第二连接。
根据第二方面的第六种可能的实现方式,在第二方面的第七种可能的实现方式中,第一接收模块,具体用于:
接收所述用户代理通过所述第二连接发送的第一密文,所述第一密文由所述用户代理使用第一密钥对所述业务信息进行加密得到;
根据第二密钥解密所述第一密文,得到所述业务信息;
其中,所述第一密钥和所述第二密钥是所述中间代理节点和所述用户代理在建立所述第二连接时约定的密钥。
根据第二方面的第七种可能的实现方式,在第二方面的第八种可能的实现方式中,当所述重定向响应消息包括所述中间代理节点的网址时,所述装置,还包括:
第二接收模块,用于所述第一接收模块接收所述用户代理通过所述第二连接发送的第一密文之前,接收所述用户代理发送的第二密文,所述第二密文由所述用户代理使用所述第一密钥对第二访问请求进行加密得到,所述第二访问请求用于请求访问所述中间代理节点;
第一解密模块,用于使用所述第二密钥解密所述第二接收模块接收到的所述第二密文,得到所述第二访问请求;
第三获取模块,用于获取所述中间代理节点的网页;
第一加密模块,用于使用所述第二密钥加密所述第三获取模块获取到的所述网页,得到第三密文;
第一发送模块,用于将所述第一加密模块加密得到的所述第三密文发送给所述用户代理,以使所述用户代理使用所述第一密钥解密所述第三密文,得到所述网页,所述网页用于触发所述用户代理发送所述第一密文。
根据第二方面的第五种可能的实现方式,在第二方面的第九种可能的实现方式中,当所述重定向响应消息包括所述中间代理节点的网址时,所述装置,还包括:
第三接收模块,用于所述第二建立模块根据在所述第一连接上传输的第一指示信息触发与所述用户代理建立第二连接之后,接收所述用户代理发送的第二访问请求,所述第二访问请求用于请求访问所述中间代理节点;
第四获取模块,用于获取所述中间代理节点的网页;
第二发送模块,用于将所述第四获取模块获取到的所述网页发送给所述用户代理,所述网页用于触发所述用户代理发送所述业务信息。
根据第二方面或第二方面的第一种可能的实现方式或第二方面的第二种可能的实现方式或第二方面的第三种可能的实现方式或第二方面的第四种可能的实现方式或第二方面的第五种可能的实现方式或第二方面的第六种可能的实现方式或第二方面的第七种可能的实现方式或第二方面的第八种可能的实现方式或第二方面的第九种可能的实现方式,在第二方面的第十种可能的实现方式中,所述信息处理模块,具体用于:
与所述网络服务器建立第三连接,并约定第三密钥和第四密钥;
使用所述第三密钥加密所述业务信息,得到第四密文;
将所述第四密文发送给所述网络服务器,以使所述网络服务器使用所述第四密钥解密所述第四密文,得到所述业务信息。
根据第二方面的第十种可能的实现方式,在第二方面的第十一种可能的实现方式中,所述装置,还包括:
第四接收模块,用于所述信息处理模块将所述第四密文发送给所述网络服务器之后,接收所述网络服务器发送的第五密文,所述第五密文由所述网络服务器使用所述第四密钥对业务数据进行加密得到;
第二解密模块,用于使用所述第三密钥解密所述第四接收模块接收到的所述第五密文,得到所述业务数据;
第二加密模块,用于使用所述第二密钥加密所述第二解密模块解密得到的所述业务数据,得到第六密文;
第三发送模块,用于将所述第二加密模块加密得到的所述第六密文发送给所述用户代理,以使所述用户代理使用所述第一密钥解密所述第六密文,得到所述业务数据。
第三方面,提供了一种业务处理装置,用于中间代理节点中,所述装置包括:总线,以及连接到所述总线的处理器、存储器、发射器和接收器。其中,所述存储器用于存储若干个指令,所述指令被配置成由所述处理器执行;
所述处理器,用于与用户代理建立第一连接,所述第一连接是所述中间代理节点顶替网络服务器,与所述用户代理建立的加密连接;根据在所述第一连接上传输的第一指示信息触发与所述用户代理建立第二连接;
所述接收器,用于通过所述处理器建立的所述第二连接接收所述用户代理发送的业务信息;
所述处理器,还用于对所述接收器接收到的所述业务信息进行处理。
在第三方面的第一种可能的实现方式中,
所述接收器,还用于截获所述用户代理向所述网络服务器发送的传输控制协议TCP连接请求;
所述处理器,还用于读取所述接收器截获的所述TCP连接请求中的,根据所述信息顶替所述网络服务器与所述用户代理建立TCP连接;在所述TCP连接建立完成后,利用预存的与所述网络服务器对应的数字证书与所述用户代理建立所述第一连接。
根据第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,
所述发射器,还用于向所述用户代理发送第一数字证书,所述第一数字证书是证书颁发机构颁发的且与所述网络服务器对应的数字证书,所述证书颁发机构的第二数字证书预先配置在所述用户代理中或安装有所述用户代理的终端的操作系统中,以使所述用户代理根据所述第二数字证书验证所述第一数字证书,在验证通过后,与所述中间代理节点建立所述第一连接;或,
所述发射器,还用于向所述用户代理发送第三数字证书和第四数字证书,所述第三数字证书是非授权证书颁发机构颁发的且与所述网络服务器对应的数字证书,所述第四数字证书是所述非授权证书颁发机构的数字证书,以使所述用户代理根据所述第四数字证书验证所述第三数字证书,在验证通过后,与所述中间代理节点建立所述第一连接。
根据第三方面的第一种可能的实现方式或第三方面的第二种可能的实现方式,在第三方面的第三种可能的实现方式中,
所述接收器,还用于通过所述第一连接截获所述用户代理向所述网络服务器发送的第一访问请求,所述第一访问请求用于请求访问所述网络服务器;
所述发射器,还用于在所述接收器截获到所述第一访问请求后,在所述第一连接上向所述用户代理发送所述第一指示信息,所述第一指示信息用于指示所述用户代理向所述中间代理节点发送连接建立请求;
所述处理器,具体用于根据所述连接建立请求与所述用户代理建立所述第二连接。
根据第三方面或第三方面的第一种可能的实现方式或第三方面的第二种可能的实现方式或第三方面的第三种可能的实现方式,在第三方面的第四种可能的实现方式中,所述第一指示信息包括重定向响应消息。
根据第三方面的第四种可能的实现方式,在第三方面的第五种可能的实现方式中,所述重定向响应消息包括所述中间代理节点的网址,或,所述重定向响应消息包括代理网址,所述代理网址由所述中间代理节点对所述网络服务器的第二指示信息添加代理指示得到,所述第二指示信息包括网页指示信息、网页中对象的对象指示信息、对所述网页指示信息或所述对象指示信息进行转换后得到的信息中的一种。
根据第三方面的第五种可能的实现方式,在第三方面的第六种可能的实现方式中,所述处理器,还用于根据所述连接建立请求与所述用户代理建立TCP连接;在所述TCP连接建立完成后,利用所述中间代理节点的数字证书与所述用户代理建立所述第二连接。
根据第三方面的第六种可能的实现方式,在第三方面的第七种可能的实现方式中,所述接收器,具体用于接收所述用户代理通过所述第二连接发送的第一密文,所述第一密文由所述用户代理使用第一密钥对所述业务信息进行加密得到;
所述处理器,具体用于根据第二密钥解密所述接收器接收到的所述第一密文,得到所述业务信息;
其中,所述第一密钥和所述第二密钥是所述中间代理节点和所述用户代理在建立所述第二连接时约定的密钥。
根据第三方面的第七种可能的实现方式,在第三方面的第八种可能的实现方式中,当所述重定向响应消息包括所述中间代理节点的网址时,
所述接收器,还用于接收所述用户代理通过所述第二连接发送的第一密文之前,接收所述用户代理发送的第二密文,所述第二密文由所述用户代理使用所述第一密钥对第二访问请求进行加密得到,所述第二访问请求用于请求访问所述中间代理节点;
所述处理器,还用于使用所述第二密钥解密所述接收器接收到的所述第二密文,得到所述第二访问请求;获取所述中间代理节点的网页;使用所述第二密钥加密所述网页,得到第三密文;
所述发射器,还用于将所述处理器加密得到的所述第三密文发送给所述用户代理,以使所述用户代理使用所述第一密钥解密所述第三密文,得到所述网页,所述网页用于触发所述用户代理发送所述第一密文。
根据第三方面的第五种可能的实现方式,在第三方面的第九种可能的实现方式中,当所述重定向响应消息包括所述中间代理节点的网址时,
所述接收器,还用于所述处理器根据在所述第一连接上传输的第一指示信息触发与所述用户代理建立第二连接之后,接收所述用户代理发送的第二访问请求,所述第二访问请求用于请求访问所述中间代理节点;
所述处理器,还用于获取所述中间代理节点的网页;
所述发射器,还用于将所述处理器获取到的所述网页发送给所述用户代理,所述网页用于触发所述用户代理发送所述业务信息。
根据第三方面或第三方面的第一种可能的实现方式或第三方面的第二种可能的实现方式或第三方面的第三种可能的实现方式或第三方面的第四种可能的实现方式或第三方面的第五种可能的实现方式或第三方面的第六种可能的实现方式或第三方面的第七种可能的实现方式或第三方面的第八种可能的实现方式或第三方面的第九种可能的实现方式,在第三方面的第十种可能的实现方式中,
所述处理器,具体用于与所述网络服务器建立第三连接,并约定第三密钥和第四密钥;使用所述第三密钥加密所述业务信息,得到第四密文;
所述发射器,具体用于将所述处理器加密得到的所述第四密文发送给所述网络服务器,以使所述网络服务器使用所述第四密钥解密所述第四密文,得到所述业务信息。
根据第三方面的第十种可能的实现方式,在第三方面的第十一种可能的实现方式中,
所述接收器,还用于所述发射器将所述第四密文发送给所述网络服务器之后,接收所述网络服务器发送的第五密文,所述第五密文由所述网络服务器使用所述第四密钥对业务数据进行加密得到;
所述处理器,还用于使用所述第三密钥解密所述接收器接收到的所述第五密文,得到所述业务数据;使用所述第二密钥加密所述业务数据,得到第六密文;
所述发射器,还用于将所述处理器加密得到的所述第六密文发送给所述用户代理,以使所述用户代理使用所述第一密钥解密所述第六密文,得到所述业务数据。
本发明实施例提供的技术方案的有益效果是:
通过与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接;根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接;通过第二连接接收用户代理发送的业务信息;对业务信息进行处理,可以在用户代理请求与网络服务器建立加密连接时,顶替网络服务器与用户代理建立加密的第一连接,再利用在第一连接上传输的第一指示信息触发与用户代理建立第二连接,通过第二连接对用户代理提供业务优化,解决了中间代理节点无法解密密文,导致中间代理节点无法为用户代理提供业务优化的问题,达到了优化业务的效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种业务处理方法的方法流程图;
图2A是本发明实施例提供的又一种业务处理方法的方法流程图;
图2B是本发明实施例提供的TLS连接的建立示意图;
图3是本发明实施例提供的第一种业务处理方法的应用流程图;
图4是本发明实施例提供的又一种业务处理方法的方法流程图;
图5是本发明实施例提供的第二种业务处理方法的应用流程图;
图6是本发明实施例提供的一种业务处理装置的结构示意图;
图7是本发明实施例提供的又一种业务处理装置的结构示意图;
图8是本发明实施例提供的一种业务处理装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
请参见图1,其示出了本发明实施例提供的一种业务处理方法的方法流程图。该业务处理方法,可以包括:
步骤101,中间代理节点与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接。
步骤102,中间代理节点根据在第一连接上传输的第一指示信息与用户代理建立第二连接。
步骤103,中间代理节点通过第二连接接收用户代理发送的业务信息。
步骤104,中间代理节点对业务信息进行处理。
综上所述,本发明实施例提供的业务处理方法,通过与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接;根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接;通过第二连接接收用户代理发送的业务信息;对业务信息进行处理,可以在用户代理请求与网络服务器建立加密连接时,顶替网络服务器与用户代理建立加密的第一连接,再利用在第一连接上传输的第一指示信息触发与用户代理建立第二连接,通过第二连接对用户代理提供业务优化,解决了中间代理节点无法解密密文,导致中间代理节点无法为用户代理提供业务优化的问题,达到了优化业务的效果。
请参见图2A,其示出了本发明实施例提供的又一种业务处理方法的方法流程图。该业务处理方法,可以包括:
步骤201,中间代理节点与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接。
中间代理节点可以是Portal。当然,中间代理节点还可以是其它站点,本实施例不作限定。
由于用户代理请求与网络服务器建立加密连接,再通过该加密连接访问网络服务器,此时中间代理节点无法解密用户代理与网络服务器之间传输的密文,从而无法为用户代理提供业务优化,因此,中间代理节点可以顶替网络服务器与用户代理建立第一连接。其中,第一连接可以是基于SSL/TLS协议的连接,此时第一连接基于传输控制协议(英文:transmission control protocol;简称:TCP)连接的连接,是SSL连接和TLS连接这两种中的一种。由于基于SSL协议的加密连接和基于TLS协议的加密连接的建立过程类似,下文以基于TLS协议的加密连接为例进行说明。
具体地,中间代理节点与用户代理建立第一连接,包括:
1)中间代理节点截获用户代理向网络服务器发送的TCP连接请求;
2)中间代理节点读取TCP连接请求中的信息,根据该信息顶替网络服务器与用户代理建立TCP连接;
3)在TCP连接建立完成后,中间代理节点利用预存的与网络服务器对应的数字证书与用户代理建立第一连接。
首先,用户代理需要与网络服务器建立TCP连接。其中,TCP连接的端口包括80端口和443端口,若用户代理需要基于HTTP协议访问网络服务器,则TCP连接的端口为80端口;若用户代理需要基于下层使用了SSL/TLS协议的超文本传输安全协议(英文:hyper texttransfer protocol over secure socket layer;简称:HTTPS)访问网络服务器,则TCP连接的端口为443端口。中间代理节点截获用户代理发送的TCP连接请求,TCP连接请求中的信息包括源端因特网协议(英文:Internet Protocol;简称:IP)地址,源端端口,目的端IP地址,目的端端口,源端为用户代理,目的端为网络服务器。中间代理节点利用上述信息顶替网络服务器,与用户代理建立端口是443端口的TCP连接,在TCP连接建立完成后,中间代理节点再利用预存的与网络服务器对应的数字证书与用户代理建立第一连接,第一连接是指中间代理节点顶替网络服务器,与用户代理之间建立的加密连接。
请参考图2B所示的TLS连接的建立示意图,其示出了用户代理与中间代理节点建立TLS连接的过程。
步骤201’,用户代理向中间代理节点发送TLS协议版本号、加密算法列表和第一随机数。
步骤202’,若中间代理节点支持该TLS协议版本,则从加密算法列表中选择的一个加密算法,向用户代理发送TLS协议版本号、加密算法、会话标识和第二随机数。
步骤203’,中间代理节点向用户代理发送与网络服务器对应的数字证书。
步骤204’,中间代理节点向用户代理发送第一完成消息。
步骤205’,用户代理对数字证书进行验证,在验证通过后,获取数字证书中的公钥,生成预主密钥,并使用公钥加密预主密钥,将得到公钥交换信息发送给中间代理节点。
步骤206’,用户代理向中间代理节点发送更改密码说明,通知中间代理节点启动协商好的参数。
此时,用户代理根据第一随机数、第二随机数、预主密钥和加密算法生成第一密钥。
步骤207’,用户代理向中间代理节点发送第二完成消息。
步骤208’,中间代理节点向用户代理发送更改密码说明,通知用户代理启动协商好的参数。
此时,中间代理节点使用私钥解密公钥交换信息,得到预主密钥,根据第一随机数、第二随机数、预主密钥和加密算法生成第二密钥。
步骤209’,中间代理节点向用户代理发送第三完成消息。
需要说明的是,中间代理节点在与用户代理建立第一连接之前,还需要获取与网络服务器对应的数字证书和私钥,数字证书至少包括公钥、拥有者名称和证书颁发机构的数字签名,数字签名是指对信息进行哈希运算得到的哈希值,用于验证信息是否被篡改。本实施例中的数字签名用于验证数字证书是否被篡改。
因此,中间代理节点利用预存的与网络服务器对应的数字证书与用户代理建立第一连接,包括:
1)中间代理节点向用户代理发送第一数字证书,第一数字证书是证书颁发机构颁发的且与网络服务器对应的数字证书,证书颁发机构的第二数字证书预先配置在用户代理中或安装有用户代理的终端的操作系统中,以使用户代理根据第二数字证书验证第一数字证书,在验证通过后,与中间代理节点建立第一连接;或,
2)中间代理节点向用户代理发送第三数字证书和第四数字证书,第三数字证书是非授权证书颁发机构颁发的且与网络服务器对应的数字证书,第四数字证书是非授权证书颁发机构的数字证书,以使用户代理根据第四数字证书验证第三数字证书,在验证通过后,与中间代理节点建立第一连接。
其中,与网络服务器对应的数字证书可以是网络服务器的真实数字证书,也可以是除真实数字证书之外的其他数字证书,该其他数字证书与网络服务器之间存在对应关系。本实施例中,其他数字证书可以是代理数字证书,也可以是假冒的数字证书,具体内容如下所述。
在第一种实现方式中,证书颁发机构可以是授权证书颁发机构,也可以是非授权证书颁发机构。
当证书颁发机构是授权证书颁发机构时,授权证书颁发机构根据安全监控等需要为可信的中间代理节点颁发网络服务器的代理数字证书,该代理数字证书即第一数字证书。其中,授权证书颁发机构可以为每个网络服务器颁发不同的代理数字证书,也可以为多个不同的网络服务器颁发相同的代理数字证书,本实施例不作限定。
其中,网络服务器的代理数字证书也可以是网络服务器的数字证书链上的子证书。该子证书可以由网络服务器颁发,也可以由其他第三方授权证书颁发机构颁发。
本实施例中,代理数字证书可以与授权证书颁发机构为网络服务器颁发的真实数字证书相同,也可以与真实数字证书不同。即,代理数字证书与真实数字证书可以拥有不同的公钥和私钥对。
当证书颁发机构是非授权证书颁发机构时,非授权证书颁发机构为中间代理节点颁发网络服务器的数字证书,此时的数字证书是假冒的数字证书,该假冒的数字证书即第一数字证书。
在用户代理验证数字证书时,会检测该数字证书的证书颁发机构的根证书是否位于可信认证中心(英文:Certificate Authority;简称:CA)列表中,根证书即第二数字证书。若该根证书位于可信CA列表中,则根据该根证书的公钥验证数字证书中的数字签名,若对数字签名的验证成功,则对数字证书的验证成功;若对数字签名的验证失败,则对数字证书的验证失败;若该根证书不在可信CA列表中,则对数字证书的验证失败。
可选的,中间代理节点获取到的与网络服务器对应的数字证书可以是多级证书颁发机构颁发的。比如,中间代理节点获取到的与网络服务器对应的数字证书是中级证书颁发机构Issuer颁发的,中级证书颁发机构Issuer的数字证书是高级证书颁发机构Root CA颁发的。此时,用户代理逐级寻找证书颁发机构的数字证书,检测该数字证书的证书颁发机构的根证书是否位于可信CA列表中,若该根证书位于可信CA列表中,则根据该根证书的公钥验证下级数字证书中的数字签名,若对数字签名的验证成功,则根据下级数字证书的公钥验证下下级数字证书中的数字签名,直至对所有的数字签名验证成功后,对数字证书的验证成功;若对其中一个数字签名的验证失败,则对数字证书的验证失败;若该根证书不在可信CA列表中,则对数字证书的验证失败。
需要说明的是,当证书颁发机构是授权证书颁发机构时,该授权证书颁发机构的根证书预先配置在用户代理中或安装有用户代理的终端的操作系统中,即,该授权证书颁发机构的根证书预先配置在可信CA列表中;当证书颁发机构是非授权证书颁发机构时,还需要将该非授权证书颁发机构的根证书添加到可信CA列表中。
在一种添加方式中,可以与操作系统厂家或用户代理的厂家进行协商,将非授权证书颁发机构的根证书添加到可信CA列表中;在另一种添加方式中,可以提示用户安装非授权证书颁发机构的根证书,通过该非授权证书颁发机构的根证书添加到可信CA列表中。
在第二种实现方式中,中间代理节点可以获取非授权证书颁发机构发送的数字证书链,该数字证书链至少包括非授权证书颁发机构的数字证书,即自签名的根证书,也即第四数字证书,以及网络服务器的假冒的数字证书,中间代理节点将该数字证书链发送给用户代理,该假冒的数字证书即第三数字证书。
在用户代理验证数字证书时,会读取接收到的数字证书链中根证书的公钥,根据该公钥验证假冒的数字证书中的数字签名,若对数字签名的验证成功,则对假冒的数字证书的验证成功;若对数字签名的验证失败,则对假冒的数字证书的验证失败。
可选的,中间代理节点获取到的假冒的数字证书可以是多级非授权证书颁发机构颁发的,即,证书链还包括多级非授权证书颁发机构的数字证书。比如,中间代理节点获取到的与网络服务器对应的数字证书是非授权的中级证书颁发机构Issuer颁发的,非授权的中级证书颁发机构Issuer的数字证书是非授权的高级证书颁发机构Root CA颁发的。此时,用户代理从接收到的数字证书中逐级寻找非授权的证书颁发机构的数字证书,根据根证书的公钥验证下级数字证书中的数字签名,若对数字签名的验证成功,则根据下级数字证书的公钥验证下下级数字证书中的数字签名,直至对所有的数字签名验证成功后,对数字证书的验证成功;若对其中一个数字签名的验证失败,则对数字证书的验证失败。
步骤202,中间代理节点根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接。
具体地,中间代理节点根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接,包括:
1)中间代理节点通过第一连接截获用户代理向网络服务器发送的第一访问请求,第一访问请求用于请求访问网络服务器;
2)在中间代理节点截获到第一访问请求后,中间代理节点在第一连接上向用户代理发送第一指示信息,第一指示信息用于指示用户代理向中间代理节点发送连接建立请求;
3)中间代理节点根据连接建立请求与用户代理建立第二连接。
其中,第一访问请求可以具体请求访问网络服务器的主页或网络服务器中的对象。第一指示信息包括重定向响应消息。
重定向响应消息可以是HTTP Redirection。可选的,重定向响应消息的location头域中可以包括类型信息,该类型信息用于指示用户代理请求建立的连接类型。比如,当重定向响应消息需要指示用户代理建立加密连接时,可以在类型信息中携带HTTPS,HTTPS用于指示HTTPS协议;当重定向响应消息需要指示用户代理建立非加密连接时,可以在类型信息中携带HTTP,HTTP用于指示HTTP协议。本实施例以类型信息中携带HTTPS为例进行说明,此时连接建立请求用于请求建立加密的第二连接,且端口为443端口。
另外,重定向响应消息包括中间代理节点的网址,或,重定向响应消息包括代理网址,代理网址由中间代理节点对网络服务器的第二指示信息添加代理指示得到,第二指示信息包括网页指示信息、网页中对象的对象指示信息、对网页指示信息或对象指示信息进行转换后得到的信息中的一种。
具体地,重定向响应消息需要包括中间代理节点的网址,以便用户代理通过中间代理节点访问网络服务器。在第一种实现方式中,重定向响应消息可以只包括中间代理节点的网址www.portal.com。在第二种实现方式中,重定向响应消息不仅包括中间代理节点的网址,还包括网络服务器的网页指示信息或对象指示信息或对上述两种信息中的一种进行转换后得到的信息,网页指示信息和对象指示信息可以从第一访问请求中获取到。比如,当网页指示信息是网络服务器的网址www.ottserver.com时,重定向响应消息可以包括www.portal.com/view?q=www.ottserver.com;当对象指示信息是www.ottserver.com/picture1.gif时,重定向响应消息可以包括www.portal.com/view?q=www.ottserver.com/picture1.gif。
本实施例中,中间代理节点可以在与用户代理建立第一连接的过程中,与用户代理约定加密密钥和解密密钥。此时,中间代理节点可以使用加密密钥对重定向响应消息进行加密,将加密得到的密文发送给用户代理,用户代理使用解密密钥对密文进行解密后,得到重定向响应消息。用户代理根据重定向响应消息生成连接建立请求,将连接建立请求发送给中间代理节点,中间代理节点得到连接建立请求。
其中,中间代理节点与用户代理建立的第二连接可以是加密连接,也可以是非加密连接的TCP连接。当第二连接是加密连接时,中间代理节点根据连接建立请求与用户代理建立第二连接,包括:中间代理节点根据连接建立请求与用户代理建立TCP连接;在TCP连接建立完成后,中间代理节点利用中间代理节点的数字证书与用户代理建立第二连接。具体地,中间代理节点与用户代理建立TLS连接的流程与图2B所示的流程类似,不同的是,在步骤204’中,中间代理节点向用户代理发送的是中间代理节点的数字证书。
步骤203,中间代理节点接收用户代理通过第二连接发送的第一密文,第一密文由用户代理使用第一密钥对业务信息进行加密得到。
业务信息用于与网络服务器进行业务交互,可以具体用于向网络服务器请求业务,也可以具体用于向网络服务器发送业务数据。其中,当业务信息用于向网络服务器请求业务时,业务信息可以用于请求网络服务器的主页,也可以用于请求网络服务器中的对象(object),该对象可以是网络服务器中存储的对象,也可以是其它服务器中存储的对象且该对象的统一资源标示符(英文:uniform resource identifier;简称:URI)包含在网络服务器的网页中。
比如,当网络服务器是OTT服务器且业务信息用于向OTT服务器请求OTT服务器的主页时,此时业务信息包括www.ottserver.com;当OTT服务器的网页包括URI且业务信息用于向OTT服务器请求该URI所指示的对象时,假设网页包括的URI为www.ottserver.com/picture1.gif且用户需要获取访问该URI所指示的图片1,此时业务信息包括www.ottserver.com/picture1.gif。
可选的,业务信息可以由中间代理节点对上述网址添加代理指示得到。其中,代理指示用于指示中转业务的中间代理节点,可以是中间代理节点的网址。比如,当中间代理节点是portal时,代理指示可以是中间代理节点的网址www.portal.com。
在添加代理指示,当业务信息用于请求网络服务器提供的主页时,指示信息是网页指示信息,即网络服务器的网址,此时业务信息可以是www.portal.com/view?q=www.ottserver.com;当业务信息用于请求网络服务器中的对象时,指示信息是对象指示信息,即对象的URI,此时业务信息可以是www.portal.com/view?q=www.ottserver.com/picture1.gif。
可选的,中间代理节点还可以对网页指示信息或对象指示信息进行转换,并对转换后得到的信息添加代理指示,得到业务信息。通过转换可以将明文转换为密文进行传输,可以提高数据传输的安全性。比如,www.ottserver.com可以用www.abcd1234指代,此时www.portal.com/view?q=www.abcd1234为www.portal.com/view?q=www.ottserver.com。
本实施例中,中间代理节点在与用户代理建立第二连接的过程中约定密钥。当同一个设备的加密密钥和解密密钥相同时,可以约定第一密钥和第二密钥,第一密钥存储于用户代理中,用户代理可以使用第一密钥加密将要发送给中间代理节点的明文,也可以使用第一密钥解密中间代理节点发送的密文;第二密钥存储于中间代理节点中,中间代理节点可以使用第二密钥加密将要发送给用户代理的明文,也可以使用第二密钥解密用户代理发送的密文。当同一个设备的加密密钥和解密密钥不同时,可以约定第一密钥和第二密钥,并约定第五密钥和第六密钥,第一密钥和第五密钥存储于用户代理中,用户代理可以使用第一密钥加密将要发送给中间代理节点的明文,使用第五密钥解密中间代理节点发送的密文;第二密钥和第六密钥存储于中间代理节点中,中间代理节点可以使用第二密钥加密将要发送给用户代理的明文,使用第六密钥解密用户代理发送的密文。其中,第一密钥和第二密钥可以是对称密钥,也可以是不对称密钥;第五密钥和第六密钥可以是对称密钥,也可以是不对称密钥。下文以同一个设备的加密密钥和解密密钥相同为例进行说明。
可选的,当重定向响应消息包括中间代理节点的网址时,中间代理节点接收用户代理通过第二连接发送的第一密文之前,还包括:
1)中间代理节点接收用户代理发送的第二密文,第二密文由用户代理使用第一密钥对第二访问请求进行加密得到,第二访问请求用于请求访问中间代理节点;
2)中间代理节点使用第二密钥解密第二密文,得到第二访问请求;
3)中间代理节点获取中间代理节点的网页;
4)中间代理节点使用第二密钥加密网页,得到第三密文;
5)中间代理节点将第三密文发送给用户代理,以使用户代理使用第一密钥解密第三密文,得到网页,网页用于触发用户代理发送第一密文。
其中,第二访问请求可以具体请求访问中间代理节点的主页或中间代理节点中的对象。
若重定向响应消息只包括中间代理节点的网址,则用户代理还需要根据中间代理节点的网址获取中间代理节点的网页,以便用户在接收到网页后,触发该网页,用户代理根据该触发发送连接建立请求,并在与中间代理节点建立第二连接之后发送第一密文。
步骤204,中间代理节点根据第二密钥解密第一密文,得到业务信息,第一密钥和第二密钥是中间代理节点和用户代理在建立第二连接时约定的密钥。
中间代理节点确定与第一密钥对应的第二密钥,再使用第二密钥解密第一密文,得到业务信息。
本实施例中,当中间代理节点具有缓存网络服务器的业务数据的功能时,中间代理节点可以在缓存中查找业务信息所请求的业务数据,若存在该业务数据,则执行步骤210,此时可以提高对业务信息的响应速度;若不存在该业务数据,则执行步骤205。当中间代理节点不具有缓存网络服务器的业务数据的功能,则执行步骤205。
步骤205,中间代理节点与网络服务器建立第三连接,并约定第三密钥和第四密钥。
当业务信息包括网页指示信息或对网页指示信息进行转换后得到的信息时,中间代理节点从处理后的业务信息中解析出网络服务器的网址,与该网址所指示的网络服务器建立加密连接,并约定第三密钥和第四密钥。其中,中间代理节点和网络服务器建立加密连接的过程与中间代理节点和用户代理建立加密连接的过程类似,此处不赘述。
当业务信息包括对象指示信息或对对象指示信息进行转换后得到的信息时,在第一种实现方式中,当中间代理节点已经获取过网络服务器的网页,即,中间代理节点已经与网络服务器建立了加密连接,此时可以不执行步骤205,直接执行步骤206;在第二种实现方式中,当中间代理节点未获取过网络服务器的主页时,中间代理节点从处理后的业务信息中解析出网络服务器的网址,与该网址所指示的网络服务器建立加密连接,并约定第三密钥和第四密钥,此处不赘述。
步骤206,中间代理节点使用第三密钥加密业务信息,得到第四密文。
本步骤中的业务信息可以是去除了中间代理节点的网址的业务信息。即,此时的业务信息只包括网络服务器指示信息,或,业务信息只包括对象指示信息。
步骤207,中间代理节点将第四密文发送给网络服务器,以使网络服务器使用第四密钥解密第四密文,得到业务信息。
步骤208,中间代理节点接收网络服务器发送的第五密文,第五密文由网络服务器使用第四密钥对业务数据进行加密得到。
网络服务器根据业务信息获取对应的业务数据,并使用第四密钥加密该业务数据,得到第五密文,将第五密文发送给中间代理节点。比如,当业务信息包括www.ottserver.com时,业务数据可以是网络服务器的主页;当业务信息包括www.ottserver.com/picture1.gif时,业务数据可以是图片1。
步骤209,中间代理节点使用第三密钥解密第五密文,得到业务数据。
步骤210,中间代理节点使用第二密钥加密业务数据,得到第六密文。
其中,当业务数据是网络服务器的网页时,该网页中还可以包括对象指示信息,此时中间代理节点还需要对对象指示信息添加代理指示。比如,当网页包括图片1的URI时,中间代理节点可以对www.ottserver.com/picture1.gif添加中间代理节点的网址www.portal.com,得到www.portal.com/view?q=www.ottserver.com/picturel.gif。
步骤211,中间代理节点将第六密文发送给用户代理,以使用户代理使用第一密钥解密第六密文,得到业务数据。
综上所述,本发明实施例提供的业务处理方法,通过与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接;根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接;通过第二连接接收用户代理发送的业务信息;对业务信息进行处理,可以在用户代理请求与网络服务器建立加密连接时,顶替网络服务器与用户代理建立加密的第一连接,再利用在第一连接上传输的第一指示信息触发与用户代理建立第二连接,通过第二连接对用户代理提供业务优化,解决了中间代理节点无法解密密文,导致中间代理节点无法为用户代理提供业务优化的问题,达到了优化业务的效果。
另外,通过获取与网络服务器对应的代理数字证书或假冒的数字证书,可以利用与网络服务器对应的代理数字证书或假冒的数字证书顶替网络服务器,从而与用户代理建立第一连接,丰富了与用户代理建立第一连接的实现方式。
另外,重定向响应消息包括代理网址,代理网址由中间代理节点对网络服务器的第二指示信息添加代理指示得到,第二指示信息包括网页指示信息、网页中对象的对象指示信息、对网页指示信息或对象指示信息进行转换后得到的信息中的一种,可以直接向用户代理发送网页指示信息或对象指示信息或对上述两种信息中的一种进行转换后得到的信息,而不需要先获取中间代理节点的网页,再触发中间代理节点的网页来获取网页指示信息或对象指示信息或对上述两种信息中的一种进行转换后得到的信息,可以简化操作流程,提高了业务处理的效率。
下面以用户代理和中间代理节点建立加密的第二连接、中间代理节点和网络服务器建立加密的第三连接为例,对业务处理方法的流程进行描述。请参考图3所示的第一种业务处理方法的应用流程图,图3以中间代理节点是Portal、用户代理是UA、网络服务器是OTTServer。
步骤301,Portal截获UA向OTT Server发送的TCP连接请求,根据TCP连接请求中的信息顶替OTT Server与UA之间建立TCP连接(443端口)。
步骤302,Portal利用与OTT Server对应的数字证书与UA之间TLS握手过程。
步骤303,Portal截获UA向OTT Server发送的加密的GET请求。其中,GET请求是第一访问请求。
步骤304,Portal向UA发送加密后的重定向响应消息和/或需要通过HTTPS协议访问的加密后的类型信息。其中,HTTPS协议是下层使用了SSL/TLS协议的HTTP协议。
步骤305,UA和Portal之间建立TCP连接(443端口),TCP连接建立完成后,UA和Portal之间TLS握手过程。此时Portal提供的是Portal自己的数字证书。
其中,当重定向响应消息包括www.portal.com时,执行步骤306;当重定向响应消息包括www.portal.com/view?q=www.ottserver.com时,执行步骤308。
步骤306,UA向Portal发送加密的GET请求,GET请求包括www.portal.com。其中,GET请求是第二访问请求。
步骤307,Portal解密GET请求后,向UA回复加密的200ok响应,返回www.portal.com的网页。
步骤308,UA向Portal发送加密的GET请求,GET请求包括www.portal.com/view?q=www.ottserver.com。
步骤309,Portal解密GET请求后,从GET请求解析出www.ottserver.com。
步骤310,Portal和OTT Server之间建立TCP连接(443端口)。
步骤311,Portal和OTT Server之间TLS握手过程。
步骤312,Portal向OTT Server发送加密的GET请求,GET请求包括www.ottserver.com。
步骤313,OTT Server向Portal回复加密的200ok响应,返回www.ottserver.com的网页。
步骤314,Portal解密200ok响应后,对200ok响应添加www.portal.com的portal指示:如www.portal.com/view?q=www.ottserver.com/picturel.gif。
步骤315,Portal向UA发送加密的200ok响应。
步骤316,UA向Portal发送加密的GET请求,GET请求包括www.portal.com/view?q=www.ottserver.com/picture1.gif。
步骤317,Portal解密GET请求后,从GET请求解析出www.ottserver.com/picture1.gif。
步骤318,Portal向OTT Server发送加密的GET请求,GET请求包括www.ottserver.com/picture1.gif。
步骤319,OTT Server向Portal加密的回复200ok响应,返回图片1。
步骤320,Portal解密200ok响应后,对200ok响应添加www.portal.com的portal指示。
步骤321,Portal向UA发送加密的200ok响应。
请参见图4,其示出了本发明实施例提供的又一种业务处理方法的方法流程图。该业务处理方法,可以包括:
步骤401,中间代理节点与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接。
中间代理节点可以是Portal。当然,中间代理节点还可以是其它站点,本实施例不作限定。
由于用户代理请求与网络服务器建立加密连接,再通过该加密连接访问网络服务器,此时中间代理节点无法解密用户代理与网络服务器之间传输的密文,从而无法为用户代理提供业务优化,因此,中间代理节点可以顶替网络服务器与用户代理建立第一连接。其中,第一连接可以是基于SSL/TLS协议的连接,此时第一连接是基于TCP连接的连接,是SSL连接和TLS连接这两种中的一种。由于基于SSL协议的加密连接和基于TLS协议的加密连接的建立过程类似,下文以基于TLS协议的加密连接为例进行说明。
具体地,中间代理节点与用户代理建立第一连接,包括:
1)中间代理节点截获用户代理向网络服务器发送的TCP连接请求;
2)中间代理节点读取TCP连接请求中的信息,根据该信息顶替网络服务器与用户代理建立TCP连接;
3)在TCP连接建立完成后,中间代理节点利用预存的与网络服务器对应的数字证书与用户代理建立第一连接。
首先,用户代理需要与网络服务器建立TCP连接。其中,TCP连接的端口包括80端口和443端口,若用户代理需要基于HTTP协议访问网络服务器,则TCP连接的端口为80端口;若用户代理需要基于下层使用了SSL/TLS协议的HTTPS访问网络服务器,则TCP连接的端口为443端口。中间代理节点截获用户代理发送的TCP连接请求,TCP连接请求中的信息包括源端IP地址,源端端口,目的端IP地址,目的端端口,源端为用户代理,目的端为网络服务器。中间代理节点利用上述信息顶替网络服务器与用户代理建立端口是443端口的TCP连接,在TCP连接建立完成后,中间代理节点再利用预存的与网络服务器对应的数字证书与用户代理建立第一连接,第一连接是指中间代理节点顶替网络服务器,与用户代理之间建立的加密连接。其中,用户代理与中间代理节点建立TLS连接的过程详见图2B,此处不赘述。
需要说明的是,中间代理节点在与用户代理建立第一连接之前,还需要获取与网络服务器对应的数字证书和私钥,数字证书至少包括公钥、拥有者名称和证书颁发机构的数字签名,数字签名是指对信息进行哈希运算得到的哈希值,用于验证信息是否被篡改。本实施例中的数字签名用于验证数字证书是否被篡改。
因此,中间代理节点利用预存的与网络服务器对应的数字证书与用户代理建立第一连接,包括:
1)中间代理节点向用户代理发送第一数字证书,第一数字证书是证书颁发机构颁发的且与网络服务器对应的数字证书,证书颁发机构的第二数字证书预先配置在用户代理中或安装有用户代理的终端的操作系统中,以使用户代理根据第二数字证书验证第一数字证书,在验证通过后,与中间代理节点建立第一连接;或,
2)中间代理节点向用户代理发送第三数字证书和第四数字证书,第三数字证书是非授权证书颁发机构颁发的且与网络服务器对应的数字证书,第四数字证书是非授权证书颁发机构的数字证书,以使用户代理根据第四数字证书验证第三数字证书,在验证通过后,与中间代理节点建立第一连接。
具体地,中间代理节点根据与网络服务器对应的数字证书与用户代理建立第一连接的过程详见步骤201中的描述,此处不赘述。
步骤402,中间代理节点根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接。
具体地,中间代理节点根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接,包括:
1)中间代理节点通过第一连接截获用户代理向网络服务器发送的第一访问请求,第一访问请求用于请求访问网络服务器;
2)在中间代理节点截获到第一访问请求后,中间代理节点在第一连接上向用户代理发送第一指示信息,第一指示信息用于指示用户代理向中间代理节点发送连接建立请求;
3)中间代理节点根据连接建立请求与用户代理建立第二连接。
其中,第一访问请求可以具体请求访问网络服务器的主页或网络服务器中的对象。第一指示信息包括重定向响应消息。
重定向响应消息包括中间代理节点的网址,或,重定向响应消息包括代理网址,代理网址由中间代理节点对网络服务器的第二指示信息添加代理指示得到,第二指示信息包括网页指示信息、网页中对象的对象指示信息、对网页指示信息或对象指示信息进行转换后得到的信息中的一种。具体地,重定向响应消息的内容详见步骤201中的描述,此处不赘述。
本实施例中,中间代理节点可以在与用户代理建立第一连接的过程中,与用户代理约定加密密钥和解密密钥。此时,中间代理节点可以使用加密密钥对重定向响应消息进行加密,将加密得到的密文发送给用户代理,用户代理使用解密密钥对密文进行解密后,得到重定向响应消息。用户代理根据重定向响应消息生成连接建立请求,将连接建立请求发送给中间代理节点,中间代理节点得到连接建立请求。
需要说明的是,本实施例中,第二连接是中间代理节点与用户代理建立的端口是80端口的TCP连接。
步骤403,中间代理节点通过第二连接接收用户代理发送的业务信息。
业务信息用于与网络服务器进行业务交互,可以具体用于向网络服务器请求业务,也可以具体用于向网络服务器发送业务数据。其中,当业务信息用于向网络服务器请求业务时,业务信息可以用于请求网络服务器的主页,也可以用于请求网络服务器中的对象(object),该对象可以是网络服务器中存储的对象,也可以是其它服务器中存储的对象且该对象的统一资源标示符(英文:uniform resource identifier;简称:URI)包含在网络服务器的网页中。
比如,当网络服务器是OTT服务器且业务信息用于向OTT服务器请求OTT服务器的主页时,此时业务信息包括www.ottserver.com;当OTT服务器的网页包括URI且业务信息用于向OTT服务器请求该URI所指示的对象时,假设网页包括的URI为www.ottserver.com/picture1.gif且用户需要获取访问该URI所指示的图片1,此时业务信息包括www.ottserver.com/picturel.gif。
可选的,业务信息可以由中间代理节点对上述网址添加代理指示得到。其中,代理指示用于指示中转业务的中间代理节点,可以是中间代理节点的网址。比如,当中间代理节点是portal时,代理指示可以是中间代理节点的网址www.portal.com。
在添加代理指示,当业务信息用于请求网络服务器提供的主页时,指示信息是网页指示信息,即网络服务器的网址,此时业务信息可以是www.portal.com/view?q=www.ottserver.com;当业务信息用于请求网络服务器中的对象时,指示信息是对象指示信息,即对象的URI,此时业务信息可以是www.portal.com/view?q=www.ottserver.com/picture1.gif。
可选的,中间代理节点还可以对网页指示信息或对象指示信息进行转换,并对转换后得到的信息添加代理指示,得到业务信息。通过转换可以将明文转换为密文进行传输,可以提高数据传输的安全性。比如,www.ottserver.com可以用www.abcd1234指代,此时www.portal.com/view?q=www.abcd1234为www.portal.com/view?q=www.ottserver.com。
可选的,当重定向响应消息包括中间代理节点的网址时,中间代理节点根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接之后,还包括:
1)中间代理节点接收用户代理发送的第二访问请求,第二访问请求用于请求访问中间代理节点;
2)中间代理节点获取中间代理节点的网页;
3)中间代理节点将网页发送给用户代理,网页用于触发用户代理发送业务信息。
其中,第二访问请求可以具体请求访问中间代理节点的主页或中间代理节点中的对象。
若重定向响应消息只包括中间代理节点的网址,则用户代理还需要根据中间代理节点的网址获取中间代理节点的网页,以便用户在接收到网页后,触发该网页,用户代理根据该触发发送连接建立请求,并在与中间代理节点建立第二连接之后发送业务信息。
本实施例中,当中间代理节点具有缓存网络服务器的业务数据的功能时,中间代理节点可以在缓存中查找业务信息所请求的业务数据,若存在该业务数据,则执行步骤409,此时可以提高对业务信息的响应速度;若不存在该业务数据,则执行步骤404。当中间代理节点不具有缓存网络服务器的业务数据的功能,则执行步骤404。
步骤404,中间代理节点与网络服务器建立第三连接,并约定第三密钥和第四密钥。
当业务信息包括网页指示信息或对网页指示信息进行转换后得到的信息时,中间代理节点从处理后的业务信息中解析出网络服务器的网址,与该网址所指示的网络服务器建立加密连接,并约定第三密钥和第四密钥。其中,中间代理节点和网络服务器建立加密连接的过程与中间代理节点和用户代理建立加密连接的过程类似,此处不赘述。
当业务信息包括对象指示信息或对对象指示信息进行转换后得到的信息时,在第一种实现方式中,当中间代理节点已经获取过网络服务器的网页,即,中间代理节点已经与网络服务器建立了加密连接,此时可以不执行步骤404,直接执行步骤405;在第二种实现方式中,当中间代理节点未获取过网络服务器的主页时,中间代理节点从处理后的业务信息中解析出网络服务器的网址,与该网址所指示的网络服务器建立加密连接,并约定第三密钥和第四密钥,此处不赘述。
步骤405,中间代理节点使用第三密钥加密业务信息,得到第四密文。
本步骤中的业务信息可以是去除了中间代理节点的网址的业务信息。即,此时的业务信息只包括网络服务器指示信息,或,业务信息只包括对象指示信息。
步骤406,中间代理节点将第四密文发送给网络服务器,以使网络服务器使用第四密钥解密第四密文,得到业务信息。
步骤407,中间代理节点接收网络服务器发送的第五密文,第五密文由网络服务器使用第四密钥对业务数据进行加密得到。
网络服务器根据业务信息获取对应的业务数据,并使用第四密钥加密该业务数据,得到第五密文,将第五密文发送给中间代理节点。比如,当业务信息包括www.ottserver.com时,业务数据可以是网络服务器的主页;当业务信息包括www.ottserver.com/picture1.gif时,业务数据可以是图片1。
步骤408,中间代理节点使用第三密钥解密第五密文,得到业务数据。
步骤409,中间代理节点使用第二密钥加密业务数据,得到第六密文。
其中,当业务数据是网络服务器的网页时,该网页中还可以包括对象指示信息,此时中间代理节点还需要对对象指示信息添加代理指示。比如,当网页包括图片1的URI时,中间代理节点可以对www.ottserver.com/picturel.gif添加中间代理节点的网址www.portal.com,得到www.portal.com/view?q=www.ottserver.com/picture1.gif。
步骤410,中间代理节点将第六密文发送给用户代理,以使用户代理使用第一密钥解密第六密文,得到业务数据。
综上所述,本发明实施例提供的业务处理方法,通过与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接;根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接;通过第二连接接收用户代理发送的业务信息;对业务信息进行处理,可以在用户代理请求与网络服务器建立加密连接时,顶替网络服务器与用户代理建立加密的第一连接,再利用在第一连接上传输的第一指示信息触发与用户代理建立第二连接,通过第二连接对用户代理提供业务优化,解决了中间代理节点无法解密密文,导致中间代理节点无法为用户代理提供业务优化的问题,达到了优化业务的效果。
另外,通过获取与网络服务器对应的代理数字证书或假冒的数字证书,可以利用与网络服务器对应的代理数字证书或假冒的数字证书顶替网络服务器,从而与用户代理建立第一连接,丰富了与用户代理建立第一连接的实现方式。
另外,重定向响应消息包括代理网址,代理网址由中间代理节点对网络服务器的第二指示信息添加代理指示得到,第二指示信息包括网页指示信息、网页中对象的对象指示信息、对网页指示信息或对象指示信息进行转换后得到的信息中的一种,可以直接向用户代理发送网页指示信息或对象指示信息或对上述两种信息中的一种进行转换后得到的信息,而不需要先获取中间代理节点的网页,再触发中间代理节点的网页来获取网页指示信息或对象指示信息或对上述两种信息中的一种进行转换后得到的信息,可以简化操作流程,提高了业务处理的效率。
下面以用户代理和中间代理节点建立加密的第二连接、中间代理节点和网络服务器建立加密的第三连接为例,对业务处理方法的流程进行描述。请参考图5所示的第二种业务处理方法的应用流程图,图5以中间代理节点是Portal、用户代理是UA、网络服务器是OTTServer。
步骤501,Portal截获UA向OTT Server发送的TCP了连接请求,根据TCP连接请求中的信息顶替OTT Server与UA之间建立TCP连接(443端口)。
步骤502,Portal利用与OTT Server对应的数字证书与UA之间TLS握手过程。
步骤503,Portal截获UA向OTT Server发送的加密的GET请求。其中,GET请求是第一访问请求。
步骤504,Portal向UA发送加密后的重定向响应消息和/或需要通过HTTPS协议访问的加密后的类型信息。其中,HTTPS协议是下层使用了SSL/TLS协议的HTTP协议。
步骤505,UA和Portal之间建立TCP连接(80端口)。
其中,当重定向响应消息包括www.portal.com时,执行步骤506;当重定向响应消息包括www.portal.com/view?q=www.ottserver.com时,执行步骤508。
步骤506,UA向Portal发送GET请求,GET请求包括www.portal.com。其中,GET请求是第二访问请求。
步骤507,Portal向UA回复200ok响应,返回www.portal.com的网页。
步骤508,UA向Portal发送GET请求,GET请求包括www.portal.com/view?q=www.ottserver.com。
步骤509,Portal从GET请求解析出www.ottserver.com。
步骤510,Portal和OTT Server之间建立TCP连接(443端口)。
步骤511,Portal和OTT Server之间TLS握手过程。
步骤512,Portal向OTT Server发送加密的GET请求,GET请求包括www.ottserver.com。
步骤513,OTT Server向Portal回复加密的200ok响应,返回www.ottserver.com的网页。
步骤514,Portal解密200ok响应后,对200ok响应添加www.portal.com的portal指示:如www.portal.com/view?q=www.ottserver.com/picture1.gif。
步骤515,Portal向UA发送200ok响应。
步骤516,UA向Portal发送GET请求,GET请求包括www.portal.com/view?q=www.ottserver.com/picture1.gif。
步骤517,Portal从GET请求解析出www.ottserver.com/picture1.gif。
步骤518,Portal向OTT Server发送加密的GET请求,GET请求包括www.ottserver.com/picture1.gif。
步骤519,OTT Server向Portal加密的回复200ok响应,返回图片1。
步骤520,Portal解密200ok响应后,对200ok响应添加www.portal.com的portal指示。
步骤521,Portal向UA发送200ok响应。
请参考图6,其示出了本发明实施例提供的一种业务处理装置的结构示意图。该业务处理装置用于中间代理节点中,可以包括:
第一建立模块601,用于与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接;
第二建立模块602,用于根据在第一建立模块601建立的第一连接上传输的第一指示信息触发与用户代理建立第二连接;
第一接收模块603,用于通过第二建立模块602建立的第二连接接收用户代理发送的业务信息;
信息处理模块604,用于对第一接收模块603接收到的业务信息进行处理。
综上所述,本发明实施例提供的业务处理装置,通过与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接;根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接;通过第二连接接收用户代理发送的业务信息;对业务信息进行处理,可以在用户代理请求与网络服务器建立加密连接时,顶替网络服务器与用户代理建立加密的第一连接,再利用在第一连接上传输的第一指示信息触发与用户代理建立第二连接,通过第二连接对用户代理提供业务优化,解决了中间代理节点无法解密密文,导致中间代理节点无法为用户代理提供业务优化的问题,达到了优化业务的效果。
请参考图7,其示出了本发明实施例提供的又一种业务处理装置的结构示意图。该业务处理装置用于中间代理节点中,可以包括:
第一建立模块701,用于与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接;
第二建立模块702,用于根据在第一建立模块701建立的第一连接上传输的第一指示信息触发与用户代理建立第二连接;
第一接收模块703,用于通过第二建立模块702建立的第二连接接收用户代理发送的业务信息;
信息处理模块704,用于对第一接收模块703接收到的业务信息进行处理。
可选的,第一建立模块701,具体用于:
截获用户代理向网络服务器发送的TCP连接请求;
读取TCP连接请求中的信息,根据该信息顶替网络服务器与用户代理建立TCP连接;
在TCP连接建立完成后,利用预存的与网络服务器对应的数字证书与用户代理建立第一连接。
可选的,第一建立模块701,具体用于:
向用户代理发送第一数字证书,第一数字证书是证书颁发机构颁发的且与网络服务器对应的数字证书,证书颁发机构的第二数字证书预先配置在用户代理中或安装有用户代理的终端的操作系统中,以使用户代理根据第二数字证书验证第一数字证书,在验证通过后,与中间代理节点建立第一连接;或,
向用户代理发送第三数字证书和第四数字证书,第三数字证书是非授权证书颁发机构颁发的且与网络服务器对应的数字证书,第四数字证书是非授权证书颁发机构的数字证书,以使用户代理根据第四数字证书验证第三数字证书,在验证通过后,与中间代理节点建立第一连接。
可选的,第二建立模块702,具体用于:
通过第一连接截获用户代理向网络服务器发送的第一访问请求,第一访问请求用于请求访问网络服务器;
在截获到第一访问请求后,在第一连接上向用户代理发送第一指示信息,第一指示信息用于指示用户代理向中间代理节点发送连接建立请求;
根据连接建立请求与用户代理建立第二连接。
可选的,第一指示信息包括重定向响应消息。
可选的,重定向响应消息包括中间代理节点的网址,或,重定向响应消息包括代理网址,代理网址由中间代理节点对网络服务器的第二指示信息添加代理指示得到,第二指示信息包括网页指示信息、网页中对象的对象指示信息、对网页指示信息或对象指示信息进行转换后得到的信息中的一种。
可选的,第二建立模块702,还用于:根据连接建立请求与用户代理建立TCP连接;在TCP连接建立完成后,利用中间代理节点的数字证书与用户代理建立第二连接。
可选的,第一接收模块703,具体用于:
接收用户代理通过第二连接发送的第一密文,第一密文由用户代理使用第一密钥对业务信息进行加密得到;
根据第二密钥解密第一密文,得到业务信息;
其中,第一密钥和第二密钥是中间代理节点和用户代理在建立第二连接时约定的密钥。
可选的,当重定向响应消息包括中间代理节点的网址时,装置,还包括:
第二接收模块705,用于第一接收模块703接收用户代理通过第二连接发送的第一密文之前,接收用户代理发送的第二密文,第二密文由用户代理使用第一密钥对第二访问请求进行加密得到,第二访问请求用于请求访问中间代理节点;
第一解密模块706,用于使用第二密钥解密第二接收模块705接收到的第二密文,得到第二访问请求;
第一获取模块707,用于获取中间代理节点的网页;
第一加密模块708,用于使用第二密钥加密第一获取模块707获取到的网页,得到第三密文;
第一发送模块709,用于将第一加密模块708加密得到的第三密文发送给用户代理,以使用户代理使用第一密钥解密第三密文,得到网页,网页用于触发用户代理发送第一密文。
可选的,当重定向响应消息包括中间代理节点的网址时,装置,还包括:
第三接收模块710,用于第二建立模块702根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接之后,接收用户代理发送的第二访问请求,第二访问请求用于请求访问中间代理节点;
第二获取模块711,用于获取中间代理节点的网页;
第二发送模块712,用于将第二获取模块711获取到的网页发送给用户代理,网页用于触发用户代理发送业务信息。
可选的,信息处理模块704,具体用于:
与网络服务器建立第三连接,并约定第三密钥和第四密钥;
使用第三密钥加密业务信息,得到第四密文;
将第四密文发送给网络服务器,以使网络服务器使用第四密钥解密第四密文,得到业务信息。
可选的,装置,还包括:
第四接收模块713,用于信息处理模块704将第四密文发送给网络服务器之后,接收网络服务器发送的第五密文,第五密文由网络服务器使用第四密钥对业务数据进行加密得到;
第二解密模块714,用于使用第三密钥解密第四接收模块713接收到的第五密文,得到业务数据;
第二加密模块715,用于使用第二密钥加密第二解密模块714解密得到的业务数据,得到第六密文;
第三发送模块716,用于将第二加密模块715加密得到的第六密文发送给用户代理,以使用户代理使用第一密钥解密第六密文,得到业务数据。
综上所述,本发明实施例提供的业务处理装置,通过与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接;根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接;通过第二连接接收用户代理发送的业务信息;对业务信息进行处理,可以在用户代理请求与网络服务器建立加密连接时,顶替网络服务器与用户代理建立加密的第一连接,再利用在第一连接上传输的第一指示信息触发与用户代理建立第二连接,通过第二连接对用户代理提供业务优化,解决了中间代理节点无法解密密文,导致中间代理节点无法为用户代理提供业务优化的问题,达到了优化业务的效果。
另外,通过获取与网络服务器对应的代理数字证书或假冒的数字证书,可以利用与网络服务器对应的代理数字证书或假冒的数字证书顶替网络服务器,从而与用户代理建立第一连接,丰富了与用户代理建立第一连接的实现方式。
另外,重定向响应消息包括代理网址,代理网址由中间代理节点对网络服务器的第二指示信息添加代理指示得到,第二指示信息包括网页指示信息、网页中对象的对象指示信息、对网页指示信息或对象指示信息进行转换后得到的信息中的一种,可以直接向用户代理发送网页指示信息或对象指示信息或对上述两种信息中的一种进行转换后得到的信息,而不需要先获取中间代理节点的网页,再触发中间代理节点的网页来获取网页指示信息或对象指示信息或对上述两种信息中的一种进行转换后得到的信息,可以简化操作流程,提高了业务处理的效率。
请参考图8,其示出了本发明实施例提供的一种业务处理装置的结构示意图。该业务处理装置用于中间代理节点中,可以包括:总线801,以及连接到总线的处理器802、存储器803、发射器804和接收器805。其中,存储器803用于存储若干个指令,指令被配置成由处理器802执行:
处理器802,用于与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接;根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接;
接收器805,用于通过处理器802建立的第二连接接收用户代理发送的业务信息;
处理器802,还用于对接收器805接收到的业务信息进行处理。
综上所述,本发明实施例提供的业务处理装置,通过与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接;根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接;通过第二连接接收用户代理发送的业务信息;对业务信息进行处理,可以在用户代理请求与网络服务器建立加密连接时,顶替网络服务器与用户代理建立加密的第一连接,再利用在第一连接上传输的第一指示信息触发与用户代理建立第二连接,通过第二连接对用户代理提供业务优化,解决了中间代理节点无法解密密文,导致中间代理节点无法为用户代理提供业务优化的问题,达到了优化业务的效果。
本发明实施例还提供的一种业务处理装置,该业务处理装置用于中间代理节点中,可以包括:总线801,以及连接到总线的处理器802、存储器803、发射器804和接收器805。其中,存储器803用于存储若干个指令,指令被配置成由处理器802执行:
处理器802,用于与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接;根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接;
接收器805,用于通过处理器802建立的第二连接接收用户代理发送的业务信息;
处理器802,还用于对接收器805接收到的业务信息进行处理。
可选的,接收器805,还用于截获用户代理向网络服务器发送的TCP连接请求;
处理器802,还用于读取接收器805截获的TCP连接请求中的信息,根据该信息顶替网络服务器与用户代理建立TCP连接;在TCP连接建立完成后,利用预存的与网络服务器对应的数字证书与用户代理建立第一连接。
可选的,发射器804,还用于向用户代理发送第一数字证书,第一数字证书是证书颁发机构颁发的且与网络服务器对应的数字证书,证书颁发机构的第二数字证书预先配置在用户代理中或安装有用户代理的终端的操作系统中,以使用户代理根据第二数字证书验证第一数字证书,在验证通过后,与中间代理节点建立第一连接;或,
发射器804,还用于向用户代理发送第三数字证书和第四数字证书,第三数字证书是非授权证书颁发机构颁发的且与网络服务器对应的数字证书,第四数字证书是非授权证书颁发机构的数字证书,以使用户代理根据第四数字证书验证第三数字证书,在验证通过后,与中间代理节点建立第一连接。
可选的,接收器805,还用于通过第一连接截获用户代理向网络服务器发送的第一访问请求,第一访问请求用于请求访问网络服务器;
发射器804,还用于在接收器805截获到第一访问请求后,在第一连接上向用户代理发送第一指示信息,第一指示信息用于指示用户代理向中间代理节点发送连接建立请求;
处理器802,具体用于根据连接建立请求与用户代理建立第二连接。
可选的,第一指示信息包括重定向响应消息。
可选的,重定向响应消息包括中间代理节点的网址,或,重定向响应消息包括代理网址,代理网址由中间代理节点对网络服务器的第二指示信息添加代理指示得到,第二指示信息包括网页指示信息、网页中对象的对象指示信息、对网页指示信息或对象指示信息进行转换后得到的信息中的一种。
可选的,处理器802,还用于根据连接建立请求与用户代理建立TCP连接;在TCP连接建立完成后,利用中间代理节点的数字证书与用户代理建立第二连接。
可选的,接收器805,具体用于接收用户代理通过第二连接发送的第一密文,第一密文由用户代理使用第一密钥对业务信息进行加密得到;
处理器802,具体用于根据第二密钥解密接收器805接收到的第一密文,得到业务信息;
其中,第一密钥和第二密钥是中间代理节点和用户代理在建立第二连接时约定的密钥。
可选的,当重定向响应消息包括中间代理节点的网址时,
接收器805,还用于接收用户代理通过第二连接发送的第一密文之前,接收用户代理发送的第二密文,第二密文由用户代理使用第一密钥对第二访问请求进行加密得到,第二访问请求用于请求访问中间代理节点;
处理器802,还用于使用第二密钥解密接收器805接收到的第二密文,得到第二访问请求;获取中间代理节点的网页;使用第二密钥加密网页,得到第三密文;
发射器804,还用于将处理器802加密得到的第三密文发送给用户代理,以使用户代理使用第一密钥解密第三密文,得到网页,网页用于触发用户代理发送第一密文。
可选的,当重定向响应消息包括中间代理节点的网址时,
接收器805,还用于处理器802根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接之后,接收用户代理发送的第二访问请求,第二访问请求用于请求访问中间代理节点;
处理器802,还用于获取中间代理节点的网页;
发射器804,还用于将处理器802获取到的网页发送给用户代理,网页用于触发用户代理发送业务信息。
可选的,处理器802,具体用于与网络服务器建立第三连接,并约定第三密钥和第四密钥;使用第三密钥加密业务信息,得到第四密文;
发射器804,具体用于将处理器802加密得到的第四密文发送给网络服务器,以使网络服务器使用第四密钥解密第四密文,得到业务信息。
可选的,接收器805,还用于发射器804将第四密文发送给网络服务器之后,接收网络服务器发送的第五密文,第五密文由网络服务器使用第四密钥对业务数据进行加密得到;
处理器802,还用于使用第三密钥解密接收器805接收到的第五密文,得到业务数据;使用第二密钥加密业务数据,得到第六密文;
发射器804,还用于将处理器802加密得到的第六密文发送给用户代理,以使用户代理使用第一密钥解密第六密文,得到业务数据。
综上所述,本发明实施例提供的业务处理装置,通过与用户代理建立第一连接,第一连接是中间代理节点顶替网络服务器,与用户代理建立的加密连接;根据在第一连接上传输的第一指示信息触发与用户代理建立第二连接;通过第二连接接收用户代理发送的业务信息;对业务信息进行处理,可以在用户代理请求与网络服务器建立加密连接时,顶替网络服务器与用户代理建立加密的第一连接,再利用在第一连接上传输的第一指示信息触发与用户代理建立第二连接,通过第二连接对用户代理提供业务优化,解决了中间代理节点无法解密密文,导致中间代理节点无法为用户代理提供业务优化的问题,达到了优化业务的效果。
另外,通过获取与网络服务器对应的代理数字证书或假冒的数字证书,可以利用与网络服务器对应的代理数字证书或假冒的数字证书顶替网络服务器,从而与用户代理建立第一连接,丰富了与用户代理建立第一连接的实现方式。
另外,重定向响应消息包括代理网址,代理网址由中间代理节点对网络服务器的第二指示信息添加代理指示得到,第二指示信息包括网页指示信息、网页中对象的对象指示信息、对网页指示信息或对象指示信息进行转换后得到的信息中的一种,可以直接向用户代理发送网页指示信息或对象指示信息或对上述两种信息中的一种进行转换后得到的信息,而不需要先获取中间代理节点的网页,再触发中间代理节点的网页来获取网页指示信息或对象指示信息或对上述两种信息中的一种进行转换后得到的信息,可以简化操作流程,提高了业务处理的效率。
需要说明的是:上述实施例提供的业务处理装置在进行业务处理时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将业务处理装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的业务处理装置与业务处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。