开机控制方法和装置与流程

文档序号:15020439发布日期:2018-07-25 00:34阅读:159来源:国知局

本发明涉及计算机领域,特别是涉及一种开机控制方法和装置。



背景技术:

传统的终端的开机密码保存在数据分区,在开机时通过控制器读取保存在数据存储分区的开机密码进行校验来进入终端的操作系统,但是该开机密码通过电脑等工具将终端root(root,是计算机领域术语,在UNIX系统和类UNIX系统以及Android系统中,超级用户一般命名为root。root是系统中唯一的超级用户,具有系统中所有的权限,如启动或停止一个进程,删除或增加用户,增加或禁止硬件等等)后就可以删除和修改,或者通过恢复出厂设置也可以删除该开机密码,从而可以很容易地开启终端。

在此基础上也出现了很多通过软件方式来保护开机密码的方法,比如通过文件系统来保护该密码文件,禁止删除该文件,或者修改这个文件时,要先判断是否已经解锁进入了操作系统,只有正确输入开机密码进入操作系统后,才能修改密码,这样从某种程度上保护了开机密码,进而保护终端的安全,但是该方式依赖终端文件系统,如果终端root后刷入第三方recovery程序,就可以直接格式化数据分区,或者通过第三方的文件系统来修改和删除密码文件,从而开机密码也较易被恶意修改和删除,因此第三方也极易进入该终端的操作系统。



技术实现要素:

基于此,有必要针对上述开机密码不安全的问题,提供一种开机控制方法和装置。

一种开机控制方法,所述方法包括:

在终端上电后,当所述终端的密码存储芯片中存储有第一开机密码时,则生成并显示开机密码输入界面;

通过所述开机密码输入界面接收第二开机密码;

将所述第二开机密码发送至所述密码存储芯片,使得所述密码存储芯片根据所述第一开机密码校验所述第二开机密码;

当所述第二开机密码校验成功时,则启动所述终端的操作系统。

在其中一个实施例中,所述方法还包括:

当所述密码存储芯片中未存储有第一开机密码时,则生成并显示开机密码设置界面;

通过所述开机密码设置界面接收第一开机密码;

将所接收到的第一开机密码发送至所述密码存储芯片存储。

在其中一个实施例中,所述将接收到的第一开机密码发送至所述密码存储芯片存储的步骤之后,包括:

启动所述终端的操作系统,或者

继续生成并显示开机密码输入界面的步骤。

一种开机控制方法,所述方法包括:

接收控制器发送的第二开机密码;

通过存储的第一开机密码校验所述第二开机密码;

当所述第二开机密码校验成功时,则返回所述第二开机密码校验成功的结果至所述控制器;

当所述第二开机密码校验失败时,则返回所述第二开机密码校验失败的结果至所述控制器。

在其中一个实施例中,所述方法还包括:

接收并存储所述控制器发送的第一开机密码。

一种开机控制装置,所述装置包括:

界面生成模块,用于当终端上电后,在密码存储芯片中存储有第一开机密码时,生成并显示开机密码输入界面;

数据接收模块,用于通过所述开机密码输入界面接收第二开机密码;

第一发送模块,用于将所述第二开机密码发送至所述密码存储芯片,使得所述密码存储芯片根据所述第一开机密码校验所述第二开机密码;

启动模块,用于在所述第二开机密码校验成功时,启动所述终端的操作系统。

在其中一个实施例中,所述界面生成模块还用于在所述密码存储芯片中未存储有第一开机密码时,生成并显示开机密码设置界面;

所述数据接收模块还用于通过所述开机密码设置界面接收第一开机密码;

所述第一发送模块还用于将所接收到的第一开机密码发送至所述密码存储芯片存储。

在其中一个实施例中,所述启动模块还用于在将接收到的第一开机密码发送至所述密码存储芯片存储之后,启动所述终端的操作系统;或者

所述界面生成模块还用于在将接收到的第一开机密码发送至所述密码存储芯片存储之后,生成并显示开机密码输入界面。

一种开机控制装置,所述装置包括:

接收模块,用于接收控制器发送的第二开机密码;

校验模块,用于通过存储的第一开机密码校验所述第二开机密码;

第二发送模块,用于在所述第二开机密码校验成功时,返回所述第二开机密码校验成功的结果至所述控制器;以及在所述第二开机密码校验失败时,返回所述第二开机密码校验失败的结果至所述控制器。

一种终端,所述终端包括控制器和密码存储芯片,所述控制器和所述密码存储芯片通过SPI总线相连接;

所述控制器用于在终端上电后检测密码存储芯片中是否存储有第一开机密码,且在所述终端的密码存储芯片中存储有第一开机密码时,生成并显示开机密码输入界面;并通过所述开机密码输入界面接收第二开机密码后,将所述第二开机密码发送至所述密码存储芯片,使得所述密码存储芯片根据所述第一开机密码校验所述第二开机密码;且在所述第二开机密码校验成功时,启动所述终端的操作系统;

所述密码存储芯片用于接收控制器发送的第二开机密码后,通过存储的第一开机密码校验所述第二开机密码;且在所述第二开机密码校验成功时,则返回所述第二开机密码校验成功的结果至所述控制器,在所述第二开机密码校验失败时,则返回所述第二开机密码校验失败的结果至所述控制器。

上述开机控制方法和装置,将开机密码存储在密码存储芯片上,可以防止终端被root等后,该开机密码被删除或篡改,从而保证了该开机密码的安全性,且在开机过程中,对控制器获取到的第二开机密码的校验也在密码存储芯片上,进一步保证了开机密码的校验的安全性。

附图说明

图1为一实施例中终端的示意图;

图2为一实施例中开机控制方法的流程图;

图3为一实施例中设置开机密码的步骤流程图;

图4为另一实施例中开机控制方法的流程图;

图5为一实施例中开机控制装置的结构示意图;

图6为另一实施例中开机控制装置的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。

在详细说明根据本发明的实施例前,应该注意到的是,所述的实施例主要在于与开机控制方法和装置相关的步骤和系统组件的组合。因此,所属系统组件和方法步骤已经在附图中通过常规符号在适当的位置表示出来了,并且只示出了与理解本发明的实施例有关的细节,以免因对于得益于本发明的本领域普通技术人员而言显而易见的那些细节模糊了本发明的公开内容。

在本文中,诸如左和右,上和下,前和后,第一和第二之类的关系术语仅仅用来区分一个实体或动作与另一个实体或动作,而不一定要求或暗示这种实体或动作之间的任何实际的这种关系或顺序。术语“包括”、“包含”或任何其他变体旨在涵盖非排他性的包含,由此使得包括一系列要素的过程、方法、物品或者设备不仅包含这些要素,而且还包含没有明确列出的其他要素,或者为这种过程、方法、物品或者设备所固有的要素。

请参阅图1所示,图1为一实施例中终端的示意图,其中终端100可以包括控制器110和密码存储芯片120,控制器110和密码存储芯片120通过SPI(全称为Serial Peripheral Interface,意为串行外设接口)总线相连接。

控制器110可以在所述终端100的密码存储芯片120中存储有第一开机密码时,生成并显示开机密码输入界面,并通过开机密码显示界面获取第二开机密码后,将第二开机密码发送至密码存储芯片120,密码存储芯片120可以根据存储的第一开机密码对第二开机密码进行校验,如果校验成功,则将校验成功的结果返回至控制器110,控制器110在接收到校验成功的结果后,可以启动终端100的操作系统,从而用户可以正常操作终端100。

控制器110可以是终端100的CPU等。密码存储芯片120是内置于终端100的一安全芯片,其用于存储终端100的开机密码。其中终端100可以是装有智能操作系统的终端100,例如手机、平板电脑、台式电脑、智能手环、智能手表、车载智能终端、ATM机等。密码存储芯片120可以是安全加密芯片,当外界通过非法手段要篡改或删除密码存储芯片120存储的内容时,例如旁路攻击(SCA)、短时间内多次获取密码存储芯片120中存储的内容等非法手段时,该密码存储芯片120可以执行自我保护程序,将其存储的内容进行加密等,以保证其存储的内容的安全性。

请参阅图2所示,图2为一实施例中开机控制方法的流程图,在该实施例中,该开机控制方法可以应用于图1所示的控制器110,其可以包括:

S202:在终端100上电后,当终端100的密码存储芯片120中存储有第一开机密码时,则生成并显示开机密码输入界面。

具体地,在实际应用中,为了保护终端100的安全性,一般需要设置终端100的开机密码,这样可以防止终端100丢失或者被盗后,被不法分子操作,从而导致用户的损失。结合图1所示,开机密码可以存储在密码存储芯片120中,从而可以防止终端100在root后,开机密码被删除或者被篡改。

一般情况下,用户首次开机后均会设置开机密码,该开机密码存储在密码存储芯片120中,当用户再次开机时,则需要用户输入正确的开机密码才能启动终端100的操作系统,当终端100上电后,控制器110首先会检测密码存储芯片120中是否存储有第一开机密码,如果有的话,则生成并显示开机密码输入界面,以提示用户输入正确的开机密码。

S204:通过开机密码输入界面接收第二开机密码。

具体地,开机密码输入界面可以显示在终端100的显示装置上,其可以包括用户名和密码,用户名可以默认显示上一次用户登录终端100时的用户名,而密码则需要用户自行输入,可以是用户通过外接的接盘输入,也可以是通过触摸显示屏显示的虚拟键盘输入等。另外,开机密码输入界面还可以包括验证码等,例如数字验证码,只有用户输入的验证码与开机密码输入界面上的验证码相一致的时候,才会继续进行步骤S206。或者可以是指示用户进行对应的操作,例如沿着屏幕向上滑动,或者沿着屏幕向下滑动等,只要用户所进行的操作符合预期要求时,才会继续进行步骤S206。

S206:将第二开机密码发送至密码存储芯片120,使得密码存储芯片120根据第一开机密码校验第二开机密码。

具体地,在控制器110通过开机密码输入界面接收到第二开机密码时,其并不会对该第二开机密码进行校验,而是发送到密码存储芯片120中进行校验,保证了开机密码的校验的安全性。

在控制器110将第二开机密码发送至密码存储芯片120之前,其可以对第二开机密码进行加密,从而可以防止第二开机密码在传输过程中遭到篡改等。该加密方法可以是对称的加密方法,也可以是非对称的加密方法。例如控制器110可以存储密码存储芯片120所对应的加密方法的公钥,密码存储芯片120中存储有对应的私钥,当需要对第二开机密码进行加密时,则控制器110通过该公钥对第二开机密码进行加密形成校验开机密码指令,并发送至密码存储芯片120中。

密码存储芯片120在获取到校验开机密码指令后,对其进行解密,从而可以得到第二开机密码,通过已存储的第一开机密码对第二开机密码进行校验,以判断用户输入的第二开机密码是否正确,该校验方式可以是CRC循环冗余校验码(Cyclic Redundancy Check)。

S208:当第二开机密码校验成功时,则启动终端100的操作系统。

具体地,在控制器110将所接收的第二开机密码发送至密码存储芯片120后,只需要等待密码存储芯片120返回来的校验结果,如果第二开机密码校验成功,则启动终端100的操作系统,用户可以正常使用终端100,如果第二开机密码校验不成功,则会提示用户开机密码错误等,让用户重新输入开机密码,且为了进一步保证终端100的安全性,可以限制用户输入的密码的次数,例如3次、5次等,在用户多次输入的开机密码都不正确时,则限制用户输入开机密码。

上述开机控制方法,将开机密码存储在密码存储芯片120上,可以防止终端100被root等后,该开机密码被删除或篡改,从而保证了该开机密码的安全性,且在开机过程中,对控制器110获取到的第二开机密码的校验也在密码存储芯片120上,进一步保证了开机密码的校验的安全性。

在其中一个实施例中,请参阅图3所示,图3为一实施例中设置开机密码的步骤流程图,在该实施例中设置开机密码的步骤可以包括:

S302:当密码存储芯片120中未存储有第一开机密码时,则生成并显示开机密码设置界面。

具体地,如上文所示,在首次开启终端100时,终端100是未设置开机密码的,即密码存储芯片120中并未存储有第一开机密码,或者也可以认为密码存储芯片120中存储的是默认密码,而不是用户设置的第一开机密码时,终端100的控制器110会提示用户设置相应的开机密码,以提高终端100的安全性,例如,在本实施例中,控制器110可以生成并显示开机密码设置界面,该开机密码设置界面,可以显示在终端100的显示装置上,其可以包括用户名和密码,用户名可以是默认的用户名,也可以是用户新注册的用户名,密码需要用户自行输入,可以是用户通过外接的接盘输入,也可以是通过触摸显示屏显示的虚拟键盘输入等。另外,开机密码设置界面还可以包括验证码等,例如数字验证码,只有用户输入的验证码与开机密码输入界面上的验证码相一致的时候,才会继续进行步骤S304。或者可以是指示用户进行对应的操作,例如沿着屏幕向上滑动,或者沿着屏幕向下滑动等,只要用户所进行的操作符合预期要求时,才会继续进行步骤S304。

S304:通过开机密码设置界面接收第一开机密码。

具体地,用户可以根据提示通过开机密码设置界面输入第一开机密码,且一般情况下,该新设置的开机密码需要用户至少输入两次,且只有在该至少两次输入的开机密码相一致的情况下,才会认为用户输入的开机密码正确。另外还可提供开机密码显示控键,这样在用户输入的时候,可以看到自己所输入的密码,以方便在两次输入的开机密码不一致时进行查看等。

S306:将所接收到的第一开机密码发送至密码存储芯片120存储。

具体地,控制器110在接收到用户设置的第一开机密码后,并不会自行存储,而是发送到密码存储芯片120中存储,这样可以防止终端100被root等后,该第一开机密码被删除或篡改,从而保证了该第一开机密码的安全性。

在本实施例中,控制器110在接收到用户设置的第一开机密码,在将第一开机密码发送至存储芯片之前,可以对第一开机密码进行加密,以防止第一开机密码在传输过程中遭到篡改等。例如控制器110可以存储密码存储芯片120所对应的加密方法的公钥,密码存储芯片120中存储有对应的私钥,当需要对第一开机密码进行加密时,则控制器110通过该公钥对第一开机密码进行加密形成存储开机密码指令,并发送至密码存储芯片120中。

上述实施例中,在终端100未设置开机密码时,则通过控制器110来设置开机密码,并将设置好的开机密码存储在密码存储芯片120中,可以防止终端100被root等后,该开机密码被删除或篡改,从而保证了该开机密码的安全性。

在其中一个实施例中,在将接收到的第一开机密码发送至密码存储芯片120存储的步骤之后可以包括启动终端100的操作系统的步骤。

具体地,在设置好第一开机密码后,需要将第一开机密码发送至密码存储芯片120,以保证该第一开机密码的安全性,在第一开机密码存储成功后,可以直接启动终端100的操作系统,不需要用户再次输入开机密码,以节约时间。

在该实施例中,在控制器110将第一开机密码发送至密码存储芯片120之后,可以等待密码存储芯片120返回的存储结果,只有在存储成功时,才启动终端100的操作系统,在存储失败时,则控制器110可以提示用户开机密码存储失败,以重新设置开机密码等。

上述实施例中,在第一开机密码在密码存储芯片120中存储成功后,可以直接启动终端100的操作系统,不需要用户再次输入开机密码,以节约时间,另外将第一开机密码存储在密码存储芯片120上可以保证第一开机密码的安全性。

在其中一个实施例中,在将接收到的第一开机密码发送至密码存储芯片120存储的步骤之后可以继续生成并显示开机密码输入界面的步骤。

具体地,在设置好第一开机密码后,需要将第一开机密码发送至密码存储芯片120,以保证该第一开机密码的安全性,在第一开机密码存储成功后,可以让用户再次输入开机密码后,经过密码存储芯片120的验证后,再启动终端100的操作系统,这样可以提高终端100的安全性。

在该实施例中,在控制器110将第一开机密码发送至密码存储芯片120之后,可以等待密码存储芯片120返回的存储结果,只有在存储成功时,才启动终端100的操作系统,在存储失败时,则控制器110可以提示用户开机密码存储失败,以重新设置开机密码等。

上述实施例中,在第一开机密码在密码存储芯片120中存储成功后,需要用户再次输入开机密码,以提高终端100的安全性,另外将第一开机密码存储在密码存储芯片120上可以保证第一开机密码的安全性。

请参阅图4所示,图4为另一实施例中开机控制方法的流程图,该开机控制方法应用于图1所示的密码存储芯片120中,该开机控制方法可以包括:

S402:接收控制器110发送的第二开机密码。

具体地,如上文所示,在控制器110接收到第二开机密码后,需要通过SPI总线发送到密码存储芯片120,以进行校验。

此外,在该实施例中,由于控制器110发送的第二开机密码是包含在加密形成的校验开机密码指令的,因此在密码存储芯片120接收到校验开机密码指令时,首先要对该校验开机密码指令进行解密,以上文中所示的公钥和私钥的实施例为例,密码存储芯片120在接收到开机密码指令后,通过私钥对其进行解密,以得到第二开机密码。

S404:通过存储的第一开机密码校验第二开机密码。

具体地,第一开机密码是正确的开机密码,控制器110是否要开启操作系统,是需要判断用户输入的第二开机密码是否与第一开机密码相对应的,或者说第二开机密码是否与第一开机密码相同。

在该步骤中,通过已存储的第一开机密码对第二开机密码进行校验,以判断用户输入的第二开机密码是否正确,该校验方式可以是CRC循环冗余校验码(Cyclic Redundancy Check)。

S406:当第二开机密码校验成功时,则返回第二开机密码校验成功的结果至控制器110。

具体地,在第二开机密码校验成功时,需要将校验结果返回至控制器110,从而可以使得控制器110可以根据校验结果来确定是否启动终端100的操作系统。

S408:当第二开机密码校验失败时,则返回第二开机密码校验失败的结果至控制器110。

具体地,在第二开机密码校验失败时,也需要将校验结果返回至控制器110,从而可以使得控制器110可以根据校验结果来确定是否启动终端100的操作系统,以及在校验结果失败时,可能还需要提示用户输入的密码错误,重新输入等。

在上述实施例中,将开机密码存储在密码存储芯片120上,可以防止终端100被root等后,该开机密码被删除或篡改,从而保证了该开机密码的安全性,且在开机过程中,对控制器110获取到的第二开机密码的校验也在密码存储芯片120上,进一步保证了开机密码的校验的安全性。

在其中一个实施例中,开机控制方法还可以包括设置开机密码的步骤,例如,设置开机密码的步骤可以包括:接收并存储控制器110发送的第一开机密码。

具体地,当密码存储芯片120中未存储有第一开机密码或者密码存储芯片120中存储的是默认密码,而不是用户设置的第一开机密码时,则控制器110会提示用户设置相应的开机密码,以提高终端100的安全性。且控制器110在接收用户设置的第一开机密码后,会传输至密码存储芯片120从而可以保证开机密码的安全性。

且在本实施例中,控制器110在接收到用户设置的第一开机密码,在将第一开机密码发送至存储芯片之前,可以对第一开机密码进行加密,以防止第一开机密码在传输过程中遭到篡改等。例如控制器110可以存储密码存储芯片120所对应的加密方法的公钥,密码存储芯片120中存储有对应的私钥,当需要对第一开机密码进行加密时,则控制器110通过该公钥对第一开机密码进行加密形成存储开机密码指令,并发送至密码存储芯片120中。

这样密码存储芯片120在接收到存储开机密码指令后,需要对存储开机密码指令进行解密,例如通过存储在密码存储芯片120中的私钥对存储开机密码指令进行解密,以获取到相应的第一开机密码后进行存储。

上述实施例中,将开机密码存储在密码存储芯片120上,可以防止终端100被root等后,该开机密码被删除或篡改,从而保证了该开机密码的安全性。

请参阅图5所示,图5为一实施例中开机控制装置的结构示意图,该开机控制装置应用于图1所示的控制器110中,该开机控制装置可以包括:

界面生成模块111,用于当终端100上电后,在密码存储芯片120中存储有第一开机密码时,生成并显示开机密码输入界面。

数据接收模块112,用于通过开机密码输入界面接收第二开机密码。

第一发送模块113,用于将第二开机密码发送至密码存储芯片120,使得密码存储芯片120根据第一开机密码校验第二开机密码。

启动模块114,用于在第二开机密码校验成功时,启动终端100的操作系统。

在其中一个实施例中,界面生成模块111还用于在密码存储芯片120中未存储有第一开机密码时,生成并显示开机密码设置界面。

数据接收模块112还用于通过开机密码设置界面接收第一开机密码。

第一发送模块113还用于将所接收到的第一开机密码发送至密码存储芯片120存储。

在其中一个实施例中,启动模块114还用于在将接收到的第一开机密码发送至密码存储芯片120存储之后,启动终端100的操作系统;或者界面生成模块111还用于在将接收到的第一开机密码发送至密码存储芯片120存储之后,生成并显示开机密码输入界面。

请参阅图6所示,图6为另一实施例中开机控制装置的结构示意图,该开机控制装置用于图1所示的密码存储芯片120中,该开机控制装置可以包括:

接收模块121,用于接收控制器110发送的第二开机密码。

校验模块122,用于通过存储的第一开机密码校验第二开机密码。

第二发送模块123,用于在第二开机密码校验成功时,返回第二开机密码校验成功的结果至控制器110;以及在第二开机密码校验失败时,返回第二开机密码校验失败的结果至控制器110。

在其中一个实施例中,接收模块121还用于接收控制器110发送的第一开机密码,该装置还包括存储模块,用于存储控制器110发送的第一开机密码。

对开机控制装置的具体限定可以参见上文对开机控制方法的具体限定,在此不再赘述。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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