客户端内嵌页面的保护方法和系统与流程

文档序号:12623929阅读:497来源:国知局
客户端内嵌页面的保护方法和系统与流程

本发明涉及互联网技术领域,特别是涉及一种客户端内嵌页面的保护方法和系统。



背景技术:

内嵌页面又称内嵌网页,是一种在客户端软件里面嵌入HTML(Hyper Text Markup Language,超级文本标记语言)网页的技术,客户端可以通过加载网站的页面,并将其嵌入到客户端界面当中,由于网页实际保存在后台服务器,因此可以适应快速迭代的需求,一些敏感的业务也可以直接在网页上做,从而避免将接口暴露给客户端。并且网页相比客户端具有丰富的界面库,内嵌网页也能实现绚丽的UI(User Interface,用户界面)动效。

页面保护是网页应用的一个重要方面,现有的页面保护方案,一般是在单一的网页上进行保护,这种网页保护技术着重于保护页面不被篡改、服务器敏感数据不被未经授权的访问、防止服务器被恶意渗透等,缺乏对客户端有内嵌网页的有效保护方案,内嵌页面的保护做的不好,很容易被山寨克隆甚至恶意劫持,克隆者通过伪造客户端,加载内嵌页面,就能做出一份山寨软件产品,恶意攻击者甚至可以通过劫持网页,骗取用户的敏感信息等。

虽然相关软件技术中也有专门针对客户端软件做的保护,但客户端软件的保护着重于保护软件的注册机制不被破解、通过代码混淆或者加密技术保护关键的部分不被逆向等。因此,即使同时运行单一的网页保护和客户端软件的保护,也难以确保内嵌页面的安全保护。



技术实现要素:

基于此,有必要针对现有技术中缺乏有效的客户端内嵌页面的保护方案的技术问题,提供一种客户端内嵌页面的保护方法和系统。

一种客户端内嵌页面的保护方法,包括如下步骤:

在请求加载内嵌页面时,向所述内嵌页面请求密钥;其中,所述内嵌页面将所述请求转递至验证服务器;

接收由所述验证服务器响应请求产生,且通过所述内嵌页面返回的密钥;

将所述返回的密钥发送至所述验证服务器,验证是否与产生的密钥一致;若一致,加载所述内嵌页面,否则停止加载所述内嵌页面。

一种客户端内嵌页面的保护系统,包括:

第一请求模块,用于在请求加载内嵌页面时,向所述内嵌页面请求密钥;其中,所述内嵌页面将所述请求转递至验证服务器;

第一接收模块,用于接收由所述验证服务器响应请求产生,且通过所述内嵌页面返回的密钥;

第一验证模块,用于将所述返回的密钥发送至所述验证服务器,验证是否与产生的密钥一致;若一致,加载所述内嵌页面,否则停止加载所述内嵌页面。

上述客户端内嵌页面的保护方法和系统,在客户端请求加载内嵌页面时,向内嵌页面请求一个密钥,内嵌页面将该请求转递至验证服务器,由验证服务器产生一个验证使用的密钥,客户端通过内嵌页面得到该密钥后,发送至验证服务器进行验证,从而确定内嵌页面是否可信;在此,只要是客户端是可信的,就可以校验出内嵌页面是否可信,从而实现对客户端内嵌页面的保护,提高客户端加载内嵌页面的安全性。

一种客户端内嵌页面的保护方法,包括如下步骤:

当客户端请求加载内嵌页面时,向所述客户端请求密钥;其中,所述客户端将所述请求转递至验证服务器;

接收由所述验证服务器响应请求产生,且通过所述客户端返回的密钥;

将所述返回的密钥发送至所述验证服务器,验证是否与产生的密钥一致;若一致,允许所述客户端加载内嵌页面,否则拒绝加载请求。

一种客户端内嵌页面的保护系统,包括:

第二请求模块,用于当客户端请求加载内嵌页面时,向所述客户端请求密钥;其中,所述客户端将所述请求转递至验证服务器;

第二接收模块,用于接收由所述验证服务器响应请求产生,且通过所述客 户端返回的密钥;

第二验证模块,用于将所述返回的密钥发送至所述验证服务器,验证是否与产生的密钥一致;若一致,允许所述客户端加载内嵌页面,否则拒绝加载请求。

上述客户端内嵌页面的保护方法和系统,在客户端请求加载内嵌页面时,内嵌页面向客户端请求一个密钥,客户端将该请求转递至验证服务器,由验证服务器产生一个验证使用的密钥,内嵌页面通过客户端得到该密钥后,发送至验证服务器进行验证,从而确定客户端是否可信;在此,只要内嵌页面是可信的,就可以校验出客户端是否可信,从而实现对客户端内嵌页面的保护,提高客户端加载内嵌页面的安全性。

附图说明

图1为本发明实施例提供的应用的客户端内嵌页面的保护方法应用的硬件架构图;

图2为一个实施例的客户端内嵌页面的保护方法流程图;

图3为一个实施例的客户端校验内嵌页面的流程图;

图4为一个实施例的客户端内嵌页面的保护系统结构示意图;

图5为另一个实施例的客户端内嵌页面的保护方法流程图;

图6为一个实施例的内嵌页面校验客户端的流程图;

图7为另一个实施例的客户端内嵌页面的保护系统结构示意图;

图8为能实现本发明实施例的一个计算机系统的模块图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

参考图1所示,图1为本发明实施例提供的应用的客户端内嵌页面的保护方法应用的硬件架构图,该硬件架构包终端设备102、后台服务器104。其中, 终端设备102可以是诸如计算机、智能手机、平板电脑、个人数字助理等设备,但并不局限于此。终端设备102可以通过有线或无线方式等方式接入公共网络,如Internet网等,与后台服务器104进行通信。终端设备102上可运行各种客户端应用,终端设备102上安装的客户端可以通过internet网络访问到后台服务器104请求加载内嵌网页;终端设备102的加载内嵌网页后,将内嵌网页的内容嵌入客户端软件里。对于后台服务器104,可以是指实现各种后台功能的服务器设备。

下面阐述本发明客户端内嵌页面的保护方法的实施例:

参考图2所示,图2为一个实施例的客户端内嵌页面的保护方法流程图,包括如下步骤:

S110,在请求加载内嵌页面时,向所述内嵌页面请求密钥;其中,所述内嵌页面将所述请求转递至验证服务器。

在此过程中,当一个合法可信的客户端(例如官方授权的客户端,没有被篡改或者伪造的)请求加载内嵌页面时,可以向该内嵌页面请求密钥;所述密钥是进行合法性校验的依据,内嵌页面接收到该请求时,将该请求转递至验证服务器;这里的校验服务器是用于进行校验用途的,因此,要达到更高的安全性,校验服务器应当先确保是安全可靠的。

优选的,验证服务器为基于CS(Server/Client)协议结构的服务器,CS协议,即Server/Client结构的TCP或者UDP协议,Server是服务器端,Client是客户端;通过CS协议可以实现安全可靠的传输,一般是客户端向服务器端发起请求,服务器端应答。

S120,接收由所述验证服务器响应请求产生,且通过所述内嵌页面返回的密钥。

在本步骤中,可以通过验证服务器响应请求产生密钥交给内嵌页面,内嵌页面返回给客户端。一般情况下,验证服务器以随机方式产生密钥,这样可以提供校验安全性。

在一个实施例中,内嵌页面可以通过所在的WEB服务器将请求转递至验证服务器,并通过WEB服务器获取验证服务器响应请求产生的密钥。

在上述实施例中,可以先对验证服务器进行安全设置,验证服务器只与合法的WEB服务器连接。从而确保连接验证服务器是WEB服务器是安全可靠的,伪造的WEB服务器无法连接验证服务器。

上述安全设置,可以通过IP(Internet Protocol,网络之间互连的协议)地址过滤,只允许内部地址的WEB服务器访问验证服务器,禁止外部地址的WEB服务器访问,实现验证服务器与之间的WEB服务器物理隔绝。

S130,将所述返回的密钥发送至所述验证服务器,验证是否与产生的密钥一致;若一致,加载所述内嵌页面,否则停止加载所述内嵌页面。

在本步骤中,主要是密钥的校验过程,可以将返回给客户端的密钥发送至验证服务器与之前产生的密钥进行验证,验证是否与产生的密钥一致,由于客户端是可靠的,因此,如果验证是一致,说明该内嵌页面是可信的,客户端可以加载内嵌页面,否则,说明该内嵌页面是不可信的,应该让客户端停止加载内嵌页面。

上述实施例的客户端内嵌页面的保护方法,可以以软件形式应用到客户端当中,如果客户端是合法可信的,那么通过上述方法,就可以校验内嵌页面是否可信,从而实现对客户端内嵌页面的保护,提高客户端加载内嵌页面的安全性。

为了根据清晰上述实施例的客户端内嵌页面的保护方法的校验流程,下面结合一个算法实例进行阐述,参考图3所示,图3为一个实施例的客户端校验内嵌页面的流程图;这里假设客户端是可信的,内嵌页面的可信性是未知的。则通过客户端去校验内嵌页面是否可信的流程,可以如下:

s301,客户端加载内嵌页面时,向内嵌页面请求一个密钥;

s302,内嵌页面通过所在的WEB服务器将请求转递给校验服务器;

s303,校验服务器接到请求后动态生成一个密钥;

s304,校验服务器返回密钥给WEB服务器;

s305,WEB服务器将密钥通过内嵌页面返回给客户端;

s306,客户端拿到密钥发送至校验服务器;

s307,校验服务器验证该密钥是否为先前动态生成的;

s308,校验服务器返回校验结果给客户端;其中,如果该密钥是校验服务器为先前动态生成的,则返回验证通过,此时可以认为内嵌页面是可信的,反之返回验证不通过,认为内嵌页面不可信。

通过上述算法实例可以看出,内嵌页面被恶意劫持的情况下,伪造的内嵌页面无法去校验服务器获取到有效密钥,密钥验证就不能通过,客户端拒绝加载内嵌页面。

下面阐述本发明客户端内嵌页面的保护系统的实施例:

参考图4所示,图4为一个实施例的客户端内嵌页面的保护系统结构示意图,包括:

第一请求模块110,用于在请求加载内嵌页面时,向所述内嵌页面请求密钥;其中,所述内嵌页面将所述请求转递至验证服务器;

第一接收模块120,用于接收由所述验证服务器响应请求产生,且通过所述内嵌页面返回的密钥;

第一验证模块130,用于将所述返回的密钥发送至所述验证服务器,验证是否与产生的密钥一致;若一致,加载所述内嵌页面,否则停止加载所述内嵌页面。

对于第一请求模块110,当一个合法可信的客户端(例如官方授权的客户端,没有被篡改或者伪造的)请求加载内嵌页面时,第一请求模块110可以向该内嵌页面请求密钥;所述密钥是进行合法性校验的依据,内嵌页面接收到该请求时,将该请求转递至验证服务器;这里的校验服务器是用于进行校验用途的,因此,要达到更高的安全性,校验服务器应当先确保是安全可靠的。

优选的,验证服务器为基于CS(Server/Client)协议结构的服务器,CS协议,即Server/Client结构的TCP或者UDP协议,Server是服务器端,Client是客户端;通过CS协议可以实现安全可靠的传输,一般是客户端向服务器端发起请求,服务器端应答。

对于第一接收模块120接收的密钥,可以通过验证服务器响应请求产生密钥交给内嵌页面,内嵌页面返回给客户端。一般情况下,验证服务器以随机方式产生密钥,这样可以提供校验安全性。

在一个实施例中,内嵌页面可以通过所在的WEB服务器将请求转递至验证服务器,并通过WEB服务器获取验证服务器响应请求产生的密钥。

在上述实施例中,可以先对验证服务器进行安全设置,验证服务器只与合法的WEB服务器连接。从而确保连接验证服务器是WEB服务器是安全可靠的,伪造的WEB服务器无法连接验证服务器。

上述安全设置,可以通过IP(Internet Protocol,网络之间互连的协议)地址过滤,只允许内部地址的WEB服务器访问验证服务器,禁止外部地址的WEB服务器访问,实现验证服务器与之间的WEB服务器物理隔绝。

对于第一验证模块130,第一验证模块130可以将返回给客户端的密钥发送至验证服务器与之前产生的密钥进行验证,验证是否与产生的密钥一致,由于客户端是可靠的,因此,如果验证是一致,说明该内嵌页面是可信的,客户端可以加载内嵌页面,否则,说明该内嵌页面是不可信的,应该让客户端停止加载内嵌页面。

本发明的客户端内嵌页面的保护系统与本发明的客户端内嵌页面的保护方法一一对应,在上述客户端内嵌页面的保护方法的实施例阐述的技术特征及其有益效果均适用于客户端内嵌页面的保护系统的实施例中,特此声明。

下面阐述本发明客户端内嵌页面的保护方法的另一个实施例:

参考图5所示,图5为另一个实施例的客户端内嵌页面的保护方法流程图,包括如下步骤:

S510,当客户端请求加载内嵌页面时,向所述客户端请求密钥;其中,所述客户端将所述请求转递至验证服务器。

在此过程中,当一个客户端请求加载合法可信的内嵌页面(例如官方的网页,没有被劫持或篡改的)时,内嵌页面可以向该客户端请求密钥;所述密钥是进行合法性校验的依据,客户端接收到该请求时,将该请求转递至验证服务器;这里的校验服务器是用于进行校验用途的,因此,要达到更高的安全性,校验服务器应当先确保是安全可靠的。

优选的,验证服务器为基于CS(Server/Client)协议结构的服务器,CS协议,即Server/Client结构的TCP或者UDP协议,Server是服务器端,Client是 客户端;通过CS协议可以实现安全可靠的传输,一般是客户端向服务器端发起请求,服务器端应答。

S520,接收由所述验证服务器响应请求产生,且通过所述客户端返回的密钥。

在本步骤中,可以通过验证服务器响应请求产生密钥交给客户端,客户端返回给内嵌页面。一般情况下,验证服务器以随机方式产生密钥,这样可以提供校验安全性。

S530,将所述返回的密钥发送至所述验证服务器,验证是否与产生的密钥一致;若一致,允许所述客户端加载内嵌页面,否则拒绝加载请求。

在本步骤中,主要是密钥的校验过程,可以将客户端返回给内嵌页面的密钥发送至验证服务器与之前产生的密钥进行验证,验证是否与产生的密钥一致,由于客户端是可靠的,因此,如果验证是一致,说明该客户端是可信的,客户端可以加载内嵌页面,否则,说明该客户端是不可信的,拒绝客户端加载内嵌页面的请求。

在一个实施例中,所述内嵌页面通过所在的WEB服务器将所述密钥发送至所述验证服务器进行验证,并通过所述WEB服务器获取所述验证服务器返回的验证结果。

在上述实施例中,可以先对验证服务器与客户端之间的通信进行协议加密,如HTTPS协议(Hyper Text Transfer Protocol over Secure Socket Layer,以安全为目标的HTTP通道);从而确保连接验证服务器的客户端是安全可靠的,伪造的客户端无法连接验证服务器。

上述实施例的客户端内嵌页面的保护方法,可以以软件形式应用到页面当中,如果内嵌页面是合法可信的,那么通过上述方法,就可以校验客户端是否可信,从而实现对客户端内嵌页面的保护,提高客户端加载内嵌页面的安全性。

为了根据清晰上述实施例的客户端内嵌页面的保护方法的校验流程,下面结合一个算法实例进行阐述,参考图6所示,图6为一个实施例的内嵌页面校验客户端的流程图;这里假设内嵌页面是可信的,客户端的可信性是未知的。则通过内嵌页面去校验客户端是否可信的流程,可以如下:

s601,客户端请求加载内嵌页面时,内嵌页面向客户端请求一个密钥;

s602,客户端将请求转递给校验服务器;

s603,校验服务器动态生成一个密钥;

s604,校验服务器将密钥返回给客户端;

s605,客户端将密钥返回给内嵌页面;

s606,内嵌页面通过所在的WEB服务器将密钥发送给校验服务器;

s607,校验服务器验证密钥是否为先前动态生成的;

s608,校验服务器返回校验结果给内嵌页面;其中,如果该密钥是校验服务器先前动态生成的,则返回验证通过,此时可以认为客户端是可信的,反之返回验证不通过,认为客户端不可信。

通过上述算法实例可以看出,如果客户端是伪造的,内嵌页面向客户端请求密钥,伪造的客户端无法去校验服务器获取到有效密钥,密钥验证就不能通过,内嵌页面拒绝客户端加载请求。

下面阐述本发明客户端内嵌页面的保护系统的另一个实施例:

参考图7所示,图7为另一个实施例的客户端内嵌页面的保护系统结构示意图,包括:

第二请求模块510,用于当客户端请求加载内嵌页面时,向所述客户端请求密钥;其中,所述客户端将所述请求转递至验证服务器;

第二接收模块520,用于接收由所述验证服务器响应请求产生,且通过所述客户端返回的密钥;

第二验证模块530,用于将所述返回的密钥发送至所述验证服务器,验证是否与产生的密钥一致;若一致,允许所述客户端加载内嵌页面,否则拒绝加载请求。

对于第二请求模块510,当一个客户端请求加载合法可信的内嵌页面(例如官方的网页,没有被劫持或篡改的)时,第二请求模块510可以通过内嵌页面向该客户端请求密钥;所述密钥是进行合法性校验的依据,客户端接收到该请求时,将该请求转递至验证服务器;这里的校验服务器是用于进行校验用途的,因此,要达到更高的安全性,校验服务器应当先确保是安全可靠的。

优选的,验证服务器为基于CS(Server/Client)协议结构的服务器,CS协议,即Server/Client结构的TCP或者UDP协议,Server是服务器端,Client是客户端;通过CS协议可以实现安全可靠的传输,一般是客户端向服务器端发起请求,服务器端应答。

对于第二接收模块520接收的密钥,可以通过验证服务器响应请求产生密钥交给客户端,客户端返回给内嵌页面。一般情况下,验证服务器以随机方式产生密钥,这样可以提供校验安全性。

对于第二验证模块530,可以将客户端返回给内嵌页面的密钥发送至验证服务器与之前产生的密钥进行验证,验证是否与产生的密钥一致,由于客户端是可靠的,因此,如果验证是一致,说明该客户端是可信的,客户端可以加载内嵌页面,否则,说明该客户端是不可信的,拒绝客户端加载内嵌页面的请求。

在一个实施例中,所述内嵌页面通过所在的WEB服务器将所述密钥发送至所述验证服务器进行验证,并通过所述WEB服务器获取所述验证服务器返回的验证结果。

在上述实施例中,可以先对验证服务器与客户端之间的通信进行协议加密,如HTTPS协议(Hyper Text Transfer Protocol over Secure Socket Layer,以安全为目标的HTTP通道);从而确保连接验证服务器的客户端是安全可靠的,伪造的客户端无法连接验证服务器。

本发明的客户端内嵌页面的保护系统与本发明的客户端内嵌页面的保护方法一一对应,在上述客户端内嵌页面的保护方法的实施例阐述的技术特征及其有益效果均适用于客户端内嵌页面的保护系统的实施例中,特此声明。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random Access Memory,RAM)等。

本发明的技术方案,可以应用到计算机、智能手机、平板电脑、个人数字助理等设备中,图8为能实现本发明实施例的一个计算机系统的模块图。该计算机系统只是一个适用于本发明的计算机环境的示例,不能认为是提出了对本发明的使用范围的任何限制。计算机系统也不能解释为需要依赖于或具有图示的示例性的计算机系统中的一个或多个部件的组合。图8中示出的计算机系统是一个适合用于本发明的计算机系统的例子。具有不同子系统配置的其它架构也可以使用。

如图8所示,包括处理器810、存储器820和系统总线822。包括存储器820和处理器810在内的各种系统组件连接到系统总线822上。处理器810是一个用来通过计算机系统中基本的算术和逻辑运算来执行计算机程序指令的硬件。存储器820是一个用于临时或永久性存储计算程序或数据(例如,程序状态信息)的物理设备。系统总线820可以为以下几种类型的总线结构中的任意一种,包括存储器总线或存储控制器、外设总线和局部总线。处理器810和存储器820可以通过系统总线822进行数据通信。其中存储器820包括只读存储器(ROM)或闪存(图中都未示出),以及随机存取存储器(RAM),RAM通常是指加载了操作系统和应用程序的主存储器。

另外,该计算机系统还包括显示接口830(例如,图形处理单元)、显示设备840(例如,液晶显示器)、音频接口850(例如,声卡)以及音频设备860(例如,扬声器)。显示设备840和音频设备860是用于体验多媒体内容的媒体设备。还可以包括一个存储设备870。存储设备870可以从多种计算机可读介质中选择,计算机可读介质是指可以通过计算机系统访问的任何可利用的介质,包括移动的和固定的两种介质。例如,计算机可读介质包括但不限于,闪速存储器(微型SD卡),CD-ROM,数字通用光盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁存储设备,或者可用于存储所需信息并可由计算机系统访问的任何其它介质。

如图示,该计算机系统还包括输入装置880和输入接口890(例如,IO控制器)。用户可以通过输入装置880,如键盘、鼠标、显示装置840上的触摸面 板设备,输入指令和信息到计算机系统中。输入装置880通常是通过输入接口890连接到系统总线822上的,但也可以通过其它接口或总线结构相连接,如通用串行总线(USB)。

计算机系统可在网络环境中与一个或者多个网络设备进行逻辑连接。网络设备可以是个人电脑、服务器、路由器、智能电话、平板电脑或者其它公共网络节点。计算机系统通过局域网(LAN)接口900或者移动通信单元910与网络设备相连接。局域网(LAN)是指在有限区域内,例如家庭、学校、计算机实验室、或者使用网络媒体的办公楼,互联组成的计算机网络。WiFi和双绞线布线以太网是最常用的构建局域网的两种技术。WiFi是一种能使计算机系统间交换数据或通过无线电波连接到无线网络的技术。移动通信单元910能在一个广阔的地理区域内移动的同时通过无线电通信线路接听和拨打电话。除了通话以外,移动通信单元910也支持在提供移动数据服务的2G,3G或4G蜂窝通信系统中进行互联网访问。

应当指出的是,其它包括比图示的计算机系统更多或更少的子系统的计算机系统也能适用于发明。

如上面详细描述的,适用于本发明的计算机系统能执行客户端内嵌页面的保护方法的指定操作。计算机系统通过处理器810运行在计算机可读介质中的软件指令的形式来执行这些操作。这些软件指令可以从存储设备870或者通过局域网接口900从另一设备读入到存储器820中。存储在存储器820中的软件指令使得处理器810执行上述的客户端内嵌页面的保护方法。此外,通过硬件电路或者硬件电路结合软件指令也能同样实现本发明。因此,实现本发明并不限于任何特定硬件电路和软件的组合。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1