能力调用方法、请求装置、平台及系统的制作方法

文档序号:7768761阅读:132来源:国知局
专利名称:能力调用方法、请求装置、平台及系统的制作方法
技术领域
本发明涉及一种数据业务领域,尤其涉及一种能力调用方法、请求装置、平台及系统。
背景技术
伴随着互联网的发展以及互联网应用的不断丰富,面对互联网发展带来的机遇与挑战,电信运营商在探索如何加大应用创新力度,深度挖掘增值业务拓展潜力的基础上,开始尝试通过开放电信以及互联网能,吸引全球开发者,通过全面降低应用创新门槛,基于开放的能力开发更多长尾应用。运营商通过开放能力,创新应用,用户使用应用过程中,如何保证能力开放的安全性,应用使用的安全性,保证计费安全、用户隐私安全,以及应用和内容等的安全是能力开放的关键问题,因此需要通过有效的安全机制满足能力开放的安全需求。但是,现有的能力开放系统重点解决了能力开放的实现方法,但未能提供有效机制保证能力开放及应用使用等各个环节的安全性,未能满足能力开发的安全需求。因此,如何保证开放移动互联网平台能力开放的安全性成为现有技术需要解决的技术问题。

发明内容
本发明的目的在于,提供一种能力调用方法、请求装置、平台及系统,提高能力调用时的系统安全性。为实现上述目的,根据本发明的一个方面,提供一种能力调用方法,包括客户端向应用侧发送令牌获取请求,接收应用侧返回的令牌,生成及发送包括令牌的能力调用请求;能力调用平台根据能力调用请求进行验证,并在验证成功后,为客户端调用能力。为实现上述目的,根据本发明的另一个方面,提供一种能力调用请求装置,应用侧,用于接收令牌获取请求,并根据令牌获取请求生成及返回令牌;客户端,用于发送令牌获取请求,接收令牌,生成及发送包括令牌的能力调用请求。为实现上述目的,根据本发明的另一个方面,提供一种能力调用平台,包括验证模块,用于根据接收的包括令牌的能力调用请求进行验证;调用模块,用于在验证成功后, 进行能力调用操作。为实现上述目的,根据本发明的另一个方面,提供一种能力调用系统,包括应用侧,用于接收令牌获取请求,并根据令牌获取请求生成及返回令牌;客户端,用于发送令牌获取请求,接收令牌,生成及发送包括令牌的能力调用请求;能力调用平台,用于根据能力调用请求进行验证,并在验证成功后,为客户端调用能力。本发明的各实施例,通过对客户端发送的包括令牌(即Token)的能力调用请求进行验证,提高了互联网平台能力开放的安全性,同时,由客户端直接发送该能力调用请求且直接接收能力调用结果,避免了通过应用侧操作而导致的信息泄露,安全性较低的缺陷。另外,本发明提供了包括客户端、应用侧以及能力调用平台侧的能力调用系统,通过三者之间的交互,保证了能力开放端到端的安全性。


图1是本发明能力调用方法及系统实施例一的信令图;图2是本发明能力调用方法及系统实施例二的信令图;图3是本发明能力调用请求装置的实施例的结构图;图4是本发明能力调用平台的实施例的结构图。
具体实施例方式以下各实施例基于开放移动互联网平台(0MP,0pen Mobile-Internet Platform) 的思想,即通过开放OMP操作对象的API,进而开放与该通用对象管理平台连接的能力平台提供的各种能力,提出了一种新的能力调用平台,以安全地提供各种能力开放,如短信、彩信、位置、Presence等。实现了开发者基于开放的能力开发各种应用,向用户提供丰富的业务体验,保证了能力调用平台实现能力开放所涉及的能力开放安全性,应用使用安全性,计费安全性、用户隐私安全性,以及应用和内容等方面的安全性。以下结合附图对本发明进行详细说明。方法实施例一如图1所示,本发明能力调用方法实施例包括以下步骤步骤102,客户端向应用侧发送Token获取请求;步骤104,应用侧根据该Token获取请求生成Token,并将Token返回至该客户端; 具体如下为了保障Token的机密性,避免其被非授权使用,具体操作时,可以对Token进行定制,定制的算法包括应用侧的Token生成函数及服务器侧(即能力调用平台侧)的Token 校验函数,并在业务使用过程中,对Token内部机制进行保密;实现机制自下而上共分为五个层次a、标准化算法,最底层为标准化算法实现,例如采用RFC 4226标准的HOTP算法;b、⑶K参数,即全局主密钥设置,用于参与授权Token的生成;即原来用于生成授权Token的密钥Key,由Key和⑶K的Hash值进行替代;C、算法输入转换,即将原用于生成授权Token的明文输入参数进行转换,例如可将明文输入参数的左右两部分进行调换;d、应用及能力绑定,即将授权信息进行绑定,并在校验Token,同时对其授权信息进行校验;e、运营商网络绑定,在进行订购或注册请求的Token校验的同时,需要检测IMSI 等运营商参数是否属于所部署该业务的运营商,重点MCC移动国家代码(如中国为“46” ) 及MNC移动网络代码(如中国移动,GSM: “ 000"或〃 002" , TS-SCDMA “ 007")在进行能力请求时,需要检测MSISDN前三位数字是否属于所部署该业务的运营商;本领域技术人员可以理解,上述用于保证Token机密性的五个层次为提升安全性,为优选方案,具体的Token生成算法为现有技术,不再赘述;
步骤106,该客户端生成并发送包括Token的能力调用请求;具体操作时,该能力调用请求中可以包含与该Token对应的应用(即应用侧接收该Token获取请求的应用) 的应用标识APPID、应用侧应用使用者身份(简称用户)标识PID和Token,其中,用户可以通过移动终端或是Web发起能力调用,对应地,Token可以包括TerToken和^febToken ;步骤108,能力调用平台根据能力调用请求进行验证;具体解释如下首先对能力调用请求中的Token进行验证;具体如在应用被正式使用前,能力调用平台预先为每个应用分配相应的应用密钥APPKEY分别存储在应用侧与能力调用平台侧,用于保障应用身份的真实性,应用侧(如步骤104中)利用该APPKEY根据预设的生成算法加密生成该Token ;能力调用平台在接收到能力调用请求后,选择预设的与该生成算法一致的校验函数,并根据调用请求中包括的应用标识APPID获取对应的预先在能力调用平台侧存储的APPKEY,根据该校验算法及该能力调用平台侧存储的APPKEY生成校验Token, 比对该校验Token与该应用侧生成的Token以进行校验,二者一致时,校验成功,也就是说应用的APPID与APPKEY为一一对应关系,验证不通过则结束操作,如果验证通过,则行步骤 110,本领域技术人员可以理解,校验函数与生成函数一致,若生成该Token时,该生成函数还包括了其他的参数,如客户端请求次数的计数值counter,校验该Token时,也需要利用该计数值counter生成该校验Token,不再赘述;具体地,针对TOB应用,APPKEY是在应用开发阶段,由开发者申请获取并预置在 WEB应用代码(对应于图3中的应用模块中的应用)中;针对终端应用,APPKEY是在应用上线阶段,应用通过能力调用平台审核后,安全存储在新建的终端应用安全组件(对应于图3 中的应用安全组件)中,并通过用该新建的终端应用安全组件置换开发者在开发阶段所使用安全组件来实现APPKEY (该置换操作保证了开发者对APPKEY是不可知的)的安全分发; 能力调用平台还需要对APPKEY进行安全存储(如通过加密机等方式)及使用(主要用于校验TerToken及WebiToken),保障APPKEY的安全性;本领域技术人员可知,此处对Token的校验,可以根据预设的校验方法对其进行校验操作,根据应用标识APPID获取对应的应用密钥进行解密校验为优选方式,对应地,能力调用请求中包括该Token即可实现发明目的,包括应用标识APPID、及用户标识PID为优选方案;此外,能力调用请求中还可包括用于表示客户端请求次数的计数值counter,相应地,能力调用平台进一步校验counter的大小和期限,确定counter的大小是否在预设的范围内,以及期限是否过期,在两个条件都满足的情况下,通过验证,否则,验证不通过;通过计数值counter的大小及期限限制,实现了控制客户端在发起能力调用请求的次数超过预设的阈值,需要重新注册;或者在注册时间超过了一定期限,也需要重新注册,提高了安全性;其次,对根据能力调用请求中用户标识对用户身份进行验证;具体操作时,该用户标识可以为用户真实标识或用户伪码标识;若通过用户伪码标识代表用户标识,能力调用平台在用户订购应用成功时,生成该用户伪码标识,并存储该用户伪码标识与用户真实标识的对应关系,以及将用户伪码标识返回给应用侧;在能力调用时,且应用侧发送的能力调用请求中包含该用户伪码标识时,能力调用平台根据用户伪码标识及其与用户真实标识的对应关系查询是否存在该用户真实标识,当存在该用户真实标识(如MSIDSDN)时,确定有效的应用与该伪码对应的用户有效;若通过用户真实标识(如MSIDSDN)代表用户标识,直接验证该用户真实标识的有效性;再次,为了实现能力调用平台对应用调用能力进行授权,能力调用平台还可以根据该用户标识及应用标识获取用户及应用的信息,对鉴权应用-能力签约关系、用户订购关系、用户账户、开发者子账户进行验证,本领域技术人员可以理解,此处验证的手段主要是根据预先存储的相关信息进行比对验证,不在赘述;步骤110,能力调用平台在验证成功后,为客户端调用能力;具体如首先,能力调用平台到相应的能力平台为应用侧调用能力;其次,能力平台返回能力调用结果响应至能力调用平台;再次,能力调用平台将该能力调用结果响应直接转发至客户侧。本实施例中,通过对客户端发送的包括令牌(即Token)的能力调用请求进行验证,提高了互联网平台能力开放的安全性,同时,由客户端直接发送该能力调用请求且直接接收能力调用结果,避免了通过应用侧操作而导致的信息泄露,安全性较低的缺陷。本领域技术人员可以理解,图1主要说明了在基于该能力调用平台对应用开发完成,且对开发完成的应用进行注册等操作后,使用该注册成功后的应用,实现安全地调用对应能力的流程,为了更好的理解本发明,以下对其他的阶段,如开发阶段及订购阶段等进行解释说明1)应用开发阶段可以采用单向HTTPS+用户名/密码方式实现能力调用平台与开发者间的双向身份认证;在应用开发完成后申请注册时,可以由能力调用平台为每一个应用分配唯一标识APPID,同时为避免应用身份伪造,导致应用运行时产生能力滥用及计费破坏等问题,预先为每个应用分配固定的密钥AppKey,用于应用的验证,详见图1的解释说明;应用侧与能力调用平台的交互需要有保证端到端交互的安全机制;可以通过预置安全组件,使该安全组件与各应用联合作用,安全组件主要实现认证、安全存储、完整性保护以及代码混淆的功能;另外,为保护用户资源不被外泄及滥用,还可以采用伪码机制,用户伪码标识(简称伪码)是用户在系统内部的唯一标识,如可以表示针对不同应用的用户唯一身份标识, 具体可以为“用户手机号码+APPID(应用ID) ”,这样可以设置同一用户对对应的不同应用的伪码不同;伪码的生成规则如下nonce= Truncate (SHA-1 (MSISDN.APPID,Random),96);伪码由nonce和timestamp进行置换组合生成,共32个字符;其中Truncate (SHA-1 (MSISDN、 APPID、Random),96)表示仅截取前96bits ;MSISDN 为用户手机号;APPID 应用标识;Random 随机数(32位);nonce为12Bytes,由Byte类型以BASE64编码转化为字符类型共16个字符,从高位到低位的格式为N(1)N(2)N(3)...N(16) ;timestamp 时间戳(YYYYMMDDhhmmss) +补充2个字符的随机数,从高位到低位的格式为T⑴ T(2)T(3). . . Τ(16)) ;reversedtimestamp 为 timestamp 中各字节置换后的结果, reversedtimestamp从高位到低位的格式为R(1) RO) R(3). . . R(16);置换规律如表1所示表 1
权利要求
1.一种能力调用方法,其特征在于,包括客户端向应用侧发送令牌获取请求,接收所述应用侧返回的令牌,生成及发送包括所述令牌的能力调用请求;能力调用平台根据所述能力调用请求进行验证,并在验证成功后,为所述客户端调用能力。
2.根据权利要求1所述的能力调用方法,其特征在于,所述能力调用平台根据所述能力调用请求进行验证的步骤包括所述能力调用平台根据所述能力调用请求中的应用标识查询对应的应用密钥,并根据预设的与生成所述令牌相同的算法及所述应用密钥校验所述令牌;所述应用标识为所述应用侧中接收所述令牌获取请求的应用的标识,并由所述应用侧返回给所述客户端。
3.根据权利要求2所述的能力调用方法,其特征在于,还包括所述能力调用平台在验证所述令牌有效后,根据预设的各用户伪码标识与各用户真实标识的对应关系,查询所述能力调用请求中的用户伪码标识对应的用户真实标识,并在查到所述用户真实标识时确定验证成功。
4.根据权利要求3所述的能力调用方法,其特征在于,在所述为所述客户端调用能力的步骤之前还包括在验证成功后,所述能力调用平台将确认请求信息发送至与所述用户真实标识对应的用户终端,并接收所述用户终端返回的确认响应。
5.根据上述权利要求1-4中所述的能力调用方法,其特征在于,还包括所述能力调用平台在能力调用操作完成后执行扣费操作,并在扣费操作完成后,向 BOSS系统发送话单请求,以及接收所述BOSS系统返回的话单响应。
6.一种能力调用请求装置,其特征在于,包括应用侧,用于接收令牌获取请求,并根据所述令牌获取请求生成及返回令牌;客户端,用于发送所述令牌获取请求,接收所述令牌,生成及发送包括所述令牌的能力调用请求。
7.根据权利要求6所述的能力调用请求装置,其特征在于,所述应用侧包括应用模块,用于接收所述令牌获取请求,并返回包括应用标识、用户伪码标识及所述令牌的反馈信息至所述客户端;所述应用标识为所述应用模块中接收所述令牌获取请求的应用的标识;应用安全模块,用于接收所述应用模块转发的所述令牌获取请求,生成所述令牌,并将所述令牌与所述应用标识返回至所述应用模块。
8.根据权利要求7所述的能力调用请求装置,其特征在于,所述客户端包括发送模块,用于发送所述令牌获取请求至所述应用模块;生成模块,用于生成包括所述令牌、应用标识及用户伪码标识的能力调用请求,并通过所述发送模块发送所述能力调用请求至能力调用平台;接收模块,用于接收所述应用模块返回的所述令牌、应用标识及用户伪码标识,以及直接接收所述能力调用平台根据所述能力调用请求返回的调用结果。
9.一种能力调用平台,其特征在于,包括验证模块,用于根据接收的包括令牌的能力调用请求进行验证;调用模块,用于在验证成功后,进行能力调用操作。
10.根据权利要求9所述的能力调用平台,其特征在于,所述验证模块包括验证子模块,用于根据所述能力调用请求中的应用标识查询对应的应用密钥,用所述应用密钥对所述令牌进行解密校验;所述应用标识为与所述令牌对应的应用的标识;鉴权子模块,用于在验证所述令牌有效后,根据预设的各用户伪码标识与各用户真实标识的对应关系,查询所述能力调用请求中的用户伪码标识对应的用户真实标识,并在查到所述用户真实标识时确定验证成功。
11.根据权利要求10所述的能力调用平台,其特征在于,还包括确认模块,用于在验证成功后,将确认请求信息发送至与所述用户真实标识对应的用户终端,并接收所述用户终端返回的确认响应;计费模块,用于在能力调用操作完成后执行扣费操作,并在扣费操作完成后,向BOSS 系统发送话单请求,以及接收所述BOSS系统返回的话单响应。
12.一种能力调用系统,其特征在于,包括应用侧,用于接收令牌获取请求,并根据所述令牌获取请求生成及返回令牌;客户端,用于发送所述令牌获取请求,接收所述令牌,生成及发送包括所述令牌的能力调用请求;能力调用平台,用于根据所述能力调用请求进行验证,并在验证成功后,为所述客户端调用能力。
全文摘要
本发明公开了一种能力调用方法、请求装置、平台及系统。其中,该能力调用方法包括客户端向应用侧发送令牌获取请求,接收应用侧返回的令牌,生成及发送包括令牌的能力调用请求;能力调用平台根据能力调用请求进行验证,并在验证成功后,为客户端调用能力。本发明提高了互联网平台能力开放的安全性,同时,避免了通过应用侧操作而导致的信息泄露,安全性较低的缺陷。
文档编号H04L29/08GK102546532SQ201010588420
公开日2012年7月4日 申请日期2010年12月7日 优先权日2010年12月7日
发明者万薇, 于蓉蓉, 刘涛, 孙悦, 孙杰, 张炎, 武威, 王姗姗, 胡伟 申请人:中国移动通信集团公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1