一种终端系统的安全保护方法及设备与流程

文档序号:12177782阅读:201来源:国知局
一种终端系统的安全保护方法及设备与流程

本申请涉及智能终端技术领域,特别涉及一种终端系统的安全保护方法及设备。



背景技术:

在行业通信领域,手机系统安全是一个优先级较高的需求。基于Android系统开发的行业终端解决方案,在当前阶段系统的保护机制只有锁屏密码。但是锁屏密码无法保证系统的安全,用户可以通过Adb等调试手段访问系统,或者通过组合键的方式进入刷机模式,这导致终端系统被破坏,无法有效的保护终端的安全。

在行业终端,手机安全涉及用户数据隐私保护、操作系统不被破坏等等各个方面,目前大多数行业终端都是基于Android系统来开发的,而Android系统本身是一个开放的系统,未提供完善的保护机制,用户可以很容易的将Android系统的root权限打开或者刷机,进行获取用户数据、破坏操作系统、刷机等操作。目前Android系统本身的保护机制并不完善,无法有效的解决上述问题。



技术实现要素:

本申请提供了一种终端系统的安全保护方法和设备,以保护终端系统的安全。

本申请提供的一种终端系统的安全保护方法,包括:

在终端系统的启动程序之前增加开机密码应用程序;

在终端系统的启动过程中,所述开机密码应用程序运行,并在检测到用户输入正确密码后,继续执行启动程序。

较佳的,所述系统为Android系统。

较佳的,在终端系统的启动程序之前增加开机密码应用程序包括:

将所述开机密码应用程序配置为非default类型,配置start指令启动所述开机密码应用程序运行,并配置在检测到用户输入正确密码之后设置的属性触发class_start default类型的服务的执行。

较佳的,该方法还包括:

在终端系统的恢复启动过程中,所述开机密码应用程序运行,并在检测到用户输入正确密码后,继续执行恢复启动程序。

较佳的,该方法还包括:将所述开机密码应用程序分别放在boot image中的/sbin目录下,以及recovery image中的/sbin目录下。

较佳的,该方法还包括:

将用户配置的开机密码密钥经过非可逆加密算法加密之后保存到独立的分区中,与系统分区和用户数据分区隔离。

本申请还提供了一种设备,包括:设置模块和启动模块,其中:

所述设置模块,用于在终端系统的启动程序之前增加开机密码应用程序;

所述启动模块,用于在终端系统的启动过程中,触发所述开机密码应用程序运行,并在检测到用户输入正确密码后,继续执行启动程序。

由上述技术方案可见,本申请提供的技术方案通过在终端系统的启动程序之前增加开机密码应用程序,并在终端系统的启动过程中,首先启动所述开机密码应用程序运行,并在检测到用户输入正确密码后,继续执行启动程序,使得需要输入正确的开机密码才能进入系统,从而保护了终端系统的安全性。

附图说明

图1为本申请终端系统的安全保护方法的示意图;

图2为本申请一较佳设备的组成结构示意图。

具体实施方式

为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本申请作进一步详细说明。

本发明主要通过在系统启动阶段增加开机密码机制来保护系统的安全,图1为本申请终端系统的安全保护方法的示意图,该方法具体包括:

在终端系统的启动程序之前增加开机密码应用程序;

在终端系统的启动过程中,所述开机密码应用程序运行,并在检测到用户输入正确密码后,继续执行启动程序。

应用本申请上述方法,在Android系统的启动过程中,在Android系统的各种服务(如adbd)以及Java运行环境(如zygote)启动之前增加一个开机密码的native应用程序,该应用程序在显示屏显示密码输入框,并要求用户输入正确的密码之后才继续启动Andorid系统,以达到隔离Android系统的目的,从而保护了系统的安 全。

Android系统的启动过程是先由bootloader加载linux kernel并跳转到kernel中执行。init是kernel加载的第一个用户进程,Android系统提供了init.rc来配置应用程序的启动,每个应用程序配置为一个服务(service),每个service有一个分类类型,并配置有启动顺序,以及依赖关系,通常默认的service为default的类型,在init配置的on boot启动阶段执行class_start default启动Android的各种服务。本发明中开机密码应用程序被配置为非default类型,且在执行class_start default类型的服务之前使用start指令启动开机密码应用程序,而class_start default类型的服务的执行则由用户密码验证正确之后设置的属性(property)触发,即用户输入正确密码之后继续启动Android系统剩下的启动流程,否则Android系统不继续启动。

进一步的,开机密码应用程序还在恢复(recovery)启动过程中生效,如果进入recovery,则开机密码应用程序同样在显示屏上显示密码输入框,要求输入正确的密码之后才能进入recovery,如果终端丢失,无法通过recovery来还原系统并达到破解的目的,从而保护系统的安全性。Android系统中,recovery是一个单独的镜像,里面包括了和boot image相同的kernel,以及不同的init.rc配置,本发明与正常启动一样,在recovery的init.rc中进行先启动开机密码的配置,保证开机密码应用程序先执行,由于recovery实际上可能并没有挂载system分区,为了使正常启动和recovery启动保持一致,开机密码应用程序被分别放在boot image中的/sbin目录下,以及recovery image中的/sbin目录下,这样就可以达到无需挂载system分区执行开机密码应用程序的目的,保证了recovery启动过程中能执行开机密码应用程序。

本发明用户配置的开机密码密钥经过非可逆加密算法加密之后保存到独立的分区中,与system分区和userdate分区隔离。为了操作此分区,可以通过设计独立的c/c++/java操作接口来对此分区进行操作,保证刷机过程不会更新此分区,终端刷机之后,之前设置的开机密码应用程序依然生效,也就是刷机也不能绕开开机密码,从而达到统一的鉴权机制来保护系统安全。

较佳的,本发明开机密码的用户配置放置到“设置”中的“安全”中的“启动开机密码”菜单项中,点击启动开机密码则进入开机密码配置界面,要求用户输入密码,输入之后提示用户进行确认输入,如果两次输入无误,则开机密码功能被使能,开机密码的状态被画上选中提示符,如果需要修改开机密码,则点击“修改开机密码”进入修改开机密码的界面,输入正确的开机密码之后即可进行 修改密码的操作。修改密码和设置新密码的操作类似,如果需要关闭开机密码功能,则可以点击开机密码,界面要求输入设置过的开机密码,验证通过之后关闭返回。

采用本发明,行业网终端可以使用开机密码的方式来保证系统安全。例如:

1、在设置中的安全菜单下,选择使能开机密码,并设置开机密码,当重新启动手机时,显示屏上将显示密码输入提示,用户可以通过扩展键盘或触屏直接输入密码,输入正确的密码之后,系统进入开机动画继续启动,如果输入错误次数达到一定次数之后会锁屏一段时间,保证无法进行暴力破解。

2、在使能开机密码之后,如果终端丢失,如果进入recovery恢复系统,则要求输入开机密码,否则无法进入recovery,阻止尝试通过重置系统来破解终端的目的。

对应于上述方法,本申请还提供了一种设备,如图2所示,包括:设置模块和启动模块,其中:

所述设置模块,用于在终端系统的启动程序之前增加开机密码应用程序;

所述启动模块,用于在终端系统的启动过程中,触发所述开机密码应用程序运行,并在检测到用户输入正确密码后,继续执行启动程序。

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

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1