储存装置数据加解密方法_3

文档序号:9598140阅读:来源:国知局
作加密请求。步骤S610,加解密引擎104向硬盘密钥供应硬件304索取硬盘密钥DEK。步骤S612,硬盘密钥供应硬件304确认用户预先定义条件满足后,供应硬盘密钥DEK。步骤S614,SATA控制器102将未加密的写入数据Data转发给加解密引擎104 (例如,以数据块DATA FIS为单位转发,一 DATA FIS可包括多个扇区,一个DMA指令可包括多个DATA FIS写入),即,加解密引擎104从SATA控制器102接收未加密的写入数据Data(例如,以数据块DATA FIS为单位接收)。步骤S616,加解密引擎104基于硬盘密钥DEK及写入指令信息Cmd_Info将未加密的写入数据Data加密成加密后的写入数据Data_Encrypted,并转发给SATA控制器102 ;加解密引擎104可继续加密下一笔数据,直至不再从SATA控制器102接收到数据。步骤S618,SATA控制器102将加密后的写入数据Data_Encrypted写入SATA硬盘108。步骤S620,SATA硬盘108向主机发送一个更新信息(SET Device Bits FIS),更新主机中缓存器(SActive register)以及状态(Status)的值,该更新信息是经SATA控制器102,不经加解密引擎104传送回上层软件。NCQ DMA的SATA硬盘读取流程也是以同样概念安全取得硬盘密钥DEK,并封闭在加解密引擎104中完成SATA控制器102自SATA硬盘108取得的未解密读取数据Data_Encrypted。在一实施例中,SATA控制器102及加解密引擎104会循环执行步骤S614和S620,直至完成该写入指令所指示的所有DATA FIS的加密。
[0058]以下特别讨论芯片组100如何对通用串行总线(USB)通讯的储存装置108作加解密。芯片组100可设计对USB硬盘(对应108)作全硬盘加密、或特定逻辑地址(例如,LBA)范围的部分硬盘加密,此可由芯片组100经由基本输入输出系统(B1S)设定。芯片组100也可经基本输入输出系统(B1S)针对特定USB通讯端口使能或除能其所连接的储存装置的加密。USB控制器(对应图1中102)控制USB通讯端口(对应图1中106)以及USB硬盘108之间采用USB2.0标准下的数据块传输(Bulk-Only Transport, Β0Τ)协议、或USB 3.0标准下的通用串行总线连接小型计算机系统接口(USB Attached SCSI,UAS)协议等以数据块为单位传输数据的USB协议。
[0059]图7为USB硬盘写入的流程图。步骤S702,USB控制器102解析收到的写入指令(如write (10)),得到包括逻辑地址(如LBA)以及扇区数量(sector count)的写入指令信息Cmd_Info,并将其提供给加解密引擎104作加密请求。步骤S704,加解密引擎104向硬盘密钥供应硬件304索取硬盘密钥DEK。步骤S706,硬盘密钥供应硬件304确认用户预先定义条件满足后,供应硬盘密钥DEK。步骤S708,USB控制器102将未加密的写入数据Data(例如,以数据包(data package)为单位)转发给加解密引擎104。步骤S710,加解密引擎104基于硬盘密钥DEK及写入指令信息Cmd_Info将未加密的写入数据Data加密,并将加密后的写入数据Data_Encrypted转发给USB控制器102 ;加解密引擎104可继续加密下一笔写入数据,直至不再从USB控制器102接收到数据。步骤S712,USB控制器102将加密后的写入数据Data_Encrypted写入USB硬盘108。步骤S714,后续的硬盘状况(Status传输)是由USB控制器102不经加解密引擎104传回上层软件。USB硬盘读取流程也是以同样概念安全取得硬盘密钥DEK,并封闭在加解密引擎104中完成USB控制器102自USB硬盘108取得的未解密读取数据Data_Encrypted。在一实施例中,USB控制器102及加解密引擎104会循环执行步骤S708和S714,直至完成该写入指令所指示的所有数据包(datapackage)的加密。
[0060]在一种实施方式中,本发明所揭露的储存装置主控制器102以及加解密引擎104是实现在一主机控制器中,安装于主机端。
[0061]虽然本发明已以较佳实施例揭露如上,但其并非用以限定本发明,任何熟悉此项技艺者,在不脱离本发明的精神和范围内,当可做些许更动与润饰,因此本发明的保护范围当视申请专利范围所界定的为准。
【主权项】
1.一种储存装置数据加解密方法,其特征在于,包括: 提供一加解密引擎,所述加解密引擎为硬件; 自写入指令解析出写入指令信息,并将写入数据与所述写入指令信息传递至该加解密引擎;以及 经由该加解密引擎将一硬盘密钥与所述写入指令信息组合,以便加密所述写入数据,并将加密后的所述写入数据透过一通讯端口写入一储存装置。2.根据权利要求1所述的储存装置数据加解密方法,其特征在于,还包括: 自读取指令解析出读取指令信息,并将取自该储存装置未解密的读取数据与所述读取指令信息传递至该加解密引擎;且 经由该加解密引擎将所述硬盘密钥与所述读取指令信息组合,以便将未解密的所述读取数据解密,以响应所述读取指令。3.根据权利要求2所述的储存装置数据加解密方法,其特征在于: 所述写入指令信息包括所述写入指令所指示的逻辑地址以及扇区的数量;且 所述读取指令信息包括所述读取指令所指示的逻辑地址以及扇区的数量。4.根据权利要求3所述的储存装置数据加解密方法,其特征在于: 该加解密引擎是根据所述逻辑地址以所述扇区为单位作数据加解密。5.根据权利要求1所述的储存装置数据加解密方法,其特征在于,还包括: 提供一可信赖平台模块,该可信赖平台模块包括一硬盘密钥供应硬件,且所述硬盘密钥来自该硬盘密钥供应硬件。6.根据权利要求5所述的储存装置数据加解密方法,其特征在于: 该可信赖平台模块通过统一可扩展固件接口或操作系统操作该硬盘密钥供应硬件。7.根据权利要求5所述的储存装置数据加解密方法,其特征在于: 该加解密引擎是遵循一密钥交换协议与该硬盘密钥供应硬件通讯以获得所述硬盘密钥。8.根据权利要求5所述的储存装置数据加解密方法,其特征在于: 该加解密引擎是与该硬盘密钥供应硬件封装在一起或者制作在同一芯片上。9.根据权利要求5所述的储存装置数据加解密方法,其特征在于: 该加解密引擎对该硬盘密钥供应硬件的硬盘密钥要求是在该硬盘密钥供应硬件确认使用者设定的辨识条件满足后才由该硬盘密钥供应硬件受理。10.根据权利要求5所述的储存装置数据加解密方法,其特征在于: 所述硬盘密钥是由该可信赖平台模块作加密备份。11.根据权利要求1所述的储存装置数据加解密方法,其特征在于,还包括: 经基本输入输出系统设定局部加密该储存装置,仅加密特定逻辑地址的写入数据。12.根据权利要求1所述的储存装置数据加解密方法,其特征在于,还包括: 在确定收到直接内存存取所定义的激活允许后,才将所述写入数据转发给该加解密引擎, 其中,该通讯端口是一串行高级技术附件接口。13.根据权利要求1所述的储存装置数据加解密方法,其特征在于,还包括: 自所述写入指令解析出一标签,所述标签使遵循原生指令排序的多个写入指令得以区别;以及 根据该储存装置所指示的标签将对应的写入指令信息传递至该加解密引擎; 其中,所述写入指令信息还包括所述写入指令所指示的扇区尺寸。14.根据权利要求1所述的储存装置数据加解密方法,其特征在于,还包括: 经基本输入输出系统使能或除能采用通用串行总线的该通讯端口所连接的该储存装置的加密。15.根据权利要求14所述的储存装置数据加解密方法,其特征在于,还包括: 控制该通讯端口以及该储存装置之间采用数据块传输协议。16.根据权利要求14所述的储存装置数据加解密方法,其特征在于,还包括: 控制该通讯端口以及该储存装置之间采用通用串行总线连接小型计算器系统接口协议。17.根据权利要求1所述的储存装置数据加解密方法,其特征在于,该加解密引擎制作在一南桥内。18.根据权利要求5所述的储存装置数据加解密方法,其特征在于,该加解密引擎以及该硬盘密钥供应硬件制作在一南桥内。19.根据权利要求1所述的储存装置数据加解密方法,其特征在于,该写入指令是发自一主机的直接内存存取请求。
【专利摘要】本发明公开一种储存装置数据加解密方法,包括:提供一加解密引擎,所述加解密引擎为硬件;自写入指令解析出写入指令信息,并将写入数据与所述写入指令信息传递至该加解密引擎;以及经由该加解密引擎将一硬盘密钥与所述写入指令信息组合,以便加密所述写入数据,并将加密后的所述写入数据透过一通讯端口写入一储存装置。
【IPC分类】G06F21/80, G06F21/60
【公开号】CN105354503
【申请号】CN201510733496
【发明人】李凯, 薛刚汝, 沈昀, 李辉
【申请人】上海兆芯集成电路有限公司
【公开日】2016年2月24日
【申请日】2015年11月2日
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1