加解密装置、控制器以及加密关键字保护方法与流程

文档序号:12272111阅读:366来源:国知局
加解密装置、控制器以及加密关键字保护方法与流程

本发明的实施方式通常涉及加解密装置、控制器以及加密关键字保护方法。



背景技术:

存在使用加密关键字来进行数据的加密以及解密的加解密装置。对于上述加解密装置,通常在本装置内置的易失性的存储介质(加密关键字存储部)中存储有加密关键字。另外,进行了将加解密装置适用于例如硬盘、混合驱动器等存储装置的应用。对于上述存储装置,通过将数据以加密了的状态进行存储并在读出该数据时进行解密,提高对数据泄露的安全性。

但是,对于适用加解密装置的存储装置或者搭载该存储装置的PC(Personal Computer,个人计算机)等电子设备,有时准备了在削减了消耗电力的状态下进行工作的工作模式(省电力模式)。在省电力模式下,由于不进行数据的读和写,所以加解密装置成为电力供给的限制对象,但关于加密关键字却要求即使在省电力模式下也要进行保持。例如,在向省电力模式转换之前,将通过其他的加密关键字进行了加密的加密关键字转移保存到非易失性的存储介质,由此能够在省电力模式下保持加密关键字。在从省电力模式恢复之后,加密后的加密关键字被从存储介质读出而恢复(解密)。然而,在转移保存和/或恢复时存在加密关键字泄露的可能性。



技术实现要素:

本发明的实施方式提供能够防止加密关键字泄露的加解密装置、控制器以及加密关键字保护方法。

根据实施方式,提供具备非易失性的存储介质和控制器的加解密装置。控制器具备易失性的第1存储部、数据输入部、加密处理部、数据输出部、易失性的第2存储部、加密关键字加密部和访问控制部。第1存储部存储第1加密关键字。数据输入部用于输入成为加密或者解密的对象的数据。加密处理部基于所述第1加密关键字对输入到所述数据输入部的数据进行加密或者解密。数据输出部将通过所述加密处理部进行了加密或者解密而得到的数据输出。第2存储部存储第2加密关键字。加密关键字加密部在指示了所述第1加密关键字的加密的情况下,将所述第1存储部存储的所述第1加密关键字经由所述数据输入部输入到所述加密处理部,基于所述第2加密关键字使所述加密处理部进行加密。访问控制部在所述加密处理部对所述第1加密关键字进行加密的期间,限制对所述数据输入部的访问。并且,非易失性的存储介质存储从所述数据输出部输出的加密完成的第1加密关键字。

附图说明

图1是表示实施方式涉及的存储装置的构成例的图。

图2是表示实施方式涉及的控制部具有的加密以及解密涉及的功能构成的一例的图。

图3是示意性表示实施方式涉及的控制部的电力供给状态的一例的图。

图4是表示实施方式涉及的加密关键字设定处理的一例的时序图。

图5是表示实施方式涉及的加密关键字转移保存处理的一例的时序图。

图6是表示实施方式涉及的加密关键字恢复处理的一例的时序图。

具体实施方式

以下,参照附图来详细说明实施方式涉及的加解密装置、控制器以及加密关键字保护方法。此外,并非通过本实施方式限定本发明。

图1是表示实施方式涉及的存储装置1的构成例的图。存储装置1具备存储控制器2、非易失性存储器3以及磁盘4。存储装置1能够与主机5连接。图1中,示出了存储装置1与主机5连接的状态。主机5例如既可以是个人计算机、便携终端等电子设备,也可以是外部接口。

存储装置1是具备非易失性存储器3和磁盘4的混合驱动器。混合驱动器也称为混合HDD、SSHD(固态混合驱动器)。

非易失性存储器3例如是NAND型闪速存储器等半导体存储器。非易失性存储器3例如作为写缓存或者读缓存而使用。另外,非易失性存储器3作为存储加密后的后述的加密关键字组的存储区域而使用。

存储控制器2按照来自主机5的写入命令(要求)来控制向非易失性存储器3以及磁盘4写入数据。另外,存储控制器2按照来自主机5的读出命令(要求)来控制从非易失性存储器3以及磁盘4读出数据。

存储控制器2具备主机I/F(接口)21、NAND控制器22、控制部23以及盘控制器24。存储控制器2所具备的各部通过内部总线20而连接。另外,控制部23通过未图示的控制线与主机I/F21、NAND控制器22以及盘控制器24分别连接。

控制部23是SoC(System-on-a-Chip,片上系统)等控制电路的一部分电路,综合控制存储装置1的工作。例如,控制部23经由盘控制器24控制向磁盘4的写入以及从磁盘4的读出。另外,控制部23经由NAND控制器22控制向非易失性存储器3的写入以及从非易失性存储器3的读出。

另外,控制部23具有作为进行数据的加密以及解密的控制器的功能部。此外,关于加密以及解密所涉及的功能构成,在后面叙述。

主机I/F21实施遵循与主机5之间的接口规格的处理。例如,主机I/F21将从主机5接收到的命令、数据等输出到内部总线20。另外,主机I/F21将从非易失性存储器3以及磁盘4读出的数据、来自控制部23的响应等发送到主机5。

NAND控制器22在控制部23的控制下,进行向非易失性存储器3的 写入和/或从非易失性存储器3的读出。盘控制器24在控制部23的控制下,进行向磁盘4的写入和/或从磁盘4的读出。

另外,上述构成的存储装置1具有在降低了消耗电力的状态下进行工作的工作模式(省电力模式)。在省电力模式下,停止向非易失性存储器3的电力供给,并且部分停止向控制部23的电力供给。此外,省电力模式所涉及的控制,可以设为由控制部23具备的一部分功能部进行的构成。另外,省电力模式所涉及的控制,也可以设为由控制电力供给的未图示的其他控制部(电力控制部等)进行的构成。另外,向省电力模式的转换指示既可以由主机5进行,也可以由控制部23和/或其他控制部(电力控制部等)进行。

接着,对控制部23具有的加密以及解密所涉及的控制器的功能构成进行说明。图2是表示控制部23具有的加密以及解密所涉及的功能构成的一例的图。如图2所示,控制部23具备CPU(Central Processing Unit,中央处理单元)31、加密关键字组存储部32、关键字加密关键字存储部33、数据输入部34、加密处理部35、数据输出部36、加密关键字保护部37以及写入状态存储部38。

在图2中,连接各功能部的实线是指数据线,虚线是指控制线。另外,图2所示的控制部23与本实施方式的控制器对应。另外,对该控制部23添加了非易失性存储器3而得到的构成,与本实施方式的加解密装置对应。此外,在图2中,省略了NAND控制器22的图示。

加密关键字组存储部32具有SRAM(Static Random Access Memory,静态随即存取存储器)等易失性存储器,设置在控制部23的电路内。加密关键字组存储部32存储用于对数据进行加密以及解密的多个加密关键字(加密关键字组)。加密关键字例如按磁盘4的多个磁道而准备。

关键字加密关键字存储部33,与加密关键字组存储部32同样地,具有SRAM等易失性存储器,设置在控制部23的电路内。关键字加密关键字存储部33存储用于对加密关键字组进行加密的加密关键字(以下,称为关键字加密关键字)。在此,加密关键字存在多个,而关键字加密关键字 存在一个。因此,关键字加密关键字存储部33的存储容量比加密关键字组存储部32的存储容量小。

数据输入部34受理成为加密和/或解密的对象的数据的输入,并向加密处理部35输入(输出)。例如,数据输入部34输入从主机5发送的加密对象的用户数据。另外,数据输入部34输入从磁盘4读出的解密对象的用户数据(加密化数据)。此外,向数据输入部34的输入路径没有特别限制。例如,数据输入部34可以构成为经由未图示的数据输入线从非易失性存储器3受理用户数据(加密化数据)。另外,数据输入部34也可以构成为经由CPU31受理用户数据(加密化数据)。

另外,例如,数据输入部34在通过关键字加密关键字存储部33所存储的关键字加密关键字对加密关键字组进行加密(转移保存)的情况下,将该加密关键字组作为加密对象进行输入。另外,数据输入部34在对加密后的加密关键字组(加密化加密关键字组)进行解密(恢复)的情况下,将该加密关键字组作为解密对象进行输入。

此外,在本实施方式中,在使用加密关键字组对用户数据进行加密或者解密的通常的加密处理的情况下,加密关键字组存储部32存储的加密关键字组被直接输入到加密处理部35,但不限于此,也可以构成为由数据输入部34输入。

加密处理部35基于加密关键字(加密关键字组、关键字加密关键字)对输入到数据输入部34的数据进行加密或者解密。加密处理部35例如可以使用通用的加解密电路。此外,加密处理部35进行的加密以及解密的方式没有特别限制。

具体而言,加密处理部35基于加密关键字组存储部32存储的加密关键字组,对输入到数据输入部34的加密对象的用户数据进行加密。另外,加密处理部35基于关键字加密关键字存储部33所存储的关键字加密关键字,对输入到数据输入部34的加密对象的加密关键字组进行加密。以下,将基于加密关键字组进行了加密而得到的用户数据称为“加密化数据”。另外,将基于关键字加密关键字进行了加密而得到的加密关键字组称为“加 密化加密关键字组”。

另外,加密处理部35基于加密关键字组存储部32存储的加密关键字组,对输入到数据输入部34的解密对象的加密化数据进行解密。另外,加密处理部35基于关键字加密关键字存储部33所存储的关键字加密关键字,对输入到数据输入部34的解密对象的加密化加密关键字进行解密。此外,加密处理部35在基于加密关键字组进行用户数据的加密以及解密的情况下,使用加密关键字组中的与用户数据的写入目的地或者读出目的地的磁道对应的加密关键字,进行加密以及解密。

数据输出部36将由加密处理部35进行了加密或者解密而得到的数据输出。例如,数据输出部36将由加密处理部35进行了加密而得到的加密化数据和/或加密化加密关键字组输出到非易失性存储器3。另外,数据输出部36将由加密处理部35进行了解密而得到的用户数据输出到非易失性存储器3。此外,从数据输出部36向非易失性存储器3的输出路径没有特别限制。例如,数据输出部36可以构成为经由未图示的数据输出线输出到非易失性存储器3。另外,数据输出部36也可以构成为经由CPU31输出到非易失性存储器3。

另外,数据输出部36通过将由加密处理部35进行了解密而得到的加密关键字组输出到加密关键字组存储部32来使该加密关键字组存储部32进行存储。

CPU31是用于对控制部23进行控制的处理器。CPU31生成加密关键字组和/或关键字加密关键字,并存储于加密关键字组存储部32和/或关键字加密关键字存储部33。另外,CPU31构成为能够访问数据输入部34以及数据输出部36。此外,在经由CPU31进行各种数据的输入输出的情况下,CPU31作为输入输出控制部发挥功能。

但是,在存储装置1转换到了省电力模式的情况下,不产生对磁盘4的数据读取以及写入。因此,控制部23成为电力供给的限制对象,但关于加密关键字组却要求即使在省电力模式下也要保持。例如,在以往的技术中,在转换到了省电力模式的情况下,维持向存储加密关键字组的加密关 键字组存储部32的电力供给,停止向其他功能部的电力供给。

在本实施方式的情况下,加密关键字组存储部32至少存储与加密关键字组相当的量的数据量。该情况下,加密关键字组存储部32的消耗电力根据加密关键字组存储部32存储的数据量而增加。

因此,本实施方式的控制部23,为了实现进一步的省电力化,在向省电力模式转换之前,将通过关键字加密关键字存储部33所存储的关键字加密关键字进行了加密而得到的加密关键字组转移保存到非易失性存储器3。另外,在从省电力模式恢复之后,控制部23将通过关键字加密关键字对从非易失性存储器3读出的加密化加密关键字组进行了解密而得到的加密关键字组恢复到加密关键字组存储部32。

在上述的转移保存·恢复构成中,通过取代维持向加密关键字组存储部32的电力供给而维持向消耗电力更低的关键字加密关键字存储部33的电力供给,能够恢复向省电力模式转换之前的状态。因此,与维持向加密关键字组存储部32的电力供给的以往技术相比,能够实现进一步的省电力化。另外,由于控制部23的外部的非易失性存储器3所存储的加密关键字组是通过关键字加密关键字存储部33所存储的关键字加密关键字进行了加密的,因此能够确保安全性。

此外,关于数据输入部34和/或数据输出部36,在加密关键字组的加密和/或解密时保持明文的加密关键字组。该情况下,例如存在由于来自输入输出控制部(CPU31)的访问而导致从数据输入部34和/或数据输出部36泄露明文的加密关键字组的可能性。另外,关于关键字加密关键字存储部33,也存在由于来自输入输出控制部(CPU31)的访问而导致关键字加密关键字的泄露和/或关键字加密关键字被改写等的可能性。

因此,在本实施方式的控制部23中,通过加密关键字保护部37以及写入状态存储部38,使与加密关键字组以及关键字加密关键字对应的安全性提高。

具体而言,在本实施方式中,在使加密关键字组存储部32所存储的加密关键字组转移保存到非易失性存储器3的情况下,CPU31将对加密关键 字组进行加密的工作模式(以下,称为加密关键字加密模式)设定(指示)给加密关键字保护部37。另外,在使非易失性存储器3所存储的加密关键字组(加密化加密关键字组)恢复到加密关键字组存储部32的情况下,CPU31将对加密化加密关键字组进行解密的工作模式(以下,称为加密关键字解密模式)设定给加密关键字保护部37。

此外,CPU31设定加密关键字加密模式的定时,只要是进行向省电力模式的转换之前并没有特别限制。例如,CPU31可以在存储装置1启动时设定加密关键字加密模式。另外,CPU31设定加密关键字解密模式的定时,优选为刚刚从省电力模式恢复后。

加密关键字保护部37是作为本实施方式的加密关键字加密部、访问控制部、第1初始化部、加密关键字解密部、第2初始化部以及状态管理部发挥功能的功能部。加密关键字保护部37根据加密关键字加密模式以及加密关键字解密模式的设定,控制加密关键字组的加密以及解密所涉及的工作。

具体而言,加密关键字保护部37在加密关键字加密模式被设定时,控制数据输入部34,使加密关键字组存储部32所存储的加密关键字组输入到加密处理部35。另外,加密关键字保护部37控制加密处理部35,执行基于关键字加密关键字存储部33所存储的关键字加密关键字进行的加密处理。

另外,加密关键字保护部37在设定着加密关键字加密模式的期间,通过控制(限制)对数据输入部34的访问,使该访问无效化。例如,加密关键字保护部37控制数据输入部34,以使得针对请求取得加密关键字组的读访问,返回与加密关键字组无关的错误码等固定值。

并且,加密关键字保护部37在加密关键字加密模式被解除时,在清除了数据输入部34以及加密处理部35所保持的与加密关键字组等相关的数据之后,解除对数据输入部34的访问控制。由此,能够防止加密前的加密关键字组从数据输入部34泄露。

另一方面,加密关键字保护部37在加密关键字解密模式被设定时,控 制加密处理部35,执行基于关键字加密关键字存储部33所存储的关键字加密关键字进行的解密处理。

另外,加密关键字保护部37在设定着加密关键字解密模式的期间,通过控制(限制)对数据输出部36的访问,使该访问无效化。例如,加密关键字保护部37控制数据输出部36,以使得针对请求取得加密关键字组的读访问,返回与加密关键字组无关的错误码等固定值。

并且,加密关键字保护部37在加密关键字解密模式被解除时,在清除了加密处理部35以及数据输出部36所保持的与加密关键字组相关的数据之后,解除对数据输出部36访问控制。由此,能够防止解密后的加密关键字组从数据输出部36泄露。

另外,加密关键字保护部37通过与写入状态存储部38协作来控制对关键字加密关键字存储部33的访问。在此,写入状态存储部38是存储表示是否向关键字加密关键字存储部33设定(写入)完成关键字加密关键字的状态信息的易失性存储介质。例如,在关键字加密关键字以二进制值表示是否设定完成的情况下,写入状态存储部38由至少具有1位的存储容量的存储元件来实现即可。此外,关键字加密关键字存储部33以及写入状态存储部38既可以由互不相同的易失性存储器来构成,也可以由同一易失性存储器来构成。

加密关键字保护部37在检测到向关键字加密关键字存储部33写入了关键字加密关键字时,将写入状态存储部38存储的状态信息变更为设定完成。另外,加密关键字保护部37在状态信息表示设定完成的期间,通过控制(限制)对关键字加密关键字存储部33的访问,使该访问无效化。例如,加密关键字保护部37控制关键字加密关键字存储部33,以使得针对请求取得关键字加密关键字的读访问,返回与关键字加密关键字无关的错误码等固定值。由此,能够保护关键字加密关键字存储部33存储的关键字加密关键字。

此外,在省电力模式的期间,设为维持向关键字加密关键字存储部33以及写入状态存储部38的电力供给。在此,图3是示意性表示省电力模式 下的控制部23的电力供给状态的一例的图。此外,在图3中,对电力供给被停止的功能部实施阴影。如图3所示,在省电力模式下,维持向关键字加密关键字存储部33以及写入状态存储部38的电力供给,停止向其他功能部(CPU31、加密关键字组存储部32、数据输入部34、加密处理部35、数据输出部36、加密关键字保护部37)的电力供给。由此,能够将CPU31向加密关键字保护部37写入关键字加密关键字的定时限制为写入状态存储部38被清除的存储装置1启动时等。

以下,使用图4~图6对上述的控制部23的工作进行说明。首先,使用图4,对设定加密关键字(加密关键字组以及关键字加密关键字)时的工作(加密关键字设定处理)进行说明。在此,图4是表示加密关键字设定处理的一例的时序图。此外,在本处理中,设想将CPU31作为了输入输出控制部的例子。

当通过电源接通而启动了存储装置1(控制部23)时,CPU31生成关键字加密关键字(B11)。接着,CPU31使所生成的关键字加密关键字存储于关键字加密关键字存储部33(B12)。关键字加密关键字的生成方法没有特别限制。例如,CPU31可以基于随机数来生成关键字加密关键字。另外,CPU31也可以与TPM(Trusted Platform Module,可信平台模块)等安全性芯片协作来生成关键字加密关键字。

加密关键字保护部37在检测到向关键字加密关键字存储部33存储了关键字加密关键字时(B13),将写入状态存储部38存储的状态信息变更为设定完成(B14)。另外,加密关键字保护部37伴随状态信息的变更而开始对关键字加密关键字存储部33的访问控制(B15)。伴随访问控制的开始,在关键字加密关键字存储部33中,使来自CPU31的访问无效化(B16)。在此之后,加密关键字保护部37继续对关键字加密关键字存储部33的访问控制,直到状态信息被清除为止、即直到进行存储装置1的再启动(电源断开→电源接通)为止。

另外,CPU31生成加密关键字组(B17)。然后,CPU31使所生成的加密关键字组存储于加密关键字组存储部32(B18),结束本处理。在此, 加密关键字组的生成方法没有特别限制。例如,CPU31可以与关键字加密关键字同样地,基于随机数来生成加密关键字组。另外,CPU31也可以通过与TPM等安全性芯片协作来生成加密关键字组。

此外,在图4的加密关键字设定处理中,构成为了先设定关键字加密关键字,但不限于此,也可以先设定加密关键字组。另外,在本实施方式中,构成为了控制对关键字加密关键字存储部33的访问,但不限于此,也可以构成为也控制对加密关键字组存储部32的访问。在采样该构成的情况下,与关键字加密关键字存储部33同样地,加密关键字保护部37检测对加密关键字组存储部32的加密关键字组的写入,使该状态信息存储于写入状态存储部38等。并且,加密关键字保护部37在状态信息表示设定完成的期间,使从CPU31对加密关键字组存储部32的访问无效化。

接着,使用图5对转移保存加密关键字组时的工作(加密关键字转移保存处理)进行说明。在此,图5是表示加密关键字转移保存处理的一例的时序图。此外,在本处理中,设想将CPU31作为了输入输出控制部的例子。

首先,CPU31将加密关键字加密模式设定给加密关键字保护部37(B21)。加密关键字保护部37根据加密关键字加密模式的设定,开始对数据输入部34的访问控制(B22)。伴随访问控制的开始,数据输入部34使来自CPU31的访问无效化(B23)。

接着,加密关键字保护部37控制数据输入部34,使加密关键字组存储部32所存储的加密关键字组输入到加密处理部35(B24)。加密处理部35在加密关键字保护部37的控制下,基于关键字加密关键字对输入到数据输入部34的加密关键字组进行加密(B25)。数据输出部36在加密关键字保护部37的控制下,将由加密处理部35进行了加密而得到的加密关键字组(加密化加密关键字组)输出到CPU31(B26)。

CPU31在从数据输出部36取得加密化加密关键字组时,解除加密关键字加密模式(B27)。加密关键字保护部37根据加密关键字加密模式的解除,对数据输入部34以及加密处理部35进行初始化(B28)。由此, 数据输入部34以及加密处理部35保持的加密关键字组等临时数据被清除(B29,B30)。此外,加密关键字保护部37可以在B28的定时对数据输出部36进行初始化。

接着,加密关键字保护部37停止对数据输入部34的访问控制(B31)。伴随访问控制的停止,在数据输入部34,使来自CPU31的访问有效化(B32)。然后,CPU31使从数据输出部36取得的加密化加密关键字组存储(转移保存)到非易失性存储器3(B33),结束本处理。

在进行了上述的转移保存处理之后,在任意的定时转换到省电力模式。在该省电力模式下,如图3所示,维持向关键字加密关键字存储部33以及写入状态存储部38的电力供给,停止向关键字加密关键字存储部33以及写入状态存储部38以外的电力供给。

接着,使用图6对加密关键字组的恢复所涉及的工作(加密关键字恢复处理)进行说明。图6是表示加密关键字恢复处理的一例的时序图。此外,本处理设为在从省电力模式恢复后(刚刚恢复后)执行。另外,在本处理中,设想将CPU31作为了输入输出控制部的例子。

首先,CPU31在从非易失性存储器3输出加密化加密关键字组时(B41),将该加密化加密关键字组输入到数据输入部34(B42)。接着,CPU31将加密关键字解密模式设定给加密关键字保护部37(B43)。

加密关键字保护部37根据加密关键字解密模式的设定,开始对数据输出部36的访问控制(B44)。伴随访问控制的开始,在数据输出部36,使来自CPU31的访问无效化(B45)。

接着,加密处理部35在加密关键字保护部37的控制下,基于关键字加密关键字对输入到数据输入部34的加密化加密关键字组进行解密(B46)。接着,数据输出部36在加密关键字保护部37的控制下,使解密后的加密化加密关键字组(加密关键字组)输出并存储到加密关键字组存储部32(B47)。由此,加密关键字组被恢复为向省电力模式转换之前的状态。

CPU31在加密关键字组被恢复时,解除加密关键字解密模式(B48)。 加密关键字保护部37根据加密关键字解密模式的解除,对加密处理部35以及数据输出部36进行初始化(B49)。由此,加密处理部35以及数据输出部36保持的加密关键字组等临时数据被清除(B50、B51)。

接着,加密关键字保护部37停止对数据输出部36的访问控制(B52)。伴随访问控制的停止,在数据输出部36,使来自CPU31的访问有效化(B53),结束本处理。

说明了本发明的实施方式,但是该实施方式是作为例子而举出的,没有限定发明范围的意图。该新的实施方式能够以其他的各种各样的方式来实施,在不脱离发明要旨的范围内能够进行各种省略、替换、变更。该实施方式及其变形包含于发明的范围或要旨内,并且包含于权利要求所记载的发明及其等同的范围内。

例如,在上述实施方式中,说明了将加解密装置(控制器)适用于混合驱动器(存储装置1)的例子,但不限于此,也可以适用于其他种类的存储装置(例如,SSD(Solid State Drive,固态驱动器)、HDD(Hard Disk Drive,硬盘驱动器)、存储卡等)和电子设备等。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1