【技术实现步骤摘要】
基于安卓系统的应用认证方法和装置及应用认证服务器
本专利技术涉及互联网安全领域,特别是涉及一种基于安卓系统的应用认证方法和装置及应用认证服务器。
技术介绍
在安卓Android系统中,为了安全的需要,应用是被限制并运行在沙箱中的。为了实现应用之间的通讯和互动,安卓系统提供了多种方法。例如调用其他应用中的界面组件(Activity);发送广播消息(Intent和BroadcastReceiver);应用作为数据提供者(Provider);通过Socket之间进行数据传输;应用间使用共享内存。以上在应用之间的通讯方法,各有特点。比如,广播和调用Activity方法成本比较低,使用方便。而数据提供者provider则适合于繁多且复杂的数据结构的共享。而Socket则适合应用之间的大数据传输。共享内存则用于避免应用之间的数据传输,提高整体效率,但读写操作控制复杂。总的说来,服务的实现成本是最高的,安卓系统在操作系统层面提供比较全面的支持,可以在应用之间实现比较灵活、更加高层的业务模型,用来完成实现复杂的业务。对安卓系统的服务而言,当作为应用的服务运行时,会启动一个新的进程或者利用应用现有进程,创建一个服务对象。当其他应用调用到此服务时由此服务对象的代码完成具体的业务逻辑。然而按照现有安卓系统的服务提供方式,服务提供应用无法对提供的数据进行存取保护。即使服务请求应用在存取数据时进行安全提示,但对用户而言,也不能有效分清服务请求的来源,在恶意应用请求提供服务时,无法进行有效的保护。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述 ...
【技术保护点】
一种基于安卓系统的应用认证方法,包括:将目标应用的属性信息进行上传以进行网络认证,并接收所述目标应用的网络认证结果;在所述网络认证结果为合法的情况下,向所述目标应用提供服务或调用所述目标应用的服务。
【技术特征摘要】
1.一种基于安卓系统的应用认证方法,包括:对目标应用进行本地认证,得到所述目标应用的本地认证结果;在所述本地认证结果为合法的情况下,将所述目标应用的属性信息进行上传以进行网络认证,并接收所述目标应用的网络认证结果,其中所述属性信息包括所述目标应用的包名、签名、和版本码中的一项或多项;在所述网络认证结果为合法的情况下,向所述目标应用提供服务或调用所述目标应用的服务,对所述目标应用进行本地认证包括:判断所述目标应用中是否存在签署文件,所述签署文件由所述目标应用的证书公钥和包名生成的散列值通过SDK证书签署得到,若否,确定目标应用的本地认证结果为不合法。2.根据权利要求1所述的应用认证方法,其中,将所述目标应用的属性信息进行上传以进行网络认证包括:上传所述目标应用的包名、签名、和版本码中的一项或多项至应用认证服务器,以供所述应用认证服务器进行黑名单过滤和白名单验证。3.根据权利要求1或2所述的应用认证方法,其中,接收所述目标应用的网络认证结果包括:接收所述认证服务器返回的认证数据包,所述认证数据包中包括:所述目标应用的服务提供标识、服务请求标识、读权限、写权限中的一项或多项。4.根据权利要求1所述的应用认证方法,其中,对目标应用进行本地认证的步骤还包括:读取所述目标应用中预先植入的所述签署文件;通过比对所述目标应用的属性信息与所述目标应用的签署文件得到所述本地认证结果。5.根据权利要求4所述的应用认证方法,其中,比对所述目标应用的属性信息与所述目标应用的签署文件包括:获取所述目标应用的证书公钥和包名,并由所述证书公钥和包名生成第一散列值;判断所述签署文件的散列值与所述第一散列值是否匹配,并判断所述签署文件的签名是否与SDK公钥签名一致;若以上判断结果均为是,所述本地认证结果为合法。6.根据权利要求5所述的应用认证方法,其中,所述签署文件由所述目标应用的证书公钥和包名生成的散列值通过SDK证书签署得到,比对所述目标应用的属性信息与所述目标应用的签署文件包括:获取所述目标应用的证书公钥和包名,并由所述证书公钥和包名生成第一散列值;判断所述签署文件的散列值与所述第一散列值是否匹配,并判断所述签署文件的签名是否与SDK公钥签名一致;若以上判断结果均为是,所述本地认证结果为合法。7.一种基于安卓系统的应用认证装置,包括:本地认证模块,用于目标应用进行本地认证,得到所述目标应用的本地认证结果,其中,对所述目标应用进行本地认证包括:判断所述目标应用中是否存在签署文件,所述签署文件由所述目标应用的证书公钥和包名生成的散列值通过SDK证书签署得到,若否,确定目标应用的本地认证结果为不合法;网络认证接口,用于在所述本地认证结果为合法的情况下,将所述目标应用的属性信息进行上传以进行网络认证,并接收所述目标应用的网络认证结果,其中所述属性信息包括所述目标应用的包名、签名、和版本码中的一项或多项;认证完成模块,用于在所述网络认证结果为合法的情况下,向所述目标应用提供服务或调用所述目标应用的服务。8.根据权利要求7所述的应用认证装置,其中,所述网络认证接口被配置为:上传所述目标应用的包名、签名、和版本码中的一项或多项至应用认证服务器,以供所述应用认证服务器进行黑名单过滤和白名单验证;接收所述认证服务器返回的认证数据包,所述认证数据包中包括所述目标应用的服务提供标识、服务请求标识、读权限、写权限。9.根据权利要求7所述的应用认证装置,所述本地认证模块被配置为:读取所述目标应用中预先植入的所述签署文件;通过比对所述目...
【专利技术属性】
技术研发人员:宋照春,
申请(专利权)人:北京奇虎科技有限公司,奇智软件北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。