【技术实现步骤摘要】
本专利技术涉及应用程序
,具体而言,本专利技术涉及应用程序之间认证的方法及设备。
技术介绍
目前在安卓平台的技术中,安卓应用程序之间的认证机制通常是基于服务器—客户端(Server—Client)机制,其中,服务器为应用程序认证服务器(App Auth Server),客户端为安卓应用程序(Android app),通过在服务器和客户端共享一对公钥和私钥的方式进行认证。具体而言,服务器负责生成一对公钥和私钥,其中,私钥保存在服务器,客户端可以通过REST API获取到公钥。首次客户端(也就是安卓应用程序)在服务器注册后,服务器端会对客户端的APK二进制包生成HASH Value以及用对称加密算法对这个HASH Value生成签名,并保存在服务器端的数据库中。客户端(也就是安卓应用程序)之间发起互信访问的时候,需要对安卓应用程序进行认证。当客户端(也就是安卓应用程序)希望对某个客户端(也就是另外一个安卓应用程序)进行认证的时候,请求验证的客户端传递需要验证的客户端的信息到服务器端,服务器端返回给其待验证的客户端的签名的HASH Value,请求验证的客户端通过之前得到的公钥来对这个签名验证,当认证通过后,则完成对待验证的客户端的认证。上述现有技术中的认证方式,存在以下一个或多个缺陷,例如:1.现有的客户端和服务器端维护着的一对公钥和私钥,是属于长期内保持不变的密钥(Long-term Key) ...
【技术保护点】
一种应用程序之间认证的方法,其特征在于,包括以下步骤:向密钥分发中心KDC发送应用程序的信息和认证服务器的验证请求申请;接收所述密钥分发中心KDC生成的会话密钥Session Key和标签Ticket;根据公钥PUB_KEY1解密所述Session Key,生成鉴定码Authenticator,将所述鉴定码Authenticator和所述标签Ticket发送给所述认证服务器;接收所述认证服务器发送的所述应用程序的认证结果。
【技术特征摘要】
1.一种应用程序之间认证的方法,其特征在于,包括以下步骤:
向密钥分发中心KDC发送应用程序的信息和认证服务器的验证请求
申请;
接收所述密钥分发中心KDC生成的会话密钥Session Key和标签
Ticket;
根据公钥PUB_KEY1解密所述Session Key,生成鉴定码
Authenticator,将所述鉴定码Authenticator和所述标签Ticket发送给所述
认证服务器;
接收所述认证服务器发送的所述应用程序的认证结果。
2.根据权利要求1所述的应用程序之间认证的方法,其特征在于,
向密钥分发中心KDC发送应用程序的信息,包括:
所述应用程序的名称,所述应用程序的版本以及所述应用程序的APK
二进制包。
3.根据权利要求2或1所述的应用程序之间认证的方法,其特征在
于,所述密钥分发中心KDC生成的会话密钥Session Key,包括:
所述密钥分发中心KDC通过私钥PRI_KEY1生成一个会话密钥
Session Key。
4.根据权利要求2或1所述的应用程序之间认证的方法,其特征在
于,所述密钥分发中心KDC生成的标签Ticket,包括:
所述密钥分发中心KDC通过私钥PRI_KEY2生成一个会话密钥
Session Key;
所述密钥分发中心KDC通过HMAC Key对应用程序的APK二进制
包进行HMAC签名;
所述密钥分发中心KDC通过私钥PRI_KEY2对所述应用程序的信息,
所述应用程序的APK二进制包的签名和所述会话密钥Session Key进行加
密,生成标签Ticket。
5.根据权利要求1所述的应用程序之间认证的方法,其特征在于,
\t生成鉴定码Authenticator,包括:
根据所述会话密钥Session Key对所述应用程序的信息和时间戳
Timestamp进行加密,生成所述鉴定码Authenticator。
6.根据权利要求1或5所述的应用程序之间认证的方法,其特征在
于,接收所述认证服务器发送的所述应用程序的认证结果,包括:
所述认证服务器根据公钥PUB_KEY2解密所述标签Ticket,获得其
中的所述应用程序的信息和所述会话密钥Session Key;
所述认证服务器根据所述会话密钥Session Key解密所述鉴定码
Authenticator,获得其中的所述应用程序的信息和时间戳Timestamp;
将所述时间戳Timestamp与当前时间进行比较,两者在预定时间范围
内时,时间戳验证通过;
时间戳验证通过之后,比较从所述标签Ticket和所述鉴定码
Authenticator中获得的应用程序的信息,两者中的应用程序的信息相同时,
比较所述认证服务器本地的HMAC签名与所述标签Ticket中的HMAC签
名是否相同;
当所述HMAC签名相同时,所述认证服务器通过HMAC Key和应用
程序的APK二进制验证从所述标签Ticket中获得的HMAC签名是否正
确;
当所述标签Ticket中获得的HMAC签名正确时,所述认证服务器发
送的所述应用程序的认证通过的信息。
7.根据权利要求5所述的应用程序之间认证的方法,...
【专利技术属性】
技术研发人员:翟永恒,陈自力,杨飞,曹华俊,
申请(专利权)人:北京三星通信技术研究有限公司,三星电子株式会社,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。