一种基于TF密码模块的安卓应用可信验证方法与流程

文档序号:17479347发布日期:2019-04-20 06:20阅读:408来源:国知局
一种基于TF密码模块的安卓应用可信验证方法与流程

本发明属于信息安全技术领域。本发明专利基于认证技术,提出andriod系统中的第三方应用下载后的可信安装和可信运行的方法。



背景技术:

现有的andriod系统中的第三方应用的下载安装及运行采用linux内核的安全机制,只会简单的验证应用的合理性,如判定应用有问题时不是直接禁止安装,而是仅仅进行安全提示,由用户自己决定是否安装;另外,恶意应用开发者非常容易通过伪造应用签名,将应用伪装成系统受信任的应用安装在系统中,一旦应用安装到系统中,应用将自动运行或者手动运行,没有相应的运行控制机制对非法应用的运行进行限制,从而给用户可能造成无法估量的危害和损失。



技术实现要素:

本发明的目的在于克服现有技术的不足,提供一种基于tf密码模块的安卓应用可信验证方法。

本发明的目的是通过以下技术方案来实现的:

一种基于tf密码模块的安卓应用可信验证方法,包括如下步骤:

s1:打包设备将第三方应用apk文件通过算法计算完整性值kan和签名值sa,然后将apk文件、kan、sa、签名证书等打包成可信安装包,放入应用服务器中;

s2:andriod终端下载可信安装包,通过与可信安装包配合的可信安装运行模块解析得到apk文件、kan、sa、签名证书等信息;

tf密码模块验证签名证书有效性,若未通过,则终止安装过程;若证书有效,可信安装运行模块调用tf密码模块获取证书,同时解析证书获得公钥数据;

验证签名证书的同根性,若未通过,则终止安装过程,若通过,进行下一步操作;

s3:andriod终端调用tf密码模块,进行完整性验证以及验证签名值是否有效;若未通过,则终止安装过程;若通过,则允许安装。

作为优选方式,本发明还包括步骤四,即s4:安装成功后,andriod终端调用tf密码模块验证andriod终端磁盘中的可信运行控制白名单的有效性,通过则将可信运行控制白名单内容加载到andriod终端内存中,否则清空andriod终端内存中的可信运行控制白名单。

作为优选方式,本发明还包括步骤五,即s5:当有第三方应用apk运行时,通过可信安装运行模块获取应用程序的启动信息,tf密码模块计算完整性预期值ka1;比对ka1和内存中加载的可信运行控制白名单中该应用的预期值kan,比对失败禁止运行,否则允许运行。

本发明的有益效果是:

(1)采用独立的硬件平台tf密码模块作为可信模块,tf密码模块是一个soc处理器,内部有用于算法运算的硬件协处理器,硬件协处理器采用与cpu并行运行机制,高效实现密码运算功能,对外仅提供输入输出接口,传输采用自定义协议,保证了安全性。

(2)采用专用打包设备(通用pc机或笔记本电脑)和tf密码模块配套使用,共同完成第三方应用的完整性校验以及证书验证工作,其中专用打包设备仅进行完整性计算和签名;tf密码模块存放证书白名单和运行白名单的完整性值kan,完成对应用的完整性校验和签名验证功能。

(3)在andriod终端中自主开发可信安装运行软件,对下载的所有第三方应用进行安装前的解析处理,完成安装运行前对tf密码模块的调度任务。

附图说明

图1为本发明系统框图。

具体实施方式

下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。

本发明要解决的技术问题是阻止非法的第三方应用在andriod系统中的安装和运行问题,提供一种高安全性、高可靠性的应用安装及运行方法。如图1所示,一种基于tf密码模块的安卓应用可信验证方法,包括如下步骤:

s1:打包设备(通用pc机或笔记本电脑)将第三方应用apk文件通过算法(如sm2算法计算签名值,sm3计算完整性值)计算完整性值kan和签名值sa,然后将apk文件、kan、sa、签名证书等打包成可信安装包,放入应用服务器中;

s2:andriod终端(从应用服务器中)下载可信安装包,通过与可信安装包配合的可信安装运行模块解析得到apk文件、kan、sa、签名证书等信息;

然后设置在andriod终端中的tf密码模块验证签名证书有效性,若未通过,则终止安装过程;若证书有效,可信安装运行模块调用tf密码模块获取证书,同时解析证书获得公钥数据;

验证签名证书的同根性,若未通过,则终止安装过程,若通过,进行下一步操作;

s3:andriod终端(可信安装运行模块)调用tf密码模块,进行完整性验证以及验证签名值是否有效;若未通过,则终止安装过程;若通过,则允许安装。

作为优选方式,本发明还包括步骤四,即s4:安装成功后,andriod终端(可信安装运行模块)调用tf密码模块验证andriod终端磁盘中的可信运行控制白名单(主要存放第三方应用apk文件及对应的完整性值kan、可信运行控制白名单的完整性值)的有效性,通过则将可信运行控制白名单内容加载到andriod终端内存中,否则清空andriod终端内存中的可信运行控制白名单。

作为优选方式,本发明还包括步骤五,即s5:当有第三方应用apk运行时,通过可信安装运行模块获取应用程序的启动信息,tf密码模块计算完整性预期值ka1;比对ka1和内存中加载的可信运行控制白名单(存放第三方应用apk文件、第三方应用apk文件的完整性值kan、可信运行控制白名单的完整性值)中该应用的预期值kan,比对失败禁止运行,否则允许运行。

本发明专利提出一种基于专用tf密码模块对第三方应用apk进行认证安装及运行的控制技术,本方法完全不同于现有的传统的andriod系统对第三方应用的安装运行机制,通过对第三方应用的签名机制实现可信安装、通过白名单机制实现应用的可信运行。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,应当指出的是,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。



技术特征:

技术总结
本发明公开了一种基于TF密码模块的安卓应用可信验证方法,包括如下步骤S1:打包设备将第三方应用APK文件通过算法计算完整性值KAn和签名值SA,然后将APK文件、KAn、SA、签名证书等打包成可信安装包,放入应用服务器中;S2:Andriod终端下载可信安装包,通过与可信安装包配合的可信安装运行模块解析得到APK文件、KAn、SA、签名证书等信息;TF密码模块验证签名证书有效性,同时解析证书获得公钥数据;验证签名证书的同根性;S3:Andriod终端调用TF密码模块,进行完整性验证以及验证签名值是否有效。本发明对外仅提供输入输出接口,传输采用自定义协议,保证了安全性。TF密码模块存放证书白名单和运行白名单的完整性值KAn,完成对应用的完整性校验和签名验证功能。

技术研发人员:赵建平;韦勇钢;陈栖洲;李宏渊
受保护的技术使用者:成都三零瑞通移动通信有限公司
技术研发日:2018.12.20
技术公布日:2019.04.19
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1