一种系统盘的校验方法和装置制造方法及图纸

技术编号:13193244 阅读:49 留言:0更新日期:2016-05-11 20:00
本发明专利技术公开了一种系统盘的校验方法和装置。其中的方法包括:验证系统盘校验表的签名,所述签名是采用消息认证码生成算法生成的消息认证码;若签名验证通过,进一步根据所述系统盘校验表,获取所述系统盘的哈希树,并验证所述哈希树本身是否正确;若所述哈希树本身是正确的,进一步验证所述哈希树是否是根据所述系统盘的数据生成;若进一步验证的结果为是,所述系统盘的校验通过。还公开了相应的装置。本发明专利技术通过采用消息认证码作为系统盘校验表的签名进行验证,所需运算量少,可以提高系统盘的校验效率。

【技术实现步骤摘要】

本专利技术涉及智能终端
,尤其涉及一种终端的系统盘的校验方法和装置
技术介绍
为了保证终端的安全性,确保终端系统盘数据的完整性,Android4.4及之后版本需要米用系统盘fe验(dm-verity)机制对系统盘进彳丁完整性fe验。在dm-verity机制中,用于校验系统盘的校验值包括哈希树、系统盘校验表(dm-verity表)、对dm-verity表的签名。其中,哈希树由系统盘数据直接生成,是对系统盘数据的直接校验值;dm-Verity表记载了系统盘哈希树生成过程的参数配置以及哈希树的根哈希值;对dm-verity表的签名用于校验dm-verity表。然后,现有的dm-verity表的签名运算和公钥加密运算类似,需要大量的计算,属于“重量级”的密码学运算过程。目前还没有一种所需运算量少、属于“轻量级”的密码学运算过程。
技术实现思路
本专利技术提供一种系统盘的校验方法和装置,以对系统盘校验表提供所需运算量少的签名验证,提供系统盘的校验效率。—方面,本专利技术提供的一种系统盘的校验方法,包括:验证系统盘校验表的签名是否通过,所述签名是采用消息认证码生成算法生成的消息认证码;若签名验证通过,进一步根据所述系统盘校验表,获取所述系统盘的哈希树,并验证所述哈希树本身是否正确;若所述哈希树本身是正确的,进一步验证所述哈希树是否是根据所述系统盘的数据生成;若进一步验证的结果为是,所述系统盘的校验通过。另一方面,本专利技术提供的一种系统盘的校验装置,包括:第一验证单元,用于验证系统盘校验表的签名,所述签名是采用消息认证码生成算法生成的消息认证码;获取单元,用于若签名验证通过,进一步根据所述系统盘校验表,获取所述系统盘的哈希树;第二验证单元,用于验证所述哈希树本身是否正确;第三验证单元,用于若所述哈希树本身是正确的,进一步验证所述哈希树是否是根据所述系统盘的数据生成,若进一步验证的结果为是,所述系统盘的校验通过。可见,根据本专利技术提供的一种系统盘的校验方法和装置,对采用消息认证码作为系统盘校验表的签名进行验证,所需运算量少,可以提高系统盘的校验效率。【附图说明】为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术提供的一种系统盘的校验方法的流程示意图;图2为本专利技术提供的另一种系统盘的校验方法的流程示意图;图3为本专利技术提供的一种系统盘的校验装置的结构示意图;图4为本专利技术提供的另一种系统盘的校验装置的结构示意图。【具体实施方式】下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术涉及采用消息认证码(Message Authenticat1n Code,MAC)对终端的系统盘校验表进行签名。消息认证码是密码学中通信实体双方使用的一种验证机制,保证消息数据完整性的一种工具。安全性依赖于哈希(Hash)函数,故也称带密钥的Hash函数。消息认证码是基于密钥和消息摘要所获得的一个值,可用于数据源发认证和完整性校验。本专利技术涉及的终端一般指移动设备。为了保证终端的安全性,确保终端系统盘数据的完整性,Android4.4及之后版本需要采用dm-verity机制对系统盘进行完整性校验。本专利技术通过采用消息认证码作为系统盘校验表的签名进行验证,所需运算量少,可以提高系统盘的校验效率。下面结合图1-图2,对本专利技术提供的系统盘的校验方法进行详细描述:请参阅图1,为根据本专利技术实施例提供的一种系统盘的校验方法的流程示意图,该方法包括以下步骤:步骤S101,验证系统盘校验表的签名是否通过,所述签名是采用消息认证码生成算法生成的消息认证码;若是,则进行到步骤S102,否则,跳至步骤S106。系统盘校验表的签名是采用MAC码生成算法生成的MAC码,反过来,进行验证的时候,具体是将系统密码K、系统盘校验表输入该MAC码生成算法,将根据该算法生成的MAC码与终端中存储的MAC进行对比,若对比的结果一致,则验证通过,进行到下一步验证,否则,验证失败,不必进行下一步验证。系统密码K是在终端中预先设定和存储的。对系统盘校验表进行了签名,签名机制具有多重作用:校验信息、追溯信息来源等。而在系统盘校验表签名中只利用了签名机制的校验信息这个作用。如果该签名采用数字签名,需要大量的计算,属于“重量级”的密码学运算过程,采用MAC码进行签名验证,所需运算量非常少,属于“轻量级”的密码学运算过程。所以,如果仅要实现校验信息,更为合适的方法是米用MAC码。步骤S102,根据所述系统盘校验表,获取所述系统盘的哈希树。系统盘校验表中包括系统盘数据的根哈希值和哈希树的存储信息,因此,根据哈希树的存储信息,可以在终端中获取哈希树。其中,根哈希值是对系统盘的数据生成哈希树过程中的最后一个哈希值,哈希树是指对系统盘的数据生成哈希树过程中的所有哈希值组成的哈希树。根哈希值和哈希树都存储在终端中。步骤S103,验证所述哈希树本身是否正确;若是,则进行到步骤S104,否则,跳至步骤S106。验证哈希树本身是否正确,是指哈希树的生成逻辑是否正确,可以采用现有密码学技术验证哈希树本身是否正确。若哈希树本身是正确的,则进行到下一步验证,否则,验证失败,不必进行下一步验证。步骤S104,验证所述哈希树是否是根据所述系统盘的数据生成;若是,则进行到步骤S105,否则,跳至步骤S106。前面描述了哈希树是指对系统盘的数据生成哈希树过程中的所有哈希值组成的哈希树,本步骤需要验证该哈希树是否是根据系统盘的数据生成,如果是,则验证通过,否贝IJ,验证失败。步骤S105,所述系统盘的校验通过。通过以上三步验证,才算完成系统盘的整个校验过程。步骤S106,验证失败。以上三步验证,哪一步验证失败,整个系统盘的校验就失败了。可见,根据本专利技术实施例提供的一种系统盘的校验方法,通过采用消息认证码作为系统盘校验表的签名进行验证,所需运算量少,可以提高系统盘的校验效率。请参阅图2,为根据本专利技术实施例提供的另一种系统盘的校验方法的流程示意图,该方法包括以下步骤:下面的步骤S201-S204为系统盘的校验值的生成过程,系统盘的校验值包括:哈希树、系统盘校验表和系统盘校验表的签名:步骤S201,根据系统盘的数据生成哈希树、根哈希值,并存储所述哈希树、根哈希值。本步骤具体包括以下步骤:步骤Al:将所述系统盘的数据按照4k字节为单位划分为至少一个第一块。步骤A2:为每个所述第一块计算一个长度为32字节的至少一个第一哈希值。步骤A3:按照4k个字节为一个块,将所得到的至少一个第一哈希值划分为至少一个第二块,并为每个所述第二块计算长度为32字节的至少一个第二哈希值。步骤A4:重复上述划分和计算步骤,直到只有一个第当前第1页1 2 3 本文档来自技高网...

【技术保护点】
一种系统盘的校验方法,其特征在于,所述方法包括:验证系统盘校验表的签名是否通过,所述签名是采用消息认证码生成算法生成的消息认证码;若签名验证通过,进一步根据所述系统盘校验表,获取所述系统盘的哈希树,并验证所述哈希树本身是否正确;若所述哈希树本身是正确的,进一步验证所述哈希树是否是根据所述系统盘的数据生成;若进一步验证的结果为是,所述系统盘的校验通过。

【技术特征摘要】

【专利技术属性】
技术研发人员:钟焰涛傅文治蒋罗谭中军林荣辉
申请(专利权)人:宇龙计算机通信科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1