加密数据的存取方法及装置的制作方法

文档序号:6402880阅读:182来源:国知局
专利名称:加密数据的存取方法及装置的制作方法
技术领域
本发明涉及电子设备的数据处理领域,具体地,是一种电子设备的加密数据的存取方法及加密数据的存取装置。
背景技术
现有的电子设备,如电脑、手机、电子书阅读器、音乐播放器等大量使用系统级芯片(SoC, System on Chip),本申请中称为系统芯片。通常,电子设备的系统芯片与电子设备的其他存储器,如非易失性存储器、易失性存储器等集成在一块电路板上,系统芯片可以对非易失性存储器、易失性存储器等进行读写访问。通常,电子设备的系统程序的数据存储在非易失性存储器中,在电子设备运行时,系统芯片的中央处理器将访问存储在非易失性存储器中的数据。然而,一些运行在电子设备上的第三方程序可能访问存储在非易失性存储器的系统数据,并对系统数据进行篡改,影响电子设备运行的安全性。此外,一些第三方程序也可能访问并复制存储在非易失性存储器中的系统数据,导致 系统数据容易被复制,影响对数字版权的保护。因此,现有的电子设备中,通常有一部分数据需要进行严格保护,以避免任何第三方程序读取或篡改这一部分数据,以防止电子设备的运行安全性能受到影响。参见图1,现有的电子设备设置有系统芯片20、非易失性存储器10以及动态随机存储器12,非易失性存储器10可以为闪速存储器(flash)等,其设有加密数据存储区11,用于存储经过加密的数据,通常这些加密的数据经过两级加密。动态随机存储器(DRAM) 12作为易失性存储器,在电子设备上电启动后临时存储系统芯片20所需要读写的数据。系统芯片20具有中央处理器(CPU) 21、内存管理单元(MMU) 22、静态随机存储器(SRAM) 23以及两个解密模块25、26。系统芯片20上电启动后,动态随机存储器12的存储空间通过内存管理单元22映射至中央处理器21,中央处理器21即将物理存储空间转换成逻辑存储空间,因此中央处理器21所读写的地址均为逻辑存储空间的地址。由于系统数据的一部分加密的数据存储在非易失性存储器10的加密数据存储区11内,电子设备上电时,其系统启动,解密模块25将读取存储在加密数据存储区11内的加密数据,并对加密数据进行一级解密,获得解密后的一级解密数据,将一级解密数据存储在静态随机存储器23内。中央处理器21需要读取加密数据时,将通过解密模块26对存储在静态随机存储器23中的数据进行解密,并读取解密后的数据。由于静态随机存储器23并未被内存管理单元22映射至中央处理器21,因此任何第三方程序均不能访问静态随机存储器23,这样能够确保存储在静态随机存储器23内的一级加密数据不会被第三方程序读取并篡改,而存储在非易失性存储器10的加密数据存储区11内的加密数据更不会被第三方程序所访问、篡改,实现对加密数据的保护。但是,这种方法需要在系统芯片20内设置静态随机存储器23以存储经过一级解密的一级解密数据,由于静态随机存储器23的生产成本高,且存储容量往往有限,导致存储的一级解密数据不多,还增加了系统芯片的生产成本,造成电子设备的生产成本高昂。
而现有的另外一些电子设备则使用安全运行模式的方法来实现对加密数据的保护,这种方法需要设置安全运行模式,在中央处理器需要访问加密数据时,中央处理器将切换至安全运行模式下工作。但这种方法实现难度大,且对电子设备的硬件要求高,同样会导致电子设备的生产成本较高。

发明内容
本发明的主要目的是提供一种有效对加密数据进行保护且实现简单的加密数据存取方法。本发明的另一目的是提供一种生产成本低且有效对加密数据进行保护的加密数据存取装置。为了实现上述的主要目的,本发明提供的加密数据存取方法包括将加密数据存储在非易失性存储器中,并且,在电子设备的系统启动时,将存储在非易失性存储器的加密数据读入到动态随机存储器中,内存管理单元将动态随机存储器中除加密数据存储区域外的存储空间映射至中央处理器,中央处理器通过解密单元将存储在动态随机存储器中的加密数据进行解密,并读取解密后的数据。由上述方案可见,存储在非易失性存储器的加密数据将被读入到动态随机存储器中,且动态随机存储器的加密 数据存储区域不会被映射到中央处理器,因此存储在动态随机存储器的加密数据不会被第三方程序所访问,也就避免加密数据被复制或篡改,有效对加密数据进行保护。并且,上述方法不需要在系统芯片上设置静态随机存储器,而是将加密的数据存储在动态随机存储器中,由于动态随机存储器的存储容量大且生产成本低,可以降低系统芯片的生产成本,进而降低电子设备的生产成本。一个优选的方案是,将存储在非易失性存储器的加密数据读入到动态随机存储器的步骤是:应用解密单元的第一解密模块对存储在非易失性存储器的加密数据进行解密,获得一级解密数据并将一级解密数据存储在动态随机存储器中。由此可见,将非易失性存储器的加密数据读入动态随机存储器时,需要对加密数据进行一级解密,这样,即使第三方程序读取非易失性存储器中的加密数据,也无法利用这些加密的数据,更有效地保护加密数据。进一步的方案是,中央处理器对一级解密数据进行解密的步骤是:应该解密单元的第二解密模块对一级解密数据进行解密。这样,解密单元使用两个不同的解密模块分别对加密数据与一级解密数据进行解密,更有效地保护加密数据。更进一步的方案是,第一解密模块与第二解密模块均为高级加密标准模块,且分别使用与电子设备识别码相关的第一解密密钥、第二解密密钥对数据进行解密。可见,两个解密模块均为解密硬件,避免使用软件程序对数据进行解密,进而避免第三方程序通过解密软件获取所解密的数据,保证数据的安全性。此外,两个解密模块均使用与电子设备标识码相关的密钥进行解密,有效防止第三方将非易失性存储器安装到已经破解的解密模块的其他电子设备上进行破解操作,通过反向工程获得非易失性存储器的加密数据。
为实现上述的另一目的,本发明提供的加密数据存取装置包括非易失性存储器,存储有加密数据,并设有系统芯片,其具有中央处理器以及内存管理单元,还设有动态随机存储器,其具有加密数据存储区域,动态随机存储器中除加密数据存储区域外的存储空间通过内存管理单元被映射至中央处理器,该装置还设有解密单元,用于将存储在加密数据存储区域中的数据解密并读取至中央控制器。由上述方案可见,动态随机存储器的加密数据存储区域可以存储加密数据,且不会被映射到中央处理器,这样,第三方程序不能通过中央处理器访问加密数据,确保加密数据的安全性。并且,加密数据存取装置不需要在系统芯片上设置静态随机存储器,能够大大降低系统芯片的生产成本,进而降低电子设备的生产成本。


图1是现有加密数据存取装置的结构框图。图2是本发明加密数据存取装置实施例的结构框图。图3是本发明加密数据存取方法实施例的流程图。以下结合附图及实施例对本发明作进一步说明。
具体实施例方式
本发明的加密数据存取装置应用在诸如电脑、手机、电子阅读器、音乐播放器等电子设备中,主要是对电子设备的系统数据中的加密数据进行保护。加密数据存取方法是应用上述的加密数据存取装置对加密数据的存取方法。参见图2,本发明的加密数据存取装置具有系统芯片40以及设置在系统芯片40外的非易失性存储器30、动态随机存储器35,非易失性存储器30为闪速存储器等,其设有加密数据存储区31,存储有经过二级加密的数据,即存储在加密数据存储区31的加密数据经过两次加密。动态随机存储器35包括加密数据存储区域36以及普通数据存储区域37,加密数据存储区域36用于存储经过加密的数据,而普通数据存储区域37则用于在系统芯片40工作过程中提供临时存储数据的空间,且普通数据存储区域37是动态随机存储器35中除了加密数据存储区域36以外的存储空间。系统芯片40具有中央处理器41、内存管理单元(MMU) 42以及解密模块45、46,解密模块45、46构成本实施例的解密单元。在电子设备上电后,即电子设备的系统启动后,动态随机存储器35也启动工作,内存管理单元42将普通数据存储区域37的存储空间映射至中央处理器41,中央处理器41随即将普通数据存储区域37的物理存储空间转换成逻辑存储空间。但内存管理单元42不会将加密数据存储区域36的存储空间映射至中央处理器41,因此中央处理器41直接无法读取存储在加密数据存储区域36中的数据。解密模块45为硬件解密模块,例如为高级加密标准(AES,Advanced EncryptionStandard)模块,其存储有与电子设备标识码相关的第一密钥,用于将存储在非易失性存储器30中的加密数据进行解密,获得一级解密数据,并将一级解密数据存储在动态随机存储器35的加密数据存储区域36中。因此,加密数据存储区域36所存储的是经过一级解密的数据,而并非经过二级加密的数据。
解密模块46也是硬件解密模块,也可以使用高级加密标准模块,并存储有与电子设备标识码相关的第二解密密钥,用于将存储在动态随机存储器35中的一级解密数据进行解密,并将解密后的数据,即明文数据读取到中央处理器41中。由于每一台电子设备均具有唯一的标识码,而第一解密密钥与第二解密密钥均是与电子设备标识码相关的密钥,优选地,第一解密密钥与第二解密密钥均包含有电子设备的识别码,或者包含有电子设备的识别码经过一定运算获得的数据,如经过与或运算、加法运行或经过加密运算,这样使第一解密密钥与第二解密密钥具有唯一性,也增加对加密数据破解的难度,更有效地对加密数据进行保护。另外,解密模块45向动态随机存储器35写入数据、解密模块46从动态随机存储器35读取数据均是采用直接内存存取(DMA, Direct Memory Access)的方式实现,避免中央处理器41的参与,从而避免第三方程序通过中央处理器41获取存储在动态随机存储器35的加密数据存储区域36中的数据。解密模块45、46均为硬件解密模块,这样对加密数据、一级解密数据的解密均是通过解密硬件实现,而不是通过软件程序实现解密,避免运行在中央处理器41上的软件程序在解密过程中获取加密数据、一级解密数据,更有效地保护加密数据。下面结合图3说明加密数据存取方法的流程。首先,在电子设备的生产开发阶段,将需要保护的明文数据进行加密处理,即执行步骤SI,并将加密后的数据存储在非易失性存储器30中。对需要保护的明文数据进行加密时,对明文数据进行两级加密,其中进行第一级加密时可以将明文数据进行分块,使用密钥对每一块明文数据分别进行加密,以便在数据解密时也可以对数据进行分块的解密。例如,将明文数据划分成多块数据块,分别对多块数据块进行一级加密,然后对加密后的所有数据块进行二级加密,并将二级加密后的数据存储在非易失性存储器30的加密数据存储区31中。
`
在电子设备的系统启动时,将存储在非易失性存储器30的加密数据读入到动态随机存储器35,即执行步骤S2,此时,加密数据存储区31中的加密数据被解密模块45进行一级解密,解密模块45使用与设备识别码相关的第一解密密钥对加密数据进行解密,获得一级解密数据,并将解密后的一级解密数据以直接内存存取的方式写入动态随机存储器35中。动态随机存储器35中存储有一级解密数据的区域为加密数据存储区域36,其他区域即为普通数据存储区域37。接着,中央控制器41通过内存管理单元42将动态随机存储器35中除了加密数据存储区域36以外的存储空间映射至中央处理器41,即执行步骤S3。然后,中央处理器41执行步骤S4,从物理存储空间切换成逻辑存储空间,因此,中央处理器41所能够访问的逻辑存储空间并不包含加密数据存储区域36的存储空间,也就不会对加密数据存储区域36的存储空间进行读写操作。中央处理器41运行第三方程序时,第三方程序不能够通过中央处理器41访问加密数据存储区域36,从而确保加密数据存储区域36中所存储的数据不会被第三方程序复制或篡改,保障加密数据的安全性。最后,在中央处理器41需要使用加密的数据对应的明文数据时,启动解密模块46,解密模块46使用与电子设备标识码相关的第二密钥对存储在动态随机存储器35中的加密数据存储区域36中的一级解密数据进行解密,获得明文数据,并将明文数据传送至中央处理器41。优选地,解密模块46读取一级解密数据时,以直接内存存取的方式进行,确保中央处理器41不会参与对一级加密数据的读取操作。由于明文数据经过二级加密存储在非易失性存储器30中,且经过二级解密后才能被中央处理器41使用,在加密数据解密的过程中,中央处理器41并不参与,且不能访问存储加密数据、一级解密数据的存储区域,确保任何第三方程序不能通过中央处理器41访问这些需要保护的数据,确保数据的安全性。此外,由于明文数据是分块加密的,因此一级解密数据也是分块解密的,这样,在中央处理器41需要使用某一块数据块时,解密模块46仅对这一数据块的数据进行解密,不会对所有的数据块同时进行解密,避免解密是消耗大量的时间,也避免向中央处理器41发送所有的明文数据,确保数据的安全性。由于加密数据存取装置不需要在系统芯片内设置成本较高的静态随机存储器,仅使用生产成本较低的动态随机存储器35的一部分存储空间存储加密的数据,在确保数据安全性的同时,降低系统芯片的生产成本,从而降低电子设备的生产成本。当然,上述的实施例仅是本发明较佳的实施方式,实际应用时,还可以有更多的改变,例如,使用EEPROM等其他存储器替代闪速存储器作为非易失性存储器;或者,解密模块使用的解密密钥与电子设备的识别码不相关等,这样的改变也能实现本发明的目的。最后需要强调的是 ,本发明不限于上述实施方式,如加密与解密算法的改变、存储器类型的改变等变化也应该包括在本发明权利要求的保护范围内。
权利要求
1.加密数据的存取方法,包括 将加密数据存储在非易失性存储器中; 其特征在于: 电子设备的系统启动时,将存储在所述非易失性存储器的加密数据读入到动态随机存储器中; 内存管理单元将所述动态随机存储器中除加密数据存储区域外的存储空间映射至中央处理器; 所述中央处理器通过解密单元将存储在所述动态随机存储器中的加密数据进行解密,并读取解密后的数据。
2.根据权利要求1所述的加密数据的存取方法,其特征在于: 将存储在所述非易失性存储器的加密数据读入到所述动态随机存储器的步骤是:应用所述解密单元的第一解密模块对存储在所述非易失性存储器的加密数据进行解密,获得一级解密数据并将所述一级解密数据存储在所述动态随机存储器中。
3.根据权利要求2所述的加密数据的存取方法,其特征在于: 所述第一解密模块为高级加密标准模块,其使用与电子设备识别码相关的第一解密密钥对加密数据进行解密。
4.根据权利要求2或3所述的加密数据的存取方法,其特征在于: 所述中央处理器对所述一级解密数据进行`解密的步骤是:应该所述解密单元的第二解密模块对所述一级解密数据进行解密。
5.根据权利要求4所述的加密数据的存取方法,其特征在于: 所述第二解密模块为高级加密标准模块,其使用与电子设备识别码相关的第二解密密钥对所述一级解密数据进行解密。
6.加密数据的存取装置,包括 非易失性存储器,存储有加密数据; 系统芯片,具有中央处理器以及内存管理单元; 其特征在于: 动态随机存储器,其具有加密数据存储区域,所述动态随机存储器中除所述加密数据存储区域外的存储空间通过所述内存管理单元被映射至所述中央处理器; 解密单元,用于将存储在所述加密数据存储区域中的数据解密并读取至所述中央控制器。
7.根据权利要求6所述的加密数据的存取装置,其特征在于: 所述解密单元具有第一解密模块,用于对存储在所述非易失性存储器的加密数据进行解密,获得一级解密数据并将所述一级解密数据存储在所述动态随机存储器中。
8.根据权利要求7所述的加密数据的存取装置,其特征在于: 所述第一解密模块为高级加密标准模块,其存储有与电子设备识别码相关的第一解密密钥。
9.根据权利要求7或8所述的加密数据的存取装置,其特征在于: 所述解密单元还设有第二解密模块,用于将所述一级解密数据进行解密,并将解密后的数据读取至所述中央控制器。
10.根据权利要求9所述的加密数据的存取装置,其特征在于: 所述第二解密模块为高级加密标准模块,其存储有与电子设备识别码相关的第二解密密钥 。
全文摘要
本发明提供一种加密数据的存取方法及装置,该方法包括将加密数据存储在非易失性存储器中,将加密数据读入到动态随机存储器中,内存管理单元将动态随机存储器中除加密数据存储区域外的存储空间映射至中央处理器,中央处理器通过解密单元将存储在动态随机存储器中的加密数据进行解密,并读取解密后的数据。该装置包括非易失性存储器,并设有系统芯片,其具有中央处理器以及内存管理单元,还设有动态随机存储器,其具有加密数据存储区域,动态随机存储器中除加密数据存储区域外的存储空间被映射至中央处理器,还设有解密单元,将存储在加密数据存储区域中的数据解密并读取至中央控制器。本发明在确保数据安全性的同时,还能降低存取装置的生产成本。
文档编号G06F12/14GK103246852SQ20131016511
公开日2013年8月14日 申请日期2013年5月7日 优先权日2013年5月7日
发明者张恭继 申请人:珠海全志科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1