数据加密的闪存控制器以及写入或读取数据加密方法

文档序号:10512613阅读:351来源:国知局
数据加密的闪存控制器以及写入或读取数据加密方法
【专利摘要】本发明涉及存储器领域,尤其地涉及一种可进行数据加密的闪存控制器。外部控制设备通过物理接口对闪存发送写入或者读取的控制指令或数据,中央处理器接收和处理该控制指令或数据;中央处理器对安全加密引擎写入或读取数据信号,安全加密引擎对该数据信号进行编码或者解码,闪存转换器可对该数据信号进行错误检查和纠正处理、RAID编码或者RAID解码。该闪存控制器能够对写入或者读取闪存的数据进行加密,从而维护用户层间的信息传输可靠和安全。本发明还提供了一种基于闪存控制器的数据写入或者读取加密方法,该数据写入或者读取加密方法能够对写入或读取闪存的数据进行加密,从而维护用户的信息安全。
【专利说明】
数据加密的闪存控制器以及写入或读取数据加密方法
技术领域
[0001]本发明涉及存储器领域,尤其地涉及一种包括物理接口、中央处理器、DRAM控制器、安全加密引擎、Randomizer以及闪存转换器的闪存控制器。
[0002]本发明还具体地涉及一种基于闪存控制器的数据写入加密方法。
[0003]本发明还具体地涉及一种基于闪存控制器的数据读取加密方法。
【背景技术】
[0004]固态硬盘作为存储器的一种,固态硬盘日益成为人们普遍使用的存储设备,其具有速度快,寿命长,功率低的优点,固态硬盘是将大容量闪存通过装在线路板上,其体积小,存储量大,使用方便,而且方便电脑组装,从而得到用户的欢迎。
[0005]目前,固态硬盘用户对数据安全性的要求越来越高。人们迫切需要一个对写入固态硬盘存储器的数据或者读取固态硬盘存储器的数据进行加密处理,以便维护信息安全。

【发明内容】

[0006]本发明为了克服现有技术的不足,目的旨在提供一种可进行数据加密的闪存控制器,该闪存控制器能够对写入或者读取闪存的数据进行加密,从而维护用户层间的信息传输可靠和安全。
[0007]本发明还提供了一种基于闪存控制器的数据写入或者读取加密方法,该数据写入或者读取加密方法能够对写入或读取闪存的数据进行加密,从而维护用户的信息安全。
[0008]为了解决上述的技术问题,本发明提出的基本技术方案为:
[0009]—种可进行数据加密的闪存控制器,所述闪存控制器和外部控制设备通讯,并将外部控制设备需对闪存写入的数据或者读取的数据进行加密;其中,该闪存控制器包括物理接口、中央处理器、DRAM控制器、安全加密引擎、Randomizer以及闪存转换器;外部控制设备通过物理接口对闪存发送写入或者读取的控制指令或数据,中央处理器接收和处理该控制指令或数据;中央处理器读取DRAM控制器以获得需实体位置和逻辑位置管理表;中央处理器对安全加密引擎写入或读取数据信号,安全加密引擎对该数据信号进行编码或者解码,闪存转换器可对该数据信号进行错误检查和纠正处理、RAID编码或者RAID解码。
[0010]进一步,所述物理接口为 SAS 接口、FC 接口、PC1-E 接口、SATA 接口、USB 接口、eMMC接口以及UFS接口中的任意一种。
[0011 ] 进一步,所述中央处理器为单核处理器或者多核处理器。
[0012]进一步,所述安全加密引擎采用AES128、AES256、SHA256、SM9、SM3中任意一种或者两种以上集合的加密算法标准。
[0013]本发明还提供一种基于闪存控制器的数据写入加密方法,该数据写入加密方法步骤如下所述:
[0014]S1、外部控制设备通过物理接口对闪存发送写入的控制指令或数据,物理接口对该控制指令或者数据进行信号等化处理、去除杂讯处理和优化编程处理,并将处理后的控制指令信号或者数据信号存储于物理接口中的数据输入缓存区;
[0015]S2、中央处理器对物理接口发出读取信号,从数据输入缓存区读取数据信号或者控制指令信号进行排程处理,中央处理器将需要写入闪存的数据信号存储于中央处理器数据缓存区;
[0016]S3、中央处理器通过路径选择访问得知安全加密引擎处于空闲状态,把需要写入闪存的数据信号写入安全加密引擎;
[0017]S4、安全加密引擎对需要写入闪存的数据信号进行加密编码处理,并将加密编码处理后的数据信号送入Randomizer ;
[0018]S5、Randomizer将该数据信号随机打乱使该数据信号写入闪存时电位随机分布;
[0019]S6、闪存转换器接收经Randomizer处理后的数据信号,闪存转换器对该数据信号进行错误检查和纠正处理以及RAID编码;
[0020]S7、闪存转换器往闪存写入数据。
[0021]进一步,步骤S2还包括:中央处理器读取DRAM控制器以获得需实体位置和逻辑位置管理表。
[0022]进一步,中央处理器通过不同路径选择访问采用加密算法标准不同的安全加密引擎。
[0023]本发明还提供一种基于闪存控制器的数据读取加密方法,该数据读取加密方法步骤如下所述:
[0024]S1、外部控制设备通过物理接口对中央处理器发送读取的控制指令;
[0025]S2、中央处理器对闪存转换器发出读取控制命令,闪存转换器从闪存读取数据;
[0026]S3、闪存转换器对该数据进行错误检查和纠正处理以及RAID解码;
[0027]S4、Randomizer接收经闪存转换器处理后的数据信号,并重新组合该数据信号;
[0028]S5、安全加密引擎对步骤4的重新组合的数据信号进行解码处理,并将解码处理后的数据信号送入中央处理器;
[0029]S6、中央处理器对步骤5解码后的数据信号进行排程处理;
[0030]S7、中央处理器经物理接口传输给外部控制设备。
[0031]进一步,步骤S6还包括:中央处理器读取DRAM控制器以获得需实体位置和逻辑位置管理表。
[0032]进一步,中央处理器通过不同路径选择访问采用加密算法标准不同的安全加密引擎。
[0033]本发明的有益效果是:
[0034]1、本发明具有多种对数据进行加密的安全加密引擎选择。中央处理器通过选择不同路径而选择采用不同加密算法标准的安全加密引擎来对数据进行加密处理。
[0035]2、本发明在闪存转换器进行错误检查和纠正处理之前,采用Randomizer对数据信号打乱,使数据信号写入闪存时电位能够随机分布,从而降低写入闪存的错误率。
【附图说明】
[0036]图1为实施例提供的闪存控制器电路结构示意图。
[0037]图2为实施例提供的一种基于闪存控制器的数据写入加密方法的流程图。
[0038]图3为实施例提供的一种基于闪存控制器的数据读取加密方法的流程图。
【具体实施方式】
[0039]以下将结合附图1至3对本发明做进一步的说明,但不应以此来限制本发明的保护范围。为了方便说明并且理解本发明的技术方案,以下说明所使用的方位词均以附图所展示的方位为准。
[0040]如图1所示,本实施例提供的闪存控制器和外部控制设备通讯,该闪存控制器将外部控制设备需对闪存写入的数据或者读取的数据进行加密。
[0041 ] 该闪存控制器包括物理接口、中央处理器、DRAM控制器、安全加密引擎、Randomizer以及闪存转换器。Randomizer为随机分布处理器,该随机分布处理器可打乱需写入闪存的数据信号,或者重新组合从闪存读出的数据信号。
[0042]外部控制设备通过物理接口对闪存发送写入或者读取的控制指令或数据,中央处理器接收和处理该控制指令或数据;中央处理器读取DRAM控制器以获得需实体位置和逻辑位置管理表;中央处理器对安全加密引擎写入或读取数据信号,安全加密引擎对该数据信号进行编码或者解码,闪存转换器可对该数据信号进行错误检查和纠正处理、RAID编码或者RAID解码。其中,物理接口为SAS接口、FC接口、PC1-E接口、SATA接口、USB接口、eMMC接口以及UFS接口中的任意一种。中央处理器为单核处理器或者多核处理器。安全加密引擎可采用AES128、AES256、SHA256、SM9、SM3中任意一种或者两种以上集合的加密算法标准。
[0043]如图2所示,本实施侧还提供一种基于闪存控制器的数据写入加密方法,该数据写入加密方法步骤如下所述:
[0044]S1、外部控制设备通过物理接口对闪存发送写入的控制指令或数据,物理接口对该控制指令或者数据进行信号等化处理、去除杂讯处理和优化编程处理,并将处理后的控制指令信号或者数据信号存储于物理接口中的数据输入缓存区;
[0045]S2、中央处理器对物理接口发出读取信号,从数据输入缓存区读取数据信号或者控制指令信号进行排程处理,中央处理器将需要写入闪存的数据信号存储于中央处理器数据缓存区;
[0046]S3、中央处理器通过路径选择访问得知安全加密引擎处于空闲状态,把需要写入闪存的数据信号写入安全加密引擎;
[0047]S4、安全加密引擎对需要写入闪存的数据信号进行加密编码处理,并将加密编码处理后的数据信号送入Randomizer ;
[0048]S5、Randomizer将该数据信号随机打乱使该数据信号写入闪存时电位随机分布;采用Randomizer对数据信号打乱,使数据信号写入闪存时电位能够随机分布,从而降低写入闪存的错误率。
[0049]S6、闪存转换器接收经Randomizer处理后的数据信号,闪存转换器对该数据信号进行错误检查和纠正处理以及RAID编码;
[0050]S7、闪存转换器往闪存写入数据。
[0051 ] 其中,步骤S2还包括:中央处理器读取DRAM控制器以获得需实体位置和逻辑位置管理表,这以便中央处理器查找资料。中央处理器通过不同路径选择访问采用加密算法标准不同的安全加密引擎。物理接口为SAS接口、FC接口、PC1-E接口、SATA接口、USB接口、eMMC接口以及UFS接口中的任意一种。中央处理器为单核处理器或者多核处理器。安全加密引擎可采用AES128、AES256、SHA256、SM9、SM3中任意一种或者两种以上集合的加密算法标准。比如中央处理器可以选择SM9引擎对需要写入闪存的数据信号进行加密,也可以选择AES128对需要写入闪存的数据信号进行加密。
[0052]步骤S6中的错误检查和纠正处理可采用BCH、LDPC、TPC中任意一种或者两种以上集合的错误检查和纠正算法标准。
[0053]本实施例还提供一种基于闪存控制器的数据读取加密方法,该数据读取加密方法步骤如下所述:
[0054]S1、外部控制设备通过物理接口对中央处理器发送读取的控制指令;
[0055]S2、中央处理器对闪存转换器发出读取控制命令,闪存转换器从闪存读取数据;
[0056]S3、闪存转换器对该数据进行错误检查和纠正处理以及RAID解码;
[0057]S4、Randomizer接收经闪存转换器处理后的数据信号,并重新组合该数据信号;
[0058]S5、安全加密引擎对步骤4的重新组合的数据信号进行解码处理,并将解码处理后的数据信号送入中央处理器;
[0059]S6、中央处理器对步骤5解码后的数据信号进行排程处理;
[0060]S7、中央处理器经物理接口传输给外部控制设备。
[0061]步骤S6还包括:中央处理器读取DRAM控制器以获得需实体位置和逻辑位置管理表,这以便中央处理器查找资料。中央处理器通过不同路径选择访问采用加密算法标准不同的安全加密引擎。物理接口为SAS接口、FC接口、PC1-E接口、SATA接口、USB接口、eMMC接口以及UFS接口中的任意一种。中央处理器为单核处理器或者多核处理器。安全加密引擎可采用AES128、AES256、SHA256、SM9、SM3中任意一种或者两种以上集合的加密算法标准。
[0062]步骤S3中的错误检查和纠正处理可采用BCH、LDPC、TPC中任意一种或者两种以上集合的错误检查和纠正算法标准。
[0063]综上所述,本发明具有多种对数据进行加密的安全加密引擎选择。中央处理器通过选择不同路径而选择采用不同加密算法标准的安全加密引擎来对数据进行加密处理。
[0064]根据上述说明书的揭示和教导,本发明所属领域的技术人员还可以对上述实施方式进行变更和修改。因此,本发明并不局限于上面揭示和描述的【具体实施方式】,对本发明的一些修改和变更也应当落入本发明的权利要求的保护范围内。此外,尽管本说明书中使用了一些特定的术语,但这些术语只是为了方便说明,并不对本发明构成任何限制。
【主权项】
1.一种可进行数据加密的闪存控制器,所述闪存控制器和外部控制设备通讯,并将外部控制设备需对闪存写入的数据或者读取的数据进行加密; 其特征在于:包括物理接口、中央处理器、DRAM控制器、安全加密引擎、Randomizer以及闪存转换器; 外部控制设备通过物理接口对闪存发送写入或者读取的控制指令或数据,中央处理器接收和处理该控制指令或数据;中央处理器读取DRAM控制器以获得需实体位置和逻辑位置管理表;中央处理器对安全加密引擎写入或读取数据信号,安全加密引擎对该数据信号进行编码或者解码,闪存转换器可对该数据信号进行错误检查和纠正处理、RAID编码或者RAID解码。2.根据权利要求1所述的一种可进行数据加密的闪存控制器,其特征在于:所述物理接口为SAS接口、FC接口、PC1-E接口、SATA接口、USB接口、e丽C接口以及UFS接口中的任意一种。3.根据权利要求1所述的一种可进行数据加密的闪存控制器,其特征在于:所述中央处理器为单核处理器或者多核处理器。4.根据权利要求1所述的一种可进行数据加密的闪存控制器,其特征在于:所述安全加密引擎采用AES128、AES256、SHA256、SM9、SM3中任意一种或者两种以上集合的加密算法标准。5.一种基于闪存控制器的数据写入加密方法,其特征在于:该数据写入加密方法步骤如下所述: 51、外部控制设备通过物理接口对闪存发送写入的控制指令或数据,物理接口对该控制指令或者数据进行信号等化处理、去除杂讯处理和优化编程处理,并将处理后的控制指令信号或者数据信号存储于物理接口中的数据输入缓存区; 52、中央处理器对物理接口发出读取信号,从数据输入缓存区读取数据信号或者控制指令信号进行排程处理,中央处理器将需要写入闪存的数据信号存储于中央处理器数据缓存区; 53、中央处理器通过路径选择访问得知安全加密引擎处于空闲状态,把需要写入闪存的数据信号写入安全加密引擎; 54、安全加密引擎对需要写入闪存的数据信号进行加密编码处理,并将加密编码处理后的数据信号送入Randomizer ; 55、Randomizer将该数据信号随机打乱使该数据信号写入闪存时电位随机分布; 56、闪存转换器接收经Randomizer处理后的数据信号,闪存转换器对该数据信号进行错误检查和纠正处理以及RAID编码; 57、闪存转换器往闪存写入数据。6.根据权利要求5所述的一种基于闪存控制器的数据写入加密方法,其特征在于:步骤S2还包括:中央处理器读取DRAM控制器以获得需实体位置和逻辑位置管理表。7.根据权利要求5所述的一种基于闪存控制器的数据写入加密方法,其特征在于:中央处理器通过不同路径选择访问采用加密算法标准不同的安全加密引擎。8.—种基于闪存控制器的数据读取加密方法,其特征在于:该数据读取加密方法步骤如下所述: 51、外部控制设备通过物理接口对中央处理器发送读取的控制指令; 52、中央处理器对闪存转换器发出读取控制命令,闪存转换器从闪存读取数据; 53、闪存转换器对该数据进行错误检查和纠正处理以及RAID解码; 54、Randomizer接收经闪存转换器处理后的数据信号,并重新组合该数据信号; 55、安全加密引擎对步骤4的重新组合的数据信号进行解码处理,并将解码处理后的数据信号送入中央处理器; 56、中央处理器对步骤5解码后的数据信号进行排程处理; 57、中央处理器经物理接口传输给外部控制设备。9.根据权利要求8所述的一种基于闪存控制器的数据读取加密方法,其特征在于:步骤S6还包括:中央处理器读取DRAM控制器以获得需实体位置和逻辑位置管理表。10.根据权利要求8所述的一种基于闪存控制器的数据读取加密方法,其特征在于:中央处理器通过不同路径选择访问采用加密算法标准不同的安全加密引擎。
【文档编号】G06F21/79GK105868642SQ201510623636
【公开日】2016年8月17日
【申请日】2015年9月28日
【发明人】蔡诗国
【申请人】深圳创久科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1