著录项信息
专利名称 | 提供应用服务的方法 |
申请号 | CN201180071229.9 | 申请日期 | 2011-06-30 |
法律状态 | 权利终止 | 申报国家 | 中国 |
公开/公告日 | 2014-05-28 | 公开/公告号 | CN103828291A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04L9/32 | IPC分类号 | H;0;4;L;9;/;3;2查看分类表>
|
申请人 | 深圳市君盛惠创科技有限公司 | 申请人地址 | 广东省东莞市莞城旗峰路162号中侨大厦B栋1106
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 东莞市瑞腾电子科技有限公司 | 当前权利人 | 东莞市瑞腾电子科技有限公司 |
发明人 | 林武强 |
代理机构 | 暂无 | 代理人 | 暂无 |
摘要
本发明实施例公开了一种提供应用服务的方法,包括:根据所接收的用户手机的应用服务请求,对用户进行鉴权,当所述用户鉴权通过时,将应用服务请求向应用服务器发送,应用服务器根据应用服务请求向用户手机提供应用服务;本发明实施例由无线应用协议网关对用户手机进行鉴权;用户将第一指纹数据注册到无线应用协议网关,无线应用协议网关获取用户的加密指纹模板以及该加密指纹模板对应的加密密钥,无线应用协议网关利用第一指纹数据对加密密钥生成安全鉴权数据,使加密密钥被隐藏,使得加密密钥的保护更加严密;鉴权时,利用用户的第二指纹数据对安全鉴权数据进行解密获得加密密钥,利用加密密钥对加密指纹模板进行解密得到指纹模板,使得鉴权过程更加安全。
1.一种提供应用服务的方法,其特征在于,包括:
步骤A.将用户指纹信息注册到无线应用协议网关,具体包括:
A1.在用户手机触摸屏上输入指纹,根据所述用户指纹,用户手机生成所述用户的第一指纹数据,将所述第一指纹数据通过加密通道发送给无线应用协议网关;
A2.无线应用协议网关通过加密通道从应用服务器获取所述用户的加密指纹模板以及该加密指纹模板对应的加密密钥KEY,将所述加密指纹模板保存在无线应用协议网关本地,所述加密密钥KEY是由应用服务器随机生成,其长度为128位;所述加密指纹模板是由所述应用服务器利用所述加密密钥KEY对用户指纹模板加密后生成;
A3.无线应用协议网关根据所述第一指纹数据以及所述加密密钥,生成安全鉴权数据,将所述安全鉴权数据存储在本地,并将所述加密密钥销毁;
步骤B.在用户手机上输入所要获取的应用服务信息,在用户手机触摸屏上输入指纹;
步骤C.用户手机采集所述用户指纹,生成所述用户的第二指纹数据,将所述第二指纹数据携带在应用服务获取请求中通过加密通道发送给无线应用协议网关;
步骤D.无线应用协议网关接收来自所述用户手机的携带第二指纹数据的应用服务获
取请求,从所述应用获取请求中提取所述第二指纹数据;
步骤E.无线应用协议网关根据所述用户手机的信息,获取存储在本地的所述安全鉴权数据;
步骤F.无线应用协议网关根据所述第二指纹数据和所述安全鉴权数据,获取所述加密密钥KEY;
步骤G.根据所述无线应用协议网关得到的加密密钥KEY,对所述加密指纹模板进行解密,得到所述用户的指纹模板;
步骤H.所述无线应用协议网关将获取到的所述第二指纹数据和步骤G得到的所述用户指纹模板进行比对,当比对结果为两者匹配时,确定所述用户身份鉴权通过,将所述应用服务获取请求发送给所述应用服务器;
步骤I.所述应用服务器接收用户手机的应用服务请求,根据所述应用服务请求,将所请求的应用服务发送给所述无线应用协议网关;
步骤J.所述无线应用协议网关将所述应用服务提供给所述用户手机;
所述步骤I中,所述接收用户手机的应用服务请求包括:
接收用户手机通过软件平台发送的应用服务请求;
所述方法还包括:
当所述应用服务请求的消息格式不能被所述应用服务器识别时,所述无线应用协议网关先将所述应用服务请求转换为所述应用服务器能够识别的格式,然后将转换后的所述应用服务请求向所述应用服务器发送;
所述步骤A3中包括:
A31.无线应用协议网关生成9个变量的加密函数f(u):
f(u)=aTu mod(p)=(a0u0+a1u1+...a7u7+a8u8)mod(p),
T
其中,a=[a0 a1 … a8],u=[u0 u1…u8],mod表示求模运算;
A32.将所述加密密钥KEY分成互不重叠的8段,每段16位,分别为s0,s1,…,s7,令a0=s0,a1=s1,…,a7=s7,将a0、a1、a2、a3、a4、a5、a6、a7联成一个128位的数串KEYC,使得KEYC=a0a1…a7,计算数串KEYC的循环冗余校验码CRC-16的值C,C是一个16位校验值,令a8=C mod(p),其中p为素数65537;
A33.获取所述用户第一指纹数据中细节点平面坐标的集合F={(x0,y0),(x1,y1),…,(xN-1,yN-1)},其中,(xi,yi)分别为细节点所在位置的平面坐标,i=0,1,…,N-1;且N为所述细节点的总数;将每个细节点平面坐标分别映射到[0,255]中,将映射后的平面坐标串联在一起构成数据mi,得到集合M={m0,m1,…,mN-1};
A34.将每个mi作为16位的随机数产生器的种子,i=0,…,N-1;顺序产生8个随机数ri1,ri2,…,ri8,得到向量ui,即ui(mi)=[ui0 ui1 … ui8]=[mi ri1 … ri8];
A35.将每个ui代入所述加密函数f(u),计算相应的加密函数值f(ui),得到由所述M和其中元素对应的加密函数值构成的所述用户加密指纹数据的集合G,使得G=((m0,f(u0(m0))),(m1,f(u1(m1))),…,(mN-1,f(uN-1(mN-1))));
A36.生成干扰集合C=((c0,d0),(c1,d1),…,(cM-1,dM-1)),其中M为集合C的元素个数,cj和dj都是随机数,cj和mj的距离大于预设的阈值,j=0,…,M-1;且dj≠f(cj);
A37.将所述集合G和所述集合C中的元素随机混合,生成安全鉴权数据VL,使得VL=
{(v0,w0),(v1,w1),…,(vM+N-1,wM+N-1)},其中(vj,wj)表示所述集合G和所述集合C中的元素,j=0,…,M-1;将所述安全鉴权数据存储在无线应用协议网关;
A38.无线应用协议网关将所述加密密钥销毁。
提供应用服务的方法\n技术领域\n[0001] 本发明涉及通信技术领域,尤其涉及一种提供服务应用的方法。\n背景技术\n[0002] 随着无线通信技术的发展,无线终端如手机,所实现的功能也越来越强大。手机应用是运行于手机上的应用软件,这些应用软件通过手机底层扩展出来的API(Application Programming Interface,应用程序编程接口),实现手机上的各种功能。通常,这种手机应用存在两种方式:离线应用和在线应用。离线应用在应用启动后,不再需要网络支撑,在手机端独立运行;在线应用需要进行网络交互,脱离网络环境无法独立运行。\n[0003] 在现有的在线应用中,用户手机通过无线网络与WAPGW(Wireless Application \nProtocol Gateway,无线应用协议网关)连接,再由无线应用协议网关接入Intemet,其中,无线应用协议网关只能进行简单的管理操作,如:目标服务屏蔽等,而且,一些在线应用可以通过切换接入点,绕开无线应用协议网关,直接访问Intemet。\n[0004] 现有技术中至少存在如下问题:无线应用协议网关仅为无线终端的应用接入提供了网络通道,应用服务器在接入应用时安全性非常差。目前应用服务器对用户手机的鉴权也只是使用简单的密码验证,安全性不强,而且用户每次接入服务都要输入密码,使用不方便,用户体验差。\n发明内容\n[0005] 本发明实施例提供一种接入应用的方法,能够在无线应用协议网关对手机用户及应用进行鉴权认证,减轻了应用服务器鉴权负担,提供了较强的安全保证,而且方便用户使用,提高用户体验。\n[0006] 本发明实施例提供一种提供应用服务的方法,包括:\n[0007] 步骤A.将用户指纹信息注册到无线应用协议网关,具体包括:\n[0008] A1.在用户手机触摸屏上输入指纹,根据所述用户指纹,用户手机生成所述用户的第一指纹数据,将所述第一指纹数据通过加密通道发送给无线应用协议网关;\n[0009] A2.无线应用协议网关通过加密通道从应用服务器获取所述用户的加密指纹模板\n以及该加密指纹模板对应的加密密钥KEY,将所述加密指纹模板保存在无线应用协议网关本地,所述加密密钥KEY是由应用服务器随机生成,其长度为128位;所述加密指纹模板是由所述应用服务器利用所述加密密钥KEY对用户指纹模板加密后生成;\n[0010] A3.无线应用协议网关根据所述第一指纹数据以及所述加密密钥,生成安全鉴权\n数据,将安全鉴权数据存储在本地;\n[0011] 步骤B.在用户手机上输入所要获取的应用服务信息,在用户手机触摸屏上输入指纹;\n[0012] 步骤C.用户手机采集所述用户指纹,生成所述用户的第二指纹数据,将所述第二指纹数据携带在应用服务获取请求中通过加密通道发送给无线应用协议网关;\n[0013] 步骤D.无线应用协议网关接收来自所述用户手机的携带第二指纹数据的应用服\n务获取请求,从所述应用获取请求中提取所述第二指纹数据;\n[0014] 步骤E.无线应用协议网关根据所述用户手机的信息,获取存储在本地的所述安全鉴权数据;\n[0015] 步骤F.无线应用协议网关根据所述第二指纹数据和所述安全鉴权数据,获取所述加密密钥KEY;\n[0016] 步骤G.所述无线应用协议网关得到的加密密钥KEY,对所述加密指纹模板进行解\n密,得到所述用户的指纹模板;\n[0017] 步骤H.所述无线应用协议网关将获取到的所述第二指纹数据和步骤G得到的所述\n用户指纹模板进行比对,当比对结果为两者匹配时,确定所述用户身份鉴权通过,将所述应用服务获取请求发送给所述应用服务器;\n[0018] 步骤I.所述应用服务器接收用户手机的应用服务请求,根据所述应用服务请求,将所请求的应用服务发送给所述无线应用协议网关;\n[0019] 步骤J.所述无线应用协议网关将所述应用服务提供给所述用户手机。\n[0020] 本发明实施例的提供应用服务的方法,根据所接收的用户手机的应用服务请求,对所述用户进行鉴权,当所述用户鉴权通过时,将所述应用服务请求向应用服务器发送,以便所述应用服务器根据所述应用服务请求向所述用户手机提供应用服务,通过由无线应用协议网关对用户手机进行鉴权操作,应用服务器不需要再对该用户手机进行鉴权,从而可以减少应用服务器的工作负担;另外,用户将第一指纹数据注册到无线应用协议网关,无线应用协议网关获取所述用户的加密指纹模板以及该加密指纹模板对应的加密密钥KEY,无线应用协议网关利用第一指纹数据对加密密钥生成安全鉴权数据,使加密密钥被隐藏,使得加密密钥的保护更加严密;鉴权时,利用用户的第二指纹数据对安全鉴权数据进行解密获得加密密钥,利用加密密钥对加密指纹模板进行解密得到指纹模板,使得鉴权过程更加安全可靠。而且,只需用户在手机触摸屏上输入指纹,提高用户体验。\n附图说明\n[0021] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。\n[0022] 图1为本发明实施例一提供的方法流程图;\n[0023] 图2为本发明实施例三提供的无线应用协议网关结构示意图;\n[0024] 图3为本发明实施例四提供的网络系统结构示意图。\n具体实施方式\n[0025] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。\n[0026] 实施例一\n[0027] 本实施例提供一种提供应用服务的方法,如图1所示,该方法包括:\n[0028] 步骤101.用户将用户指纹信息注册到无线应用协议网关,具体包括:\n[0029] 用户在用户手机触摸屏上输入指纹;\n[0030] 用户手机采集所述用户指纹,生成所述用户的第一指纹数据,将所述第一指纹数据通过加密通道发送给无线应用协议网关;\n[0031] 无线应用协议网关通过加密通道从应用服务器获取所述用户的加密指纹模板以\n及该加密指纹模板对应的加密密钥KEY,将所述加密指纹模板保存在无线应用协议网关本地,所述加密密钥KEY是由应用服务器随机生成,其长度为128位;所述加密指纹模板是由所述应用服务器利用所述加密密钥KEY对用户指纹模板加密后生成;\n[0032] 无线应用协议网关根据所述第一指纹数据以及所述加密密钥,生成安全鉴权数\n据,具体包括:\n[0033] 无线应用协议网关生成9个变量的加密函数:\n[0034] f(u)=aTu mod(p)=(a0u0+a1u1+...a7u7+a8u8)mod(p),\n[0035] 其中a=[a0 a1 ... a8]T,u=[u0 u1 ... u8],mod表示求模运算;\n[0036] 将所述加密密钥KEY分成互不重叠的8段,每段16位,分别为s0,s1,...,s7,令a0=s0,a1=s1,...,a7=s7,将a0-a7联成一个128位的数串KEYC=a0a1...a7,计算数串KEYC的循环冗余校验码CRC-16值C,C是一个16位校验值,令a8=Cmod(p),其中p为最接近216-1而大于\n216-1的素数65537;\n[0037] 获取所述用户的第一指纹数据中细节点平面坐标的集合F={(x0,y0),(x1,\ny1),...,(xN-1,yN-1)},其中xi,yi(i=0,...,N-1)分别为细节点所在位置的平面坐标,N为所述细节点的总数,将每个细节点平面坐标分别映射到[0,255]中,将映射后的平面坐标串联在一起[xi|yi]构成16位的数据mi,得到集合M={m0,m1,...,mN-1};\n[0038] 将每个mi(i=0,...,N-1)作为16位的随机数产生器的种子,顺序产生8个随机数ri1,ri2,...,ri8,得到向量ui:ui(mi)=[ui0 ui1 ... ui8]=[mi ri1 ... ri8];\n[0039] 将每个ui代入所述加密函数f(u),计算相应的加密函数值f(ui),得到由所述M和其中元素对应的加密函数值构成的所述用户加密指纹数据的集合G:G=((m0,f(u0(m0))),(m1,f(u1(m1))),...,(mN-1,f(uN-1(mN-1))));\n[0040] 生成干扰集合C=((c0,d0),(c1,d1),...,(cM-1,dM-1)),其中M为集合C的元素个数,ci和di(i=0,...,M-1)都是随机数,ci和mi距离大于预设的阈值,且di≠f(ci);\n[0041] 将所述集合G和所述集合C中的元素随机混合,生成安全鉴权数据VL={(v0,w0),(v1,w1),...,(vM+N-1,wM+N-1)},其中(vi,wi)(i=0,...,M-1)表示所述集合G和所述集合C中的元素;\n[0042] 将安全鉴权数据存储在本地;\n[0043] 无线应用协议网关将所述加密密钥销毁,以确保加密密钥不会泄漏。\n[0044] 步骤103.用户在用户手机输入所要获取的应用服务信息,在用户手机触摸屏上输入指纹;\n[0045] 步骤105.用户手机采集所述用户指纹,生成用户的第二指纹数据,将所述第二指纹数据携带在应用服务获取请求中通过加密通道发送给无线应用协议网关;\n[0046] 步骤107.无线应用协议网关接收来自所述用户手机的携带第二指纹数据的应用\n服务获取请求,从所述应用获取请求中提取所述第二指纹数据;\n[0047] 步骤109.无线应用协议网关根据所述用户手机的信息(比如手机号码等),获取存储在本地的安全鉴权数据;\n[0048] 步骤111.无线应用协议网关根据所述第二指纹数据和所述安全鉴权数据,获取所述加密密钥KEY,具体包括:\n[0049] 从所述第二指纹数据中提取出细节点集合\nN*是Q中细节点的总数,N*不等于所述第一指纹数据细节点的总数N,将所述第\n二指纹数据细节点的平面坐标xi和yi(i=0,...,N*-1)映射到[0,255]中;\n[0050] 从所述安全鉴权数据VL中取出v0,v1,...,vM+N-1,将v0,v1,...,vM+N-1分别分拆成两个8位的数作为平面坐标,可以得到一个集合RC={(xv0,yv0),(xv1,yv1),...,(xv(M+N-1),yv(M+N-1)};\n[0051] 用Q中的元素去定位RC中属于真实用户指纹信息的元素,如果集合Q中某个细节点A和集合RC中某个细节点B的距离小于一个预设阈值,则确定A和B是一对匹配点,可以把B对应的(v,w)添加到匹配点集合RG中,即:\n[0052] for all 0≤i<N*((xqi,yqi)∈Q)and 0≤j<V+M((xvj,yvi)∈Rc)\n[0053] if D((xqi,yqi),(xvj,yvi))≤T then(vj,wj)∈RG\n[0054] 其中T是一个阈值,D((xqi,yqi),(xvj,yvi))表示两个点之间的距离。\n[0055] 根据上述算法,可以得到9个点的集合RG={(v0,w0),{v1,w1),...,(v8,w8)},RG中的元素来自真实用户指纹。接着利用集合RG的元素来恢复加密密钥KEY。对每个vi∈RG,使用与所述随机数发生器相同的16位随机数发生器,以vi为种子,顺序产生8个随机数ri1,ri2,...,ri8。这样对每个vi∈RG,就会得到一个向量uvi\n[0056] uvi=[ui0 ui1 ... ui8]=[vi ri1 ... ri8]\n[0057] 以及其对应的加密函数值wi:\n[0058] wi=f(uvi)=adT uvi mod(p)=(ad0ui0+ad1ui1+...+ad7ui7+ad8ui8)mod(p)\n[0059] 得到一个方程组:\n[0060] w0=(ad0u0,0+ad1u0,1+...+ad7u0,7+ad8u0,8)mod(p)\n[0061] w1=(ad0u1,0,+ad1u1,1+...+ad7u1,7+ad8u1,8)mod(p)\n[0062] ……\n[0063] w8=(ad0u8,0+ad1ud1+...+ad7u8,7+ad8u8,8)mod(p)\n[0064] 令 w=[w0 w1 ... w8]T,ad=[ad0 ad1 ... ad8]T,上述方程组可\n以简化为:\n[0065] w=U adT mod(p) (3)\n[0066] 由于作为种子的v0,...,v8并不相同,所以随机矩阵U每一行都是不相关的,即行列T\n式|U|≠0,这可以保证U可逆,从而从(3)中求解出a:\n[0067] adT=U-1w mod(p) (4)\n[0068] 因为(v0,w0),...,(v8,w8)是G中的元素,所以就有adT=aT。\n[0069] 将ad0,ad1,...,ad7串联成一个数串KEY,KEY=KEY,就恢复了加密密钥KEY;\n[0070] 步骤113.所述无线应用协议网关根据得到的加密密钥KEY,对所述加密指纹模板\n进行解密,得到所述用户的指纹模板;\n[0071] 步骤115.所述无线应用协议网关将获取到的所述第二指纹数据和所述用户指纹\n模板进行比对,当比对结果为两者匹配时,确定所述用户身份鉴权通过,将所述应用服务获取请求发送给应用服务器;\n[0072] 步骤117.所述应用服务器根据所述应用服务请求,将所请求的应用服务发送给所述无线应用协议网关;\n[0073] 步骤119.所述无线应用协议网关将所述向应用服务提供给所述用户手机。\n[0074] 本发明实施例的提供应用服务的方法,无线应用协议网关根据所接收的用户手机的应用服务请求,对所述用户进行鉴权,当所述用户鉴权通过时,将所述应用服务请求向应用服务器发送,以便所述应用服务器根据所述应用服务请求向所述用户手机提供应用服\n务,通过由无线应用协议网关对用户手机进行鉴权操作,应用服务器不需要再对该用户手机进行鉴权,从而可以减少应用服务器的工作负担;另外,用户将第一指纹数据注册到无线应用协议网关,无线应用协议网关获取所述用户的加密指纹模板以及该加密指纹模板对应的加密密钥KEY,无线应用协议网关利用第一指纹数据对加密密钥生成安全鉴权数据,使加密密钥被隐藏,使得加密密钥的保护更加严密;鉴权时,利用用户的第二指纹数据对安全鉴权数据进行解密获得加密密钥,利用加密密钥对加密指纹模板进行解密得到指纹模板,使得鉴权过程更加安全可靠。而且,只需用户在手机触摸屏上输入指纹,提高用户体验。\n[0075] 实施例二\n[0076] 本实施例提供一种供应用服务的方法,如图2所示,所述方法包括下列步骤:\n[0077] S201、应用服务器将应用发布在应用管理平台上。其中,应用管理平台将应用服务器发布的应用形成应用列表,以便用户进行查询和下载。所述应用管理平台用于对应用进行管理操作,包括应用的发布、更新等,并且对用户手机的信息进行管理,包括用户手机的帐号、帐户等信息。\n[0078] S203、无线应用协议网关接收用户手机通过软件平台发送的应用查询请求。\n[0079] 其中,所述软件平台为用户手机的应用提供运行环境,提供与操作系统之间的接口,例如:XML(Extensible Markup Language,可扩展标记语言)解析、JavaScript引擎、AJAX(Asynchronous JavaScript and XML,异步JavaScript和XML)调用引擎、缓存处理、图形库、底层设备管理、多媒体管理、安全管理等;提供运营过程中必要的组件支撑,对用户手机应用的运行环境进行管理;对用户手机的应用进行管理,负责远程加载、删除、更新应用。\n[0080] S205、无线应用协议网关向所述应用管理平台发送所述应用查询请求以获取应用列表。\n[0081] 进一步的,当所述应用查询请求的消息格式不能被所述应用管理平台识别时,无线应用协议网关首先将所述应用查询请求转换为所述应用管理平台能够识别的格式.然后向所述应用管理平台发送转换后的所述应用查询请求以获取应用列表。\n[0082] S207、无线应用协议网关接收所述应用管理平台反馈的应用列表。\n[0083] S209、无线应用协议网关将所述应用管理平台反馈的应用列表通过软件平台发送给所述用户手机。\n[0084] S211、无线应用协议网关接收所述用户手机通过所述软件平台友送的应用下载请求。\n[0085] S213、无线应用协议网关将所述应用下载请求转发给所述应用管理平台,以便所述应用管理平台将应用发送给所述用户手机。\n[0086] 进一步的,当所述应用下载请求的消息格式不能被所述应用管理平台识别时,无线应用协议网关首先将所述应用下载请求转换为所述应用管理平台能够识别的格式,然后将转换后的所述应用下载请求转发给所述应用管理平台。\n[0087] S215、无线应用协议网关接收所述应用管理平台发送的应用。\n[0088] S217、无线应用协议网关将所述应用管理平台发送的应用通过所述软件平台发送给所述用户手机。\n[0089] 其中,所述软件平台对该应用进行管理。\n[0090] S219、无线应用协议网关接收用户手机通过软件平台发送的应用服务请求。\n[0091] S221、无线应用协议网关根据所述应用服务请求,对所述用户手机进行鉴权。\n[0092] 具体地,所述应用服务请求中包括所述用户手机的身份信息如:号码、IP地址等信息,请求接入的应用服务器的相关信息如:IP地址等信息,以及所述应用的相关信息如:应用的名称等信息。\n[0093] 所述无线应用协议网关依据自身的认证策略,根据所述用户手机的身份信息以及请求接入的应用服务器的相关信息,判断所述用户手机是否是所述应用服务器的许可用\n户,也就是说,该应用服务器是否允许为所述用户手机提供应用服务:并根椐所述应用的相关信息判断所述应用服务器是否能够为所述用户手机提供与该应用对应的应用服务。当判断用户手机合法时,该无线应用协议网关允许为所述用户手机提供应用服务,所述应用服务器能够为所述用户手机提供与该应用对应的应用服务。\n[0094] S223、当所述用户手机鉴权通过时,无线应用协议网关将所述应用服务请求向应用服务器发送,以便所述应用服务器根据所述应用服务请求向所述用户手机提供应用服\n务:进一步的,当所述应用服务请求的消息格式不能被所述应用服务器识别时无线应用协议网关首先将所述应用服务请求转换为所述应用服务器能够识别的格式,然后将转换后的所述应用服务请求向应用服务器发送。\n[0095] S225、应用服务器根据所述应用服务请求,向所述用户手机提供应用服务。\n[0096] 本发明实施例提供应用服务的方法,无线应用协议网关还能够对用户手机向应用管理平台或应用服务器发送的请求消息进行格式转换,从而可以在用户手机与不同的应用管理平台或应用服务器之间进行适配,提高了用户的体验质量。\n[0097] 实施例三\n[0098] 本实施例提供一种无线应用协议网关,如图2所示,所述无线应用协议网关30包\n括:接收模块301,存储模块302,安全鉴权数据模块303,确认模块304,解密模块305,发送模块306。\n[0099] 其中接收模块301,用于接收用户手机生成第一指纹数据;\n[0100] 存储模块302,用于存储保存通过加密通道从应用服务器获取所述用户的加密指\n纹模板以及该加密指纹模板对应的加密密钥KEY,所述加密密钥KEY是由应用服务器随机生成,其长度为128位;所述加密指纹模板是由所述应用服务器利用所述加密密钥KEY对用户指纹模板加密后生成;\n[0101] 安全鉴权数据模块303,用于根据所述第一指纹数据以及所述加密密钥,生成安全鉴权数据VL;其中安全鉴权数据模块将所述加密密钥KEY分成互不重叠的8段,每段16位,分别为s0,s1,...,s7,令a0=s0,a1=s1,...,a7=s7,将a0、a1、a2、a3、a4、a5、a6、a7联成一个128位的数串KEYC,使得KEYC=a0a1...a7,计算数串KEYC的循环冗余校验码CRC-16的值C,C是一个\n16位校验值,令a8=C mod(p),其中p为素数65537;在获取到所述用户第一指纹数据中细节点平面坐标的集合F={(x0,y0),(x1,y1),...,(xN-1,yN-1)}后,其中,(xi,yi)分别为细节点所在位置的平面坐标,i=0,1,...,N-1;且N为所述细节点的总数;将每个细节点平面坐标分别映射到[0,255]中,将映射后的平面坐标串联在一起构成数据mi,得到集合M={m0,\nm1,...,mN-1};将每个mi作为16位的随机数产生器的种子,i=0,...,N-1;顺序产生8个随机数ri1,ri2,...,ri8,得到向量ui,进而ui(mi)=[ui0 ui1 ... ui8]=[mi ri1 ... ri8];最后将每个ui代入所述加密函数f(u),计算相应的加密函数值f(ui),得到由所述M和其中元素对应的加密函数值构成的所述用户加密指纹数据的集合G,使得G=((m0,f(u0(m0))),(m1,f(u1T\n(m1))),...,(mN-1,f(uN-1(mN-1)))),其中f(u)是9个变量的加密函数,f(u)=a u mod(p)=(a0u0+a1u1+...a7u7+a8u8)mod(p),其中,a=[a0 a1 ... a8]T,u=[u0 u1 ... u8],mod表示求模运算;然后生成干扰集合C=((c0,d0),(c1,d1),...,(cM-1,dM-1)),其中M为集合C的元素个数,cj和dj都是随机数,cj和mj的距离大于预设的阈值,j=0,...,M-1;且dj≠f(cj);最后将所述集合G和所述集合C中的元素随机混合,生成安全鉴权数据VL,使得VL={(v0,w0),(v1,w1),...,(vM+N-1,wM+N-1)},其中(vj,wj)表示所述集合G和所述集合C中的元素,j=0,...,M-\n1;将所述安全鉴权数据存储在存储模块并将所述加密密钥销毁;\n[0102] 确认模块304,用于在收到用户手机根据用户应用服务信息发送的应用服务获取\n请求和第二指纹数据,根据所述应用服务获取请求,获取存储在存储模块的安全鉴权数据,并根据所述第二指纹数据和所述安全鉴权数据,计算所述加密密钥KEY,计算步骤具体包括:\n[0103] F1.从所述第二指纹数据中提取出细节点集合Q,其中\n,N*是Q中细节点的总数,N*不等于所述第一指纹数据细节\n点的总数N,将所述第二指纹数据细节点的平面坐标xk和yk映射到[0,255]中,其中k=0,1,\n2...,N*-1;\n[0104] F2.从所述安全鉴权数据VL中取出v0,v1,...,vM+N-1,将v0,v1,...,vM+N-1分别分拆成两个8位的数作为平面坐标,可以得到一个集合RC={(xv0,yv0),(xv1,yv1),...,(xv(M+N-1),yv(M+N-1)};\n[0105] F3.如果集合Q中某个细节点A和集合RC中某个细节点B的距离小于一个预设阈值,则确定A和B是一对匹配点,把B对应的(v,w)添加到匹配点集合RG中;得到9个点的集合RG={(v0,w0),{v1,w1),...,(v8,w8)};\n[0106] F4.利用集合RG的元素恢复加密密钥KEY:\n[0107] 对每个vi∈RG,使用与所述随机数发生器相同的16位随机数发生器,以vi为种子,顺序产生8个随机数ri1,ri2,...,ri8;\n[0108] 根据向量uvi=[ui0 ui1 ... ui8]=[vi ri1 ... ri8]以及uvi对应的加密函数值wi生成的线性方程组:\n[0109] w0=(ad0u0,0+ad1u0,1+...+ad7u0,7+ad8u0,8)mod(p)\n[0110] w1=(ad0u1,0+ad1u1,1+...+ad7u1,7+ad8u1,8)mod(p)\n[0111] ……\n[0112] w8=(ad0u8,0+ad1ud1+...+ad7u8,7+ad8u8,8)mod(p)\n[0113] 求解出adT,使得adT=U-1w mod(p)\n[0114] 其中 w=[w0 w1 ... w8]T,ad=[ad0 ad1 ... ad8]T,\n[0115] 将ad0,ad1,...,ad7串联成数串KEY,得到加密密钥KEY;\n[0116] 解密模块305,用于根据加密密钥KEY,对所述加密指纹模板进行解密,得到所述用户的解密指纹模板;将获取到的所述第二指纹数据和用户的解密指纹模板进行比对,当比对结果为两者匹配时,确定所述用户身份鉴权通过,将所述应用服务获取请求发送给所述应用服务器;\n[0117] 发送模块306,用于在应用服务器接收用户手机的应用服务请求后,将应用服务器根据所述应用服务请求发送的应用服务提供给所述用户手机。\n[0118] 可选的,所述解密模块305还用于在:当比对结果为两者不匹配时,确定拒绝向所述用户提供应用服务,通过发送模块306向所述用户手机发送拒绝提供应用服务的消息。\n[0119] 可选的,无线应用协议网关30还通过发送模块306向所述应用管理平台发送所述\n应用查询请求以获取应用列表:\n[0120] 进一步的,当所述应用查询请求的消息格式不能被所述应用管理平台识别时,无线应用协议网关首先将所述应用查询请求转换为所述应用管理平台能够识别的格式.然后向所述应用管理平台发送转换后的所述应用查询请求以获取应用列表。\n[0121] 可选的,无线应用协议网关30还通过接收模块301接收所述应用管理平台反馈的\n应用列表,将所述应用管理平台反馈的应用列表通过软件平台发送给所述用户手机。\n[0122] 可选的,无线应用协议网关30还通过接收模块301接收所述用户手机通过所述软\n件平台友送的应用下载请求,并将所述应用下载请求转发给所述应用管理平台,以便所述应用管理平台将应用发送给所述用户手机。\n[0123] 进一步的,当所述应用下载请求的消息格式不能被所述应用管理平台识别时,无线应用协议网关30通过发送模块306首先将所述应用下载请求转换为所述应用管理平台能够识别的格式,然后将转换后的所述应用下载请求转发给所述应用管理平台;在接收所述应用管理平台发送的应用后,无线应用协议网关30通过发送模块306将所述应用管理平台发送的应用通过所述软件平台发送给所述用户手机。其中,所述软件平台对该应用进行管理。\n[0124] 可选的,无线应用协议网关30通过接收模块301接收用户手机通过软件平台发送\n的应用服务请求。根据所述应用服务请求,对所述用户手机进行鉴权。\n[0125] 具体地,所述应用服务请求中包括所述用户手机的身份信息如:号码、IP地址等信息,请求接入的应用服务器的相关信息如:IP地址等信息,以及所述应用的相关信息如:应用的名称等信息。依据无线应用协议网关30自身的认证策略,根据所述用户手机的身份信息以及请求接入的应用服务器的相关信息,判断所述用户手机是否是所述应用服务器的许可用户,也就是说,该应用服务器是否允许为所述用户手机提供应用服务:并根椐所述应用的相关信息判断所述应用服务器是否能够为所述用户手机提供与该应用对应的应用服务。\n当判断用户手机合法时,该无线应用协议网关30允许为所述用户手机提供应用服务,所述应用服务器能够为所述用户手机提供与该应用对应的应用服务。\n[0126] 当所述用户手机鉴权通过时,将所述应用服务请求向应用服务器发送,以便所述应用服务器根据所述应用服务请求向所述用户手机提供应用服务。\n[0127] 可选的,确认模块304通过软件平台接收用户手机发送的应用服务请求。\n[0128] 可选的,确认模块304还用于接收所述用户手机通过软件平台发送的应用查询请\n求,所述发送模块306还用于向应用管理平台发送所述应用查询请求以获取应用列表,所述应用列表是应用服务器发布在所述应用管理平台的。\n[0129] 可选的,确认模块304还用于将所述应用服务请求转换为所述应用服务器能够识\n别的格式;所述发送模块306还用于向应用管理平台发送所述应用查询请求以获取应用列表,所述应用列表是应用服务器发布将转换后的所述应用服务请求向应用服务器发送。\n[0130] 本发明实施例的提供的无线应用协议网关根据所接收的用户手机的应用服务请\n求,对所述用户进行鉴权,当所述用户鉴权通过时,将所述应用服务请求向应用服务器发送,以便所述应用服务器根据所述应用服务请求向所述用户手机提供应用服务,通过由无线应用协议网关对用户手机进行鉴权操作,应用服务器不需要再对该用户手机进行鉴权,从而可以减少应用服务器的工作负担;另外,用户将第一指纹数据注册到无线应用协议网关,无线应用协议网关获取所述用户的加密指纹模板以及该加密指纹模板对应的加密密钥KEY,无线应用协议网关利用第一指纹数据对加密密钥生成安全鉴权数据,使加密密钥被隐藏,使得加密密钥的保护更加严密;鉴权时,利用用户的第二指纹数据对安全鉴权数据进行解密获得加密密钥,利用加密密钥对加密指纹模板进行解密得到指纹模板,使得鉴权过程更加安全可靠。而且,只需用户在手机触摸屏上输入指纹,提高用户体验。\n[0131] 请参阅图3,本发明实施例还提供一种无线应用协议系统,包括:用户手机410、无线应用协议网关420和应用服务器430。其中,用户手机410,用于向网关420发送用户的第一指纹数据。网关420包括:接收模块301,存储模块302,安全鉴权数据模块303,确认模块304,解密模块305以及发送模块306。所述模块的功能如上述实施例,在此不再赘述。\n[0132] 本发明实施例的提供的无线应用协议网关根据所接收的用户手机的应用服务请\n求,对所述用户进行鉴权,当所述用户鉴权通过时,将所述应用服务请求向应用服务器发送,以便所述应用服务器根据所述应用服务请求向所述用户手机提供应用服务,通过由无线应用协议网关对用户手机进行鉴权操作,应用服务器不需要再对该用户手机进行鉴权,从而可以减少应用服务器的工作负担;另外,用户将第一指纹数据注册到无线应用协议网关,无线应用协议网关获取所述用户的加密指纹模板以及该加密指纹模板对应的加密密钥KEY,无线应用协议网关利用第一指纹数据对加密密钥生成安全鉴权数据,使加密密钥被隐藏,使得加密密钥的保护更加严密;鉴权时,利用用户的第二指纹数据对安全鉴权数据进行解密获得加密密钥,利用加密密钥对加密指纹模板进行解密得到指纹模板,使得鉴权过程更加安全可靠。而且,只需用户在手机触摸屏上输入指纹,提高用户体验。\n[0133] 本发明实施例的模块或单元,可以通过通用集成电路,例如CPU(Central \nProcessing Unit,中央处理器),或通过ASIC(Application Specific Integrated \nCircuit,专用集成电路)来实现。\n[0134] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。\n[0135] 以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
法律信息
- 2021-06-15
未缴年费专利权终止
IPC(主分类): H04L 9/32
专利号: ZL 201180071229.9
申请日: 2011.06.30
授权公告日: 2016.10.26
- 2016-10-26
- 2015-07-08
专利申请权的转移
登记生效日: 2015.06.19
申请人由深圳市君盛惠创科技有限公司变更为东莞市瑞腾电子科技有限公司
地址由518105 广东省深圳市宝安区福永街道福围一路天瑞工业区A3栋4楼B面变更为523000 广东省东莞市莞城旗峰路162号中侨大厦B栋1106
- 2014-06-25
实质审查的生效
IPC(主分类): H04L 9/32
专利申请号: 201180071229.9
申请日: 2011.06.30
- 2014-05-28
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2008-10-08
|
2007-04-05
| | |
2
| |
2007-09-12
|
2006-03-07
| | |
3
| | 暂无 |
2006-12-19
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |