一种实现数据处理的方法及终端技术

技术编号:17596839 阅读:36 留言:0更新日期:2018-03-31 10:05
一种实现数据处理的方法及装置,包括:将写入高速缓存(Cache)的数据以字节为单位进行拆分,获得一个或一个以上待加密单位数据;按照预设的加密算法对拆分获得的各待加密单位数据分别进行加密,以获得加密数据。本发明专利技术实施例降低了对写入Cache进行加密处理的复杂度,减少了进行安全性保护的时间代价。

A method and terminal for data processing

A data processing method and device, including: write cache (Cache) data bytes split to acquire one or more units of data to be encrypted; according to the preset encryption algorithm on the resolution obtained for encryption unit data were encrypted, to obtain encrypted data. The embodiment of the invention reduces the complexity of encrypting the written Cache and reduces the time cost for security protection.

【技术实现步骤摘要】
一种实现数据处理的方法及终端
本文涉及但不限于嵌入式技术,尤指一种实现数据处理的方法及终端。
技术介绍
随着嵌入式系统的发展,嵌入式处理器的主频不断提高,而由于工艺发展的局限,存储器(Memory)读出速度相对较慢。目前在国内典型55纳米工艺线上,闪存(Flash)读出速度能达到20纳秒(ns)就已经非常快了。这就导致出现了慢速系统存储器不能匹配高速中央处理器(CPU)处理能力的情况。为解决这一问题,许多高性能的嵌入式处理器内部集成了高速缓存(Cache)。参照相关技术,一般芯片都会对Memory进行安全防护,但当数据从Memory进入到Cache后,Cache中的数据就失去了防护措施,容易被非法攻击窃取,造成信息泄露。所以,Cache中信息的安全性和完整性也至关重要;其中,数据的安全性是指数据对未授权个体、实体或者流程不可用或者不被泄露的属性。数据的完整性是指数据不受未经许可的方法变更或破坏的属性。图1为相关技术对Cache进行防护处理的示意图,如图1所示,数据进出Cache时,会通过预先设置的加解密算法、完全性算法及密钥进行逻辑加密;保证了数据的安全及完整。目前,对Cache中的数据进行加密和完整性保护的技术往往都需要进行较为复杂的运算(例如高级加密标准(AES)算法),造成了系统的时间和空间效率的损失。损失的时间及空间效率影响到了Cache的设计。对大多数微控制单元(MCU)芯片而言,系统的频率在逐渐提高,主流芯片基本已经在200兆赫兹(MHz)左右;因此,每个周期的时间只有5ns左右,时序非常紧张。为尽可能的减小加密和完整性保护的时间代价,Cache每次取出的数据往往都会大于CPU所需;也因为这个原因,大部分Cache都是集成在处理器内部。而Cache与处理器紧密结合的方式使其成为CPU的“专属部件”;如果处理器更换,就需要重新设计Cache,影响Cache的可移植性。
技术实现思路
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。本专利技术实施例提供一种实现数据处理的方法及终端,能够减少进行安全性和完整性保护的时间代价。本专利技术实施例提供了一种实现数据处理的方法,包括:将写入高速缓存Cache的数据以字节为单位进行拆分,获得一个或一个以上待加密单位数据;按照预设的加密算法对拆分获得的各待加密单位数据分别进行加密,以获得加密数据。可选的,所述对拆分获得的各待加密单位数据分别进行加密包括:通过预先存储的密钥key、所述待加密单位数据自身、和/或所述待加密单位数据的写入地址进行异或运算,分别对各所述待加密单位数据进行加密。可选的,所述对拆分获得的各待加密单位数据分别进行加密包括:将每一个所述待加密单位数据,等分为大小为4比特的数据第一部分和数据第二部分;将预先存储的密钥等分为大小为4比特的一个或一个以上密钥子部分,并将等分获得的密钥子部分拆分至密钥子部分个数相等的密钥第一组和密钥第二组;将各所述待加密单位数据的写入地址分别等分为地址第一部分和地址第二部分;对所述密钥第一组中包含的密钥子部分进行异或处理,获得第一密钥数据;将获得的所述第一密钥数据、当前待加密单位数据对应的所述地址第一部分、当前待加密单位数据进行异或,获得当前待加密单位数据加密后的数据高位;将获得的所述当前待加密单位数据加密后的数据高位、所述密钥第二组中包含的密钥子部分、当前待加密单位数据对应的所述地址第二部分及当前待加密单位数据的所述数据第一部分进行异或,获得当前待加密单位数据加密后的数据低位;将所有待加密单位数据的加密数据进行汇总,获得整条高速缓存行的加密数据。可选的,所述方法还包括:读取Cache中存储的所述加密数据时,基于所述加密算法以字节为单位对读取的所述加密数据进行解密。可选的,所述方法还包括:读取Cache中存储的所述加密数据时,将所述加密数据以字节为单位进行拆分,获得一个或一个以上待解密单位数据将每一个所述待解密单位数据,等分为大小为4比特的数据第三部分和数据第四部分;对所述密钥第二组中包含的密钥子部分进行异或处理,获得第二密钥数据;将获得的所述第二密钥数据、所述地址第二部分及当前待解密单位数据进行异或,获得当前待解密单位数据解密后的数据高位;将获得的所述当前待解密单位数据解密后的数据高位、所述密钥第一组中包含的密钥子部分、当前待解密单位数据对应的所述地址第一部分及当前待解密单位数据的所述数据第四部分进行异或,获得当前待解密单位数据的数据低位;将所有待解密单位数据的解密数据进行汇总,获得整条高速缓存行的解密数据。可选的,该方法还包括:写入所述加密数据之前,以字节为单位对每一字节的加密数据分别增加相应的校验位;解密从Cache中读取的所述加密数据之前,以字节为单位对读取的每一字节的加密数据进行校验。可选的,所述对读取的每一字节的加密数据进行校验时,所述方法还包括:若校验结果为数据异常时,则发送告警信号,并基于预设处理策略及告警信号进行系统复位或数据重读处理。可选的,所述方法还包括:预先在所述Cache的所属芯片的选项字节区域存储所述密钥,并设置存储的密钥仅可进行一次读取;其中,存储在不同芯片的密钥不同。可选的,所述Cache与存储器和处理器采用高级高性能总线AHB标准接口连接。另一方面,本专利技术实施例还提供一种实现数据处理的装置,包括:拆分单元和加密处理单元;其中,拆分单元用于:将写入高速缓存Cache的数据以字节为单位进行拆分,获得一个或一个以上待加密单位数据;加密处理单元用于:按照预设的加密算法对拆分获得的各待加密单位数据分别进行加密,以获得加密数据。可选的,所述加密处理单元具体用于:通过预先存储的密钥key、所述待加密单位数据自身、和/或所述待加密单位数据的写入地址进行异或运算,分别对各所述待加密单位数据进行加密。可选的,所述加密处理单元具体用于:将每一个所述待加密单位数据,等分为大小为4比特的数据第一部分和数据第二部分;将预先存储的密钥等分为大小为4比特的一个或一个以上密钥子部分,并将等分获得的密钥子部分拆分至密钥子部分个数相等的密钥第一组和密钥第二组;将各所述待加密单位数据的写入地址分别等分为地址第一部分和地址第二部分;对所述密钥第一组中包含的密钥子部分进行异或处理,获得第一密钥数据;将获得的所述第一密钥数据、当前待加密单位数据对应的所述地址第一部分、当前待加密单位数据进行异或,获得当前待加密单位数据加密后的数据高位;将获得的所述当前待加密单位数据加密后的数据高位、所述密钥第二组中包含的密钥子部分、当前待加密单位数据对应的所述地址第二部分及当前待加密单位数据的所述数据第一部分进行异或,获得当前待加密单位数据加密后的数据低位;将所有待加密单位数据的加密数据进行汇总,获得整条高速缓存行的加密数据。可选的,所述装置还包括第一解密处理单元,用于读取Cache中存储的所述加密数据时,基于所述加密算法以字节为单位对读取的所述加密数据进行解密。可选的,所述装置还包括第二解密处理单元,用于:读取Cache中存储的所述加密数据时,将所述加密数据以字节为单位进行拆分,获得一个或一个以上待解密单位数据将每一个所述待解密单位数据,等分为大小为4比特的数据第三部分和数据第四部分;对所述密钥第二组中包含的密钥子本文档来自技高网
...
一种实现数据处理的方法及终端

【技术保护点】
一种实现数据处理的方法,其特征在于,包括:将写入高速缓存Cache的数据以字节为单位进行拆分,获得一个或一个以上待加密单位数据;按照预设的加密算法对拆分获得的各待加密单位数据分别进行加密,以获得加密数据。

【技术特征摘要】
1.一种实现数据处理的方法,其特征在于,包括:将写入高速缓存Cache的数据以字节为单位进行拆分,获得一个或一个以上待加密单位数据;按照预设的加密算法对拆分获得的各待加密单位数据分别进行加密,以获得加密数据。2.根据权利要求1所述的方法,其特征在于,所述对拆分获得的各待加密单位数据分别进行加密包括:通过预先存储的密钥key、所述待加密单位数据自身、和/或所述待加密单位数据的写入地址进行异或运算,分别对各所述待加密单位数据进行加密。3.根据权利要求1所述的方法,其特征在于,所述对拆分获得的各待加密单位数据分别进行加密包括:将每一个所述待加密单位数据,等分为大小为4比特的数据第一部分和数据第二部分;将预先存储的密钥等分为大小为4比特的一个或一个以上密钥子部分,并将等分获得的密钥子部分拆分至密钥子部分个数相等的密钥第一组和密钥第二组;将各所述待加密单位数据的写入地址分别等分为地址第一部分和地址第二部分;对所述密钥第一组中包含的密钥子部分进行异或处理,获得第一密钥数据;将获得的所述第一密钥数据、当前待加密单位数据对应的所述地址第一部分、当前待加密单位数据进行异或,获得当前待加密单位数据加密后的数据高位;将获得的所述当前待加密单位数据加密后的数据高位、所述密钥第二组中包含的密钥子部分、当前待加密单位数据对应的所述地址第二部分及当前待加密单位数据的所述数据第一部分进行异或,获得当前待加密单位数据加密后的数据低位;将所有待加密单位数据的加密数据进行汇总,获得整条高速缓存行的加密数据。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:读取Cache中存储的所述加密数据时,基于所述加密算法以字节为单位对读取的所述加密数据进行解密。5.根据权利要求3所述的方法,其特征在于,所述方法还包括:读取Cache中存储的所述加密数据时,将所述加密数据以字节为单位进行拆分,获得一个或一个以上待解密单位数据将每一个所述待解密单位数据,等分为大小为4比特的数据第三部分和数据第四部分;对所述密钥第二组中包含的密钥子部分进行异或处理,获得第二密钥数据;将获得的所述第二密钥数据、所述地址第二部分及当前待解密单位数据进行异或,获得当前待解密单位数据解密后的数据高位;将获得的所述当前待解密单位数据解密后的数据高位、所述密钥第一组中包含的密钥子部分、当前待解密单位数据对应的所述地址第一部分及当前待解密单位数据的所述数据第四部分进行异或,获得当前待解密单位数据的数据低位;将所有待解密单位数据的解密数据进行汇总,获得整条高速缓存行的解密数据。6.根据权利要求1~5任一项所述的方法,其特征在于,该方法还包括:写入所述加密数据之前,以字节为单位对每一字节的加密数据分别增加相应的校验位;解密从Cache中读取的所述加密数据之前,以字节为单位对读取的每一字节的加密数据进行校验。7.根据权利要求6所述的方法,其特征在于,所述对读取的每一字节的加密数据进行校验时,所述方法还包括:若校验结果为数据异常时,则发送告警信号,并基于预设处理策略及告警信号进行系统复位或数据重读处理。8.根据权利要求2、3或5所述的方法,其特征在于,所述方法还包括:预先在所述Cache的所属芯片的选项字节区域存储所述密钥,并设置存储的密钥仅可进行一次读取;其中,存储在不同芯片的密钥不同。9.根据权利要求1~5所述的方法,其特征在于,所述Cache与存储器和处理器采用高级高性能总线AHB标准接口连接。10.一种实现数据处理的装置,其特征在于,包括:拆分单元和加密处理单元;其中,拆分单元用于:将写入高速缓存Cache的数据以字节为单位进行拆...

【专利技术属性】
技术研发人员:张家桦郑荐轩
申请(专利权)人:大唐微电子技术有限公司
类型:发明
国别省市:北京,11

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

1