CN107480076A - ***分区的保护处理方法、装置及终端 - Google Patents
***分区的保护处理方法、装置及终端 Download PDFInfo
- Publication number
- CN107480076A CN107480076A CN201710642173.7A CN201710642173A CN107480076A CN 107480076 A CN107480076 A CN 107480076A CN 201710642173 A CN201710642173 A CN 201710642173A CN 107480076 A CN107480076 A CN 107480076A
- Authority
- CN
- China
- Prior art keywords
- data content
- current system
- metadata
- system subregion
- subregion
- 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.)
- Pending
Links
- 238000000638 solvent extraction Methods 0.000 title claims abstract description 99
- 238000003672 processing method Methods 0.000 title claims abstract description 14
- 238000000034 method Methods 0.000 claims abstract description 41
- 238000010276 construction Methods 0.000 claims description 53
- 238000012545 processing Methods 0.000 claims description 19
- 230000008859 change Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 16
- 238000005516 engineering process Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 150000003839 salts Chemical class 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000000712 assembly Effects 0.000 description 3
- 238000000429 assembly Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- KLDZYURQCUYZBL-UHFFFAOYSA-N 2-[3-[(2-hydroxyphenyl)methylideneamino]propyliminomethyl]phenol Chemical compound OC1=CC=CC=C1C=NCCCN=CC1=CC=CC=C1O KLDZYURQCUYZBL-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 201000001098 delayed sleep phase syndrome Diseases 0.000 description 1
- 208000033921 delayed sleep phase type circadian rhythm sleep disease Diseases 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1408—Protection against unauthorised use of memory or access to memory by using cryptography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/1425—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本公开是关于一种***分区的保护处理方法、装置及终端,其中,该方法包括:在终端启动过程中,读取当前***分区的第一数据内容值,第一数据内容值为根据当前***分区的历史数据内容生成的;根据当前***分区的当前数据内容,生成当前***分区的第二数据内容值;若第二数据内容值与第一数据内容值不相同,则确定当前***分区的数据内容被修改,停止启动过程。在确定终端的操作***的***分区被篡改的时候,停止终端的启动过程,不再去进行后面的启动操作的过程了;进而使得被篡改之后的终端无法被正常启动和正常使用,防止不法分子获取到用户的信息,防止用户的隐私进行泄露,进而保护用户的财产和个人信息。
Description
技术领域
本公开涉及终端技术领域,尤其涉及***分区的保护处理方法、装置及终端。
背景技术
随着终端技术的发展,终端已经成为人们生活和工作的重要工具。终端包括了个人终端、移动终端、公共终端等等。
相关技术中,终端中的硬件需要使用操作***去进行正常的工作,而越来越多的终端开始采用开源的操作***了,开源的操作***例如有安卓操作***。
然而相关技术中,因为操作***包括了多个***分区,在终端采用开源的操作***的时候,一些不法用户在拿到终端之后会对终端的操作***的各***分区进行篡改,去获取到用户的信息,进而会导致终端中的用户的隐私进行泄露,进一步的会导致用户的财产丢失、信息泄露等等。
发明内容
为克服相关技术中存在的会导致终端中的用户的隐私进行泄露,进一步的会导致用户的财产丢失、信息泄露等等的问题,本公开提供一种***分区的保护处理方法、装置及终端。
根据本公开实施例的第一方面,提供一种***分区的保护处理方法,包括:
在终端启动过程中,读取当前***分区的第一数据内容值,所述第一数据内容值为根据所述当前***分区的历史数据内容生成的;
根据所述当前***分区的当前数据内容,生成所述当前***分区的第二数据内容值;
若所述第二数据内容值与所述第一数据内容值不相同,则确定所述当前***分区的数据内容被修改,停止所述启动过程。
进一步地,所述第一数据内容值为哈希值或MD5,相应的,所述第二数据内容值为哈希值或MD5值。
进一步地,在所述读取当前***分区的第一数据内容值之前,还包括:
读取所述当前***分区的元数据的第一标识信息,其中,所述第一标识信息在所述元数据被修改时会产生变化,所述元数据为根据所述当前***分区的数据内容进行加密而生成的;
若所述第一标识信息与预存的第二标识信息不相同,则确定所述元数据被损坏,停止所述启动过程。
进一步地,所述方法,还包括:
若所述第一标识信息与所述第二标识信息相同,则读取所述当前***分区的验证表以及所述元数据中的第一签名信息,其中,所述验证表中包括了所述当前***分区的信息,所述第一签名信息为根据历史的验证表进行加密处理生成的;
对所述验证表进行加密处理,生成第二签名信息;
若所述第二签名信息与所述第一签名信息不相同,则确定所述验证表被修改,停止所述启动过程;
若所述第二签名信息与所述第一签名信息相同,则执行所述读取当前***分区的第一数据内容值的步骤。
进一步地,在所述在终端启动过程中,读取当前***分区的第一数据内容值之前,还包括:
根据操作***的每一个***分区的大小信息,将每一个***分区的数据内容划分为第一预设个数的节点;
将各节点划分为一个树结构,其中,所述树结构中包括一个根节点;
根据所述树结构的每一层上的第二预设个数的叶子节点的数据内容,生与第二预设个数的叶子节点对应的父节点的哈希值或MD5值,其中,每一层上具有第三预设个数的叶子节点,所述第三预设个数为所述第二预设个数的预设倍数;
将所述根节点的哈希值或MD5值,作为所述第一数据内容值。
进一步地,在将所述根节点的哈希值或MD5值,作为所述第一数据内容值之后,还包括:
根据所述树结构,生成验证表,其中,所述验证表中包括所述第一数据内容值、所述树结构的节点的个数、所述树结构的每一个节点的大小;
对所述验证表进行加密处理,生成元数据,其中,所述元数据中包括第一标识信息、第一签名信息、所述验证表的大小信息、所述验证表中的各信息。
进一步地,所述元数据中还包括填充数据;
所述填充数据是在所述元数据的大小小于预设值时,为所述元数据填充的非所述当前***分区的数据内容的数据。
本公开的实施例提供的技术方案可以包括以下有益效果:通过在终端启动过程中,读取当前***分区的第一数据内容值,第一数据内容值为根据当前***分区的历史数据内容生成的;根据当前***分区的当前数据内容,生成当前***分区的第二数据内容值;若第二数据内容值与第一数据内容值不相同,则确定当前***分区的数据内容被修改,停止启动过程。通过确定计算出的第二数据内容值与读取出的第一数据内容值是否相同,从而可以检测***分区的当前数据内容与历史数据内容是否相同,进而判断***分区的数据内容是否被篡改;在确定终端的操作***的***分区被篡改的时候,停止终端的启动过程,不再去进行后面的启动操作的过程了;进而使得被篡改之后的终端无法被正常启动和正常使用,防止不法分子获取到用户的信息,防止用户的隐私进行泄露,进而保护用户的财产和个人信息。
根据本公开实施例的第二方面,提供一种***分区的保护处理装置,包括:
第一读取模块,被配置为在终端启动过程中,读取当前***分区的第一数据内容值,所述第一数据内容值为根据所述当前***分区的历史数据内容生成的;
第一生成模块,被配置为根据所述当前***分区的当前数据内容,生成所述当前***分区的第二数据内容值;
第一停止模块,被配置为若所述第二数据内容值与所述第一数据内容值不相同,则确定所述当前***分区的数据内容被修改,停止所述启动过程。
进一步地,所述第一数据内容值为哈希值或MD5值,相应的,所述第二数据内容值为哈希值或MD5值。
进一步地,所述装置,还包括:
第二读取模块,被配置为在所述第一读取模块读取当前***分区的第一数据内容值之前,读取所述当前***分区的元数据的第一标识信息,其中,所述第一标识信息在所述元数据被修改时会产生变化,所述元数据为根据所述当前***分区的数据内容进行加密而生成的;
第二停止模块,被配置为若所述第一标识信息与预存的第二标识信息不相同,则确定所述元数据被损坏,停止所述启动过程。
进一步地,所述装置,还包括:
第三读取模块,被配置为若所述第一标识信息与所述第二标识信息相同,则读取所述当前***分区的验证表以及所述元数据中的第一签名信息,其中,所述验证表中包括了所述当前***分区的信息,所述第一签名信息为根据历史的验证表进行加密处理生成的;
第二生成模块,被配置为对所述验证表进行加密处理,生成第二签名信息;
第三停止模块,被配置为若所述第二签名信息与所述第一签名信息不相同,则确定所述验证表被修改,停止所述启动过程;
执行模块,被配置为若所述第二签名信息与所述第一签名信息相同,则执行所述第一读取模块。
进一步地,所述装置,还包括:
划分模块,被配置为在所述第一读取模块在终端启动过程中,读取当前***分区的第一数据内容值之前,根据操作***的每一个***分区的大小信息,将每一个***分区的数据内容划分为第一预设个数的节点;
第一确定模块,被配置为将各节点划分为一个树结构,其中,所述树结构中包括一个根节点;
计算模块,被配置为根据所述树结构的每一层上的第二预设个数的叶子节点的数据内容,生与第二预设个数的叶子节点对应的父节点的哈希值或MD5值,其中,每一层上具有第三预设个数的叶子节点,所述第三预设个数为所述第二预设个数的预设倍数;
第二确定模块,被配置为将所述根节点的哈希值或MD5值,作为所述第一数据内容值。
进一步地,所述装置,还包括:
加密模块,被配置为在将所述第二确定模块根节点的哈希值或MD5值,作为所述第一数据内容值之后,根据所述树结构,生成验证表,其中,所述验证表中包括所述第一数据内容值、所述树结构的节点的个数、所述树结构的每一个节点的大小;对所述验证表进行加密处理,生成元数据,其中,所述元数据中包括第一标识信息、第一签名信息、所述验证表的大小信息、所述验证表中的各信息。
进一步地,所述元数据中还包括填充数据;所述填充数据是在所述元数据的大小小于预设值时,为所述元数据填充的非所述当前***分区的数据内容的数据。
本公开的实施例提供的技术方案可以包括以下有益效果:通过在终端启动过程中,读取当前***分区的第一数据内容值,第一数据内容值为根据当前***分区的历史数据内容生成的;根据当前***分区的当前数据内容,生成当前***分区的第二数据内容值;若第二数据内容值与第一数据内容值不相同,则确定当前***分区的数据内容被修改,停止启动过程。通过确定计算出的第二数据内容值与读取出的第一数据内容值是否相同,从而可以检测***分区的当前数据内容与历史数据内容是否相同,进而判断***分区的数据内容是否被篡改;在确定终端的操作***的***分区被篡改的时候,停止终端的启动过程,不再去进行后面的启动操作的过程了;进而使得被篡改之后的终端无法被正常启动和正常使用,防止不法分子获取到用户的信息,防止用户的隐私进行泄露,进而保护用户的财产和个人信息。
根据本公开实施例的第三方面,提供一种终端,包括:
处理器,以及用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:在终端启动过程中,读取当前***分区的第一数据内容值,所述第一数据内容值为根据所述当前***分区的历史数据内容生成的;根据所述当前***分区的当前数据内容,生成所述当前***分区的第二数据内容值;判断所述第二数据内容值与所述第一数据内容值是否相同;若确定不相同,则确定所述当前***分区的数据内容被修改,停止所述启动过程。
本公开的实施例提供的技术方案可以包括以下有益效果:通过在终端启动过程中,读取当前***分区的第一数据内容值,第一数据内容值为根据当前***分区的历史数据内容生成的;根据当前***分区的当前数据内容,生成当前***分区的第二数据内容值;若第二数据内容值与第一数据内容值不相同,则确定当前***分区的数据内容被修改,停止启动过程。通过确定计算出的第二数据内容值与读取出的第一数据内容值是否相同,从而可以检测***分区的当前数据内容与历史数据内容是否相同,进而判断***分区的数据内容是否被篡改;在确定终端的操作***的***分区被篡改的时候,停止终端的启动过程,不再去进行后面的启动操作的过程了;进而使得被篡改之后的终端无法被正常启动和正常使用,防止不法分子获取到用户的信息,防止用户的隐私进行泄露,进而保护用户的财产和个人信息。
根据本公开实施例的第四方面,提供一种程序,该程序在被处理器执行时用于执行以上第一方面的任一方法。
根据本公开实施例的第五方面,提供一种计算机可读存储介质,包括第四方面的程序。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的一种***分区的保护处理方法实施例一的流程图;
图2是根据一示例性实施例示出的一种***分区的保护处理方法实施例二的流程图;
图3是根据一示例性实施例示出的一种***分区的保护处理装置实施例三的框图;
图4是根据一示例性实施例示出的一种***分区的保护处理装置实施例四的框图;
图5是根据一示例性实施例示出的一种终端的实体的框图;
图6是根据一示例性实施例示出的一种终端设备800的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种***分区的保护处理方法实施例一的流程图,如图1所示,***分区的保护处理方法用于终端中,该终端包括移动终端、个人终端等等,例如触屏手机、平板电脑、个人电脑等,该方法包括以下步骤。
在步骤S11中,在终端启动过程中,读取当前***分区的第一数据内容值,所述第一数据内容值为根据所述当前***分区的历史数据内容生成的。
其中,第一数据内容值为哈希值或消息摘要算法第五版(Message DigestAlgorithm MD5,简称MD5)值,相应的,第二数据内容值为哈希值或MD5值。
在本步骤中,终端具有多个***分区。在终端启动过程中,针对于每一个***分区来说,在第一次读取当前***分区的数据内容的时候,去读取当前***分区的第一数据内容值;该第一数据内容值是之前根据当前***分区的历史数据内容生成的,然后第一数据内容值被存储到当前***分区中。其中,第一数据内容值可以为哈希值,或者为MD5值;在第一数据内容值采用的是哈希值的时候,第二数据内容值采用的也是哈希值;在第一数据内容值采用的是MD5值的时候,第二数据内容值采用的也是MD5。
举例来说,针对终端的***分区1,已经根据当前***分区的此时的数据内容生成了一个第一哈希值;然后在终端再次启动的过程中,读取当前***分区的第一哈希值。
在步骤S12中,根据所述当前***分区的当前数据内容,生成所述当前***分区的第二数据内容值。
在本步骤中,在终端的启动过程中,根据当前***分区的当前数据内容,去生成当前***分区的第二数据内容值。具体来说,可以根据当前***分区的当前数据内容,根据哈希算法,得到当前***分区的第二哈希值;或者,可以根据当前***分区的当前数据内容,根据MD5算法,得到当前***分区的第二MD5值。
在步骤S13中,判断所述第二数据内容值与所述第一数据内容值是否相同。
在本步骤中,终端判断计算出的第二数据内容值与读取出的第一数据内容值是否相同。具体来说,终端判断第二哈希值与第一哈希值是否相同;或者,终端判断第二MD5值与第一MD5值是否相同。
在步骤S14中,若确定所述第二数据内容值与所述第一数据内容值不相同,则确定所述当前***分区的数据内容被修改,停止所述启动过程。
在本步骤中,终端若确定计算出的第二数据内容值与读取出的第一数据内容值不相同,则终端可以确定当前***分区的数据内容被修改了,然后终端停止当前的启动过程,不再去进行后面的启动操作的过程了。
本实施例通过在终端启动过程中,读取当前***分区的第一数据内容值,第一数据内容值为根据当前***分区的历史数据内容生成的;根据当前***分区的当前数据内容,生成当前***分区的第二数据内容值;若第二数据内容值与第一数据内容值不相同,则确定当前***分区的数据内容被修改,停止启动过程。通过确定计算出的第二数据内容值与读取出的第一数据内容值是否相同,从而可以检测***分区的当前数据内容与历史数据内容是否相同,进而判断***分区的数据内容是否被篡改;在确定终端的操作***的***分区被篡改的时候,停止终端的启动过程,不再去进行后面的启动操作的过程了;进而使得被篡改之后的终端无法被正常启动和正常使用,防止不法分子获取到用户的信息,防止用户的隐私进行泄露,进而保护用户的财产和个人信息。
图2是根据一示例性实施例示出的一种***分区的保护处理方法实施例二的流程图,如图2所示,***分区的保护处理方法用于终端中,该终端包括移动终端、个人终端等等,例如触屏手机、平板电脑、个人电脑等,该方法包括以下步骤。
在步骤S21中,在终端启动过程中,读取所述当前***分区的元数据的第一标识信息,其中,所述第一标识信息在所述元数据被修改时会产生变化,所述元数据为根据所述当前***分区的数据内容进行加密而生成的。
在本步骤中,终端具有多个***分区;针对于每一个***分区来说,每一个***分区具有一个元数据,该元数据是根据当前***分区的数据内容进行加密而生成的;并且,每一个元数据具有一个标识信息,该标识信息在***分区的元数据被修改时会产生变化。
在终端启动过程中,在第一次读取当前***分区的数据内容的时候,终端去读取当前***分区的元数据的第一标识信息。
在步骤S22中,判断所述第一标识信息与预存的第二标识信息是否相同。
在本步骤中,终端获取预存的与当前***分区对应的第二标识信息;然后终端判断第一标识信息与第二标识信息是否相同。
在步骤S23中,若确定所述第一标识信息与所述第二标识信息不相同,则确定所述元数据被损坏,停止所述启动过程。
在本步骤中,在步骤S22之后,若终端确定第一标识信息与第二标识信息不同,则可以确定当前***分区的元数据被损坏,即当前***分区的数据内容被破坏了,然后终端停止当前的启动过程,不再去进行后面的启动操作的过程了。
在步骤S24中,若确定所述第一标识信息与所述第二标识信息相同,则读取所述当前***分区的验证表以及所述元数据中的第一签名信息,其中,所述验证表中包括了所述当前***分区的信息,所述第一签名信息为根据历史的验证表进行加密处理生成的。
在本步骤中,在步骤S22之后,若终端确定第一标识信息与第二标识信息相同,则终端继续对当前***分区是否被篡改进行判断。
由于针对每一个***分区,终端根据数据内容生成了一个验证表,该验证表包括了当前***分区的信息;然后,终端对验证表进行加密处理,生成一个签名信息,例如,终端采用公钥对验证表进行加密处理,生成一个签名信息。
从而在步骤S22之后,终端若确定第一标识信息与第二标识信息相同,则终端读取当前***分区的元数据中的第一签名信息,可知,该第一签名信息为根据历史的验证表进行加密处理生成的;同时,终端获取当前***分区的验证表。
在步骤S25中,对所述验证表进行加密处理,生成第二签名信息。
在本步骤中,在步骤S24之后,终端对读取到的当前***分区的验证表进行加密处理,生成第二签名信息。例如,终端采用公钥对该验证表进行加密处理,生成一个第二签名信息。
在步骤S26中,判断所述第二签名信息与所述第一签名信息是否相同。
在本步骤中,在步骤S25之后,终端判断当前计算出的第二签名信息,与读取到的当前***分区的元数据中的第一签名信息是否相同。
在步骤S27中,若确定所述第二签名信息与所述第一签名信息不相同,则确定所述验证表被修改,停止所述启动过程。
在本步骤中,在步骤S26之后,终端若确定第二签名信息与第一签名信息不相同,则终端可以确定当前***分区的验证表被修改了,进而确定当前***分区的数据内容被篡改了,然后终端停止当前的启动过程,不再去进行后面的启动操作的过程了。
在步骤S28中,若确定所述第二签名信息与所述第一签名信息相同,则读取当前***分区的第一数据内容值,所述第一数据内容值为根据所述当前***分区的历史数据内容生成的。
其中,数据内容值为哈希值或MD5值。
在本步骤中,在步骤S26之后,终端若确定第二签名信息与第一签名信息相同,则终端继续对当前***分区是否被篡改进行判断,然后终端执行本步骤S28。
本步骤参见图1的步骤S11,不再赘述。
在步骤S29中,根据所述当前***分区的当前数据内容,生成所述当前***分区的第二数据内容值。
在本步骤中,本步骤参见图1的步骤S12,不再赘述。
在步骤S210中,判断所述第二数据内容值与所述第一数据内容值是否相同。
在本步骤中,本步骤参见图1的步骤S13,不再赘述。
在步骤S211中,若确定所述第二数据内容值与所述第一数据内容值不相同,则确定所述当前***分区的数据内容被修改,停止所述启动过程。
在本步骤中,本步骤参见图1的步骤S14,不再赘述。
在步骤S212中,若确定所述第二数据内容值与所述第一数据内容值相同,则继续执行所述启动过程。
在本步骤中,在步骤S210之后,终端若确定计算出的第二数据内容值与读取出的第一数据内容值相同,则终端可以确定当前***分区的数据内容没有修改了,然后终端继续执行后面的启动操作的过程。
本实施例通过在终端启动过程中,读取当前***分区的元数据的第一标识信息,其中,第一标识信息在元数据被修改时会产生变化,元数据为根据当前***分区的数据内容进行加密而生成的;判断第一标识信息与预存的第二标识信息是否相同;若确定第一标识信息与第二标识信息不相同,则确定元数据被损坏,停止启动过程;若确定第一标识信息与第二标识信息相同,则读取当前***分区的验证表以及元数据中的第一签名信息,其中,验证表中包括了当前***分区的信息,第一签名信息为根据历史的验证表进行加密处理生成的;对验证表进行加密处理,生成第二签名信息;判断第二签名信息与第一签名信息是否相同;若确定第二签名信息与第一签名信息不相同,则确定验证表被修改,停止启动过程。若确定第二签名信息与第一签名信息相同,则执行读取当前***分区的第一数据内容值,第一数据内容值为根据当前***分区的历史数据内容生成的;根据当前***分区的当前数据内容,生成当前***分区的第二数据内容值;判断第二数据内容值与第一数据内容值是否相同;若确定不相同,则确定当前***分区的数据内容被修改,停止启动过程。进而在终端的启动过程中,对终端的各***分区分别进行了三次的判断过程,去判断***分区的数据内容是否被修改了;首先判断元数据是否被损坏,然后判断当前***分区的验证表是否被修改,然后通过确定计算出的第二数据内容值与读取出的第一数据内容值是否相同,从而可以检测***分区的当前数据内容与历史数据内容是否相同,进而判断***分区的数据内容是否被篡改;在确定终端的操作***的***分区的数据内容被修改的时候,停止终端的启动过程,不再去进行后面的启动操作的过程了;进而使得被篡改之后的终端无法被正常启动和正常使用,防止不法分子获取到用户的信息,防止用户的隐私进行泄露,进而保护用户的财产和个人信息。
进一步的,在图2所示实施例的基础上,在步骤S21之前,还可以包括以下各步骤。
在步骤S31中,根据操作***的每一个***分区的大小信息,将每一个***分区的数据内容划分为第一预设个数的节点。
在本步骤中,首先,终端将终端的操作***进行分区,得到多个***分区可以称每一个***分区为一个影像(image)。
然后,确定出每一个***分区的大小,然后将每一个***分区的数据内容换分成多个节点;具体来说,将一个***分区,按照指定的块大小,将一个***分区分成多个块,一个块为一个节点,其中,每一个块的大小可以为4k。
举例来说,一个***分区的大小为800M,将每4k划分为一个块,就可以得到204800个块,即得到204800个节点。
在步骤S32中,将各节点划分为一个树结构,其中,所述树结构中包括一个根节点。
在本步骤中,根据各节点得到一个树结构的结构,在该树结构中只具有一个根节点,该树结构的每一个节点为步骤S31中的一个块。
在步骤S33中,根据所述树结构的每一层上的第二预设个数的叶子节点的数据内容,生与第二预设个数的叶子节点对应的父节点的哈希值或MD5值,其中,每一层上具有第三预设个数的叶子节点,所述第三预设个数为所述第二预设个数的预设倍数。
在本步骤中,由于步骤S32中构建出了一个树的结构,树结构的每一层上具有第三预设个数的节点;具体来说,每一层上具有2nx个节点,其中,不同层的nx的值可以不同。
然后就可以从步骤S32中得到树结构的最末端的叶子节点开始,采用哈希算法对每一层的第二预设个数的叶子节点的数据内容进行计算。具体来说,采用哈希算法对每一层上的每2ny个节点的数据内容进行计算,得到与每2ny个节点分别对应的父节点的哈希值,可知,与每2ny个节点分别对应的父节点,是当前层的上一层中的节点;其中,2nx是2ny的预设倍数,并且每一层在计算的时候,不同层的ny的值可以不同;在对每一层进行了计算之后,可以得到根节点的哈希值。或者,具体来说,采用MD5算法对每一层上的每2ny个节点的数据内容进行计算,得到与每2ny个节点分别对应的父节点的MD5值,可知,与每2ny个节点分别对应的父节点,是当前层的上一层中的节点;其中,2nx是2ny的预设倍数,并且每一层在计算的时候,不同层的ny的值可以不同;在对每一层进行了计算之后,可以得到根节点的MD5值。
举例来说,树结构具有四层,树结构的最后一层上具有215个节点,倒数第二层上具有28个节点,倒数第三层上具有23个节点,倒数第四层上具有一个根节点。对于最后一层,可以采用哈希算法对每27个叶子节点的数据内容进行计算,得到与每27个叶子节点分别对应的节点的哈希值,一共可以得到28个父节点的哈希值,该28个父节点为倒数第二层上的节点;然后对于倒数第二层,采用哈希算法对每25个叶子节点的数据内容进行计算,得到与每25个叶子节点分别对应的节点的哈希值,一共可以得到23个父节点的哈希值,该23个父节点为倒数第三层上的节点;然后对于倒数第三层,采用哈希算法直接对这23个叶子节点的数据内容进行计算,得到与23个叶子节点对应的节点的哈希值,可以得到1个父节点的哈希值,该1个父节点为倒数第四层上的根节点,进而得到树结构的根节点的哈希值。
在步骤S34中,将所述根节点的哈希值或MD5值,作为所述第一数据内容值。
在本步骤中,将树结构的根节点的哈希值或MD5值,作为当前***分区的第一数据内容值。
在步骤S35中,根据所述树结构,生成验证表,其中,所述验证表中包括所述第一数据内容值、所述树结构的节点的个数、所述树结构的每一个节点的大小。
在本步骤中,根据每一个***分区的树结构,分别生成每一个***分区的验证表(verify table)。在验证表中包括了验证表的版本号,当前验证表所对应的***分区的标识,树结构的每一个节点的大小,树结构的节点的个数,生成树结构时所采用的算法,第一数据内容值。其中,第一数据内容值为树结构的根节点的哈希值或MD5值。
举例来说,针对每一个***分区,生成的验证表中的各信息可以以下述格式进行存储:
<version>|<device>|<block_size>|<block_number>|<hash_type>|<root_hash>|<salt>
其中,version:验证表的版本号;
device:当前验证表所对应的***分区的标识;
block_size:树结构的每一个节点的大小;
block_number:树结构的节点的个数;
hash_type:生成树结构时所采用的算法,此时采用的是哈希算法;
root_hash:根节点的哈希值;
salt:加密算法加的盐。
其中,salt是采用高级的加密算法生成树结构的时候,所生成的随机数。
在步骤S36中,对所述验证表进行加密处理,生成元数据,其中,所述元数据中包括第一标识信息、第一签名信息、所述验证表的大小信息、所述验证表中的各信息。
其中,所述元数据中还包括填充数据;所述填充数据是在所述元数据的大小小于预设值时,为所述元数据填充的非所述当前***分区的数据内容的数据。
在本步骤中,对每一个***分区的验证表分别进行加密处理,生成每一个***分区的元数据(metadata)。具体来说,针对每一个***分区,采用预设的公钥对***分区的验证表进行签名处理,得到***分区的元数据。
在每一个***分区的元数据中包括了以下信息:第一标识信息,元数据的版本号,第一签名信息,验证表的大小信息,验证表中的各信息,以及填充数据。其中,填充数据是在当前元数据的大小小于预设值时,为当前元数据填充的非当前***分区的数据内容的数据;举例来说,预先设定了元数据的大小为A,生成的元数据的大小为B,B小于A,则需要为元数据填充一些数据,这些数据的大小为A-B,且这些数据可以为非当前***分区的数据内容的数据;设置填充数据,可以防止元数据被填充入一些非法的数据。
举例来说,针对每一个***分区,生成的元数据中的各信息可以以下述格式进行存储:
<magic number>|<version>|<signature>|<table length>|<table>|<padding>
其中,magic number:第一标识信息;
version:元数据的版本号;
signature:verify table的第一签名信息;
table length:verify table的大小信息;
table:verify table中的各信息;
padding:填充数据;
最后,将每一个***分区的元数据,分别写入到每一个***分区中;具体来说,对于每一个***分区来说,将***分区的元数据写入到***分区的尾部。
从而,通过针对每一个***分区分别进行加密处理,得到每一个***分区的验证表以及元数据,从而在在终端启动过程中,对终端的各***分区分别进行了三次的判断过程,去判断***分区的数据内容是否被修改了;首先判断元数据是否被损坏,然后判断当前***分区的验证表是否被修改,然后通过确定计算出的第二数据内容值与读取出的第一数据内容值是否相同,从而可以检测***分区的当前数据内容与历史数据内容是否相同,进而判断***分区的数据内容是否被篡改;在确定终端的操作***的***分区的数据内容被修改的时候,停止终端的启动过程,不再去进行后面的启动操作的过程了;进而使得被篡改之后的终端无法被正常启动和正常使用,防止不法分子获取到用户的信息,防止用户的隐私进行泄露,进而保护用户的财产和个人信息。
图3是根据一示例性实施例示出的一种***分区的保护处理装置实施例三的框图。参照图3,该装置包括:
第一读取模块41,被配置为在终端启动过程中,读取当前***分区的第一数据内容值,所述第一数据内容值为根据所述当前***分区的历史数据内容生成的;
第一生成模块42,被配置为根据所述当前***分区的当前数据内容,生成所述当前***分区的第二数据内容值;
第一判断模块43,被配置为判断所述第二数据内容值与所述第一数据内容值是否相同;
第一停止模块44,被配置为若确定所述第二数据内容值与所述第一数据内容值不相同,则确定所述当前***分区的数据内容被修改,停止所述启动过程。
其中,第一数据内容值可以为哈希值,或者为MD5值;在第一数据内容值采用的是哈希值的时候,第二数据内容值采用的也是哈希值;在第一数据内容值采用的是MD5值的时候,第二数据内容值采用的也是MD5。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本实施例通过在终端启动过程中,读取当前***分区的第一数据内容值,第一数据内容值为根据当前***分区的历史数据内容生成的;根据当前***分区的当前数据内容,生成当前***分区的第二数据内容值;若第二数据内容值与第一数据内容值不相同,则确定当前***分区的数据内容被修改,停止启动过程。通过确定计算出的第二数据内容值与读取出的第一数据内容值是否相同,从而可以检测***分区的当前数据内容与历史数据内容是否相同,进而判断***分区的数据内容是否被篡改;在确定终端的操作***的***分区被篡改的时候,停止终端的启动过程,不再去进行后面的启动操作的过程了;进而使得被篡改之后的终端无法被正常启动和正常使用,防止不法分子获取到用户的信息,防止用户的隐私进行泄露,进而保护用户的财产和个人信息。
在图3所示实施例的基础上,图4是根据一示例性实施例示出的一种***分区的保护处理装置实施例四的框图。参照图4,该装置,还包括:
第二读取模块51,被配置为在所述第一读取模块41读取当前***分区的第一数据内容值之前,读取所述当前***分区的元数据的第一标识信息,其中,所述第一标识信息在所述元数据被修改时会产生变化,所述元数据为根据所述当前***分区的数据内容进行加密而生成的;
第二判断模块52,被配置为判断所述第一标识信息与预存的第二标识信息是否相同;
第二停止模块53,被配置为若确定所述第一标识信息与所述第二标识信息不相同,则确定所述元数据被损坏,停止所述启动过程。
第三读取模块54,被配置为若确定所述第一标识信息与所述第二标识信息相同,则读取所述当前***分区的验证表以及所述元数据中的第一签名信息,其中,所述验证表中包括了所述当前***分区的信息,所述第一签名信息为根据历史的验证表进行加密处理生成的;
第二生成模块55,被配置为对所述验证表进行加密处理,生成第二签名信息;
第三判断模块56,被配置为判断所述第二签名信息与所述第一签名信息是否相同;
第三停止模块57,被配置为若确定所述第二签名信息与所述第一签名信息不相同,则确定所述验证表被修改,停止所述启动过程;
执行模块58,被配置为若确定所述第二签名信息与所述第一签名信息相同,则执行所述第一读取模块41。
本实施例提供的装置,还包括:
划分模块61,被配置为在所述第一读取模块41在终端启动过程中,读取当前***分区的第一数据内容值之前,根据操作***的每一个***分区的大小信息,将每一个***分区的数据内容划分为第一预设个数的节点;
第一确定模块62,被配置为将各节点划分为一个树结构,其中,所述树结构中包括一个根节点;
计算模块63,被配置为根据所述树结构的每一层上的第二预设个数的叶子节点的数据内容,生与第二预设个数的叶子节点对应的父节点的哈希值或MD5值,其中,每一层上具有第三预设个数的叶子节点,所述第三预设个数为所述第二预设个数的预设倍数;
第二确定模块64,被配置为将所述根节点的哈希值或MD5值,作为所述第一数据内容值。
加密模块65,被配置为在将所述第二确定模块64根节点的哈希值或MD5值,作为所述第一数据内容值之后,根据所述树结构,生成验证表,其中,所述验证表中包括所述第一数据内容值、所述树结构的节点的个数、所述树结构的每一个节点的大小;对所述验证表进行加密处理,生成元数据,其中,所述元数据中包括第一标识信息、第一签名信息、所述验证表的大小信息、所述验证表中的各信息。
其中,所述元数据中还包括填充数据;所述填充数据是在所述元数据的大小小于预设值时,为所述元数据填充的非所述当前***分区的数据内容的数据。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本实施例通过在终端启动过程中,读取当前***分区的元数据的第一标识信息,其中,第一标识信息在元数据被修改时会产生变化,元数据为根据当前***分区的数据内容进行加密而生成的;判断第一标识信息与预存的第二标识信息是否相同;若确定第一标识信息与第二标识信息不相同,则确定元数据被损坏,停止启动过程;若确定第一标识信息与第二标识信息相同,则读取当前***分区的验证表以及元数据中的第一签名信息,其中,验证表中包括了当前***分区的信息,第一签名信息为根据历史的验证表进行加密处理生成的;对验证表进行加密处理,生成第二签名信息;判断第二签名信息与第一签名信息是否相同;若确定第二签名信息与第一签名信息不相同,则确定验证表被修改,停止启动过程。若确定第二签名信息与第一签名信息相同,则执行读取当前***分区的第一数据内容值,第一数据内容值为根据当前***分区的历史数据内容生成的;根据当前***分区的当前数据内容,生成当前***分区的第二数据内容值;判断第二数据内容值与第一数据内容值是否相同;若确定不相同,则确定当前***分区的数据内容被修改,停止启动过程。进而在终端的启动过程中,对终端的各***分区分别进行了三次的判断过程,去判断***分区的数据内容是否被修改了;首先判断元数据是否被损坏,然后判断当前***分区的验证表是否被修改,然后通过确定计算出的第二数据内容值与读取出的第一数据内容值是否相同,从而可以检测***分区的当前数据内容与历史数据内容是否相同,进而判断***分区的数据内容是否被篡改;在确定终端的操作***的***分区的数据内容被修改的时候,停止终端的启动过程,不再去进行后面的启动操作的过程了;进而使得被篡改之后的终端无法被正常启动和正常使用,防止不法分子获取到用户的信息,防止用户的隐私进行泄露,进而保护用户的财产和个人信息。
图5是根据一示例性实施例示出的一种终端的实体的框图。参照图5,该终端可以具体实现为:处理器71,以及被配置为存储处理器可执行指令的存储器72;
其中,所述处理器71被配置为:在终端启动过程中,读取当前***分区的第一数据内容值,所述第一数据内容值为根据所述当前***分区的历史数据内容生成的;根据所述当前***分区的当前数据内容,生成所述当前***分区的第二数据内容值;若第二数据内容值与所述第一数据内容值不相同,则确定所述当前***分区的数据内容被修改,停止所述启动过程。
在上述实施例中,应理解,该处理器可以是中央处理单元(英文:CentralProcessing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:DigitalSignal Processor,简称:DSP)、专用集成电路(英文:Application Specific IntegratedCircuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,而前述的存储器可以是只读存储器(英文:read-only memory,缩写:ROM)、随机存取存储器(英文:random access memory,简称:RAM)、快闪存储器、硬盘或者固态硬盘。SIM卡也称为用户身份识别卡、智能卡,数字移动电话机必须装上此卡方能使用。即在电脑芯片上存储了数字移动电话客户的信息,加密的密钥以及用户的电话簿等内容。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
关于上述实施例中的终端,其中各个模块执行操作的具体方式已经在有关该方法和装置的实施例中进行了详细描述,此处将不做详细阐述说明。
本实施例通过在终端启动过程中,读取当前***分区的第一数据内容值,第一数据内容值为根据当前***分区的历史数据内容生成的;根据当前***分区的当前数据内容,生成当前***分区的第二数据内容值;若第二数据内容值与第一数据内容值不相同,则确定当前***分区的数据内容被修改,停止启动过程。通过确定计算出的第二数据内容值与读取出的第一数据内容值是否相同,从而可以检测***分区的当前数据内容与历史数据内容是否相同,进而判断***分区的数据内容是否被篡改;在确定终端的操作***的***分区被篡改的时候,停止终端的启动过程,不再去进行后面的启动操作的过程了;进而使得被篡改之后的终端无法被正常启动和正常使用,防止不法分子获取到用户的信息,防止用户的隐私进行泄露,进而保护用户的财产和个人信息。
图6是根据一示例性实施例示出的一种终端设备800的框图。例如,终端设备800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图6,终端设备800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。
处理组件802通常控制终端设备800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在终端设备800的操作。这些数据的示例包括用于在终端设备800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为终端设备800的各种组件提供电力。电源组件806可以包括电源管理***,一个或多个电源,及其他与为终端设备800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述终端设备800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当终端设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜***或具有焦距和光学变焦能力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当终端设备800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/O接口812为处理组件802和***接口模块之间提供接口,上述***接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为终端设备800提供各个方面的状态评估。例如,传感器组件814可以检测到终端设备800的打开/关闭状态,组件的相对定位,例如所述组件为终端设备800的显示器和小键盘,传感器组件814还可以检测终端设备800或终端设备800一个组件的位置改变,用户与终端设备800接触的存在或不存在,终端设备800方位或加速/减速和终端设备800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于终端设备800和其他设备之间有线或无线方式的通信。终端设备800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理***的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,终端设备800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由终端设备800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种***分区的保护处理方法,所述方法包括:
在终端启动过程中,读取当前***分区的第一数据内容值,所述第一数据内容值为根据所述当前***分区的历史数据内容生成的;
根据所述当前***分区的当前数据内容,生成所述当前***分区的第二数据内容值;
若第二数据内容值与所述第一数据内容值不相同,则确定所述当前***分区的数据内容被修改,停止所述启动过程。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (14)
1.一种***分区的保护处理方法,其特征在于,包括:
在终端启动过程中,读取当前***分区的第一数据内容值,所述第一数据内容值为根据所述当前***分区的历史数据内容生成的;
根据所述当前***分区的当前数据内容,生成所述当前***分区的第二数据内容值;
若所述第二数据内容值与所述第一数据内容值不相同,则确定所述当前***分区的数据内容被修改,停止所述启动过程。
2.根据权利要求1所述的方法,其特征在于,在所述读取当前***分区的第一数据内容值之前,还包括:
读取所述当前***分区的元数据的第一标识信息,其中,所述第一标识信息在所述元数据被修改时会产生变化,所述元数据为根据所述当前***分区的数据内容进行加密而生成的;
若所述第一标识信息与预存的第二标识信息不相同,则确定所述元数据被损坏,停止所述启动过程。
3.根据权利要求2所述的方法,其特征在于,所述方法,还包括:
若所述第一标识信息与所述第二标识信息相同,则读取所述当前***分区的验证表以及所述元数据中的第一签名信息,其中,所述验证表中包括了所述当前***分区的信息,所述第一签名信息为根据历史的验证表进行加密处理生成的;
对所述验证表进行加密处理,生成第二签名信息;
若所述第二签名信息与所述第一签名信息不相同,则确定所述验证表被修改,停止所述启动过程;
若所述第二签名信息与所述第一签名信息相同,则执行所述读取当前***分区的第一数据内容值的步骤。
4.根据权利要求1-3任一项所述的方法,其特征在于,在所述在终端启动过程中,读取当前***分区的第一数据内容值之前,还包括:
根据操作***的每一个***分区的大小信息,将每一个***分区的数据内容划分为第一预设个数的节点;
将各节点划分为一个树结构,其中,所述树结构中包括一个根节点;
根据所述树结构的每一层上的第二预设个数的叶子节点的数据内容,生与第二预设个数的叶子节点对应的父节点的哈希值或MD5值,其中,每一层上具有第三预设个数的叶子节点,所述第三预设个数为所述第二预设个数的预设倍数;
将所述根节点的哈希值或MD5值,作为所述第一数据内容值。
5.根据权利要求4所述的方法,其特征在于,在将所述根节点的哈希值或MD5值,作为所述第一数据内容值之后,还包括:
根据所述树结构,生成验证表,其中,所述验证表中包括所述第一数据内容值、所述树结构的节点的个数、所述树结构的每一个节点的大小;
对所述验证表进行加密处理,生成元数据,其中,所述元数据中包括第一标识信息、第一签名信息、所述验证表的大小信息、所述验证表中的各信息。
6.根据权利要求5所述的方法,其特征在于,所述元数据中还包括填充数据;
所述填充数据是在所述元数据的大小小于预设值时,为所述元数据填充的非所述当前***分区的数据内容的数据。
7.一种***分区的保护处理装置,其特征在于,包括:
第一读取模块,被配置为在终端启动过程中,读取当前***分区的第一数据内容值,所述第一数据内容值为根据所述当前***分区的历史数据内容生成的;
第一生成模块,被配置为根据所述当前***分区的当前数据内容,生成所述当前***分区的第二数据内容值;
第一停止模块,被配置为若所述第二数据内容值与所述第一数据内容值不相同,则确定所述当前***分区的数据内容被修改,停止所述启动过程。
8.根据权利要求7所述的装置,其特征在于,所述装置,还包括:
第二读取模块,被配置为在所述第一读取模块读取当前***分区的第一数据内容值之前,读取所述当前***分区的元数据的第一标识信息,其中,所述第一标识信息在所述元数据被修改时会产生变化,所述元数据为根据所述当前***分区的数据内容进行加密而生成的;
第二停止模块,被配置为若所述第一标识信息与预存的第二标识信息不相同,则确定所述元数据被损坏,停止所述启动过程。
9.根据权利要求8所述的装置,其特征在于,所述装置,还包括:
第三读取模块,被配置为若所述第一标识信息与所述第二标识信息相同,则读取所述当前***分区的验证表以及所述元数据中的第一签名信息,其中,所述验证表中包括了所述当前***分区的信息,所述第一签名信息为根据历史的验证表进行加密处理生成的;
第二生成模块,被配置为对所述验证表进行加密处理,生成第二签名信息;
第三停止模块,被配置为若所述第二签名信息与所述第一签名信息不相同,则确定所述验证表被修改,停止所述启动过程;
执行模块,被配置为若所述第二签名信息与所述第一签名信息相同,则执行所述第一读取模块。
10.根据权利要求7-9任一项所述的装置,其特征在于,所述装置,还包括:
划分模块,被配置为在所述第一读取模块在终端启动过程中,读取当前***分区的第一数据内容值之前,根据操作***的每一个***分区的大小信息,将每一个***分区的数据内容划分为第一预设个数的节点;
第一确定模块,被配置为将各节点划分为一个树结构,其中,所述树结构中包括一个根节点;
计算模块,被配置为根据所述树结构的每一层上的第二预设个数的叶子节点的数据内容,生与第二预设个数的叶子节点对应的父节点的哈希值或MD5值,其中,每一层上具有第三预设个数的叶子节点,所述第三预设个数为所述第二预设个数的预设倍数;
第二确定模块,被配置为将所述根节点的哈希值或MD5值,作为所述第一数据内容值。
11.根据权利要求10所述的装置,其特征在于,所述装置,还包括:
加密模块,被配置为在将所述第二确定模块根节点的哈希值或MD5值,作为所述第一数据内容值之后,根据所述树结构,生成验证表,其中,所述验证表中包括所述第一数据内容值、所述树结构的节点的个数、所述树结构的每一个节点的大小;对所述验证表进行加密处理,生成元数据,其中,所述元数据中包括第一标识信息、第一签名信息、所述验证表的大小信息、所述验证表中的各信息。
12.根据权利要求11所述的装置,其特征在于,所述元数据中还包括填充数据;
所述填充数据是在所述元数据的大小小于预设值时,为所述元数据填充的非所述当前***分区的数据内容的数据。
13.一种终端,其特征在于,包括:
处理器,以及用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:在终端启动过程中,读取当前***分区的第一数据内容值,所述第一数据内容值为根据所述当前***分区的历史数据内容生成的;根据所述当前***分区的当前数据内容,生成所述当前***分区的第二数据内容值;判断所述第二数据内容值与所述第一数据内容值是否相同;若确定不相同,则确定所述当前***分区的数据内容被修改,停止所述启动过程。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-6任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710642173.7A CN107480076A (zh) | 2017-07-31 | 2017-07-31 | ***分区的保护处理方法、装置及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710642173.7A CN107480076A (zh) | 2017-07-31 | 2017-07-31 | ***分区的保护处理方法、装置及终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107480076A true CN107480076A (zh) | 2017-12-15 |
Family
ID=60598098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710642173.7A Pending CN107480076A (zh) | 2017-07-31 | 2017-07-31 | ***分区的保护处理方法、装置及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107480076A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109639436A (zh) * | 2019-01-04 | 2019-04-16 | 平安科技(深圳)有限公司 | 基于盐值的数据持有性验证方法及终端设备 |
CN112990487A (zh) * | 2021-05-13 | 2021-06-18 | 上海冰鉴信息科技有限公司 | 一种快速卡方分箱的方法及装置 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020194484A1 (en) * | 2001-03-21 | 2002-12-19 | Bolosky William J. | On-disk file format for serverless distributed file system with signed manifest of file modifications |
US20030018878A1 (en) * | 2001-07-19 | 2003-01-23 | Sean Matthew Dorward | Method and apparatus for archival data storage |
CN103279712A (zh) * | 2013-05-28 | 2013-09-04 | 华为技术有限公司 | 增强***安全性的方法、校验装置及安全*** |
US8832455B1 (en) * | 2011-09-21 | 2014-09-09 | Google Inc. | Verified boot path retry |
US20140380425A1 (en) * | 2013-04-29 | 2014-12-25 | Sri International | Polymorphic computing architectures |
US20160092701A1 (en) * | 2014-09-30 | 2016-03-31 | Samsung Electronics Co., Ltd. | Methods and apparatus to enable runtime checksum verification of block device images |
CN105574439A (zh) * | 2015-04-17 | 2016-05-11 | 宇龙计算机通信科技(深圳)有限公司 | 一种***盘的校验方法和装置 |
CN105827413A (zh) * | 2016-03-15 | 2016-08-03 | 乐视移动智能信息技术(北京)有限公司 | 一种电子终端、电子终端的***安全校验装置及方法 |
US20170024428A1 (en) * | 2012-08-08 | 2017-01-26 | Amazon Technologies, Inc. | Data storage integrity validation |
CN106372523A (zh) * | 2016-11-28 | 2017-02-01 | 惠州Tcl移动通信有限公司 | 一种modem文件安全保护方法及*** |
CN106709324A (zh) * | 2016-11-10 | 2017-05-24 | 京东方科技集团股份有限公司 | 用于验证应用安全性的方法和设备 |
CN106778283A (zh) * | 2016-11-21 | 2017-05-31 | 惠州Tcl移动通信有限公司 | 一种***分区关键数据的保护方法及*** |
-
2017
- 2017-07-31 CN CN201710642173.7A patent/CN107480076A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020194484A1 (en) * | 2001-03-21 | 2002-12-19 | Bolosky William J. | On-disk file format for serverless distributed file system with signed manifest of file modifications |
US20030018878A1 (en) * | 2001-07-19 | 2003-01-23 | Sean Matthew Dorward | Method and apparatus for archival data storage |
US8832455B1 (en) * | 2011-09-21 | 2014-09-09 | Google Inc. | Verified boot path retry |
US20170024428A1 (en) * | 2012-08-08 | 2017-01-26 | Amazon Technologies, Inc. | Data storage integrity validation |
US20140380425A1 (en) * | 2013-04-29 | 2014-12-25 | Sri International | Polymorphic computing architectures |
CN103279712A (zh) * | 2013-05-28 | 2013-09-04 | 华为技术有限公司 | 增强***安全性的方法、校验装置及安全*** |
US20160092701A1 (en) * | 2014-09-30 | 2016-03-31 | Samsung Electronics Co., Ltd. | Methods and apparatus to enable runtime checksum verification of block device images |
CN105574439A (zh) * | 2015-04-17 | 2016-05-11 | 宇龙计算机通信科技(深圳)有限公司 | 一种***盘的校验方法和装置 |
CN105827413A (zh) * | 2016-03-15 | 2016-08-03 | 乐视移动智能信息技术(北京)有限公司 | 一种电子终端、电子终端的***安全校验装置及方法 |
CN106709324A (zh) * | 2016-11-10 | 2017-05-24 | 京东方科技集团股份有限公司 | 用于验证应用安全性的方法和设备 |
CN106778283A (zh) * | 2016-11-21 | 2017-05-31 | 惠州Tcl移动通信有限公司 | 一种***分区关键数据的保护方法及*** |
CN106372523A (zh) * | 2016-11-28 | 2017-02-01 | 惠州Tcl移动通信有限公司 | 一种modem文件安全保护方法及*** |
Non-Patent Citations (3)
Title |
---|
WEIXIN_34055787: "Implementing dm-verity", pages 1 - 3, Retrieved from the Internet <URL:CSDN博客(https://blog.csdn.net/weixin_34055787/article/details/86114546)> * |
李超良: "面向物联网的数据完整性检测与隐私保护", 31 October 2016, 西安交通大学出版社, pages: 61 * |
王黎明 等: "深入浅出XScale嵌入式***", 31 March 2011, 北京航空航天大学出版社, pages: 310 - 315 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109639436A (zh) * | 2019-01-04 | 2019-04-16 | 平安科技(深圳)有限公司 | 基于盐值的数据持有性验证方法及终端设备 |
CN112990487A (zh) * | 2021-05-13 | 2021-06-18 | 上海冰鉴信息科技有限公司 | 一种快速卡方分箱的方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105848134B (zh) | 虚拟sim卡管理装置、通信终端、访问控制及管理方法 | |
CN105975864A (zh) | 操作***的启动方法、装置及终端 | |
US20100070769A1 (en) | Log acquisition system, log collection terminal, log acquisition terminal, and log acquisition method and program using the same system and terminals | |
CN102016865A (zh) | 基于可用权利来授权执行软件代码的***和方法 | |
US20220382884A1 (en) | Method and device for parsing shared password | |
CN102016867A (zh) | 基于至少一个已安装的简档来授权执行软件代码的***和方法 | |
EP3016349B1 (en) | Method and apparatus for verifying terminal and computer program product | |
CN110826103B (zh) | 基于区块链的文档权限处理方法、装置、设备及存储介质 | |
TWI761843B (zh) | 門禁控制方法及裝置、電子設備和儲存介質 | |
CN102016866A (zh) | 基于授予承载商的权利授权在设备上执行软件代码的***和方法 | |
CN107169320A (zh) | 校验方法及装置 | |
CN110598386B (zh) | 基于区块链的数据处理方法、装置、设备及存储介质 | |
CN106778295B (zh) | 文件存储、显示方法、装置及终端 | |
US20220294624A1 (en) | Encryption method and device, electronic apparatus and storage medium | |
CN103914520A (zh) | 数据查询方法、终端设备和服务器 | |
CN105282162B (zh) | 账号管理业务的处理方法及装置 | |
CN105677513A (zh) | 恢复备份数据的方法及装置 | |
CN106599676A (zh) | 可信进程识别方法及装置 | |
CN106789070A (zh) | 数据的解密方法、装置及终端 | |
CN106709284A (zh) | 刷机包验证方法及装置 | |
CN107480076A (zh) | ***分区的保护处理方法、装置及终端 | |
CN106611112A (zh) | 应用程序安全处理方法、装置及设备 | |
US10402562B2 (en) | Method and device for encrypting application | |
CN110597868B (zh) | 基于区块链的信息查询方法、装置、终端及存储介质 | |
CN110532324B (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 |