CN101965575B - 数据处理装置 - Google Patents

数据处理装置 Download PDF

Info

Publication number
CN101965575B
CN101965575B CN2009801078316A CN200980107831A CN101965575B CN 101965575 B CN101965575 B CN 101965575B CN 2009801078316 A CN2009801078316 A CN 2009801078316A CN 200980107831 A CN200980107831 A CN 200980107831A CN 101965575 B CN101965575 B CN 101965575B
Authority
CN
China
Prior art keywords
data processing
processing equipment
data
signal conditioning
conditioning package
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2009801078316A
Other languages
English (en)
Other versions
CN101965575A (zh
Inventor
山崎壮三
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Publication of CN101965575A publication Critical patent/CN101965575A/zh
Application granted granted Critical
Publication of CN101965575B publication Critical patent/CN101965575B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

在计算机系统和数据处理装置之间已经完成相互认证之后、数据处理装置从计算机系统断开时,该数据处理装置取消认证状态,并且不能够向除特定计算机系统以外的装置传送数据。因此,即使在支持热交换的线缆的连接已经改变之后、数据处理装置连接至除特定计算机系统以外的装置时,该数据处理装置也能够维持数据的机密性。

Description

数据处理装置
技术领域
本发明涉及一种要作为外部装置连接至计算机系统的数据处理装置,尤其涉及一种目的在于维持数据的机密性的数据处理装置。
背景技术
存在要使用(包括集成驱动器电子(IDE)接口、小型计算机系统接口(SCSI)、通用串行总线(USB)和IEEE 1394接口等的)接口作为外部装置连接至计算机系统的各种类型的外围装置(诸如硬盘驱动器(HDD)、可记录致密盘(CD-R)、可重写致密盘(CD-RW)、可记录数字多功能盘(DVD-R)和可重写数字多功能盘(DVD-RW)等)。
在这些外围装置中,存在一种要求具有控制仅在外围装置和特定计算机系统之间的数据通信的功能的外围装置。
为了不使通过使用不同的计算机系统读取这种外围装置中存储的机密信息或版权数据,该外围装置通过在特定计算机系统和外围装置之间进行相互认证处理来支持该功能。在这种情况下,仅当认证处理完成时,才可以进行计算机系统和外围装置之间的数据存取。
例如,日本特开2003-186819涉及包括具有安全功能的USB装置的计算机系统。在计算机系统和USB装置之间进行认证处理,并且仅当该认证处理完成时,才可以使用USB装置。这样避免了在心怀恶意的人将USB装置连接至不同的计算机的情况下、对该USB装置的未经授权的使用。
另外,作为对比,已知对要存储在HDD等的外围装置中的数据进行加密的加密装置。
专利文献1
日本特开2003-186819
发明内容
发明要解决的问题
然而,当计算机系统和外围装置之间的接口支持热交换时,可以在计算机系统通电时插入或拔出连接线缆。支持热交换的接口的例子包括USB、IEEE 1394接口和串行高级技术附件(SATA)。因此,在认证处理完成之后,可以在计算机系统和外围装置这两者通电的状态下拔出线缆。当将该线缆连接至不同的计算机系统时,可以在无需另外执行认证处理的情况下,使用该不同的计算机系统来存取数据。因而,存在利用不同的计算机系统对外围装置的未经授权使用的风险。
图17是示出支持热交换的接口的连接变化的示例的图。在计算机系统101和外部存储装置103(例如,HDD)之间设置数据加密装置102。数据加密装置102对计算机系统101要写入外部存储装置103中的数据进行加密,并且对计算机系统101从外部存储装置103读取的数据进行解密。假定从接口104使计算机系统101和数据加密装置102相连接的状态起,接口104从计算机系统101断开并且连接至不同的计算机系统1601,以使得不同的计算机系统1601连接至数据加密装置102。当接口104是不支持热交换的接口(例如,并行ATA)时,在接口104的连接已经改变之后彼此连接的数据加密装置102和不同的计算机系统1601不能够发送和接收数据。因此,在这种情况下,一般需要再次断开和接通装置的电源。当数据加密装置102被设计成在电源接通时对计算机系统进行认证时,作为并非适当的连接目的地的不同的计算机系统1601未被数据加密装置102所认证。因而,这样防止了数据加密装置102对外部存储装置103中存储的加密数据进行解密,并防止了数据加密装置102将解密后的数据传送至不同的计算机系统。可以按比相关技术的并行ATA的速度高的速度传送数据的SATA已经成为主流。然而,当接口104是支持热交换的SATA时,与先前连接的计算机系统101的情况相同,可以在数据加密装置102和不同的计算机系统1601之间接收和发送数据。即使当引入数据加密装置102在电源接通的情况下对计算机系统进行认证的机制时,也可以在正在维持认证状态时,在数据加密装置102和不同的计算机系统1601之间发送和接收数据。因而,可以由数据加密装置102对外部存储装置103中存储的加密数据进行解密,并将该加密数据传送至并非适当的连接目的地的不同的计算机系统1601。难以维持外部存储装置103的数据的机密性,并且这导致安全性问题。
本发明提供一种即使在支持热交换的线缆的连接已经改变之后数据处理装置连接至除特定计算机系统以外的装置时、也能够维持数据的机密性的数据处理装置。
用于解决问题的方案
根据本发明实施例的一种数据处理装置,用于经由第一接口连接至信息处理装置,并且至少能够处理数据并将所述数据传送至所述信息处理装置。所述数据处理装置包括:认证单元,用于进行用于对经由所述第一接口所连接的信息处理装置进行认证的处理;控制单元,用于响应于所述认证单元正确进行对所述信息处理装置的认证,控制所述数据处理装置,以使得能够向所述信息处理装置传送数据;判断单元,用于判断经由所述第一接口的所述数据处理装置与所述信息处理装置的连接的状态;以及改变单元,用于基于所述判断单元判断为所述数据处理装置没有经由所述第一接口连接至所述信息处理装置,变为所述认证单元不对所述信息处理装置进行认证的状态。
此外,根据实施例的一种数据处理装置,用于经由第一接口连接至信息处理装置,并经由第二接口连接至外围装置。所述数据处理装置包括:控制单元,用于控制所述数据处理装置,以使得所述数据处理装置能够在作为所述数据处理装置的操作模式的正常模式或阻断模式下工作,其中,在所述正常模式下对已经从所述外围装置接收到的数据进行处理、并将该数据传送至所述信息处理装置,在所述阻断模式下禁止将已经从所述外围装置接收到的数据传送至所述信息处理装置;判断单元,用于判断经由所述第一接口的所述数据处理装置与所述信息处理装置的连接的状态;以及改变单元,用于基于所述判断单元在所述正常模式下判断为所述数据处理装置没有经由所述第一接口连接至所述信息处理装置,使所述数据处理装置的操作模式从所述正常模式变为所述阻断模式。
通过以下参考附图对典型实施例的说明,本发明的其它特征将变得明显。
附图说明
图1是加密数据存储系统的总体结构的图。
图2是数据加密装置的硬件结构的框图。
图3是用于解释数据加密装置的操作模式的图。
图4是ATA总线选择器的硬件结构的框图。
图5A是示出ATA总线选择器的操作的图。
图5B是示出ATA总线选择器的操作的图。
图5C是示出ATA总线选择器的操作的图。
图6是扩展命令的表的例示。
图7是ATA命令的表的例示。
图8是示出用于解释初始安装的情况下的认证过程的序列的示例的图。
图9是示出用于解释正常启动的情况下的认证过程的序列的示例的图。
图10是示出针对NON-DATA传送类型的命令的序列的图。
图11是示出针对READ传送类型的命令的序列的图。
图12是示出针对用于向HDD写入数据或从HDD读取数据的直接存储器存取类型的命令的序列的图。
图13是例示连接检测电路的操作的图。
图14是用于解释在数据加密装置的操作模式之间进行切换的操作的流程图。
图15是用于解释在数据加密装置连接至不同的装置的情况下的处理的流程图。
图16是示出ATA总线选择器的硬件结构的其它示例的图。
图17是示出支持热交换的接口的连接变化的示例的图。
具体实施方式
在本实施例中,将说明数据加密装置作为数据处理装置的一个例子。
以下将说明使用数据加密装置的环境、数据加密装置的结构和用于利用数据加密装置维持数据的机密性的操作。
使用数据加密装置的环境
图1是作为使用数据加密装置的环境的例子的加密数据存储系统的总体结构的图。
参考图1,数据加密装置102经由用作桥的接口104和接口105连接在计算机系统101和外部存储装置103之间。
作为数据处理装置的例子的数据加密装置102对从计算机系统101发送来的数据进行加密,并将加密后的数据传送至外部存储装置103。另外,数据加密装置102对从外部存储装置103读取的数据进行解密,并将解密后的数据传送至计算机系统101。
作为信息处理装置的例子的计算机系统101是控制数据加密装置的装置,并且可以是个人计算机等的信息处理装置、或者诸如银行业务系统、桌面出版(desktop publishing,DTP)系统或多功能打印机(MFP)等的装置。计算机系统101不局限于特定装置。
作为外围装置的例子的外部存储装置103是存储数据的装置,并且可以是HDD、使用闪速存储器的存储装置、或者诸如CD-R、CD-RW、DVD-R或DVD-RW等的可重写盘。外部存储装置103不局限于特定类型的外部存储装置。在本实施例中,外部存储装置103是使用硬盘的存储装置,并且被称为“HDD103”。
接口104和105是具有热插入和热拔出(下文中称为“热交换”或“热插拔”)的功能的接口。利用热交换功能,即使在装置通电时,也可以插入或拔出连接线缆。当使用具有热交换功能的接口时,可以在装置通电时交换部件或线缆。作为针对热交换功能的方案,已经提出了包括例如用于当在带电状态(live-line state)下插入或拔出线缆时、控制输出驱动器以设置为高阻抗状态的方案的各种方案。然而,仅需要使用这些方案中的任一方案来避免与通信相关联的故障,并且该方案不局限于特定方案。作为具有热交换功能的接口,已知USB、IEEE 1394接口和SATA等。在本实施例中,尽管使用SATA作为接口104和105中的各接口,但可以使用支持热交换的其它类型的接口。
注意,数据加密装置102可以在加密功能无效的模式下工作。在这种情况下,计算机系统101和HDD 103处于与它们使用具有热交换功能的接口彼此直接连接的状态相同的状态。在该模式下,即使在计算机系统101和不同的计算机系统这两者通电时、接口104从计算机系统101断开并且连接至该不同的计算机系统时,HDD 103也可以正确地工作。
数据加密装置的结构
在图2中,示出数据加密装置102的硬件结构的示例。图2所示的数据加密装置102被配置成插入在计算机系统101中设置的HDD控制器115和HDD 103之间。计算机系统101具有均未示出的中央处理单元(CPU)、随机存取存储器(RAM)、只读存储器(ROM)和用户接口等。计算机系统101的HDD控制器115和数据加密装置102、以及数据加密装置102和HDD 103分别使用作为针对作为HDD的通信标准的SATA的总线的SATA总线104和105彼此连接。使用SATA总线104和105来进行数据传送和通信。数据加密装置102解释要从HDD控制器115发送至HDD 103的命令和数据,并且进行对要存储在HDD 103中的数据进行加密的处理和对从HDD 103读取的数据进行解密的处理。
将数据加密装置102的内部单元大致分类成与HDD控制器115和HDD 103进行通信并且进行数据加密和解密的单元、以及控制数据加密装置102的单元。
CPU 106执行数据加密装置102的总体控制,并将CPU 106用的控制程序和数据存储在存储器111中。此外,可以存储生成密钥信息所需的(以下所述的)种子信息、特有信息和对数据进行加密所需的(以下所述的)密钥信息。在本实施例中,使用有电池保护的RAM、闪速存储器等作为存储器111。即使当断开数据加密装置102的电源时,也可以维持存储器111中的存储内容。使用RAM 112作为CPU 106的工作区域。
ATA总线选择器107是HDD控制器115和HDD 103之间的接口,并且根据以下所述的操作模式进行使HDD控制器115与HDD 103连接的控制。
在正在进行正常操作时,装置接口108经由ATA总线选择器107连接至HDD控制器115。装置接口108按与HDD 103工作的方式相同的方式工作,以使得HDD控制器115无需注意装置接口108的存在。由装置接口108暂时接收HDD控制器115发出的命令。当由CPU 106判断为该命令可执行时,由CPU 106向主机接口110发出该命令,并将该命令发送至HDD 103。
当要在HDD 103中存储数据时,装置接口108使加密/解密电路109对已经从HDD控制器115接收到的数据进行加密,并将该数据传送至HDD 103。此外,装置接口108使加密/解密电路109对从HDD 103读取的数据进行解密,并经由SATA总线104将该数据发送至HDD控制器115。装置接口108还生成针对该情况的控制数据。
加密/解密电路109对要存储在HDD 103中的数据进行加密,并对从HDD 103读取的数据进行解密。作为数据加密算法,可以使用诸如数据加密标准(DES)、三重DES(3DES)或高级加密标准(AES)等的私有密钥加密、RSA等的公开密钥加密、或者作为私有密钥加密和公开密钥加密的组合的混合模式等。由于在本发明的实施例中采用不依赖于加密算法的方案,因此本发明的实施例中使用的加密算法不局限于特定加密算法。此外,在本实施例中,尽管使用专用硬件来实现加密/解密电路109,但CPU 106可以使用软件处理来进行加密/解密处理。
主机接口110经由ATA总线选择器107连接至HDD 103。主机接口110进行与由装置接口108进行的操作相同的操作,并且向HDD 103传送命令、生成控制数据以及在加密/解密电路109和HDD 103之间传送数据。
在计算机系统101通电时,连接检测电路114检测计算机系统101和数据加密装置102之间的SATA总线104的断开。连接检测电路114基于ATA总线选择器107中用于检测经由SATA总线104的通信的信号,判断SATA总线104的连接状态,并且向CPU106通知判断结果。
另外,数据加密装置102中设置的各块连接至地址/数据总线113,并且由CPU 106控制各块。
操作模式
接着,以下将说明数据加密装置102的操作模式。
图3是用于解释数据加密装置102的操作模式的图。
将数据加密装置102的操作模式大致分类成阻断模式301和正常模式302。此外,在正在进行处理时,通过使用正常模式302的命令,数据加密装置102的操作模式从正常模式302变为旁路模式303和加密/解密模式304这两种操作模式其中之一。在由数据加密装置102的CPU 106进行的控制下进行各个操作模式的设置和操作模式之间的切换。以下将说明各个操作模式。
阻断模式
当接通数据加密装置102的电源时,首先将数据加密装置102设置为阻断模式301。在阻断模式301下,对数据加密装置102进行控制,以使得由HDD控制器115对HDD 103的任何存取均被阻断。
当HDD控制器115尝试存取HDD 103、即尝试存取HDD 103中设置的(未示出的)寄存器(尝试从其读取数据或向其写入数据)时,实际上,HDD控制器115存取数据加密装置102,并且从HDD控制器115对HDD 103的任何存取均被阻断。
另外,在阻断模式301下,仅可以使用HDD控制器115为了存取HDD 103所使用的正常命令以外的新定义的扩展命令。
在阻断模式301下,仅可以进行在计算机系统101和数据加密装置102之间进行的认证处理。换言之,数据加密装置102禁止传送从HDD 103读取的数据,并且允许传送为了进行认证处理所需的数据,由此对向计算机系统101传送数据施加限制。
在认证处理中,数据加密装置102对计算机系统101进行认证。以下将说明本实施例中进行的认证处理。
仅当认证处理完成时,操作模式才变为正常模式302。
在数据加密装置102的存储器111中存储的程序中定义HDD控制器115发出的命令是否可执行。由装置接口108经由图2所示的ATA总线选择器107接收到HDD控制器115发出的命令,并且由CPU 106经由地址/数据总线113识别出该命令。CPU 106将该命令与存储器111中存储的程序所包括的参考数据进行比较,并判断该命令是否可执行。
正常模式
在正常模式302下,HDD控制器115可以存取HDD 103。
然而,数据加密装置102检查HDD控制器115发出的每个命令,并且仅将可执行的命令传送至HDD 103。当数据加密装置102的CPU 106判断为命令不可执行时,在数据加密装置102中阻断该命令,并且该命令未被传送至HDD 103。
如同阻断模式301的情况一样,进行针对命令是否可执行的判断。将各个操作模式的参考数据存储在存储器111中。CPU106将参考数据与所接受的命令进行比较,并判断该命令是否可执行。
在正常模式302下,当由CPU 106判断为命令可执行时,经由主机接口110和ATA总线选择器107将该命令传送至HDD103。
接着,当数据加密装置102接收到HDD控制器115为了存取HDD 103的寄存器(未示出)所使用的寄存器存取命令时,操作模式变为旁路模式303。以下将说明旁路模式303的详细内容。
数据加密装置102从HDD控制器115接收用于在HDD 103中存储数据并从HDD 103读取数据的直接存储器存取(DMA)命令,并且操作模式变为加密/解密模式304。当DMA传送完成时,操作模式从加密/解密模式304变为正常模式302。
此外,当数据加密装置102在正常模式302下接收到特别定义的扩展命令(改变命令)时,操作模式变为阻断模式301。
此外,当连接检测电路114在正常模式302下检测到SATA总线104的断开时,操作模式变为阻断模式301。在阻断模式301下,在计算机系统101和数据加密装置102之间再次进行认证处理。
旁路模式
旁路模式303是在正常模式302下为了存取HDD 103的寄存器所进行的模式。在旁路模式303下,HDD控制器115具有用于存取HDD 103的寄存器的旁路。在旁路模式303下,HDD控制器115可以向HDD 103的寄存器写入各种设置值,由此HDD控制器115可以设置针对HDD 103的设置。
在HDD控制器115完成向HDD 103的寄存器传送数据之后(在HDD控制器115完成存取HDD 103的寄存器之后),操作模式变为正常模式302。
加密/解密模式
在加密/解密模式304下,当要利用DMA传送从HDD控制器115向HDD 103传送数据时,对该数据进行加密。另外,当要将从HDD 103读取的数据传送至HDD控制器115时,对该数据进行解密。
使用以下所述的加密密钥来进行数据加密和解密。当首次将数据加密装置102安装在计算机系统101中时(当数据加密装置102经由SATA总线104首次连接至计算机系统101时),进行以下所述的加密密钥的生成。
作为数据加密算法,可以使用AES等的私有密钥加密、RSA等的公开密钥加密、或作为私有密钥加密和公开密钥加密的组合的混合方案等。当DMA传送完成时,操作模式变为正常模式302。
ATA总线选择器的结构
图4是ATA总线选择器107的硬件结构的框图。
HDD控制器115连接至HDD控制器侧输入/输出801,以输入和输出信号。另外,HDD 103连接至HDD侧输入/输出802。
HDD控制器侧输入/输出801经由选择器803连接至装置接口108或旁路电路804。
同样,HDD侧输入/输出802经由选择器805连接至主机接口110或旁路电路804。
由CPU 106经由控制电路806来控制各个选择器803和805。
HDD控制器115和HDD 103可以经由旁路电路804彼此连接。可以经由加密/解密电路109在HDD控制器115和HDD 103之间传送数据。HDD控制器115和HDD 103可以经由CPU 106彼此连接。
连接检测电路114连接至HDD控制器侧输入/输出801。当连接检测电路114检测到SATA总线104的断开时,连接检测电路114向CPU 106通知检测结果。HDD控制器侧输入/输出801包括针对SATA总线104的接口控制电路(未示出)。在接口控制电路的物理层中接受经由SATA总线104的通信,并且该物理层的初始化完成。当可以经由SATA总线104进行通信时,接口控制电路向连接检测电路114通知可以进行经由SATA总线104的通信的状态。以下将说明连接检测电路114的操作的详细内容。
ATA总线选择器的操作
将参考图5A~5C中相应的图来说明在各个操作模式下由CPU 106进行的ATA总线选择器107的操作。
图5A~5C各自均是例示ATA总线选择器107的操作的图。在图5A~5C各自中,箭头表示在操作模式中相应的操作模式下数据总线的连接关系和传送方向。粗线表示用于发送/接收数据的程序输入/输出(PIO)/DMA总线。细线表示对于例如用于设置HDD 103的操作并检查状态、并且设置在HDD 103或数据加密装置102中的寄存器(未示出)等的存取。
图5A所示的阻断模式
在阻断模式301下,ATA总线选择器107中设置的HDD控制器侧输入/输出801连接至装置接口108。HDD侧输入/输出802连接至主机接口110。因此,直到以下所述的由数据加密装置102进行的对计算机系统101(或HDD控制器115)的认证完成为止,数据加密装置102禁止从HDD 103向HDD控制器115传送数据、以及从HDD控制器115向HDD 103传送数据。因而,从HDD控制器115对HDD 103的任何存取均被禁止。
图5B所示的正常模式
图5B示出以下:在正常模式302下,PIO/DMA总线连接至装置接口108和主机接口110;并且此外,对于寄存器存取,针对要存取的各寄存器,存取的目的地变化。
图5B示出以下:当发出从HDD控制器115对HDD 103的寄存器的写入存取(由“W”表示的细线)时,根据要存取的寄存器的类型,通过使用HDD控制器侧的输入/输出信号,仅向装置接口108中设置的寄存器写入数据;可选地,使HDD控制器115直接连接至HDD侧的输入/输出信号,并且仅向HDD 103写入数据;并且此外,向装置接口108中设置的寄存器和HDD 103这两者写入数据。
同样,在对寄存器的读取存取的情况下,图5B示出以下:直接读取HDD 103中设置的寄存器中的数据;并且可选地,可以经由装置接口108读取主机接口110已经读取的数据。
图5C所示的旁路模式
在旁路模式303下,HDD控制器侧输入/输出801和HDD侧输入/输出802彼此直接连接。对于针对一些寄存器的写入存取,向HDD 103的寄存器和装置接口108中设置的寄存器这两者写入相同的数据。
可执行的扩展命令
图6是本实施例中扩展命令的表的例示。图6所示的扩展命令不同于对HDD 103的正常存取所使用的ATA命令,并且仅可以由数据加密装置102在阻断模式301下处理这些扩展命令。将用于解释扩展命令、并用于进行与这些扩展命令相对应的处理的程序存储在数据加密装置102的存储器111中。
命令名称表示数据加密装置102可以运行的命令的名称,并且类型表示存取的类型。NON-DATA传送类型的命令不涉及数据的写入或读取。NON-DATA传送类型的命令的例子包括用于检查HDD 103的状况的命令、用于使操作模式从阻断模式301变为正常模式302的命令等。
WRITE或READ传送类型的命令涉及数据的写入或读取。这些命令用于获得版本信息并用于进行认证的挑战。
可执行的ATA命令
图7是本实施例中ATA命令的表的例示。图7所示的ATA命令是由数据加密装置102在正常模式302下可执行的。将ATA命令的表存储在数据加密装置102的存储器111中。此外,还将用于进行与ATA命令相对应的处理的程序存储在存储器111中。
在本实施例中,由HDD控制器115对HDD 103可执行的命令局限于图7所示的ATA命令。其原因是避免对HDD 103的不必要的存取以确保安全性。
当由HDD控制器115在正常模式302下发出命令时,在数据加密装置102中暂时维持该命令。检查该命令是否可执行。换言之,参考存储器111来检查该命令是否包括在图7所示的表中。仅当该命令可执行时,才将该命令发送至HDD 103。当判断为该命令不可执行时,不将该命令发送至HDD 103,并将该命令作为错误(异常中止错误)通知给HDD控制器115。
认证
接着,将说明HDD控制器115和数据加密装置102之间的认证。
存在两类认证处理:在通过将数据加密装置102首次连接至HDD控制器115来安装数据加密装置102的情况下的认证处理(下文中称为“初始安装的情况”);和在初始安装完成之后接通(计算机系统101所包括的)HDD控制器115的电源以及数据加密装置102的电源之后的认证处理。以下按该顺序说明这些认证处理。
初始安装的情况
图8是示出用于解释在将数据加密装置102首次连接至HDD控制器115的情况下的认证过程的序列的示例的图。
首先,在数据加密装置102、(包括HDD控制器115的)计算机系统101和HDD 103经由SATA总线104和105彼此连接的状态下,通过用户操作接通电源(步骤S801),由此启动数据加密装置102、计算机系统101和HDD 103。在阻断模式301下启动数据加密装置102(步骤S802)。HDD控制器115在SATA总线104上发送预定命令,并且检查数据加密装置102是否连接至计算机系统101(步骤S803)。HDD控制器115经由SATA总线104向数据加密装置102发出GET STATUS命令(步骤S804),并且检查利用数据加密装置102的加密密钥的生成状态。
由于在初始安装的情况下数据加密装置102中没有生成加密密钥,因此数据加密装置102向HDD控制器115返回未安装状态(步骤S805)。
HDD控制器115识别出该未安装状态,并向数据加密装置102发送INSTALL命令(步骤S806)。数据加密装置102生成种子信息(步骤S807)。HDD控制器115发送特有信息(步骤S808)。使用种子信息和特有信息来生成加密密钥。在本实施例中,假定特有信息是计算机系统101特有的信息。作为特有信息的其它例子,可以使用HDD控制器115特有的信息。此外,可以使用通过将HDD控制器115特有的信息和计算机系统101特有的信息组合所获得的信息作为特有信息。数据加密装置102将接收到的特有信息存储在存储器111中(步骤S809)。存储器111是用于存储特有信息的特有信息存储单元的例子。然后,数据加密装置102基于特有信息和在步骤S807中生成的种子信息,生成加密密钥,并将加密密钥写入存储器111中(步骤S810)。当生成加密密钥和向存储器111写入加密密钥完成时,数据加密装置102向HDD控制器115发送表示生成和写入完成的状况(步骤S811)。
当HDD控制器115识别出加密密钥的生成完成时,HDD控制器115向数据加密装置102发送CHANGE模式命令(步骤S812)。当加密密钥的生成完成时,将加密密钥的生成看作为认证的替代处理,并且操作模式变为正常模式302(步骤S813)。数据加密装置102向HDD控制器115通知操作模式已经变为正常模式302(步骤S814)。
之后,在正常模式302下,HDD控制器115可以存取HDD103,并且可以利用各种类型的ATA命令(步骤S815)。
密钥信息的生成
接着,以下将说明在图8所示的认证的情况下、由数据加密装置102的CPU 106使用软件所进行的生成密钥信息的操作。
数据加密装置102从HDD控制器115接收HDD控制器115特有的特有信息、或安装有HDD控制器115的计算机系统101特有的特有信息。该特有信息是各个计算机系统101特有的信息,并且可以使用诸如序列号、具有局域网(LAN)接口(I/F)的计算机系统中的介质存取控制(MAC)地址、以及通过将与序列号有关的信息和与MAC地址有关的信息组合所获得的信息等的各种类型的信息。
CPU 106根据已经接收到的特有信息和存储器111中存储的种子信息,生成密钥信息。在本实施例中,例如,使用随机数作为种子信息。用于根据特有信息和种子信息生成密钥信息的方法的例子包括以下方法:
采用特有信息和种子信息的异或作为密钥信息;
将特有信息和种子信息输入至单向散列函数,并且使用该单向散列函数的输出作为密钥信息;
使用特有信息作为加密函数的密钥来对种子信息进行加密处理,并且使用该加密函数的输出作为密钥信息;
使用种子信息作为加密函数的密钥来对特有信息进行加密处理,并且使用该加密函数的输出作为密钥信息;以及
使用Diffie-Hellman(DH)密钥协商方法(RFC 2631)来共享密钥信息。
然而,由于只需要数据加密装置102单独存储密钥信息,因此例如,在DH密钥协商方法中,可以使用种子信息作为数据加密装置102的私人密钥,并且可以使用特有信息作为使用数据加密装置102的公开密钥和计算机系统101特有的信息所获得的信息。
以上所述的方法是用于根据特有信息和种子信息生成密钥信息的方法的例子。在本发明实施例的用于生成密钥信息的方法中,可以使用表示“密钥信息=f(种子信息,特有信息)”的任何双输入函数。
此外,通过将密钥信息验证信息连同密钥信息一起管理,还可以验证密钥信息的正当性。将使用密钥信息计算出的散列值作为密钥信息验证信息的一个例子。
注意,用于生成种子信息的方法依赖于用于生成密钥信息的方法和加密算法。当可以使用随机数作为加密算法中的密钥时,还可以生成种子信息作为随机数或伪随机数。作为对比,当需要使用满足特定条件的信息作为加密算法中的密钥时,例如,需要生成密钥信息,并且需要根据所生成的密钥信息和特有信息来获得满足“密钥信息=f(种子信息,特有信息)”的种子信息。
正常启动的情况
图9是示出在已经将数据加密装置102安装在计算机系统101中的正常启动的情况下的认证的序列的示例的序列图。
首先,在数据加密装置102、计算机系统101和HDD 103经由SATA总线104和105彼此连接的状态下,通过用户操作接通电源(S901)。在阻断模式301下启动数据加密装置102(步骤S902)。
HDD控制器115在SATA总线104上发送预定命令,并且检查数据加密装置102是否连接至计算机系统101(步骤S903)。之后,HDD控制器115向数据加密装置102发送GET STATUS命令(步骤S904),并且检查利用数据加密装置102的加密密钥的生成状态(步骤S904)。由于在正常启动的情况下数据加密装置102中已经生成加密密钥,因此数据加密装置102向HDD控制器115返回表示已经安装有加密密钥的应答(步骤S905)。当HDD控制器115检查到加密密钥已被安装在数据加密装置102中时,HDD控制器115进入认证处理。
假定本实施例中的认证处理使用现有技术中已知的挑战和应答方案(challenge-and-response scheme)。在该挑战和应答方案中,包括HDD控制器115的计算机系统101和数据加密装置102相互进行认证。当然,可以使用其它认证方案。
首先,HDD控制器115向数据加密装置102发送表示执行挑战的挑战命令(步骤S906),然后发送挑战随机数(步骤S907)。这里,挑战随机数是由计算机系统101或HDD控制器115生成的,并且是在每次进行认证时随机变化的、且难以预先预测的数值。
当数据加密装置102接收到挑战随机数时,数据加密装置102向HDD控制器115返回表示接收完成的状况(步骤S908)。
已经从数据加密装置102接收到表示接收完成的状况的HDD控制器115向数据加密装置102发送应答请求命令(步骤S909)。
当数据加密装置102接收到来自HDD控制器115的应答请求命令时,数据加密装置102使用存储器111中存储的特有信息和已经接收到的挑战随机数,生成散列值。然后,数据加密装置102将所生成的散列值作为应答发送至HDD控制器115(步骤S910),并且返回表示发送完成的状况(步骤S911)。
当HDD控制器115从数据加密装置102接收到应答时,计算机系统101通过使用计算机系统101中存储的特有信息和在步骤S906中发送的挑战随机数,生成散列值。然后,计算机系统101将该散列值与从数据加密装置102接收到的应答进行比较。作为比较结果,当散列值与应答一致时,计算机系统101判断为数据加密装置102是适当的连接目的地,并且进入从数据加密装置102向HDD控制器115进行挑战的下一处理。
首先,HDD控制器115向数据加密装置102发送用于请求执行挑战的命令(步骤S912)。
数据加密装置102向HDD控制器115发送挑战随机数(步骤S913),并向HDD控制器115发送表示发送挑战随机数完成的状况(步骤S914)。这里,挑战随机数是由数据加密装置102生成的,并且是在每次进行认证时随机变化的、且难以预先预测的数值。
接着,计算机系统101通过使用所存储的特有信息和接收到的挑战随机数,生成散列值。
HDD控制器115向数据加密装置102发送用于请求应答的命令(步骤S915),并且发送所生成的散列值作为应答(步骤S916)。
当数据加密装置102接收到应答时,数据加密装置102通过使用存储器111中存储的特有信息(图8所示的步骤S809中存储的特有信息)、和数据加密装置102在步骤S913中发送的挑战随机数,生成散列值。然后,数据加密装置102将该散列值与从HDD控制器115接收到的应答进行比较。作为比较的结果,当散列值与应答一致时,数据加密装置102判断为计算机系统101是适当的连接目的地,并且完成认证处理(步骤S917)。
数据加密装置102从HDD控制器115接收到用于使操作模式变为正常模式302的CHANGE命令(步骤S918)。当正确地完成认证处理时,数据加密装置102的操作模式从阻断模式301变为正常模式302(步骤S919),并且数据加密装置102向HDD控制器115发送表示操作模式已变为正常模式302的状况(步骤S920)。然后,在步骤S921中,在正常模式302下可以利用各种类型的ATA命令。
正常模式下的命令序列
接着,示出正常模式302下可执行的命令的详细序列。图7中示出正常模式302下可执行的命令,并且按数据传送的类型对这些命令分类。存在NON-DATA传送类型、READ传送类型和DMA传送(加密/解密)类型这三种类型。将按该顺序来说明这三种类型。
针对NON-DATA传送类型的命令序列
命令的执行涉及两个步骤。首先,设置为了执行命令所需的参数。将数据写入HDD 103的命令块中设置的关联寄存器(还被称为I/O寄存器或命令块寄存器、并且没有示出的T/F寄存器)中。接着,将命令代码写入命令寄存器中,由此HDD 103实际执行(暂时被传送至数据加密装置102的)命令。
此外,针对要设置参数的寄存器中和要写入命令代码的命令寄存器中的一些寄存器,这些寄存器针对从HDD控制器115向寄存器写入数据的情况和从寄存器读取数据的情况,具有不同的功能。这些寄存器的例子包括ERROR/FEATURES寄存器、STATUS/COMMAND寄存器等。尽管从寄存器作为数据读取错误或状况,但在向寄存器写入数据时执行这些命令。
图10是示出NON-DATA传送类型的命令的序列的图。
NON-DATA传送类型的命令的例子包括RECALIBRATE命令、SEEK命令等。
RECALIBRATE命令是用于进行HDD 103的REZERO操作的命令,并且SEEK命令是用于选择HDD 103的指定轨道的定位或头的命令。
首先,在正常模式302下,HDD控制器115设置为了存取HDD 103的参数。将该参数设置在数据加密装置102的寄存器和HDD 103的寄存器这两者(均未示出)中(步骤S1001)。
接着,HDD控制器115发出要对命令寄存器执行的命令,并将该命令设置在数据加密装置102的装置接口108的寄存器中(步骤S1002)。数据加密装置102判断该命令是否可执行。仅当该命令可执行时,数据加密装置102才将该命令设置在HDD 103的命令寄存器中(步骤S1003)。将可执行的命令的表存储在存储器111中,并且数据加密装置102根据可执行的命令的表来判断命令是否可执行。
HDD 103执行该命令(步骤S1004)。当命令的处理完成时,HDD 103向数据加密装置102输出中断信号(步骤S1005)。仅向数据加密装置102输入中断信号,并且数据加密装置102从HDD103的状况寄存器和错误寄存器读取数据(步骤S1006)。当从这些寄存器读取数据时,HDD 103清除中断信号(步骤S1007)。
数据加密装置102将已从HDD 103的状况寄存器和错误寄存器读取的数据设置在数据加密装置102的状况寄存器和错误寄存器中(步骤S1008)。然后,数据加密装置102向HDD控制器115输出中断信号(步骤S1009)。由于向HDD控制器115输入中断信号,因此HDD控制器115从数据加密装置102的状况寄存器和错误寄存器读取数据(步骤S1010)。当由HDD控制器115读取数据完成时,数据加密装置102清除中断信号(步骤S1011)。如上所述,用于NON-DATA传送类型的命令、并用于处理该命令的序列结束。
针对READ传送类型(PIO READ)的命令的序列
图11是示出针对READ传送类型的命令的序列的图。
在正常模式302下可执行的READ传送类型的命令的例子包括如图7所示的IDENTIFY DEVICE命令。当执行IDENTIFYDEVICE命令时,可以读取与HDD 103有关的参数信息。该参数信息可以是诸如柱面数量、磁头数量和序列号等的与HDD 103相关联的信息,并且不同于从HDD控制器115写入HDD 103中的数据。
参考图11,首先,HDD控制器115设置参数(步骤S1101)。然后,当HDD控制器115发出READ传送类型的命令时(步骤S1102),数据加密装置102解释该命令,并将该命令传送至HDD103(步骤S1103),由此发出该命令。HDD 103执行所发出的命令(步骤S1104)。当所发出的命令是IDENTIFY DEVICE命令时,HDD 103将所请求的参数信息设置在HDD 103中设置的扇面缓冲器中,并将所发出的命令的状况写入HDD 103的状况寄存器中。然后,HDD 103向数据加密装置102输出中断信号(步骤S1105)。
数据加密装置102从HDD 103的状况寄存器读取数据,并且检查HDD 103的状况(步骤S1106)。当从寄存器读取数据时,HDD 103清除中断信号(步骤S1107)。
然后,数据加密装置102设置用于使操作模式变为旁路模式303的设置(步骤S1108)。当使操作模式变为旁路模式303完成时,HDD 103向HDD控制器115输出中断信号(步骤S1109),并向HDD控制器115通知HDD 103准备好。
HDD控制器115从HDD 103的状况寄存器读取数据(步骤S1110)。数据加密装置102识别出已经读取了HDD 103的状况寄存器,并且清除中断信号(步骤S1111)。然后,HDD控制器115读取与HDD 103有关的数据(参数信息等)(步骤S1112)。
当读取预定数量的数据完成时,旁路模式303结束(步骤S1113)。当旁路模式303完成时,数据加密装置102将这些数据设置在寄存器中(步骤S1114)。然后,数据加密装置102向HDD控制器115输出中断信号(步骤S1115)。HDD控制器115从数据加密装置102的寄存器读取数据(步骤S1116)。当读取数据完成时,数据加密装置102清除中断信号(步骤S1117),并且该系列的处理结束。
针对READ DMA/WRITE DMA传送类型的命令的序列
图12是示出针对用于向HDD 103写入数据或从HDD 103读取数据的DMA传送类型的命令的序列的图。
作为DMA传送类型的命令,存在用于从HDD 103读取数据的READ DMA命令和用于向HDD 103写入数据的WRITE DMA命令这两种类型的命令。当执行WRITE DMA命令时,数据加密装置102对要写入HDD 103中的数据进行加密。当执行READDMA命令时,数据加密装置102对从HDD 103读取的数据进行解密。
当HDD控制器115发出DMA传送命令时,HDD控制器115在HDD 103的寄存器中设置参数(步骤S1201),并且设置DMA传送命令(步骤S1202)。
由数据加密装置102暂时检查DMA传送命令,并将该DMA传送命令传送至HDD 103(步骤S1203)。HDD 103准备DMA传送。当准备完成时,HDD 103向数据加密装置102输出DMA传送开始请求信号(步骤S1204)。
当数据加密装置102接收到DMA传送开始请求信号时,数据加密装置102设置与加密处理或解密处理相对应的内部设置,并且操作模式变为加密/解密模式304(步骤S1205)。数据加密装置102根据HDD控制器115发出的命令,已经识别出要进行加密处理或解密处理的哪个处理。
接着,当操作模式变为加密/解密模式304时,数据加密装置102向HDD控制器115发出DMA传送开始请求(步骤S1206)。
之后,实际进行DMA传送,并且同时在数据加密装置102中对数据进行加密处理或解密处理(步骤S1207)。
当传送预定数量的数据完成时,HDD 103向数据加密装置102输出中断信号(步骤S1208)。数据加密装置102从HDD 103的状况寄存器读取数据,并且检查该数据的内容(步骤S1209)。HDD 103清除中断信号(步骤S1210)。然后,DMA传送完成。
接着,当DMA传送已经完成时,数据加密装置102设置内部设置,并且操作模式变为正常模式302(步骤S1211)。数据加密装置102将从HDD 103的状况寄存器和错误寄存器读取的数据设置在数据加密装置102的状况寄存器和错误寄存器中(步骤S1212),并且向HDD控制器115输出中断信号(步骤S1213)。HDD控制器115从状况寄存器和错误寄存器读取数据(步骤S1214)。当读取数据完成时,数据加密装置102清除中断信号,并且该系列的处理结束。
针对WRITE传送类型(PIO WRITE)的命令的序列
用于向HDD 103写入数据的命令的例子包括WRITEMULTIPLE(PIO WRITE)命令。然而,在本实施例中,为了避免向HDD 103写入不需要的数据,不允许使用WRITEMULTIPLE(PIO WRITE)命令作为可用命令。因此,即使当由HDD控制器115发出WRITE MULTIPLE(PIO WRITE)命令时,数据加密装置102也判断为该命令不可执行,并且不将该命令传送至HDD 103。
连接检测电路
将参考图13来说明本实施例中由连接检测电路114对SATA总线104的断开的检测。在下文,“断开”包括SATA总线104的线缆的(位于HDD控制器115侧或数据加密装置102侧的)连接器被拔出的情况、和线缆断开的情况。
连接检测电路114连接至ATA总线选择器107中设置的HDD控制器侧输入/输出801。当加密数据存储系统正在工作时、连接检测电路114检测到SATA总线104断开时,连接检测电路114向CPU 106通知检测结果。
HDD控制器侧输入/输出801包括SATA总线104用的接口控制电路。在接口控制电路的物理层中接受经由SATA总线104的通信,并且该物理层的初始化完成。当可以经由SATA总线104进行通信时,接口控制电路将可以进行经由SATA总线104的通信的状态作为物理层(PHY)通信使能信号通知给连接检测电路114。
当电源接通时,将PHY通信使能信号作为具有低电平的信号输出。之后,当可以进行经由SATA总线104的通信时,将PHY通信使能信号的电平切换至高电平。
在正在进行正常操作时(在电源接通时)发生以下状态时,将电平被切换至高电平的PHY通信使能信号的电平切换至低电平:
(1)从HDD控制器115接收到ATA复位命令;
(2)进行针对数据加密装置102的硬件复位输入;以及
(3)SATA总线104的信号线断开。
连接检测电路114判断为上述状态中的(1)和(2)引起执行正常的操作。连接检测电路114判断为(3)引起SATA总线104断开,并且生成断开检测信号1303,由此向CPU 106通知该断开。
通过如图13所示、在正在进行正常操作时(在电源接通时)PHY通信使能信号的电平低的时间段是否等于或长于预定时间段,来判断SATA总线104的断开。
在本实施例中,在(1)和(2)的情况下,假定当实际进行操作时,PHY通信使能信号的电平低的时间段短于100msec(图13所示的1301)。此外,在SATA总线104的线缆或连接器被拔出之后,PHY通信使能信号的电平变低,并且在再次连接该线缆或连接器之后PHY通信使能信号的电平变高之前,需要100msec以上(图13所示的1302)。
如上所述,在本实施例中,当PHY通信使能信号的电平低的时间段等于或长于100msec时,连接检测电路114判断为SATA总线104断开。连接检测电路114使断开检测信号1303的电平从低电平切换至高电平,由此向CPU 106通知该断开。
注意,在本发明的实施例中,说明了(1)~(3)这三种状态作为在正在进行正常操作时(在电源接通时)、要切换PHY通信使能信号的电平的状态。然而,除(3)以外的状态不限于(1)和(2)这两种状态,并且可以根据装置添加其它状态。
另外,在本实施例中,通过PHY通信使能信号的电平低的时间段是否等于或长于100msec来判断SATA总线104是否断开。然而,预定时间段不限于100msec,并且可以变为足以将SATA总线104从计算机系统101断开的状态与进行正常操作的状态区分开的预定时间段。
接着,将说明在连接检测电路114检测到SATA总线104的断开的情况下、在数据加密装置102的操作模式之间进行切换的操作。
图14是示出在根据本实施例的数据加密装置102中在操作模式之间进行切换的操作的示例的流程图。由数据加密装置102的CPU 106进行该流程图所例示的处理。
在接通电源(步骤S1401)之后,在阻断模式301下启动数据加密装置102(步骤S1402)。
然后,如参考图9所示的序列图所述,进行正常启动的情况下、数据加密装置102和计算机系统101之间的相互认证(步骤S1403)。当正确地进行了认证时(步骤S1404中为“是”),操作模式变为正常模式302(步骤S1405)。作为对比,当没有正确地进行认证时,操作模式未变为操作模式302,并且该流程图结束。
在正在进行正常模式302的操作时(步骤S1406),连接检测电路114检测PHY通信使能信号(步骤S1407)。基于利用连接检测电路114的检测结果来判断SATA总线104是否断开(步骤S1408)。当判断为SATA总线104未断开时(步骤S1408中为“否”),处理返回至步骤S1406,并且进行正常模式302的操作。作为对比,当判断为SATA总线104断开时(步骤S1408中为“是”),数据加密装置102使操作模式从正常模式302变为阻断模式301。然后,数据加密装置102进行用于取消对计算机系统101的认证的认证取消处理(步骤S1409)。然后,该流程图结束。
注意,尽管参考图14所示的流程图说明了在参考图9所述的正常启动的情况下的操作,但该流程图可以应用于参考图8所述的初始安装的情况。在这种情况下,图8所示的生成种子信息的处理(步骤S807)、存储特有信息的处理(步骤S809)和生成加密密钥的处理(步骤S810)与图14所示的步骤S1403相对应。图8所示的使操作模式变为正常模式302的处理(步骤S813)与图14所示的步骤S1405相对应。
如上所述,根据图14所示的流程图,当数据加密装置102从计算机系统101(HDD控制器115)断开时,数据加密装置102的操作模式从正常模式302变为阻断模式301。因此,由于不能从HDD 103读取数据并且不能对该数据进行解密,因此可以维持HDD 103的安全性。
图15是示出在SATA总线104断开、数据加密装置102的操作模式变为阻断模式301、并且处于阻断模式301的数据加密装置102连接至不同的装置的情况下由数据加密装置102进行的处理的示例的流程图。由数据加密装置102的CPU 106进行该流程图所例示的处理。
数据加密装置102进行图14所示的流程图中的步骤S1409的处理,并且该流程图结束。该状态下的数据加密装置102开始进行图15所示的流程图所例示的处理。在步骤S1501中,维持阻断模式301。在步骤S1502中,数据加密装置102判断断开了的SATA总线104是否连接至装置。当SATA总线104连接至装置时,信号在SATA总线104上流动。数据加密装置102检测到该信号,由此数据加密装置102可以判断为SATA总线104连接至装置。在该步骤中,数据加密装置102仅判断为SATA总线104连接至装置。因此,数据加密装置102的CPU 106不能够识别所连接的装置是数据加密装置102先前连接至的计算机系统101还是不同的装置。当CPU 106判断为SATA总线104没有连接至不同的装置时,处理返回至步骤S1501,并且维持阻断模式301。作为对比,当CPU 106判断为SATA总线104连接至不同的装置时,处理进入图14所示的流程图中的步骤S1403。如已经参考图14所述的,进行自步骤S1403起的处理。
这里,当数据加密装置102连接至的装置是数据加密装置102先前连接至的计算机系统101时,正确地进行数据加密装置102和计算机系统101之间的相互认证(步骤S1403)(步骤S1404中为“是”),并且操作模式再次变为正常模式302。因而,数据加密装置102返回至数据加密装置102在SATA总线104断开之前所处于的状态。
这里,作为对比,当数据加密装置102连接至的装置是与数据加密装置102先前连接至的计算机系统101不同的装置(例如,图17所示的不同的计算机系统1601)时,数据加密装置102和该装置之间的相互认证(步骤S1403)并未正确地完成(步骤S1404中为“否”)。因而,数据加密装置102的操作模式没有变为正常模式302。其原因是,除非连接目的地是在参考图8所述的初始安装的情况下获得了其特有信息的计算机系统101,否则并未正确地进行认证。
在执行图14和15所示的处理时,当利用除SATA总线104应当连接至的计算机系统101以外的不同的装置替换计算机系统101时,数据加密装置102不对HDD 103中存储的加密数据进行解密,也不将解密后的数据发送至替换之后所连接的装置。因而,可以维持HDD 103中存储的数据的机密性。
连接检测电路的其它实施例
此外,在上述实施例中,连接检测电路114通过使用如图13所示的PHY通信使能信号的断开时间来检测SATA总线104的断开。然而,可以使用其它检测方法。图16是示出ATA总线选择器107的硬件结构的其它示例的图。利用图16所示的结构替换图4所示的结构,由此配置成根据其它实施例的数据加密装置102。在图16中,利用相同的附图标记来表示与图4中的元件相同的元件,并且省略对这些元件的说明。参考图16,设置有针对SATA总线104的连接检测信号116,并且连接检测电路114可以检测连接检测信号116中的变化,由此可以检测SATA总线104的物理连接状态。参考图16,连接检测电路114控制连接检测信号116,以使得在插入接口的情况下检测到连接检测信号116的低电平,并且在拔下接口的情况下检测到连接检测信号116的高电平。然而,当设置有其它检测信号时,用于检测连接/断开的方法不限于此。此外,检测信号可以在不经由连接检测电路114的情况下直接连接至CPU 106。
另外,在上述实施例中,说明了数据加密装置102和计算机系统101之间的SATA总线104的连接作为例子。然而,本发明不限于该实施例。例如,代替数据加密装置102,本实施例中的结构可以应用于存储装置、移动终端、移动音乐播放器、移动视频再现装置或移动游戏机等。此外,代替计算机系统101,本实施例中的结构可以应用于复印机、打印机、传真设备、多功能装置或游戏机等。当使用复印机、打印机、传真设备或多功能装置作为计算机系统101时,将加密后的图像数据或加密后的文档数据存储在HDD 103中。此外,代替SATA总线104,可以使用支持热交换的其它接口(USB、IEE 1394接口、网络和个人计算机(PC)卡)中的任一接口。另外,代替HDD 103,可以使用闪速存储器等的其它存储装置以及外围装置中的任一个。
其它实施例
在其它实施例中,直接地或远程地向系统或装置供给用于实现上述实施例的各功能的控制程序,并且由该系统等中包括的计算机来读取并执行所供给的程序的程序代码,由此也实现了本发明。
另外,为了在计算机或装置上实现本发明的实施例的功能和处理,要安装至该计算机或装置中的控制程序的程序代码可以实现本发明。换言之,根据其它实施例可以提供用于实现这些功能和处理的控制程序。
在这种情况下,诸如程序代码、由解释器执行的程序或要供给至操作系统(OS)的脚本数据等的程序的形式无关紧要,只要该程序具有功能即可。
用于供给程序的记录介质的例子包括软盘、硬盘、光盘、磁光盘(MO)、CD-ROM、CD-R和CD-RW等。另外,这些例子包括磁带、非易失性存储卡、ROM或者DVD(DVD-ROM或DVD-R)等。
此外,可以通过使用客户计算机的浏览器从因特网或内联网上的网页下载程序。换言之,可以将根据本发明实施例的程序、或对程序进行了压缩并具有自动安装功能的文件下载至硬盘等的记录介质中。另外,可以将根据本发明实施例的程序中包括的程序代码分割成文件,并且从彼此不同的网站下载各个文件,由此实现该程序。换言之,使用户下载用于利用计算机实现本发明实施例的功能和处理的程序文件的万维网(WWW)服务器可以作为本发明实施例中的元件。
此外,可以对根据本发明实施例的程序进行加密,将该程序存储在CD-ROM等的存储介质中,并将该程序分配至用户。在这种情况下,仅可以允许满足预定条件的用户经由因特网或内联网从网站下载解密用的密钥信息,并且可以使用该解密信息对加密后的程序进行解密。可以执行解密后的程序并将该程序安装至计算机中。
此外,可以通过利用计算机执行所读取的程序来实现上述实施例的功能。注意,在计算机上运行的OS可以根据程序的指令实际进行处理的一部分或全部。当然,同样在这种情况下,可以实现上述实施例的功能。
另外,可以将从记录介质读取的程序写入在插入至计算机中的功能扩展板上设置的、或在连接至计算机的功能扩展单元中设置的存储器中。该功能扩展板或功能扩展单元上设置的CPU等可以实际进行这些处理的一部分或全部。这样,也可以实现上述实施例的功能。
如上所述,根据实施例,当在数据加密装置102正在正常模式302下进行操作时、数据加密装置102检测到通过拔下SATA总线104的线缆等所引起的断开时,除非数据加密装置102再次进行数据加密装置102和计算机系统101之间的认证,否则数据加密装置102不能存取HDD 103。因此,如图17所示,当SATA总线104的线缆连接至不同的计算机系统1601等时,没有正确地完成认证。因而,数据加密装置102不能使操作模式变为正常模式302,并且可以避免HDD 103中存储的数据泄漏。
尽管已经参考典型实施例说明了本发明,但是应该理解,本发明不限于所公开的典型实施例。所附权利要求书的范围符合最宽的解释,以包含所有这类修改以及等同结构和功能。
本申请要求2008年3月13日提交的日本专利申请2008-064252的优先权,在此通过引用包含其全部内容。

Claims (15)

1.一种数据处理装置,用于经由第一接口连接至信息处理装置,并且至少能够处理数据并将所述数据传送至所述信息处理装置,所述数据处理装置包括:
认证单元,用于进行用于对经由所述第一接口所连接的信息处理装置进行认证的处理;
控制单元,用于响应于所述认证单元正确进行对所述信息处理装置的认证,控制所述数据处理装置,以使得能够向所述信息处理装置传送数据;
判断单元,用于判断经由所述第一接口的所述数据处理装置与所述信息处理装置的连接的状态;以及
改变单元,用于基于所述判断单元判断为所述数据处理装置没有经由所述第一接口连接至所述信息处理装置,变为所述认证单元不对所述信息处理装置进行认证的状态。
2.根据权利要求1所述的数据处理装置,其特征在于,所述数据处理装置还经由第二接口连接至外围装置,以及
其中,当所述认证单元未正确进行对所述信息处理装置的认证时,所述控制单元控制所述数据处理装置,以使得所述数据处理装置在阻断模式下工作,并且响应于所述认证单元正确进行对所述信息处理装置的认证,所述控制单元控制所述数据处理装置,以使得所述数据处理装置在正常模式下工作,其中,在所述阻断模式下禁止将已经从所述外围装置接收到的数据传送至所述信息处理装置,在所述正常模式下允许对已经从所述外围装置接收到的数据进行处理、并将该数据传送至所述信息处理装置。
3.根据权利要求2所述的数据处理装置,其特征在于,所述数据处理装置经由所述第二接口从所述外围装置接收加密后的数据,以及
其中,所述控制单元在所述正常模式下对已经从所述外围装置接收到的加密后的数据进行解密,并将解密后的数据传送至所述信息处理装置。
4.根据权利要求2所述的数据处理装置,其特征在于,所述控制单元基于所述判断单元在所述正常模式下判断为所述数据处理装置没有经由所述第一接口连接至所述信息处理装置,控制所述数据处理装置,从而变为所述阻断模式。
5.根据权利要求2所述的数据处理装置,其特征在于,所述信息处理装置是多功能装置,所述外围装置是存储装置,并且所述数据处理装置能够工作,从而对已经从所述多功能装置传送来的图像数据进行加密,将加密后的图像数据存储在所述存储装置中,对所述存储装置中存储的加密后的图像数据进行解密,并将解密后的图像数据传送至所述多功能装置。
6.根据权利要求1所述的数据处理装置,其特征在于,所述判断单元响应于在预定时间段内未经由所述第一接口在所述数据处理装置和所述信息处理装置之间传送数据,判断为所述数据处理装置没有经由所述第一接口连接至所述信息处理装置。
7.根据权利要求1所述的数据处理装置,其特征在于,还包括检测单元,所述检测单元用于检测经由所述第一接口的所述数据处理装置与所述信息处理装置的物理连接是否断开,
其中,所述判断单元基于所述检测单元的检测结果,判断经由所述第一接口的所述数据处理装置与所述信息处理装置的连接的状态。
8.根据权利要求1所述的数据处理装置,其特征在于,还包括特有信息存储单元,所述特有信息存储单元用于存储作为所述认证单元要进行认证的信息处理装置特有的信息的特有信息,
其中,所述认证单元进行用于使用所述特有信息存储单元中存储的特有信息、对经由所述第一接口所连接的信息处理装置进行认证的处理,并且当所述信息处理装置与所述特有信息不对应时,所述认证单元不对所述信息处理装置进行认证。
9.根据权利要求8所述的数据处理装置,其特征在于,当所述认证单元不对所述信息处理装置进行认证时,所述控制单元控制所述数据处理装置,以使得对向所述信息处理装置传送数据施加限制。
10.根据权利要求1所述的数据处理装置,其特征在于,所述认证单元基于所述判断单元判断为所述数据处理装置从所述数据处理装置没有经由所述第一接口连接至所述信息处理装置的状态、变为所述数据处理装置经由所述第一接口连接至所述信息处理装置的状态,进行用于对经由所述第一接口所连接的信息处理装置进行认证的处理。
11.根据权利要求1所述的数据处理装置,其特征在于,所述第一接口是支持热交换的接口。
12.根据权利要求11所述的数据处理装置,其特征在于,所述第一接口是串行高级技术附件。
13.一种数据处理装置,用于经由第一接口连接至信息处理装置,并经由第二接口连接至外围装置,所述数据处理装置包括:
控制单元,用于控制所述数据处理装置,以使得所述数据处理装置能够在作为所述数据处理装置的操作模式的正常模式或阻断模式下工作,其中,在所述正常模式下对已经从所述外围装置接收到的数据进行处理、并将该数据传送至所述信息处理装置,在所述阻断模式下禁止将已经从所述外围装置接收到的数据传送至所述信息处理装置;
判断单元,用于判断经由所述第一接口的所述数据处理装置与所述信息处理装置的连接的状态;以及
改变单元,用于基于所述判断单元在所述正常模式下判断为所述数据处理装置没有经由所述第一接口连接至所述信息处理装置,使所述数据处理装置的操作模式从所述正常模式变为所述阻断模式。
14.一种用于控制数据处理装置的方法,所述数据处理装置经由第一接口连接至信息处理装置,并且至少能够处理数据并将所述数据传送至所述信息处理装置,所述方法包括以下步骤:
进行用于对所述信息处理装置进行认证的处理;
响应于正确进行对所述信息处理装置的认证,控制所述数据处理装置,以使得能够向所述信息处理装置传送数据;
判断步骤,用于判断经由所述第一接口的所述数据处理装置与所述信息处理装置的连接的状态;以及
基于在所述判断步骤中判断为所述数据处理装置没有经由所述第一接口连接至所述信息处理装置,取消对所述信息处理装置的认证。
15.一种用于控制数据处理装置的方法,所述数据处理装置经由第一接口连接至信息处理装置,并经由第二接口连接至外围装置,所述方法包括以下步骤:
控制所述数据处理装置,以使得所述数据处理装置能够在作为所述数据处理装置的操作模式的正常模式或阻断模式下工作,其中,在所述正常模式下对已经从所述外围装置接收到的数据进行处理、并将该数据传送至所述信息处理装置,在所述阻断模式下禁止将已经从所述外围装置接收到的数据传送至所述信息处理装置;
判断步骤,用于判断经由所述第一接口的所述数据处理装置与所述信息处理装置的连接的状态;以及
基于在所述判断步骤中在所述正常模式下判断为所述数据处理装置没有经由所述第一接口连接至所述信息处理装置,使所述数据处理装置的操作模式从所述正常模式变为所述阻断模式。
CN2009801078316A 2008-03-13 2009-03-06 数据处理装置 Active CN101965575B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2008-064252 2008-03-13
JP2008064252A JP4999736B2 (ja) 2008-03-13 2008-03-13 データ処理装置
PCT/JP2009/001033 WO2009113286A1 (en) 2008-03-13 2009-03-06 Data processing device

Publications (2)

Publication Number Publication Date
CN101965575A CN101965575A (zh) 2011-02-02
CN101965575B true CN101965575B (zh) 2013-07-17

Family

ID=41064960

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009801078316A Active CN101965575B (zh) 2008-03-13 2009-03-06 数据处理装置

Country Status (5)

Country Link
US (1) US8789137B2 (zh)
EP (1) EP2269157B1 (zh)
JP (1) JP4999736B2 (zh)
CN (1) CN101965575B (zh)
WO (1) WO2009113286A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5506568B2 (ja) * 2010-06-25 2014-05-28 キヤノン株式会社 データ処理装置、データ処理装置のデータ処理方法、プログラム
EP2626807B8 (en) 2010-10-05 2018-02-07 CSE Co., Ltd. Two- factor user authentication system, and method therefor
WO2012046303A1 (ja) * 2010-10-05 2012-04-12 株式会社シー・エス・イー オフライン二要素ユーザ認証システム、その方法、およびそのプログラム
JP2012093921A (ja) * 2010-10-27 2012-05-17 Nec Engineering Ltd 情報漏洩防止ストレージシステム
JP2013010222A (ja) * 2011-06-28 2013-01-17 Brother Industries Ltd 印刷装置
CH706159B1 (it) * 2012-02-17 2017-05-31 Quantec Sa Dispositivo portatile per criptare/decriptare e/o comprimere/decomprimere dati.
JP2014174560A (ja) 2013-03-05 2014-09-22 Canon Inc 情報処理装置及びサーバとその制御方法、プログラム及び記憶媒体
US9870462B2 (en) * 2014-09-22 2018-01-16 Intel Corporation Prevention of cable-swap security attack on storage devices
CN107239691B (zh) * 2017-05-12 2019-08-02 北京知道创宇信息技术股份有限公司 对接入计算设备的外置设备进行控制的方法、装置及系统
FR3066843B1 (fr) * 2017-05-24 2020-06-19 Thales Dispositif de traitement numerique a connectivite et debit entrant/sortant eleve embarque a bord d'une plateforme spatiale et eclate en ilots de traitement modulaires mutuellement interconnectes et distants a l'echelle de la plateforme
CN110720088A (zh) 2017-06-12 2020-01-21 净睿存储股份有限公司 集成到大容量存储设备的可访问快速耐久存储
US10552090B2 (en) 2017-09-07 2020-02-04 Pure Storage, Inc. Solid state drives with multiple types of addressable memory
US11592991B2 (en) 2017-09-07 2023-02-28 Pure Storage, Inc. Converting raid data between persistent storage types
US11609718B1 (en) 2017-06-12 2023-03-21 Pure Storage, Inc. Identifying valid data after a storage system recovery
US20180357017A1 (en) * 2017-06-12 2018-12-13 Pure Storage, Inc. Accessible fast durable storage integrated into a bulk storage device
FR3085772B1 (fr) * 2018-09-06 2021-06-25 Wisekey Semiconductors Procede de securisation de l'utilisation d'un appareil fonctionnant avec un accessoire ou un consommable
CN109522760B (zh) * 2018-10-29 2020-08-14 北京博衍思创信息科技有限公司 一种基于硬件控制逻辑的数据转发控制方法及系统
KR20220124452A (ko) 2021-03-03 2022-09-14 삼성전자주식회사 스토리지 장치

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002034484A (ja) * 2000-07-19 2002-02-05 Asahi Denka Kogyo Kk 冷凍プリン
JP2002344484A (ja) 2001-05-21 2002-11-29 Nec Corp ネットワークの接続復旧方法及びシステム
JP2003186819A (ja) 2001-12-17 2003-07-04 Ricoh Co Ltd セキュリティ機能付きusb機器を備えたコンピュータシステム
US7707418B2 (en) * 2003-06-30 2010-04-27 Panasonic Corporation Communication system, communication method, base station apparatus, controller, device, and recording medium storing control program
US7603557B2 (en) * 2004-04-15 2009-10-13 Panasonic Corporation Communication device, communication system and authentication method
US8238554B2 (en) 2004-07-22 2012-08-07 Sanyo Electric Co., Ltd. Method for transmission/reception of contents usage right information in encrypted form, and device thereof
JP4663437B2 (ja) * 2004-07-22 2011-04-06 三洋電機株式会社 コンテンツ利用情報送信方法およびその方法を利用可能なコンテンツ利用情報提供装置およびコンテンツ利用情報享受装置
US20060069819A1 (en) * 2004-09-28 2006-03-30 Microsoft Corporation Universal serial bus device
JP4568857B2 (ja) * 2004-12-24 2010-10-27 富士通テレコムネットワークス株式会社 認証伝送システム
JP2006217551A (ja) * 2005-02-07 2006-08-17 Ricoh Co Ltd セキュリティ装置
JP2007226620A (ja) * 2006-02-24 2007-09-06 Fujitsu Access Ltd 宅内ゲートウェイ装置およびネットワークシステムのアカウンティング管理方式
JP2008017119A (ja) * 2006-07-05 2008-01-24 Canon Inc 記録データ処理装置
US8102557B2 (en) * 2006-11-13 2012-01-24 Samsung Electronics Co., Ltd. System and method for disabling access to non-volatile storage in a multi-function peripheral
US20080288782A1 (en) * 2007-05-18 2008-11-20 Technology Properties Limited Method and Apparatus of Providing Security to an External Attachment Device
US20090193266A1 (en) * 2008-01-28 2009-07-30 Gable Melvin G Access control for protected and clear AV content on same storage device

Also Published As

Publication number Publication date
JP2009223387A (ja) 2009-10-01
CN101965575A (zh) 2011-02-02
EP2269157A1 (en) 2011-01-05
EP2269157A4 (en) 2014-03-12
US20110307642A1 (en) 2011-12-15
WO2009113286A1 (en) 2009-09-17
EP2269157B1 (en) 2022-11-23
JP4999736B2 (ja) 2012-08-15
US8789137B2 (en) 2014-07-22

Similar Documents

Publication Publication Date Title
CN101965575B (zh) 数据处理装置
US8839359B2 (en) Data processing device and data processing method
KR100976020B1 (ko) 접근 방법
CN102171704A (zh) 用硬件加密存储设备进行外部加密和恢复管理
CN113434853B (zh) 一种将固件烧录至存储设备的方法及控制器
JP2002319230A (ja) 記録媒体、情報処理装置、コンテンツ配信サーバ、方法、プログラム、その記録媒体
CN107832589B (zh) 软件版权保护方法及其系统
WO2006004130A1 (ja) データ管理方法、そのプログラム及びプログラムの記録媒体
RU2007117685A (ru) Сертифицированный накопитель на жестких дисках с сетевой проверкой достоверности
JP4591163B2 (ja) バスアクセス制御装置
CN101441603B (zh) 存储设备、使用该存储设备的终端设备及其方法
CN101447009A (zh) 软件安装方法、装置及系统
US9875048B2 (en) Solid state memory unit and method for protecting a memory including verification of a sequence of requests for access to physical blocks
US20180053017A1 (en) Programmable logic device, information processing apparatus, and processing method
CN113449317A (zh) 对数据进行加密处理的方法及控制设备
KR101043255B1 (ko) Usb 허브 보안 장치 및 이를 이용한 데이터 보안 방법
JP2007282064A (ja) データ処理装置、データ処理方法、記憶媒体、プログラム
JP2008310678A (ja) 記憶装置、情報機器、及びコンテンツ変換方法
JP5127989B2 (ja) データ処理装置およびデータ処理方法
JP5539024B2 (ja) データ暗号化装置およびその制御方法
JP4981981B2 (ja) データ処理装置およびデータ処理方法
JP2010079388A (ja) Icチップ、外部機器、システム、およびプログラム
CN117251876A (zh) 一种嵌入式控制器的组件授权验证方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant