CN116738503B - 用于硬件***与操作***的协同加密方法、电子设备 - Google Patents
用于硬件***与操作***的协同加密方法、电子设备 Download PDFInfo
- Publication number
- CN116738503B CN116738503B CN202311015266.9A CN202311015266A CN116738503B CN 116738503 B CN116738503 B CN 116738503B CN 202311015266 A CN202311015266 A CN 202311015266A CN 116738503 B CN116738503 B CN 116738503B
- Authority
- CN
- China
- Prior art keywords
- hardware system
- driver
- virtual
- operating system
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 230000004044 response Effects 0.000 claims abstract description 47
- 230000002159 abnormal effect Effects 0.000 claims abstract description 21
- 238000013507 mapping Methods 0.000 claims abstract description 17
- 230000003993 interaction Effects 0.000 claims abstract description 12
- 230000006399 behavior Effects 0.000 claims description 46
- 238000011068 loading method Methods 0.000 claims description 22
- 230000005856 abnormality Effects 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 11
- 238000004088 simulation Methods 0.000 claims description 6
- 238000012795 verification Methods 0.000 claims description 5
- 230000009191 jumping Effects 0.000 claims description 2
- 230000001360 synchronised effect Effects 0.000 abstract description 6
- 230000008569 process Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000011084 recovery Methods 0.000 description 6
- 238000013506 data mapping Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Storage Device Security (AREA)
Abstract
本公开的实施例公开了用于硬件***与操作***的协同加密方法、电子设备。该方法的一具体实施方式包括:将硬件***映射到操作***中;获取硬件***的第一驱动程序在操作***中的第一数字签名,通过对第一数字签名进行加密,生成虚拟硬件***的第二驱动程序的第二数字签名;响应于检测到硬件***的驱动指令,操作***对第二驱动程序进行加载,以对虚拟硬件***进行驱动;响应于确定被驱动后的虚拟硬件***的操作行为无异常,对第一驱动程序进行验证;对第一驱动程序进行验证后,通过对第一驱动程序进行自动加载,建立虚拟硬件***与硬件***之间的同步关系。该实施方式保证了数据交互与硬件调用的安全,实现了硬件***与操作***之间的协同加密。
Description
技术领域
本公开的实施例涉及计算机技术领域,具体涉及用于硬件***与操作***的协同加密方法、电子设备。
背景技术
近年来,各企、事业单位纷纷建立了自己的信息中心,并且各信息中心的规模在不断扩大,地位和作用也越来越突出,安全问题也就逐渐被人们所重视,一旦***后台存放的关键数据的泄密会带来不可估量的损失。目前的加密存储多通过软加密的方式实现,即在数据存储到硬盘之前,先通过加密软件对数据进行加密,再将密文存储;而读取数据时也需通过软件将密文数据解密后展现。
然而,采用上述方式通常会存在以下技术问题:
第一,软加密秘钥管理较为复杂,且在运行时秘钥会出现在内存中,秘钥可能被恶意窃取,容易造成数据丢失;
第二,当虚拟硬件***被攻击、窃取、恶意修改数据时,难以及时恢复数据。
该背景技术部分中所公开的以上信息仅用于增强对本发明构思的背景的理解,并因此,其可包含并不形成本国的本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的内容部分用于以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。本公开的内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
本公开的一些实施例提出了用于硬件***与操作***的协同加密方法、装置、电子设备和计算机可读介质,来解决以上背景技术部分提到的技术问题中的一项或多项。
第一方面,本公开的一些实施例提供了一种用于硬件***与操作***的协同加密方法,该方法包括:将硬件***映射到操作***中,以生成虚拟硬件***;获取上述硬件***的第一驱动程序在上述操作***中的第一数字签名,通过对上述第一数字签名进行加密,生成上述虚拟硬件***的第二驱动程序的第二数字签名;响应于检测到上述硬件***的驱动指令,上述操作***对上述第二驱动程序进行加载,以对上述虚拟硬件***进行驱动;确定被驱动后的虚拟硬件***的操作行为是否存在异常;响应于确定被驱动后的虚拟硬件***的操作行为无异常,上述操作***则依据上述第二驱动程序对应的上述第二数字签名与上述第一数字签名,对上述第一驱动程序进行验证;对上述第一驱动程序进行验证后,通过对上述第一驱动程序进行自动加载,建立上述虚拟硬件***与上述硬件***之间的同步关系,其中,上述同步关系表示将上述虚拟硬件***产生的操作行为在上述硬件中同步执行。
第二方面,本公开的一些实施例提供了一种用于硬件***与操作***的协同加密装置,该装置包括:映射单元,被配置成将硬件***映射到操作***中,以生成虚拟硬件***;获取单元,被配置成获取上述硬件***的第一驱动程序在上述操作***中的第一数字签名,通过对上述第一数字签名进行加密,生成上述虚拟硬件***的第二驱动程序的第二数字签名;加载单元,被配置成响应于检测到上述硬件***的驱动指令,上述操作***对上述第二驱动程序进行加载,以对上述虚拟硬件***进行驱动;确定单元,被配置成确定被驱动后的虚拟硬件***的操作行为是否存在异常;验证单元,被配置成响应于确定被驱动后的虚拟硬件***的操作行为无异常,上述操作***则依据上述第二驱动程序对应的上述第二数字签名与上述第一数字签名,对上述第一驱动程序进行验证;建立单元,被配置成对上述第一驱动程序进行验证后,通过对上述第一驱动程序进行自动加载,建立上述虚拟硬件***与上述硬件***之间的同步关系,其中,上述同步关系表示将上述虚拟硬件***产生的操作行为在上述硬件中同步执行。
第三方面,本公开的一些实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现上述第一方面任一实现方式所描述的方法。
第四方面,本公开的一些实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,计算机程序被处理器执行时实现上述第一方面任一实现方式所描述的方法。
本公开的上述各个实施例具有如下有益效果:通过本公开的一些实施例的用于硬件***与操作***的协同加密方法,通过映射同步的方法将将硬件***进行技术性隐藏,保证了数据交互与硬件调用的安全,实现了硬件***与操作***之间的协同加密。具体来说,造成数据丢失的原因在于:软加密秘钥管理较为复杂,且在运行时秘钥会出现在内存中,秘钥可能被恶意窃取。基于此,本公开的一些实施例的用于硬件***与操作***的协同加密方法,首先,将硬件***映射到操作***中,以生成虚拟硬件***。其次,获取上述硬件***的第一驱动程序在上述操作***中的第一数字签名,通过对上述第一数字签名进行加密,生成上述虚拟硬件***的第二驱动程序的第二数字签名。由此,便于对构建的虚拟硬件***进行校验。接着,响应于检测到上述硬件***的驱动指令,上述操作***对上述第二驱动程序进行加载,以对上述虚拟硬件***进行驱动。之后,确定被驱动后的虚拟硬件***的操作行为是否存在异常。然后,响应于确定被驱动后的虚拟硬件***的操作行为无异常,上述操作***则依据上述第二驱动程序对应的上述第二数字签名与上述第一数字签名,对上述第一驱动程序进行验证。由此,通过建立的虚拟硬件***,无需进行秘钥管理。从而,也防止了秘钥被窃取的可能性最后,对上述第一驱动程序进行验证后,通过对上述第一驱动程序进行自动加载,建立上述虚拟硬件***与上述硬件***之间的同步关系。其中,上述同步关系表示将上述虚拟硬件***产生的操作行为在上述硬件中同步执行。由此,通过映射同步的方法将将硬件***进行技术性隐藏,保证了数据交互与硬件调用的安全,实现了硬件***与操作***之间的协同加密。
附图说明
结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,元件和元素不一定按照比例绘制。
图1是根据本公开的用于硬件***与操作***的协同加密方法的一些实施例的流程图;
图2是根据本公开的用于硬件***与操作***的协同加密装置的一些实施例的结构示意图;
图3是适于用来实现本公开的一些实施例的电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例。相反,提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
下面将参考附图并结合实施例来详细说明本公开。
图1是根据本公开的用于硬件***与操作***的协同加密方法的一些实施例的流程图。示出了根据本公开的用于硬件***与操作***的协同加密方法的一些实施例的流程100。该用于硬件***与操作***的协同加密方法,包括以下步骤:
步骤101,将硬件***映射到操作***中,以生成虚拟硬件***。
在一些实施例中,用于硬件***与操作***的协同加密方法的执行主体(例如,计算设备)可以将硬件***映射到操作***中,以生成虚拟硬件***。例如,硬件***可以是指上述执行主体的硬件***(例如,可以包括运算器、控制器、存储器、输入设备和输出设备)。操作***可以是指上述执行主体的操作***(例如,可以是Windows操作***、Mac OS***、Linux***、UNIX***、纯DOS***)。可以将硬件***的硬件地址(MAC地址)映射到操作***中。
实践中,上述执行主体可以在上述操作***中,设置虚拟空间,对硬件架构进行仿真虚拟,生成上述虚拟硬件***,并将虚拟空间设置在上述硬件***或与上述硬件***具有数据交互关系的关联硬件***中。其中,上述关联硬件***的操作***与上述硬件***的操作***相同。虚拟空间可以是指虚拟主机。硬件架构可以是指硬件***中各个硬件组件的结构。关联硬件***可以是指与上述硬件***具有通信连接关系的硬件***。
由此,可以对硬件***进行仿真虚拟处理,建立与硬件***具备同步映射关系的虚拟仿真的硬件***,其目的在于,在满足操作***调用的前提下,实现对于硬件***的保护作用。
可选地,响应于接收到上述关联硬件***的配置请求,将上述硬件***作为保密区域,将上述关联硬件***作为公共区域,以及响应于对上述硬件***进行驱动时,上述操作***自动跳转至上述公共区域进行硬件驱动。
在一些实施例中,上述执行主体可以响应于接收到上述关联硬件***的配置请求,将上述硬件***作为保密区域,将上述关联硬件***作为公共区域,以及响应于对上述硬件***进行驱动时,上述操作***自动跳转至上述公共区域进行硬件驱动。即,可以将硬件***作为保密***,将上述关联硬件***作为公共***。配置请求可以是指对关联硬件***进行公共区域配置的请求。
即,设计关联硬件***,其目的在于减轻当前硬件***的***规模和运算压力,而将当前硬件***作为保密区域,以及将关联硬件***作为公共区域时,可以通过操作***设置保密区域的访问权限,能够进一步增强硬件***的保护能力,也是通过操作***对于硬件***起到一定的协同加密作用;而公共区域的作用是:当对硬件***进行驱动时,操作***自动跳转至公共区域进行硬件驱动。
步骤102,获取上述硬件***的第一驱动程序在上述操作***中的第一数字签名,通过对上述第一数字签名进行加密,生成上述虚拟硬件***的第二驱动程序的第二数字签名。
在一些实施例中,上述执行主体可以获取上述硬件***的第一驱动程序在上述操作***中的第一数字签名,通过对上述第一数字签名进行加密,生成上述虚拟硬件***的第二驱动程序的第二数字签名。第一数字签名可以表示第一驱动程序的认证签名。第一驱动程序可以是指上述硬件***的驱动程序(Device Driver)。例如,可以通过堆成加密的方式对上述第一数字签名进行加密,得到加密后的第一数字签名作为第二数字签名。第二驱动程序可以是指上述虚拟硬件***的驱动程序(Device Driver)。
步骤103,响应于检测到上述硬件***的驱动指令,上述操作***对上述第二驱动程序进行加载,以对上述虚拟硬件***进行驱动。
在一些实施例中,上述执行主体可以响应于检测到上述硬件***的驱动指令,上述操作***对上述第二驱动程序进行加载,以对上述虚拟硬件***进行驱动。即,驱动指令可以是指上述硬件***向操作***发出的对虚拟硬件***进行驱动的指令。即,上述操作***可以对第二驱动程序进行驱动加载。
步骤104,确定被驱动后的虚拟硬件***的操作行为是否存在异常。
在一些实施例中,上述执行主体可以确定被驱动后的虚拟硬件***的操作行为是否存在异常。即,可以确定被驱动后的虚拟硬件***是否可以正常操作运行,以及确定被驱动后的虚拟硬件***是否存在错误指令。
步骤105,响应于确定被驱动后的虚拟硬件***的操作行为无异常,上述操作***则依据上述第二驱动程序对应的上述第二数字签名与上述第一数字签名,对上述第一驱动程序进行验证。
在一些实施例中,上述执行主体可以响应于确定被驱动后的虚拟硬件***的操作行为无异常,上述操作***则依据上述第二驱动程序对应的上述第二数字签名与上述第一数字签名,对上述第一驱动程序进行验证。首先,上述操作***可以对第二数字签名进行解密,得到解密后的第二数字签名。之后,可以确定解密后的第二数字签名与上述第一数字签名是否相同。从而,对上述第一驱动程序进行验证。
步骤106,对上述第一驱动程序进行验证后,通过对上述第一驱动程序进行自动加载,建立上述虚拟硬件***与上述硬件***之间的同步关系。
在一些实施例中,上述执行主体可以对上述第一驱动程序进行验证后,通过对上述第一驱动程序进行自动加载,建立上述虚拟硬件***与上述硬件***之间的同步关系。其中,上述同步关系表示将上述虚拟硬件***产生的操作行为在上述硬件中同步执行。
可选地,在上述虚拟硬件***进行硬件驱动时,通过对上述虚拟硬件***的驱动程序进行加载,获取第三驱动程序。
在一些实施例中,上述执行主体可以在上述虚拟硬件***进行硬件驱动时,通过对上述虚拟硬件***的驱动程序进行加载,获取第三驱动程序。即,可以对上述虚拟硬件***的驱动程序执行手动加载,获取第三驱动程序。这里,第三驱动程序可以是指对上述虚拟硬件***的驱动程序执行手动加载后而获得的驱动程序。
即,可以在硬件驱动时,起到一定的保护作用,使得对于硬件***加载方式不熟悉的人无法实现正确的加载过程,进而可以有效增强安全性。
可选地,确定上述第三驱动程序是否为上述第二驱动程序。
在一些实施例中,上述执行主体可以确定上述第三驱动程序是否为上述第二驱动程序。
可选地,响应于确定上述第三驱动程序为上述第二驱动程序,驱动上述虚拟硬件***。
在一些实施例中,上述执行主体可以响应于确定上述第三驱动程序为上述第二驱动程序,驱动上述虚拟硬件***。
可选地,响应于确定上述第三驱动程序不为上述第二驱动程序,拒绝驱动上述虚拟硬件***。
在一些实施例中,上述执行主体可以响应于确定上述第三驱动程序不为上述第二驱动程序,拒绝驱动上述虚拟硬件***。
可选地,响应于确定上述虚拟硬件***被拒绝的次数大于等于设置阈值,拒绝对上述硬件***进行访问。
在一些实施例中,上述执行主体可以响应于确定上述虚拟硬件***被拒绝的次数大于等于设置阈值,拒绝对上述硬件***进行访问。
可选地,响应于上述第三驱动程序为上述第一驱动程序,上述操作***通过上述第一驱动程序,对上述硬件***进行驱动,以及通过上述第一数字签名获取上述第二数字签名,对上述虚拟硬件***进行驱动,并与上述硬件***建立同步关系。
在一些实施例中,上述执行主体可以响应于上述第三驱动程序为上述第一驱动程序,上述操作***通过上述第一驱动程序,对上述硬件***进行驱动,以及通过上述第一数字签名获取上述第二数字签名,对上述虚拟硬件***进行驱动,并与上述硬件***建立同步关系。即,上述操作***可以通过驱动第一驱动程序,来对硬件***进行驱动。
即,可以通过直接输入第一驱动程序,来解锁硬件***与操作***之间的协同加密保护。进而可以直接通过操作***,依据第一驱动程序,对硬件***进行驱动。同时,通过第一数字签名获取第二数字签名,对虚拟硬件***进行驱动,并与硬件***建立同步关系。
可选地,加载上述第一驱动程序,通过与上述操作***具有加密数据交互关系的存储设备,进行解密,获取上述第一驱动程序。
在一些实施例中,上述执行主体可以加载上述第一驱动程序,通过与上述操作***具有加密数据交互关系的存储设备,进行解密,获取上述第一驱动程序。其中,上述加密数据交互关系表示上述操作***与上述存储设备,通过预设的密钥,形成相互加密的关系。即,存储设备可以是指存储服务器。对于硬件解锁的情况,类似于电子密钥,可以通过与操作***具有加密数据交互关系的存储设备(电子密钥),进行解密,获取第一驱动程序。其中,加密数据交互关系表示操作***与存储设备,通过预设的密钥,形成相互加密的关系。当操作***访问存储设备时,根据密钥进行解密后,获取存储设备中的数据。
可选地,在获取第一驱动程序的过程中,在上述硬件***进行解密,获取上述存储设备的第一驱动程序。
在一些实施例中,上述执行主体可以在获取第一驱动程序的过程中,在上述硬件***进行解密,获取上述存储设备的第一驱动程序。即,获取电子密钥的第一种情况是在当前硬件***,通过解密,自动获取存储设备的第一驱动程序。
实践中,上述执行主体可以通过以下步骤获取上述存储设备的第一驱动程序:
第一步,在解密获取第一驱动程序的过程中,在上述关联硬件***进行解密,通过手动加载,获取上述第一驱动程序。
即,获取电子密钥的第二种情况是在关联硬件***进行解密,通过手动加载,获取第一驱动程序;在此设置手动加载的目的是由于电子密钥所在位置并非被调用的硬件***所在位置,进而这种情况被认定为可能存在电子密钥被盗的情况。这时,则通过设置手动加载的方法,看看被选择的驱动程序是否为第一驱动程序,可以进一步保证,在硬件***被调用时的安全程度。
第二步,上述操作***根据上述第一驱动程序对应的上述第二驱动程序对上述虚拟硬件***进行驱动,以及将上述第一驱动程序的第一数字签名发送到上述硬件***。即,可以通过操作***,依据第一驱动程序对应的第二驱动程序对虚拟硬件***进行驱动。
第三步,上述操作***对上述硬件***进行驱动,并与上述虚拟硬件***建立同步关系。
可选地,响应于上述虚拟硬件***首先被驱动,获取将上述硬件***映射到上述虚拟硬件***的第一数据,对上述第一数据进行备份,生成第二数据。
在一些实施例中,上述执行主体可以响应于上述虚拟硬件***首先被驱动,获取将上述硬件***映射到上述虚拟硬件***的第一数据,对上述第一数据进行备份,生成第二数据。其中,第一数据可以是将上述硬件***映射到上述虚拟硬件***中的硬件***的运行数据。获取将硬件***映射到虚拟硬件***的第一数据,通过对第一数据进行备份,生成第二数据。对于数据的备份,主要时防止在虚拟端出现被攻击、窃取、恶意修改等情况发生时,仍可以保证虚拟端的正常运行。这时,在根据第一数据生成第二数据时,也就是备份的过程,可以根据数据的保密程度,对数据进行部分限制或隐藏处理,并通过硬件仿真的数据参数,进行数据模拟,生成虚假数据等等的方式,来保证硬件***的数据安全。
可选地,基于上述第二数据,驱动上述虚拟硬件***,并确定对于上述第二数据的操作行为是否存在异常。
在一些实施例中,上述执行主体可以基于上述第二数据,驱动上述虚拟硬件***,并确定对于上述第二数据的操作行为是否存在异常。即,可以判断通过第二数据驱动上述虚拟硬件***的过程中是否存在报错。
可选地,响应于确定对于上述第二数据的操作行为存在异常,通过上述第一数据对上述第二数据进行数据恢复。
在一些实施例中,上述执行主体可以响应于确定对于上述第二数据的操作行为存在异常,通过上述第一数据对上述第二数据进行数据恢复。
即,通过第二数据来驱动虚拟硬件***,并判断对于第二数据的操作行为是否存在风险,若存在风险,则通过第一数据对第二数据进行数据恢复。这时如果第二数据与第一数据为备份关系,则直接通过第一数据来进行数据恢复。如果第二数据与第一数据为数据虚拟关系,则通过虚拟关系将第一数据再次生成第二数据进行数据恢复。
可选地,响应于确定对于上述第二数据的操作行为不存在异常,通过上述同步关系,获取上述硬件***的第三数据,对上述第一数据进行更新。
在一些实施例中,上述执行主体可以响应于确定对于上述第二数据的操作行为不存在异常,通过上述同步关系,获取上述硬件***的第三数据,对上述第一数据进行更新。若不存在风险,则通过同步关系,获取硬件***的第三数据,对第一数据进行更新;这里提到的同步关系,是在进行硬件***的映射时根据映射路径建立的数据通道实现的数据同步。这里,可以通过一个数据输出端口实现同步,也可以通过并行的方式实现同步。第三数据可以是指硬件***当前的运行数据。
可选地,响应于确定上述硬件***首先被驱动,确定上述第三数据的操作行为是否存在异常。
在一些实施例中,上述执行主体可以响应于确定上述硬件***首先被驱动,确定上述第三数据的操作行为是否存在异常。
可选地,响应于确定上述第三数据的操作行为存在异常,通过上述第一数据,对上述第三数据进行数据还原。
在一些实施例中,上述执行主体可以响应于确定上述第三数据的操作行为存在异常,通过上述第一数据,对上述第三数据进行数据还原。
即,考虑到硬件***可能首先被驱动,那么,就需要判断对于硬件***的第三数据的操作行为是否存在风险,若存在,则通过第一数据,对第三数据进行数据还原。这时,可以看到,通过数据备份的手段,不仅可以保证在虚拟端的数据安全,还能够保证在硬件***端的数据安全。
可选地,响应于确定上述第三数据的操作行为无异常,通过上述第三数据,对上述第一数据和上述第二数据进行更新。
在一些实施例中,上述执行主体可以响应于确定上述第三数据的操作行为无异常,通过上述第三数据,对上述第一数据和上述第二数据进行更新。即,可以将第一数据更新为第三数据。可以将更新后的第一数据进行加密,以得到更新后的第二数据。
上述相关内容作为本公开的一个发明点,解决了背景技术提及的技术问题二“难以及时恢复数据。”。难以及时恢复数据的因素往往如下:当虚拟硬件***被攻击、窃取、恶意修改数据时,难以及时恢复数据。如果解决了上述因素,就能达到及时恢复数据的效果。为了达到这一效果,首先,加载上述第一驱动程序,通过与上述操作***具有加密数据交互关系的存储设备,进行解密,获取上述第一驱动程序。其中,上述加密数据交互关系表示上述操作***与上述存储设备,通过预设的密钥,形成相互加密的关系。其次,在获取第一驱动程序的过程中,在上述硬件***进行解密,获取上述存储设备的第一驱动程序。由于电子密钥所在位置并非被调用的硬件***所在位置,进而这种情况被认定为可能存在电子密钥被盗的情况。这时,则通过设置手动加载的方法,看看被选择的驱动程序是否为第一驱动程序,可以进一步保证,在硬件***被调用时的安全程度。之后,响应于上述虚拟硬件***首先被驱动,获取将上述硬件***映射到上述虚拟硬件***的第一数据,对上述第一数据进行备份,生成第二数据。由此,在备份的过程中,可以根据数据的保密程度,对数据进行部分限制或隐藏处理,并通过硬件仿真的数据参数,进行数据模拟,生成虚假数据等等的方式,来保证硬件***的数据安全。然后,基于上述第二数据,驱动上述虚拟硬件***,并确定对于上述第二数据的操作行为是否存在异常;响应于确定对于上述第二数据的操作行为存在异常,通过上述第一数据对上述第二数据进行数据恢复。接着,响应于确定对于上述第二数据的操作行为不存在异常,通过上述同步关系,获取上述硬件***的第三数据,对上述第一数据进行更新。再之后,响应于确定上述硬件***首先被驱动,确定上述第三数据的操作行为是否存在异常;响应于确定上述第三数据的操作行为存在异常,通过上述第一数据,对上述第三数据进行数据还原。最后,响应于确定上述第三数据的操作行为无异常,通过上述第三数据,对上述第一数据和上述第二数据进行更新。由此,可以在操作行为存在异常时,及时对数据进行还原。从而,可以及时恢复数据。
进一步参考图2,作为对上述各图所示方法的实现,本公开提供了一种用于硬件***与操作***的协同加密装置的一些实施例,这些用于硬件***与操作***的协同加密装置实施例与图1所示的那些方法实施例相对应,该用于硬件***与操作***的协同加密装置具体可以应用于各种电子设备中。
如图2所示,一些实施例的用于硬件***与操作***的协同加密装置200包括:映射单元201、获取单元202、加载单元203、确定单元204、验证单元205和建立单元206。其中,映射单元201,被配置成将硬件***映射到操作***中,以生成虚拟硬件***;获取单元202,被配置成获取上述硬件***的第一驱动程序在上述操作***中的第一数字签名,通过对上述第一数字签名进行加密,生成上述虚拟硬件***的第二驱动程序的第二数字签名;加载单元203,被配置成响应于检测到上述硬件***的驱动指令,上述操作***对上述第二驱动程序进行加载,以对上述虚拟硬件***进行驱动;确定单元204,被配置成确定被驱动后的虚拟硬件***的操作行为是否存在异常;验证单元205,被配置成响应于确定被驱动后的虚拟硬件***的操作行为无异常,上述操作***则依据上述第二驱动程序对应的上述第二数字签名与上述第一数字签名,对上述第一驱动程序进行验证;建立单元206,被配置成对上述第一驱动程序进行验证后,通过对上述第一驱动程序进行自动加载,建立上述虚拟硬件***与上述硬件***之间的同步关系,其中,上述同步关系表示将上述虚拟硬件***产生的操作行为在上述硬件中同步执行。
可以理解的是,该用于硬件***与操作***的协同加密装置200中记载的诸单元与参考图1描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作、特征以及产生的有益效果同样适用于用于硬件***与操作***的协同加密装置200及其中包含的单元,在此不再赘述。
下面参考图3,其示出了适于用来实现本公开的一些实施例的电子设备(例如,计算设备)300的结构示意图。本公开的一些实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图3示出的电子设备仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
如图3所示,电子设备300可以包括处理装置(例如中央处理器、图形处理器等)301,其可以根据存储在只读存储器(ROM)302中的程序或者从存储装置308加载到随机访问存储器(RAM)303中的程序而执行各种适当的动作和处理。在RAM303中,还存储有电子设备300操作所需的各种程序和数据。处理装置301、ROM302以及RAM 303通过总线304彼此相连。输入/输出(I/O)接口305也连接至总线304。
通常,以下装置可以连接至I/O接口305:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置306;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置307;包括例如磁带、硬盘等的存储装置308;以及通信装置309。通信装置309可以允许电子设备300与其他设备进行无线或有线通信以交换数据。虽然图3示出了具有各种装置的电子设备300,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图3中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本公开的一些实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的一些实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的一些实施例中,该计算机程序可以通过通信装置309从网络上被下载和安装,或者从存储装置308被安装,或者从ROM302被安装。在该计算机程序被处理装置301执行时,执行本公开的一些实施例的方法中限定的上述功能。
需要说明的是,本公开的一些实施例中记载的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的一些实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开的一些实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:将硬件***映射到操作***中,以生成虚拟硬件***;获取上述硬件***的第一驱动程序在上述操作***中的第一数字签名,通过对上述第一数字签名进行加密,生成上述虚拟硬件***的第二驱动程序的第二数字签名;响应于检测到上述硬件***的驱动指令,上述操作***对上述第二驱动程序进行加载,以对上述虚拟硬件***进行驱动;确定被驱动后的虚拟硬件***的操作行为是否存在异常;响应于确定被驱动后的虚拟硬件***的操作行为无异常,上述操作***则依据上述第二驱动程序对应的上述第二数字签名与上述第一数字签名,对上述第一驱动程序进行验证;对上述第一驱动程序进行验证后,通过对上述第一驱动程序进行自动加载,建立上述虚拟硬件***与上述硬件***之间的同步关系,其中,上述同步关系表示将上述虚拟硬件***产生的操作行为在上述硬件中同步执行。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的一些实施例的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开的一些实施例中的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括:映射单元、获取单元、加载单元、确定单元、验证单元和建立单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,映射单元还可以被描述为“将硬件***映射到操作***中,以生成虚拟硬件***的单元”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上***(SOC)、复杂可编程逻辑设备(CPLD)等等。
以上描述仅为本公开的一些较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (6)
1.一种用于硬件***与操作***的协同加密方法,包括:
将硬件***映射到操作***中,以生成虚拟硬件***;
获取所述硬件***的第一驱动程序在所述操作***中的第一数字签名,通过对所述第一数字签名进行加密,生成所述虚拟硬件***的第二驱动程序的第二数字签名;
响应于检测到所述硬件***的驱动指令,所述操作***对所述第二驱动程序进行加载,以对所述虚拟硬件***进行驱动;
确定被驱动后的虚拟硬件***的操作行为是否存在异常;
响应于确定被驱动后的虚拟硬件***的操作行为无异常,所述操作***则依据所述第二驱动程序对应的所述第二数字签名与所述第一数字签名,对所述第一驱动程序进行验证;
对所述第一驱动程序进行验证后,通过对所述第一驱动程序进行自动加载,建立所述虚拟硬件***与所述硬件***之间的同步关系,其中,所述同步关系表示将所述虚拟硬件***产生的操作行为在所述硬件中同步执行。
2.根据权利要求1所述的方法,其中,所述将硬件***映射到操作***中,以生成虚拟硬件***,包括:
在所述操作***中,设置虚拟空间,对硬件架构进行仿真虚拟,生成所述虚拟硬件***,并将虚拟空间设置在所述硬件***或与所述硬件***具有数据交互关系的关联硬件***中,其中,所述关联硬件***的操作***与所述硬件***的操作***相同。
3.根据权利要求2所述的方法,其中,所述方法还包括:
响应于接收到所述关联硬件***的配置请求,将所述硬件***作为保密区域,将所述关联硬件***作为公共区域,以及响应于对所述硬件***进行驱动时,所述操作***自动跳转至所述公共区域进行硬件驱动。
4.一种用于硬件***与操作***的协同加密装置,包括:
映射单元,被配置成将硬件***映射到操作***中,以生成虚拟硬件***;
获取单元,被配置成获取所述硬件***的第一驱动程序在所述操作***中的第一数字签名,通过对所述第一数字签名进行加密,生成所述虚拟硬件***的第二驱动程序的第二数字签名;
加载单元,被配置成响应于检测到所述硬件***的驱动指令,所述操作***对所述第二驱动程序进行加载,以对所述虚拟硬件***进行驱动;
确定单元,被配置成确定被驱动后的虚拟硬件***的操作行为是否存在异常;
验证单元,被配置成响应于确定被驱动后的虚拟硬件***的操作行为无异常,所述操作***则依据所述第二驱动程序对应的所述第二数字签名与所述第一数字签名,对所述第一驱动程序进行验证;
建立单元,被配置成对所述第一驱动程序进行验证后,通过对所述第一驱动程序进行自动加载,建立所述虚拟硬件***与所述硬件***之间的同步关系,其中,所述同步关系表示将所述虚拟硬件***产生的操作行为在所述硬件中同步执行。
5.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-3中任一所述的方法。
6.一种计算机可读介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1-3中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311015266.9A CN116738503B (zh) | 2023-08-14 | 2023-08-14 | 用于硬件***与操作***的协同加密方法、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311015266.9A CN116738503B (zh) | 2023-08-14 | 2023-08-14 | 用于硬件***与操作***的协同加密方法、电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116738503A CN116738503A (zh) | 2023-09-12 |
CN116738503B true CN116738503B (zh) | 2023-10-20 |
Family
ID=87901544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311015266.9A Active CN116738503B (zh) | 2023-08-14 | 2023-08-14 | 用于硬件***与操作***的协同加密方法、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116738503B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116975896B (zh) * | 2023-09-21 | 2023-11-24 | 深圳市英洛迪科技有限公司 | 一种用于硬盘数据加密的安全存储*** |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107992381A (zh) * | 2017-12-11 | 2018-05-04 | 深圳市科力锐科技有限公司 | ***还原方法、装置、***、备份还原服务器及存储介质 |
CN110622164A (zh) * | 2017-04-30 | 2019-12-27 | 微软技术许可有限责任公司 | 驱动程序代码子集在单独保护域中的执行 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201901298D0 (en) * | 2019-01-30 | 2019-03-20 | Korala Associates Ltd | Device drivers |
-
2023
- 2023-08-14 CN CN202311015266.9A patent/CN116738503B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110622164A (zh) * | 2017-04-30 | 2019-12-27 | 微软技术许可有限责任公司 | 驱动程序代码子集在单独保护域中的执行 |
CN107992381A (zh) * | 2017-12-11 | 2018-05-04 | 深圳市科力锐科技有限公司 | ***还原方法、装置、***、备份还原服务器及存储介质 |
Non-Patent Citations (5)
Title |
---|
"Activity EMG Signal Identification Based on Radial Basis Function Neural Networks";Li Yuan 等;《Proceedings of 2017 IEEE 8th International Conference on Software Engineering and Service Science》;全文 * |
"Android软件恶意行为检测技术研究";曲家兴;《中国博士学位论文全文数据库 信息科技辑》;全文 * |
"ARM加解密硬件加速在WebServer领域的应用研究";李林芝;《中国优秀硕士学位论文全文数据库 信息科技辑》;全文 * |
"个人文件的安全策略与设计";李振军;《安全技术》;全文 * |
"数控***和现代机械工程技术探究";林苑 等;《科技与产业》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116738503A (zh) | 2023-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116738503B (zh) | 用于硬件***与操作***的协同加密方法、电子设备 | |
WO2021088659A1 (zh) | 电子签章载入方法和装置 | |
CN111200593A (zh) | 应用登录方法、装置和电子设备 | |
CN117061105A (zh) | 数据处理方法、装置、可读介质及电子设备 | |
CN113282951B (zh) | 一种应用程序的安全校验方法、装置及设备 | |
CN114880011A (zh) | Ota升级方法、装置、电子设备及可读存储介质 | |
CN115296807B (zh) | 用于预防工控网络病毒的密钥生成方法、装置、设备 | |
CN109324843B (zh) | 一种指纹处理***、方法及指纹设备 | |
CN116502189A (zh) | 软件授权方法、***、设备和存储介质 | |
CN116611087A (zh) | 基本输入输出***加密方法、装置、设备及存储介质 | |
CN113904773B (zh) | Ssl连接建立方法、装置、电子设备及计算机可读存储介质 | |
CN113315641B (zh) | 一种种子密钥备份的方法、电子设备和*** | |
CN113472737B (zh) | 边缘设备的数据处理方法、装置及电子设备 | |
CN111935138B (zh) | 安全登录的防护方法、装置及电子设备 | |
CN114816495A (zh) | Ota升级方法、装置、电子设备及可读存储介质 | |
CN111291379B (zh) | 基于Android的车载***应用检测方法、装置及电子设备 | |
CN115150086A (zh) | 云服务基于生物特征的公钥的身份认证方法及设备 | |
CN113761587A (zh) | 用于签名校验的方法和装置 | |
CN116186709B (zh) | 基于虚拟化VirtIO技术卸载UEFI安全启动的方法、装置及介质 | |
CN115879135B (zh) | 招投标数据处理方法、装置、设备及存储介质 | |
CN113660100B (zh) | 生成软令牌种子的方法、***和电子设备 | |
CN112612426A (zh) | 删除数据的方法、装置、电子设备、及存储介质 | |
CN114244565B (zh) | 密钥分发方法、装置、设备及存储介质 | |
CN113505364B (zh) | 密码保护方法、电子设备和计算机可读存储介质 | |
CN116502245A (zh) | 文件加解密方法、***、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |