存储数据安全运行方法及系统
技术领域
本发明涉及信息技术领域,具体而言,涉及一种存储数据安全运行方法及系统。
背景技术
数据安全存储与应用已经逐渐被使用者所认识,但如何方便使用带加密功能的安全存储装置,如何与现有应用场景无缝结合,是决定加密存储装置存储解决方案是否能够被用户接受的关键因素。
目前,市场上包括的带认证的安全加密存储设备,数据在安全加密存储设备的介质上以密文方式存储,在访问数据之前,设备需要先对用户身份进行认证,认证通过过后设备解锁,数据才可进行访问。带认证的安全加密存储设备因为需要对主机用户身份进行检查,只允许合法用户访问硬盘数据,具有一定的安全性。而带认证的安全加密存储设备,由于内部的数据加解密密钥严格被用户身份密钥保护,没有正确的用户登录密钥,就无法得到正确的数据加解密密钥,因而在最大程度上保证了用户数据的安全。
但是,由于带认证的安全加密存储设备需要主机侧输入用户身份密钥,这种输入接口通常基于操作系统OS上运行的程序提供人机界面进行,然后将用户输入的身份密钥通过主机与设备之间的存储接口导入存储设备。存储设备验证通过过后,主机才能访问存储设备上存储的数据。由于解锁之前不能正确的访问存储设备上存储的数据,也就决定了操作系统和提供解锁界面的程序不能直接存储在需要解锁的带认证的安全加密存储设备上。也就是说,带认证安全加密存储设备只能作为数据盘,不能作为系统盘。从而要将操作系统和提供解锁界面的程序存储在带认证的安全加密存储设备上,需要提前对硬盘解锁。比如,将带认证界面的程序放在BIOS里面,在BIOS阶段从安全加密存储设备读取数据之前先进行解锁,然后再加载系统。但这样需要定制化BIOS(即扩展BIOS功能),考虑各个BIOS厂商的差异,这几乎是不可能的事情,并且需要用户手动输入一个身份密钥,用于解锁硬盘,操作体验感差。
发明内容
有鉴于此,本发明实施例的目的在于提供一种存储数据安全运行方法及系统,以改善上述的问题。
第一方面,本发明实施例提供了一种存储数据安全运行方法,所述存储数据安全运行方法包括:
在检测到第一存储设备时,加载预存储于第一存储设备的安全管理程序;
运行安全管理程序并获取预存储的加密后的身份信息;
将加密后的身份信息发送至所述第一存储设备;
在所述第一存储设备解密身份信息并验证成功后加载系统数据,并依据系统数据运行操作系统。
第二方面,本发明实施例提供了一种存储数据安全运行系统,所述主机用于在检测到第一存储设备时,加载预存储于第一存储设备的安全管理程序;
所述主机用于运行安全管理程序并获取预存储的加密后的身份信息;
所述主机用于将加密后的身份信息发送至所述第一存储设备;
所述第一存储设备用于解密并验证身份信息;
所述主机还用于在所述第一存储设备解密身份信息并验证成功后加载系统数据,并依据系统数据运行操作系统。
与现有技术相比,本发明提供的存储数据安全运行方法及系统,通过在检测到第一存储设备时,加载预存储于第一存储设备的安全管理程序;运行安全管理程序并获取预存储的加密后的身份信息;将加密后的身份信息发送至所述第一存储设备;在所述第一存储设备解密身份信息并验证成功后加载系统数据,最后依据系统数据运行操作系统,在实现安全运行操作系统的同时无需扩展BIOS,并且无需人工介入,用户体验感高,并且安全管理程序预存储于第一存储设备,节省了主机的存储空间。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的存储数据安全运行系统的交互示意图;
图2为本发明实施例提供的主机的结构框图;
图3为本发明实施例提供的存储数据安全运行装置的功能单元框图;
图4为本发明实施例提供的加载单元的子模块示意图;
图5为本发明另一实施例提供的加载单元的子模块示意图;
图6为本发明实施例提供的存储数据安全运行方法的流程图。
图标:100-存储数据安全运行装置;200-第一存储设备;300-第二存储设备;101-主机;102-处理器;103-存储器;104-存储控制器;105-外设接口;106-显示模块;301-加载单元;302-运行单元;303-读取单元;304-信息发送单元;305-第一存储区域;306-第二存储区域;401-检测子模块;402-读取子模块;403-第一运行子模块;404-第一加载子模块;501-第二运行子模块;502-第二加载子模块;503-第三运行子模块;504-第三加载子模块。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提出的存储数据安全运行方法及系统,提供了一种存储数据安全运行方法,该存储数据安全运行方法可适用于主机101。主机可以为个人PC。该主机101可以是,但不限于智能手机、个人电脑(personal computer,PC)、平板电脑、个人数字助理(personal digital assistant,PDA)、移动上网设备(mobile Internet device,MID)甚至服务器等,在此不做限制。所述主机101的操作系统可以是,但不限于,安卓(Android)系统、IOS(iPhone operating system)系统、Windows phone系统、Windows系统等。主机101分别与第一存储设备200、第二存储设备300通信连接,以构成存储数据安全运行系统。
如图2所示,是所述主机101的方框示意图。所述主机101包括存储数据安全运行装置100、处理器102、存储器103、存储控制器104、外设接口105,显示模块106。
所述存储器103、存储控制器104及处理器102,各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述存储数据安全运行装置100包括至少一个可以软件或固件(firmware)的形式存储于所述存储器103中或固化在所述主机101的操作系统(operatingsystem,OS)中的软件功能模块。所述处理器102用于执行存储器103中存储的可执行模块,例如,所述存储数据安全运行装置100包括的软件功能模块或计算机程序。
其中,存储器103可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器103用于存储程序,所述处理器102在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流过程定义的主机101所执行的方法可以应用于处理器102中,或者由处理器102实现。
处理器102可能是一种集成电路芯片,具有信号的处理能力。上述的处理器102可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述外设接口105将各种输入/输入装置耦合至处理器以及存储器103。在一些实施例中,外设接口105,处理器102以及存储控制器104可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。
显示模块106在所述主机101与用户之间提供一个交互界面(例如用户操作界面)或用于显示图像数据给用户参考。例如,可以显示主机101中所安装浏览器所加载的网页内容。显示模块106可以是液晶显示器或触控显示器。若为触控显示器,其可为支持单点和多点触控操作的电容式触控屏或电阻式触控屏等。支持单点和多点触控操作是指触控显示器能感应到来自该触控显示器上一个或多个位置处同时产生的触控操作,并将该感应到的触控操作交由处理器102进行计算和处理。
请参阅图3,本发明实施例提供了一种存储数据安全运行装置100,所述存储数据安全运行装置100包括加载单元301、运行单元302、读取单元303以及信息发送单元304。
加载单元301用于在检测到第一存储设备200时,加载预存储于第一存储设备200的安全管理程序。
本实施例中,安全管理程序包括包含两部分,一部分是密钥管理主程序,在被运行时读取第二存储设备300上存放的被加密的用户身份信息,再通过主机101回传给第一存储设备200,此时解锁第一存储设备200;另一部分是密钥管理程序的引导程序,被主机的BIOS加载,并用于加载密钥管理程序。
具体地,如图4所示,所述加载单元301包括检测子模块401、读取子模块402、第一运行子模块403以及第一加载子模块404。其中,加载单元301可以为运行于BIOS的软件装置。
检测子模块401用于在上电时检测第一存储设备200。
其中,第一存储设备200可以采用硬盘或内置有硬盘的智能终端(例如,内置有硬盘的笔记本电脑)。其中,所述第一存储设备200包括第一存储区域305,用于存储安全管理程序;第二存储区域306,用于存储系统数据。其中,系统数据包括操作系统数据和用户数据。其中,第一存储区域305用于在第一存储设备200处于锁定状态时访问;第二存储区域306用于第一存储设备200处于解锁状态时访问。需要说明的是,第一存储设备200的初始状态为锁定状态,当第一存储设备200处于锁定状态时,主机101仅仅能访问第一存储区域305。
读取子模块402用于在检测到第一存储设备200时,读取存储于第一存储设备200的引导程序。第一运行子模块403用于运行第一引导程序。第一加载子模块404用于在运行第一引导程序后加载预存储于第一存储设备200的安全管理程序。
运行单元302运行安全管理程序并检测第二存储设备300。
第二存储设备300可以采用可插拔存储设备,例如,可以为U盘或U盾,在此不做限制。
读取单元303用于在检测到第二存储设备300时,读取预存储于所述第二存储设备300的加密后的身份信息。
由于用户身份密钥信息以密文方式存储在第二存储设备300中,并且以密文方式传输给第二存储设备300,从而保证了用户身份密钥信息的安全性。本实施例中,用户身份信息可以非对称解密算法的公、私钥对中的私钥加密后形成用户身份密钥信息存储。另外,用户身份信息密钥可以通过交换公私钥的公钥,利用公钥加密过后,再传输给第二存储设备300存储。这种方式可以保证每次密文在传输过程中,都是变化的,而不是固定的一种密文,能带来更大的安全性。
信息发送单元304用于将加密后的身份信息发送至所述第一存储设备200。
此时第一存储设备200对处于加密状态的身份信息进行解密,并且判断解密后的身份信息与预存储的身份信息是否一致,如果一致,则验证成功,此时第一存储设备200解锁,此时第一存储设备200的第二存储区域306可以直接被主机101访问。
所述加载单元301还用于在所述第一存储设备200解密身份信息并验证成功后加载系统数据。
由于第一存储设备200解锁,因此主机101可以直接访问第一存储设备200的第二存储区域306的系统数据。
具体地,如图5所示,加载单元301还包括第二运行子模块501、第二加载子模块502、第三运行子模块503、第三加载子模块504。
第二运行子模块501用于在所述第一存储设备200解密身份信息并验证成功后,继续运行安全管理程序。
第二加载子模块502用于在运行安全管理程序时,加载第二引导程序。
第三运行子模块503用于运行第二引导程序。
第三加载子模块504用于在运行第二引导程序时,加载系统数据。
所述运行单元302还用于依据系统数据运行操作系统。
请参阅图6,本发明实施例还提供了一种存储数据安全运行方法,需要说明的是,本实施例所提供的存储数据安全运行方法,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。所述存储数据安全运行方法包括:
步骤S601:在检测到第一存储设备200时,加载预存储于第一存储设备200的安全管理程序。
其中,所述第一存储设备200包括第一存储区域305与第二存储区域306,所述第一存储设备200用于在启动后,外部所见空间为第一存储区域305;且所述第一存储区域305用于预存放安全管理程序,在外部访问数据地址大于第一存储区域305空间大小时,返回任意数据,此时所述第二存储区域306处于锁定状态,且外部不可见;所述第二存储区域306为实际外部可使用的存储空间,解锁后可见可使用。
可以在检测到第一存储设备200时,加载预存储于第一存储区域305的安全管理程序。具体地,步骤S601可以包括:在上电时检测第一存储设备200;读取存储于第一存储设备200的第一存储区域305的引导程序;运行第一引导程序;加载预存储于第一存储设备200的安全管理程序。
步骤S602:运行安全管理程序并获取预存储的加密后的身份信息。
例如,可以运行安全管理程序并检测第二存储设备300,在检测到所述第二存储设备300时,读取预存储于所述第二存储设备300的加密后的身份信息。再例如,运行安全管理程序并读取主机预存储的加密后的身份信息。
步骤S603:将加密后的身份信息发送至所述第一存储设备200。
步骤S604:所述第一存储设备200对加密的身份信息进行解密并验证,若验证成功,则解锁所述第二存储区域306。
步骤S605:所述第一存储设备200对所述第一存储区域305进行锁定。
步骤S606:在所述第一存储设备200解密身份信息并验证成功后加载系统数据,并依据系统数据运行操作系统。
具体地,步骤S606包括在所述第一存储设备200解密身份信息并验证成功后,继续运行安全管理程序;加载并运行第二引导程序;加载系统数据并运行操作系统。
请参阅图1,本发明实施例还提供了一种存储数据安全运行系统,其特征在于,所述存储数据安全运行系统包括主机101、第一存储设备200、第二存储设备300,所述第一存储设备200、所述第二存储设备300分别与所述主机101通信连接,主机101用于在检测到第一存储设备200时,加载预存储于第一存储设备200的安全管理程序;
主机101用于运行安全管理程序并获取预存储的加密后的身份信息;
所述主机101用于将加密后的身份信息发送至所述第一存储设备200;
所述第一存储设备200用于解密并验证身份信息;
所述主机101还用于在所述第一存储设备200解密身份信息并验证成功后加载系统数据,并依据系统数据运行操作系统。
其中,所述第一存储设备200可以采用可插拔存储设备;所述第一存储设备200包括:第一存储区域305,用于存储安全管理程序;其中,第一存储区域305在第二存储区域306解锁后处于锁定状态;第二存储区域306在解密身份信息并验证成功前处于锁定状态。第一存储设备200可以采用硬盘或内置有硬盘的智能终端。当第一存储设备200(即第二存储区域306)处于锁定状态时(即身份验证成功之前),主机101访问的存储区域为第一存储区域305。第一存储区域305的大小以实际存放的数据量进行预留,当主机101访问超出第一存储设备200时,直接返回全0数据,当第一存储设备200处于解锁状态(第二存储区域306处于解锁状态)时(即身份验证成功之后)可以访问第二存储区域306。
综上所述,本发明提供的存储数据安全运行方法及系统,通过在检测到第二存储设备时,读取预存储于所述第二存储设备的加密后的身份信息;然后将加密后的身份信息发送至第一存储设备;接着在第一存储设备解密身份信息并验证成功后加载系统数据;最后依据系统数据运行操作系统,在实现安全运行操作系统的同时无需扩展BIOS,并且无需人工介入,用户体验感高,并且安全管理程序预存储于第一存储设备,节省了主机的存储空间。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。