著录项信息
专利名称 | 安卓平台浏览器与网站服务器间的通信安全增强代理系统 |
申请号 | CN201310105291.6 | 申请日期 | 2013-03-28 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2013-06-26 | 公开/公告号 | CN103179128A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04L29/06 | IPC分类号 | H;0;4;L;2;9;/;0;6查看分类表>
|
申请人 | 国家电网公司;中国电力科学研究院;浙江省电力公司;华中科技大学 | 申请人地址 | 北京市西城区西长安街86号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 国家电网公司,中国电力科学研究院,浙江省电力公司,华中科技大学 | 当前权利人 | 国家电网公司,中国电力科学研究院,浙江省电力公司,华中科技大学 |
发明人 | 韩兰胜;付才;雷经纬;李敏;张忠科;杜楠;吴昊;汪文文;方志存;付永明;代启富 |
代理机构 | 武汉宇晨专利事务所 | 代理人 | 黄瑞棠 |
摘要
本发明公开了一种安卓平台浏览器与网站服务器间的通信安全增强代理系统,属于计算机及信息安全技术领域。本系统由相互连通的手机或平板电脑和服务器组成;安装在手机或平板电脑上的安卓平台包括安卓浏览器,并设置有浏览器连接重定向子系统和代理服务器子系统;服务器包括网站服务器,并设置有代理服务支持子系统。浏览器连接重定向子系统、安卓浏览器、代理服务器子系统、理服务器支持子系统和网站服务器依次连通。本发明在浏览器与网站服务器间实施一层加密传输,在不影响用户体验的情况下增强安全性;低成本,通用性强,配置灵活,通过调整加密解密算法可以提供不同强度的安全服务;适用于安卓操作系统中浏览器与服务器间的安全通信过程。
1.一种安卓平台浏览器与网站服务器间的通信安全增强代理系统,其特征在于:
本系统由相互连通的手机或平板电脑(00)和服务器(50)组成;
安装在手机或平板电脑(00)上的安卓平台(10)包括安卓浏览器(20),并设置有浏览器连接重定向子系统(30)和代理服务器子系统(40);
服务器(50)包括网站服务器(70),并设置有代理服务器支持子系统(60);
浏览器连接重定向子系统(30)、安卓浏览器(20)、代理服务器子系统(40)、代理服务器支持子系统(60)和网站服务器(70)依次连通;
所述的浏览器连接重定向子系统(30)包括前后交互的代码注入模块(31)和connect函数重定向模块(32);
代码注入模块(31)强制在安卓浏览器进程中加载connect函数重定向模块(32)的代码,并触发该模块执行,实现connect函数重定向;
所述的代理服务器子系统(40)由第一数据接收和发送模块(41)、第一数据加密模块(42)、第一数据解密模块(43)和第二数据接收和发送模块(44)组成;
第一数据接收和发送模块(41)、第一数据加密模块(42)和第二数据接收和发送模块(44)依次交互,第二数据接收和发送模块(44)、第一数据解密模块(43)和第一数据接收和发送模块(41)依次交互;
所述的代理服务器支持子系统(60)由第三数据接收和发送模块(61)、第二数据解密模块(62)、第二数据加密模块(63)和第四数据接收和发送模块(64)组成;
第三数据接收和发送模块(61)、第二数据解密模块(62)、第四数据接收和发送模块(64)依次交互,第四数据接收和发送模块(64)、第二数据加密模块(63)和第三数据接收和发送模块(61)依次交互。
2.基于权利要求1所述的通信安全增强代理系统的方法,其特征在于包括下列步骤:
①开始(A);
②判断安卓浏览器是否开启(B),是则进入步骤③,否则继续步骤②;
③注入代码到安卓浏览器(C);
④重定向connect函数(D);
修改安卓浏览器本身connect函数的执行地址为自定义的new_connect函数地址;
⑤重定向connect函数后,安卓浏览器发出的连接请求就会转向代理服务器(E);
⑥浏览器向代理服务器子系统发送http请求报文(F);
⑦代理服务器子系统接收来自安卓浏览器的http请求报文(G);
⑧代理服务器子系统加密安卓浏览器发出的http请求报文(H);
⑨代理服务器子系统向代理服务器支持子系统发送加密后http请求报文(I);
⑩代理服务器支持子系统接收来自代理服务器子系统的http请求报文(J);
代理服务器支持子系统解密来自代理服务器子系统的http请求报文(K);
代理服务器支持子系统向网站服务器发送http请求报文(L);
网站服务器接收来自代理服务器支持子系统的http请求报文(M);
网站服务器向代理服务器支持子系统发送http响应报文(N);
代理服务器支持子系统接收来自网站服务器的http响应报文(O);
代理服务器支持子系统加密来自网站服务器的http响应报文(P);
代理服务器支持子系统向代理服务器子系统发送加密后http响应报文(Q);
代理服务器子系统接收加密后的http响应报文(R);
代理服务器子系统解密http响应报文(S);
代理服务器子系统向安卓浏览器发送解密后的http响应报文(T);.
安卓浏览器接收来自代理服务器的http响应报文(U);
一次http报文请求及响应完成,用户的一次网页请求成功。
安卓平台浏览器与网站服务器间的通信安全增强代理系统\n技术领域\n[0001] 本发明属于计算机及信息安全技术领域,尤其涉及一种安卓平台浏览器与网站服务器间的通信安全增强代理系统。\n背景技术\n[0002] 随着智能手机和平板电脑的发展及普及,安卓操作系统被运用得越来越广泛,越来越多的人使用安卓浏览器访问网站进行办公、购物等,这些活动对往来数据有保密需求。\n在当前的无线网络极不安全的环境下,这些数据很容易被恶意攻击者截获并分析,从而造成数据泄露,威胁用户的隐私以及财产安全等。\n[0003] 目前手机和平板电脑的无线网络环境对访问控制极不严格,而且无线网络自身对数据传输的广播机制导致用户的无线数据可以轻易地被攻击者监听,一些免费Wi-Fi(一种能够将个人电脑、手持设备等终端以无线方式互相连接的技术)甚至自身就是一个网络陷阱(攻击者提供免费Wi-Fi诱使用户访问,从而在网关处监听数据)。攻击者在获取到用户通信数据后,就可以逆向分析。目前大多数网站对往来数据都采用明文传输,甚至对账号密码等敏感数据也采用明文传输。这样攻击者不但可以轻易地获知用户的访问内容,甚至可以分析出账号密码等信息。\n[0004] 用户针对这种攻击通常毫不知情,并且也束手无策。对抗这种攻击当前的办法是网站对敏感数据如用户的账号等信息加密传输,但是对访问内容等信息无法加密,并且细化加密内容要耗费极大的精力,网站设计者要承担大量成本,为此绝大多数网站都未针对这种攻击采用任何安全措施。同时网站对敏感数据的加密机制也难以保证抗攻击能力。\n[0005] 所有这些现状使得手机或平板电脑等终端与网站服务器间的数据通信极不安全,数据泄露威胁用户的隐私以及财产安全等问题极其严重,且目前无有效安全措施。\n发明内容\n[0006] 本发明的目的在于针对当前信息安全领域中手机或平板电脑上安卓浏览器与网站服务器间通信极易被窃听分析从而导致用户隐私泄密、财产损失等问题的现状,提供一种安卓平台浏览器与网站服务器间的通信安全增强代理系统,该系统能对抗窃听分析,并且具有通用性。\n[0007] 本发明的目的是这样实现的:\n[0008] 本系统由相互连通的手机或平板电脑和服务器组成;\n[0009] 安装在手机或平板电脑上的安卓平台包括安卓浏览器,并设置有浏览器连接重定向子系统和代理服务器子系统;\n[0010] 服务器包括网站服务器,并设置有代理服务器支持子系统。\n[0011] 浏览器连接重定向子系统、安卓浏览器、代理服务器子系统、代理服务器支持子系统和网站服务器依次连通。\n[0012] 浏览器连接重定向子系统是整个系统的核心技术部分,负责截断所有安卓浏览器端发给服务器端的请求数据包和服务器端发回给安卓浏览器端响应的数据包,并转发给代理服务器支持子系统。当代理服务器支持子系统检测到安卓浏览器程序启动后,在代理服务器支持子系统的支持下,通过函数重定向技术实现将所有安卓浏览器发出的和发向安卓浏览器端的数据包转发给代理服务器子系统。代理服务器子系统是实现安卓浏览器与网络服务器通信过程中的数据安全性和数据透明传输的核心基础技术;\n[0013] 代理服务器子系统主要负责接收所有安卓浏览器端发出的数据包,并在数据加密后转发出去,通过代理服务器支持子系统最终发送给网络服务器。另一方面,对接收到的被代理服务器支持子系统加密后发送给安卓浏览器的数据包解密后转发安卓浏览器,保证完整通信过程的基础上实现对数据的密文传输,在代理服务器支持子系统的支持下,使安卓浏览器与网络服务器数据通信的安全性得到增强;\n[0014] 代理服务器支持子系统主要负责支持代理服务器子系统,对代理服务器子系统发给网络服务器的数据进行解密后转发给网络服务器,以及将网络服务器转发给代理服务器子系统的数据包加密后再转发给代理服务器子系统。代理服务器支持子系统配合代理服务器子系统,使得数据在公共网络中以密文形式透明传输,从而增强了安卓浏览器与网络服务器数据通信的安全性。\n[0015] 本发明具有以下优点和积极效果:\n[0016] 1、在安卓浏览器与网站服务器间实施一层加密传输,该操作对用户是不可见的,在不影响用户体验的情况下增强安全性;\n[0017] 2、通用性强,配置灵活,可以低成本广泛部署,只需要调整加密解密算法就可以提供不同强度的安全服务;\n[0018] 3、适用于安卓操作系统中浏览器与服务器间的安全通信过程,整个通信过程数据在外网上以密文传输,满足抗窃听、第三方攻击和数字签名等需求。\n附图说明\n[0019] 图1是本系统的结构方框图(简图);\n[0020] 图2是本系统的结构方框图(详图);\n[0021] 图中:\n[0022] 00—手机或平板电脑,\n[0023] 手机或平板电脑是支持安卓操作系统的硬件,提供安卓平台;\n[0024] 10—安卓平台;\n[0025] 20—安卓浏览器;\n[0026] 30—浏览器连接重定向子系统,\n[0027] 31—代码注入模块,\n[0028] 32—connect函数重定向模块,\n[0029] connect函数:http://baike.baidu.com/view/888434.htm;\n[0030] 40—代理服务器子系统,\n[0031] 41—第一数据接收和发送模块,\n[0032] 42—第一数据加密模块,\n[0033] 43—第一数据解密模块,\n[0034] 44—第二数据接收和发送模块;\n[0035] 50—服务器;\n[0036] 60—代理服务器支持子系统,\n[0037] 61—第三数据接收和发送模块,\n[0038] 62—第二数据解密模块,\n[0039] 63—第二数据加密模块,\n[0040] 64—第四数据接收和发送模块;\n[0041] 70—网站服务器。\n[0042] 图3是本方法的工作流程图,\n[0043] A—开始;\n[0044] B—检测安卓浏览器是否开启;\n[0045] C—注入代码到安卓浏览器;\n[0046] D—重定向connect函数;\n[0047] E—connect函数被改造,所有连接转向代理服务器;\n[0048] F—发送http请求报文;\n[0049] G—接收http请求报文;\n[0050] H—加密http请求报文;\n[0051] I—发送加密后的http请求报文;\n[0052] J—接收加密后的http请求报文;\n[0053] K—解密http请求报文;\n[0054] L—发送http请求报文;\n[0055] M—接收http请求报文;\n[0056] N—发送http响应报文;\n[0057] O—接收http响应报文;\n[0058] P—加密http响应报文;\n[0059] Q—发送加密后的http响应报文;\n[0060] R—接收加密后的http响应报文;\n[0061] S—解密http响应报文;\n[0062] T—发送解密后的http响应报文;\n[0063] U—接收http响应报文。\n具体实施方式\n[0064] 下面结合附图和实施例详细说明:\n[0065] 一、系统\n[0066] 1、总体\n[0067] 如图1,本系统由相互连通的手机或平板电脑00和服务器50组成;\n[0068] 安装在手机或平板电脑00上的安卓平台10包括安卓浏览器20,并设置有浏览器连接重定向子系统30和代理服务器子系统40;\n[0069] 服务器50包括网站服务器70,并设置有代理服务器支持子系统60;\n[0070] 浏览器连接重定向子系统30、安卓浏览器20、代理服务器子系统40、代理服务器支持子系统60和网站服务器70依次连通。\n[0071] 本系统的工作原理是:\n[0072] 在安卓平台10上,浏览器连接重定向子系统30对安卓浏览器20进行改造,使安卓浏览器20对网站服务器70的所有请求都转向代理服务器子系统40,即安卓浏览器20的所有通信数据必须经过代理服务器子系统40;在服务器50端,设置代理服务器支持子系统\n60拦截并处理发往网站服务器70的数据,然后转发给网站服务器70,即网站服务器50的所有通信数据必须经过代理服务器支持子系统60。这样使得安卓浏览器20与网站服务器\n70间的通信就需代理服务器子系统40和代理服务器支持子系统60的支持来完成。从安卓浏览器20发往网站服务器70的通信数据由代理服务器子系统40加密,由代理服务器支持子系统60解密;从网站服务器70发往安卓浏览器20的数据由代理服务器支持子系统60加密,由代理服务器子系40统解密。这样数据在用户设备如手机或平板电脑00等和网站服务器70之间都是密文传输,即使数据被恶意攻击者窃听,也无法直接获取信息。\n[0073] 2、功能块\n[0074] 1)浏览器连接重定向子系统30\n[0075] 如图1、2,浏览器连接重定向子系统30包括前后交互的代码注入模块31和connect函数重定向模块32;\n[0076] 代码注入模块31强制在安卓浏览器20进程中加载connect函数重定向模块32的代码,并触发该模块执行,实现connect函数重定向。\n[0077] (1)代码注入模块31是为connect函数重定向模块32提供运行平台,通过代码注入模块31加载connect函数重定向模块32的代码,实现重定向安卓浏览器20的connect函数。\n[0078] 代码注入模块31的工作原理为:\n[0079] ①利用调试机制对安卓浏览器20进程调试;\n[0080] ②强制加载connect函数重定向模块32的代码到安卓浏览器20进程空间;\n[0081] ③执行connect函数重定向模块32的代码实现connect函数重定向。\n[0082] (2)connect函数重定向模块32是整个系统实现安全数据通信的前提,该模块是为了实现connect函数的重定向,通过将安卓本身的connect函数重定向到我们自定义的connect函数,实现将所有安卓浏览器20发出的数据报文转发给代理服务器子系统40,最终通过代理服务器子系统40将数据报文转发给服务器50。\n[0083] connect函数重定向模块32的工作原理为:\n[0084] ①在该模块中定义一个new_connect函数,new_connect函数实现修改安卓浏览器20发送的连接请求报文的目的IP为本机代理服务器的IP;\n[0085] ②通过查找安卓浏览器20本身connect函数的执行地址和自定义的new_connect函数的执行地址;\n[0086] ③修改安卓浏览器20本身connect函数的地址为new_connect函数的地址。\n[0087] 2)代理服务器子系统40\n[0088] 如图1、2,代理服务器子系统40由第一数据接收和发送模块41、第一数据加密模块42、第一数据解密模块43和第二数据接收和发送模块44组成;\n[0089] 第一数据接收和发送模块41、第一数据加密模块42和第二数据接收和发送模块\n44依次交互,第二数据接收和发送模块44、第一数据解密模块43和第一数据接收和发送模块41依次交互。\n[0090] 安卓浏览器20到网络服务器70方向,第一数据接收和发送模块41接收安卓浏览器20发出的http请求报文,在第一数据加密模块42加密后,通过第二数据接收和发送模块44发送给代理服务器支持子系统60;\n[0091] 网络服务器70到安卓浏览器20方向,第二数据接收和发送模块44接收代理服务器支持子系统60发来的http响应报文,在第一数据解密模块43解密后,通过第一数据接收和发送模块41发送给安卓浏览器20。\n[0092] (1)第一数据接收和发送模块41负责接收安卓浏览器20发给网站服务器70的所有http请求报文,以及将接收到的网站服务器70发回给安卓浏览器20的所有http响应报文发送给安卓浏览器20。\n[0093] 第一数据接收和发送模块41的工作原理为:\n[0094] 首先,创建一个服务器线程,等待接受安卓浏览器20的连接请求,当连接建立成功,接收安卓浏览器20发给网站服务器的http请求报文;然后,在第二数据接收和发送模块44与代理服务器支持子系统60连接建立成功后,将接收到的http响应报文发送给安卓浏览器20。\n[0095] (2)第一数据加密模块42负责将所有安卓浏览器20发送给网站服务器70的http请求报文利用加密算法加密报文。加密后的http请求报文发送给代理服务器支持子系统\n60,实现报文在外网中以密文形式传输,增强了安卓浏览器20和网站服务器70间通信的安全性。\n[0096] 第一数据加密模块42的工作原理为:对接收到的http请求报文采用加密算法加密。\n[0097] (3)第一数据解密模块43负责将所有网站服务器70发回给安卓浏览器20的http响应报文利用与选择的加密算法对应的解密算法解密报文。解密后的http响应报文发回给安卓浏览器20,使得安卓浏览器20能够响应接收到的http响应报文。第一数据解密模块43配合第一数据加密模块42实现了安卓浏览器20和网站服务器70间的安全通信。\n[0098] 第一数据解密模块43的工作原理为:对接收到的由代理服务器支持子系统60加密的http响应报文采用与选择的加密算法对应的解密算法解密。\n[0099] (4)第二数据接收和发送模块44负责将安卓浏览器20发送给网站服务器70的经第一数据加密模块42加密后的http请求报文发送给代理服务器支持子系统60,以及接收网站服务器70响应的由代理服务器支持子系统60转发的所有http响应报文。\n[0100] 第二数据接收和发送模块44的工作原理为:首先,创建一个客户端线程,向代理服务器支持子系统60请求连接,当连接建立成功,将接收到的安卓浏览器20发出的http请求报文发送给代理服务器支持子系统60,最终发送给网络服务器70;然后,创建一个服务器线程,在代理服务器支持子系统60请求建立连接成功后,接收代理服务器支持子系统\n60发出的http响应报文。\n[0101] 3)代理服务器支持子系统60\n[0102] 如图1、2,代理服务器支持子系统60由第三数据接收和发送模块61、第二数据解密模块62、第二数据加密模块63和第四数据接收和发送模块64组成;\n[0103] 第三数据接收和发送模块61、第二数据解密模块62、第四数据接收和发送模块64依次交互,第四数据接收和发送模块64、第二数据加密模块63和第三数据接收和发送模块\n61依次交互。\n[0104] 安卓浏览器20到网络服务器70方向,第三数据接收和发送模块61接收代理服务器子系统40加密后的http请求报文,在第二数据解密模块62解密后,通过第四数据接收和发送模块64发送给网站服务器70;\n[0105] 服务器50到安卓浏览器20方向,第四数据接收和发送模块64发送网站服务器70发回的http响应报文,在第二数据加密模块63加密后,通过第三数据接收和发送模块61发送给安卓浏览器20。\n[0106] (1)第三数据接收和发送模块61负责接收安卓浏览器20发给网站服务器70的所有http请求报文,以及将网站服务器70发回给安卓浏览器20的所有http响应报文发送给代理服务器子系统40。\n[0107] 第三数据接收和发送模块61的工作原理为:首先,创建一个服务器线程,等待接受代理服务器子系统40的连接请求,当连接建立成功,接收安卓浏览器20发给网站服务器的经代理服务器子系统40转发的http请求报文;然后,在第三数据接收和发送模块64与代理服务器子系统40连接建立成功后,将接收到的由代理服务器支持子系统60转发的http响应报文发送给安卓浏览器20。\n[0108] (2)第二数据解密模块62负责将所有安卓浏览器20经过代理服务器子系统40加密后发送给网站服务器70的http请求报文利用与代理服务器子系统40相同的解密算法解密报文,并把解密后的http请求报文发送给网络服务器70,使得网络服务器70能够响应安卓浏览器20发送的http请求报文。第二数据解密模块62和第二数据加密模块63配合第一数据加密模块42和第一数据解密模块43实现了安卓平台浏览器和网站服务器间的安全通信。\n[0109] 第二数据解密模块62的工作原理为:对接收到的经代理服务器子系统40加密的http请求报文采用与代理服务器子系统40相同的解密算法解密。\n[0110] (3)第二数据加密模块63负责将所有网站服务器70发回给安卓浏览器20的http响应报文利用与代理服务器子系统40相同的加密算法加密报文,并把加密后的http响应报文发送给代理服务器子系统40,实现报文在外网中以密文形式传输,增强了安卓平台浏览器和网站服务器间通信的安全性。\n[0111] 第二数据加密模块63的工作原理为:对网络服务器70发回给安卓浏览器20的http响应报文采用与代理服务器子系统40相同的加密算法加密。\n[0112] (4)第四数据接收和发送模块64负责将安卓浏览器20发送给网站服务器70的经第二数据解密模块43解密后的http请求报文发送给网站服务器70,以及接收网站服务器\n70发回给安卓浏览器20的所有http响应报文。\n[0113] 第四数据接收和发送模块64的工作原理为:首先,创建一个客户端线程,向网络服务器70的发送连接请求,当连接建立成功,将接收到的代理服务器子系统40发出的经过第二数据解密模块62解密后的http请求报文发送给网络服务器70;然后,在第四数据接收和发送模块64与网络服务器70连接建立成功后,接收网络服务器70发回给安卓浏览器\n20的http响应报文。\n[0114] 二、方法\n[0115] 如图3,本方法包括下列步骤:\n[0116] ①开始(A);\n[0117] ②判断安卓浏览器是否开启(B),是则进入步骤③,否则继续步骤②;\n[0118] ③注入代码到安卓浏览器(C);\n[0119] ④重定向connect函数(D);\n[0120] 修改安卓浏览器本身connect函数的执行地址为我们自定义的new_connect函数地址;\n[0121] ⑤重定向connect函数后,安卓浏览器发出的连接请求就会转向代理服务器(E);\n[0122] ⑥浏览器向代理服务器子系统发送http请求报文(F);\n[0123] ⑦代理服务器子系统接收来自安卓浏览器的http请求报文(G);\n[0124] ⑧代理服务器子系统加密安卓浏览器发出的http请求报文(H);\n[0125] ⑨代理服务器子系统向代理服务器支持子系统发送加密后http请求报文(I);\n[0126] ⑩代理服务器支持子系统接收来自代理服务器子系统的http请求报文(J);\n[0127] 代理服务器支持子系统解密来自代理服务器子系统的http请求报文(K);\n[0128] 代理服务器支持子系统向网站服务器发送http请求报文(L);\n[0129] 网站服务器接收来自代理服务器支持子系统的http请求报文(M);\n[0130] 网站服务器向代理服务器支持子系统发送http响应报文(N);\n[0131] 代理服务器支持子系统接收来自网站服务器的http响应报文(O);\n[0132] 代理服务器支持子系统加密来自网站服务器的http响应报文(P);\n[0133] 代理服务器支持子系统向代理服务器子系统发送加密后http响应报文(Q);\n[0134] 代理服务器子系统接收加密后的http响应报文(R);\n[0135] 代理服务器子系统解密http响应报文(S);\n[0136] 代理服务器子系统向安卓浏览器发送解密后的http响应报文(T);.[0137] 安卓浏览器接收来自代理服务器的http响应报文(U);\n[0138] 一次http报文请求及响应完成。
法律信息
- 2020-03-17
未缴年费专利权终止
IPC(主分类): H04L 29/06
专利号: ZL 201310105291.6
申请日: 2013.03.28
授权公告日: 2016.03.16
- 2016-03-16
- 2013-07-24
实质审查的生效
IPC(主分类): H04L 29/06
专利申请号: 201310105291.6
申请日: 2013.03.28
- 2013-06-26
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2007-09-12
|
2006-03-07
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |