基于可信芯片的磁盘加密方法及系统与流程

文档序号:29405222发布日期:2022-03-26 10:27阅读:218来源:国知局
基于可信芯片的磁盘加密方法及系统与流程

1.本发明涉及计算机科学技术领域,具体涉及一种基于可信芯片的磁盘加密方法、系统、电子设备和可读存储介质。


背景技术:

2.在信息技术飞速发展的时代,数据安全越来越重要,企业也越来越关注,保证数据安全的关键就是数据加密技术。luks是linux一种比较流行的磁盘加密技术,加密就涉及到加密口令的安全问题,luks支持口令输入密钥或通过文件导入密钥,但是密钥安全性得不到保证,一旦密钥泄露或被窃取,则数据安全受到严重威胁。
3.因此,有必要提供一种数据加密的方法,提升luks加密的加密密钥的安全性。


技术实现要素:

4.解决的技术问题针对现有技术所存在的上述缺点,本发明提供了一种基于可信芯片的磁盘加密方法,通过将luks加密的加密密钥与可信芯片绑定的方式来保证加密密钥的安全性。
5.技术方案为实现以上目的,本发明通过以下技术方案予以实现:本发明提供了一种基于可信芯片的磁盘加密方法,包括如下步骤:s1、对待加密系统的所有磁盘分区进行查询,得到所述待加密系统的一可加密磁盘分区;s2、随机生成加密密钥,对所述可加密磁盘分区进行luks加密,所述加密密钥对应所述可加密磁盘分区;s3、将所述加密秘钥写入所述待加密系统的可信芯片,并添加一个令牌,将luks密钥槽与所述可信芯片绑定,所述令牌存储所述加密密钥写入可信芯片方式及与其关联的luks密钥槽,所述可信芯片中存储所述加密密钥;s4、将所述可加密磁盘分区的信息和luks加密密钥与可信芯片绑定方式记录到加密系统配置文件。
6.进一步地,步骤s4还包括生成恢复密钥,所述恢复密钥用于恢复所述加密密钥,并将所述恢复密钥备份到所述管理平台。
7.进一步地,所述对所述可加密磁盘分区进行luks加密使用aes算法或者sm4算法。
8.进一步地,所述对所述可加密磁盘分区进行luks加密指对所述可加密磁盘分区的数据和文件系统进行加密。
9.进一步地,所述可信芯片为tpm芯片、cpu内置安全芯片或外置ukey。
10.基于同一发明构想,本发明还提供了一种基于可信芯片的磁盘加密系统,使用上述任一项所述的磁盘加密方法,包括:磁盘加密模块,用于对待加密系统的可加密磁盘分区进行luks加密,并生成生成
加密密钥;可信芯片绑定模块,用于检测所述待加密系统的可信芯片,并根据所述可信芯片的类型添加令牌,将luks密钥槽与所述可信芯片绑定,记录所述加密密钥的写入可信芯片方式,并将所述可加密磁盘分区的信息,以及luks加密密钥与可信芯片绑定方式记录到加密系统配置文件;启动解密模块,用于根据加密系统配置文件,查找所述可加密磁盘分区,通过所述令牌在所述可信芯片中读取加密密钥,对所述可加密磁盘分区进行解密。
11.进一步地,还包括:密钥备份模块,用于生成恢复密钥,并对所述恢复密钥进行备份,所述恢复密钥用于在异常情况下进行所述加密密钥的恢复。
12.基于同一发明构想,本发明还提供了一种电子设备,包括处理器和存储器,所述存储器上存储有计算机程序,所述计算机程序被所述处理器执行时,实现上述的方法。
13.基于同一发明构想,本发明还提供了一种可读存储介质,所述可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现上述的方法。
14.有益效果本发明提供的技术方案,与已知的公有技术相比,具有如下有益效果:本发明提供了一种基于可信芯片的磁盘加密方法,通过将luks加密的加密密钥与可信芯片绑定的方式来保证加密密钥的安全性。
附图说明
15.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
16.图1为本发明一实施例提供的基于可信芯片的磁盘加密方法步骤示意图;图2为本发明一实施例提供的基于可信芯片的磁盘加密方法加密流程示意图;图3为本发明一实施例提供的基于可信芯片的磁盘加密方法解密流程示意图。
具体实施方式
17.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
18.参阅图1,本发明一实施例提供了一种基于可信芯片的磁盘加密方法,包括如下步骤:s1、对待加密系统的所有磁盘分区进行查询,得到所述待加密系统的一可加密磁盘分区;s2、随机生成加密密钥,对所述可加密磁盘分区进行luks加密,所述加密密钥对应所述可加密磁盘分区;
s3、将所述加密秘钥写入所述待加密系统的可信芯片,并添加一个令牌,将luks密钥槽与所述可信芯片绑定,所述令牌存储所述加密密钥写入可信芯片方式及与其关联的luks密钥槽,所述可信芯片中存储所述加密密钥;s4、将所述可加密磁盘分区的信息和luks加密密钥与可信芯片绑定方式记录到加密系统配置文件。
19.具体加密的实施,参阅图2所示的加密流程:对于步骤s1,对待加密系统的所有磁盘分区进行查询,得到所述待加密系统的一可加密磁盘分区:其中,步骤s1的目的是获取分区信息和分区状态,根据分区状态确定可加密分区,如果分区为未加密状态,则该分区可加密;如果分区为加密中断(异常重启或中断),则该分区可继续加密;如果分区为已加密状态,则该分区不可加密。
20.对于步骤s2,随机生成加密密钥,对所述可加密磁盘分区进行luks加密,所述加密密钥对应所述可加密磁盘分区,即通过随机数方式生成的密钥,相对人为口令输入密钥,密钥复杂度和安全性更高。luks是一种linux硬盘加密标准,其规定了各种硬盘加密软件的密钥管理等功能的兼容实现接口。通过提供标准的磁盘格式,它不仅可以促进发行版之间的兼容性,还可以提供对多个用户密码的安全管理。因此,可使用luks方式对磁盘分区进行加密。
21.在本实施例中,luks加密时可以指定加密算法,除支持aes等国际算法,还支持sm4等国密算法。
22.在本实施例中,除所述可加密磁盘分区的数据外,文件系统也进行加密,即分区数据全部为密文,提高分区数据安全性,减少数据被分析的可能。所述可加密磁盘分区加密完成挂载后,对所述可加密磁盘分区写入数据,直接进行加密,从分区读取数据,直接进行解密,加密过程对用户透明。
23.对于步骤s3,将所述加密秘钥写入所述待加密系统的可信芯片,并添加一个令牌,将luks密钥槽与所述可信芯片绑定,所述令牌存储所述加密密钥写入可信芯片方式及与其关联的luks密钥槽,所述可信芯片中存储所述加密密钥,该步骤方法可支持多种可信芯片,包括但不限于tpm、cpu内置安全芯片、外置ukey等。如果增加一种可信芯片,只需增加一种插件,该插件支持可信芯片的读写。根据系统使用的可信芯片,使用对应的插件,将步骤s2中生成的加密密钥写入可信芯片;再使用该插件添加一个令牌,记录可信芯片类型和密钥读取方式,最后,通过令牌,将luks密钥槽与可信芯片绑定。
24.对于步骤s4,将所述可加密磁盘分区的信息和luks加密密钥与可信芯片绑定方式记录到加密系统配置文件,使得在系统启动时,可通过配置文件信息,进行解密磁盘分区。
25.在本实施例中,步骤s4还包括生成恢复密钥,所述恢复密钥用于恢复所述加密密钥,并将所述恢复密钥备份到所述管理平台。加密完成后,通过加密密钥生成恢复密钥,将恢复密钥备份到管理平台。当可信芯片损坏或更换设备,作为一种恢复加密密钥的手段,保证异常情况下可以恢复数据。
26.解密时,参阅图3所示的解密流程:1)系统启动时,读取所述加密系统配置文件,查找加密分区。所述加密分区即为所述可加密磁盘分区,根据所述配置文件的记录,获取中所述可加密磁盘分区的luks头部信
息。
27.2)查找加密分区的令牌,根据令牌中密钥记录方式,从可信芯片中读取加密密钥。在所述可加密磁盘分区的luks头部中查找令牌,通过令牌读取该加密分区使用的插件类型,如tpm插件。通过插件读取所述可信芯片中的加密密钥,如tpm可信芯片。此外,如果所述可信芯片损坏或更换设备,此时通过可信芯片读取加密密钥失败,则可从管理平台获取恢复密钥,通过恢复密钥得到加密密钥。此时,检测系统是否有新的可信芯片,重新进行绑定,并删除原绑定方式。
28.3)使用加密密钥解密磁盘,即解密所述可加密磁盘分区。通过所述可信芯片中读取的加密密钥解密磁盘,这样就可以不通过人为输入口令方式解密磁盘,提高密钥的安全性,降低密钥泄露的风险。
29.最后,一般加密数据都是重要、关键数据,如果加密过程发生异常,导致数据无法恢复,则会造成重大且无法挽回的损失。因此,在加密过程,对数据保护尤为重要,本发明提供一种异常情况下数据保护方法。在对磁盘分区直接进行luks加密时,第一步:从磁盘分区读取数据块a;第二步:将数据块a备份到luks头部中,记为数据块b,luks头部存在一个可以正常读写的分区中;第三步:将数据块a进行加密,加密后的数据为数据块c;第四步:将加密后的数据块c写回到原来数据块a的位置;此时完成一轮数据加密。如果在第一、二、三步过程中发生断电等异常,则重启后直接从磁盘分区数据块a位置继续加密。如果在第三步过程中发送断电等异常,此时磁盘分区数据块a位置数据既有加密数据又有未加密数据,则重启后,从luks头部中备份的数据块b进行恢复,对数据块b进行加密后再写回原数据块a的位置,完成异常数据恢复。
30.基于同一发明构想,本发明还提供了一种基于可信芯片的磁盘加密系统,使用上述任一项所述的磁盘加密方法,包括:磁盘加密模块,用于对待加密系统的可加密磁盘分区进行luks加密,并生成生成加密密钥;可信芯片绑定模块,用于检测所述待加密系统的可信芯片,并根据所述可信芯片的类型添加令牌,将luks密钥槽与所述可信芯片绑定,记录所述加密密钥的写入可信芯片方式,并将所述可加密磁盘分区的信息,以及luks加密密钥与可信芯片绑定方式记录到加密系统配置文件;启动解密模块,用于根据加密系统配置文件,查找所述可加密磁盘分区,通过所述令牌在所述可信芯片中读取加密密钥,对所述可加密磁盘分区进行解密。
31.在本实施例中,所述基于可信芯片的磁盘加密系统一般还包括:密钥备份模块,用于生成恢复密钥,并对所述恢复密钥进行备份,所述恢复密钥用于在异常情况下进行所述加密密钥的恢复。
32.基于同一发明构想,本发明还提供了一种电子设备,包括处理器和存储器,所述存储器上存储有计算机程序,所述计算机程序被所述处理器执行时,实现所述基于可信芯片的磁盘加密方法。
33.所述处理器在一些实施例中可以是中央处理器(central processing unit,cpu)、控制器、微控制器、微处理器(例如gpu(graphics processing unit-图形处理器))、或其他数据处理芯片。该处理器通常用于控制所述电子设备的总体操作。本实施例中,所述
处理器用于运行所述存储器中存储的程序代码或者处理数据,例如运行所述的基于可信芯片的磁盘加密方法的程序代码。
34.所述存储器至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器可以是所述电子设备的内部存储单元,例如该电子设备的硬盘或内存。在另一些实施例中,所述存储器也可以是所述电子设备的外部存储设备,例如该电子设备上配备的插接式硬盘,智能存储卡(smart media card, smc),安全数字(secure digital, sd)卡,闪存卡(flash card)等。当然,所述存储器还可以既包括所述电子设备的内部存储单元也包括其外部存储设备。本实施例中,所述存储器通常用于存储安装于所述电子设备的操作方法和各类应用软件,例如所述基于可信芯片的磁盘加密方法的程序代码等。此外,所述存储器还可以用于暂时地存储已经输出或者将要输出的各类数据。
35.基于同一发明构想,本发明还提供一种可读存储介质,所述可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现所述基于可信芯片的磁盘加密方法。
36.本发明的优点在于提供的基于腾云s2500双路服务器架构的nvme存储卡性能优化方法针对腾云s2500双路服务器架构的特点,优化nvme存储卡的硬件队列数量,并根据nvme存储卡实际所处为主路cpu或从路cpu,优化其中断亲和性,以达到避免中断跨路而引发的中断跨路堆积处理问题,达到优化nvme存储卡性能的目的。
37.综上所述,本发明提供了一种基于可信芯片的磁盘加密方法,通过将luks加密的加密密钥与可信芯片绑定的方式来保证加密密钥的安全性。
38.以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不会使相应技术方案的本质脱离本发明各实施例技术方案的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1