CN1304964C - 信息存储器件、存储器访问控制方法 - Google Patents
信息存储器件、存储器访问控制方法 Download PDFInfo
- Publication number
- CN1304964C CN1304964C CNB038010860A CN03801086A CN1304964C CN 1304964 C CN1304964 C CN 1304964C CN B038010860 A CNB038010860 A CN B038010860A CN 03801086 A CN03801086 A CN 03801086A CN 1304964 C CN1304964 C CN 1304964C
- Authority
- CN
- China
- Prior art keywords
- information recording
- recording device
- locks
- key
- main process
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/16—Protection against loss of memory contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Human Computer Interaction (AREA)
- Storage Device Security (AREA)
- Lock And Its Accessories (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
提供了一种器件和一种方法,其中在执行作为存储器锁释放处理的解锁处理之前,保持加锁状态并在再次打开电源之后重新建立加锁状态。响应通过信息处理单元输入的指令,作为存储器锁释放处理对信息存储器件如存储器卡进行解锁处理,并且将解锁处理之前的加锁状态数据存储在非易失存储器(NVM)中。当被关闭的信息存储器件被再次打开时,基于存储在存储装置中的加锁状态数据重新建立存储器的加锁状态并且基于重新建立的加锁状态执行存储器访问控制。
Description
技术领域
本发明涉及信息存储器件、存储器访问控制方法以及计算机程序。更具体地说,本发明涉及一种信息存储器件,用于根据从信息处理设备输入的指令对存储器进行解锁,并且当信息存储器件被关闭然后被打开时,重新建立存储器被解锁之前的加锁状态数据并且基于重新建立的加锁状态进行存储器访问控制,本发明还涉及一种存储器访问控制方法和一种计算机程序。
背景技术
各种的信息处理设备如PC(Personal Computer,个人计算机)、PDA(Personal Digital Assistant,个人数字助理)、数码相机、数据读出器/记录器和游戏机等使用不同的存储介质如硬盘、DVD、CD和存储卡等对数据进行读和写。
如今,每种小型卡式存储器器件都包括存储器如闪存存储器等的和控制器如CPU等,被广泛用作用于存储各种类型的软件数据(内容),如音乐数据、图像数据和程序等的存储装置。
通过将存储器卡放置在具有存储器卡接口的单元中并且通过该接口进行数据传输,来完成对存储在存储器卡上的数据的读取或者将数据写到这种存储器卡上。任何人都可以在未经允许的情况下使用存储器器件进行数据的读取和写入。或者,通过例如设置密码或者进行加密从而仅允许特定用户或者特定单元访问该存储器,而拒绝未经允许的第三方用户访问该存储器来实现所谓的访问控制方案。
例如,生成只有允许访问的用户知道的密码。将该密码从用作信息读出器的内容使用单元传送到内容存储单元如存储器卡。存储器卡的控制器(CPU等)对密码进行检验,只有当检验成功时,才将内容从内容存储单元如存储器卡输出到用作信息读出器的内容使用单元。或者,在用作信息读出器的内容使用单元与内容存储单元如存储器卡之间进行相互验证。只有当相互验证成功时,才将内容从内容存储单元如存储器卡输出到用作信息读出器的内容使用单元。
发明内容
有各种只有在对数据(内容)使用许可进行了检验之后才允许进行数据访问的方式。
可以将数据存储器件如存储器卡放置在包括PC、PDA和数码相机等的不同单元中。在许多情况下,这些单元共用一个存储器卡。在这种数据使用方式中,当要求进行上述的密码检验或验证时,每次都要将存储器卡放置在这些单元中的一个单元中,这样会在准备好进行读数据或写数据之前占用时间。因此降低了处理效率。
考虑到上述问题,本发明的一个目的是提供一种信息存储器件,用于响应从信息处理设备输入的指令对存储器进行解锁,并且当信息存储器件被关闭然后被打开时,重新建立存储器被解锁之前的加锁状态数据并且根据重新建立的加锁状态进行存储器访问控制,还提供一种存储器访问控制方法和一种计算机程序。
按照本发明的第一方面,提供了一种包括用于存储数据的存储器和用于对存储器进行访问控制的控制器的信息存储器件。
控制器响应从信息处理设备输入的指令对存储器进行解锁。
控制器将存储器被解锁之前的加锁状态数据存储在存储装置中,当信息存储器件被关闭然后被打开时,控制器根据存储在存储装置中的加锁状态数据重新建立存储器的加锁状态并且基于重新建立的加锁状态进行存储器访问控制。
在本发明的信息存储器件的一个模式中,信息存储器件将用作信息存储器件的加锁状态数据的加锁状态信息存储在存储装置中。控制器将加锁状态信息存储在用作第一存储装置的非易失存储器(Non-Volatile Memory,NVM)中,即使在将信息存储器件关闭之后,第一存储装置仍然保持在其中存储的信息。
在本发明的信息存储器件的一个模式中,控制器将存储在非易失存储器(NVM)中的加锁状态信息复制并且存储到控制器中的存储器中,该存储器起第二存储装置的作用,在信息存储器件被再次打开之后,控制器基于复制和存储的信息进行访问控制。
在本发明的信息存储器件的一个模式中,信息存储器件将用作信息存储器件的加锁状态数据的加锁状态信息存储在存储装置中。加锁状态信息包括判断信息,根据该判断信息来判断信息存储器件被出口加锁(Export-Locked,EL)还是被标准加锁(Standard-Locked,SL),其中,在出口加锁中,允许输出可应用于加锁或解锁的密钥集,在标准加锁中,禁止输出可应用于加锁或解锁的密钥集。
在本发明的信息存储器件的一个模式中,当信息存储器件被重新打开时,控制器响应来自信息处理设备的解锁请求,根据重新建立的加锁状态进行处理。控制器对包括已经输出了解锁请求的信息处理设备的标识符(Identifier,ID)的密钥集进行检验,假如检验成功,则基于解锁请求进行解锁。
在本发明的信息存储器件的一个模式中,密钥集是由信息处理设备所拥有的ID和与该ID相关的加锁密钥(lock key,LK)组成的密钥集[ID,LK]。信息存储器件具有可用于计算加锁密钥(LK)的加锁主密钥(Lock Master Lock,LMK),该加锁密钥是基于关系式LK=H(LMK,ID)的哈希(hash)值,该哈希值是通过应用加锁主密钥(LMK)为ID计算的。控制器根据通过应用加锁主密钥(LMK)计算哈希值而得到的加锁密钥(LK),对从信息处理设备输入的由该信息处理设备所拥有的密钥集进行检验。
在本发明的信息存储器件的一个模式中,控制器生成随机数,从信息处理设备接收通过根据由信息处理设备所拥有的加锁密钥(LK)对随机数(Random Number,Rms)进行加密而生成的加密数据[E(LK,Rms)],并且进行包括对照根据通过计算哈希值得到的加锁密钥(LK)计算的加密数据[E(LK,Rms)]来检查接收到的加密数据的检验。
按照本发明的第二方面,提供了一种用于包括存储数据的存储器和用于对存储器进行访问控制的控制器的信息存储器件的存储器访问控制方法。该方法包括:
一个解锁执行步骤,用于响应从信息处理设备输入的指令对存储器进行解锁;
一个加锁状态数据存储步骤,用于将存储器被解锁之前的加锁状态数据存储在存储装置中;以及
一个存储器访问控制步骤,用于当信息存储器件被关闭然后被打开时,根据存储在存储装置的加锁状态数据重新建立存储器的加锁状态,并且基于重新建立的加锁状态进行存储器访问控制。
在本发明的存储器访问控制方法的一个模式中,加锁状态数据存储步骤包括将用作信息存储器件的加锁状态数据的加锁状态信息存储在用作第一存储装置的非易失存储器(NVM)中的步骤,第一存储装置即使在信息存储器件被关闭之后仍然保持存储在其中的信息。
在本发明的存储器访问控制方法的一个模式中,存储器访问控制方法还包括在信息存储器件被再次打开后,将存储在非易失存储器(NVM)中的加锁状态信息复制并且存储到用作第二存储装置的控制器中的存储器中的步骤。存储器访问控制步骤是一个基于复制和存储的信息进行访问控制的步骤。
在本发明的存储器访问控制方法的一个模式中,加锁状态数据存储步骤是一个将用作信息存储器件的加锁状态数据的加锁状态信息存储到存储装置中的步骤。加锁状态信息包括判断信息,根据该判断信息来判断信息存储器件被出口加锁(Export-Locked,EL)还是被标准加锁(Standard-Locked,SL),其中,在出口加锁中,允许输出可应用于加锁或解锁的密钥集,而在标准加锁中,禁止输出可应用于加锁或解锁的密钥集。存储器访问控制步骤是一个根据判断信息重新建立存储器的加锁状态并且基于重新建立的加锁状态进行存储器访问控制的步骤。
在本发明的存储器访问控制方法的一个模式中,存储器访问控制方法还包括一个解锁请求相关处理步骤,用于根据当信息存储器件被再次打开时重新建立的加锁状态,响应来自信息处理设备的解锁请求进行处理。解锁请求相关处理步骤包括一个检验步骤,用于对包括已经输出了解锁请求的信息处理设备的标识符(ID)的密钥集进行检验;以及一个解锁步骤,用于假如检验成功,则基于解锁请求进行解锁。
在本发明的存储器访问控制方法的一个模式中,密钥集是由信息处理设备所拥有的ID和与ID相关的加锁密钥(LK)组成的密钥集[ID,LK]。信息存储器件具有可用于计算加锁密钥(LK)的加锁主密钥(LMK),该加锁密钥是基于关系式LK=H(LMK,ID)的哈希值,该哈希值是通过应用加锁主密钥(LMK)为ID计算的。检验步骤包括根据通过应用加锁主密钥(LMK)计算哈希值而得到的加锁密钥(LK),对从信息处理设备输入的由信息处理设备所拥有的密钥集进行检验的步骤。
在本发明的存储器访问控制方法的一个模式中,存储器访问控制方法还包括一个用于生成随机数,并从信息处理设备接收通过根据由信息处理设备所拥有的加锁密钥(LK)对随机数(Random Number,Rms)进行加密而生成的加密数据[E(LK,Rms)]的步骤。检验步骤包括一个进行检验的步骤,包括对照根据计算哈希值得到的加锁密钥(LK)计算的加密数据[E(LK,Rms)],来对接收到的加密数据进行检查。
按照本发明的第三方面,提供了一种计算机程序,用于对包括用于存储数据的存储器和用于对存储器进行访问控制的控制器的信息存储器件进行存储器访问控制。该程序包括:
一个解锁执行步骤,用于响应从信息处理设备输入的指令进行存储器的解锁;
一个加锁状态存储步骤,用于将存储器被解锁之前的加锁状态数据存储在存储装置中;以及
一个存储器访问控制步骤,用于当信息存储器件被关闭然后被打开时,根据存储在存储装置中的加锁状态数据重新建立存储器的加锁状态,并且基于重新建立的加锁状态进行存储器访问控制。
按照本发明的结构,信息存储器件如存储器卡响应从信息处理设备输入的指令进行存储器解锁。信息存储器件将存储器被解锁之前的加锁状态数据存储在存储装置中。当信息存储器件被关闭然后被打开时,信息存储器件根据存储在存储装置中的加锁状态数据重新建立存储器的加锁状态并且基于重新建立的加锁状态进行存储器访问控制。这样可靠地防止了第三方用户对丢失或被盗的信息存储器件进行存储器访问。
按照本发明的结构,将用作信息存储器件的加锁状态数据的加锁状态信息存储在用作第一存储装置的非易失存储器(NVM)中,即使在信息存储器件被关闭之后第一存储装置仍然保持存储在其中的信息。当信息存储器件被再次打开时,将加锁状态信息复制到控制器中的用作第二存储装置的存储器中,由此进行访问控制。即使当电源被关闭时,仍然保持加锁状态。这样就防止了由于删除了加锁信息而产生的存储器访问。
按照本发明的结构,根据包括判断信息的加锁状态信息进行访问控制,根据该判断信息来判断信息存储器件被出口加锁(EL)还是被标准加锁(SL),其中,在出口加锁中,允许输出可应用于加锁或解锁的密钥集,而在标准加锁中,禁止输出可应用于加锁或解锁的密钥集。可以以不同的模式进行存储器访问控制。
按照本发明的结构,在重新建立的加锁状态中,对包括已经输出了解锁请求的信息处理设备的标识符(ID)的密钥集进行检验。假如检验成功,则基于解锁请求进行解锁。如果从有效的主机设备输出请求,则进行安全的存储器访问控制。
本发明的计算机程序是可以提供在存储介质如CD、FD或MO或者通信介质如网络上的计算机程序,用于以计算机可读的格式给能够执行各种程序代码的普通计算机系统提供计算机程序。通过以计算机可读格式提供这样的程序,在计算机系统上进行与程序一致的处理。
根据以下参照附图对本发明的实施例进行的详细描述,本发明的其他目的、特性和优点将变得更加清楚。在本说明中词“系统”指的是不必包含在一个外壳中的多个设备。
附图说明
图1为说明本发明的信息存储器件的用途的示意图。
图2示出了使用信息存储器件的主机设备的硬件配置的例子。
图3示出了信息存储器件的硬件配置的例子。
图4说明了存储在本发明的信息存储器件中的数据和存储在主机设备中的数据。
图5说明了在对信息存储器件进行加锁的过程中,在信息存储器件与主机设备之间进行的通信过程的顺序。
图6为说明了对信息存储设备进行加锁的过程的流程图。
图7说明了在对信息存储器件进行解锁的过程中,在信息存储器件与主机设备之间进行的通信过程的顺序。
图8为说明了对信息存储设备进行解锁的过程的流程图。
图9说明了存储在本发明的信息存储器件中的数据和存储在主机设备中的数据。
图10说明了对本发明的信息存储器件进行加锁的模式。
图11说明了在通过应用副密钥集对信息存储器件进行加锁的过程中,在信息存储器件与主机设备之间进行的通信过程的顺序。
图12为说明在通过应用副密钥集对信息存储器件进行加锁的过程的流程图。
图13说明了在通过应用副密钥集进行盖印和对信息存储器件进行解锁的过程中,在信息存储器件与主机设备之间进行的通信过程的顺序。
图14为说明在通过应用副密钥集进行盖印和对信息存储器件进行解锁的过程的流程图。
图15为说明在通过应用副密钥集进行盖印和对信息存储器件进行解锁的过程的流程图。
图16说明了在通过应用副密钥集进行盖印和对信息存储器件进行解锁的过程中,在信息存储器件与主机设备之间进行的通信过程的顺序。
图17为说明在通过应用副密钥集进行盖印和对信息存储器件进行解锁的过程中,更新加锁状态标志的过程的流程图。
图18为说明在对信息存储器件进行解锁的过程中涉及加锁状态标志的过程的流程图。
图19说明了用作信息存储器件的数据存储格式的簇(cluster)结构。
图20为说明基于读取特定数据区域(簇)的加锁过程的流程图。
图21说明了用于对信息存储器件进行加锁/解锁的加锁/解锁单元的结构。
图22为说明主机设备读取加锁状态的过程的流程图。
图23为说明当对信息存储器件进行加锁时由主机设备执行的处理和指示器显示处理的流程图。
图24为说明当对信息存储器件进行解锁时由主机设备执行的处理和指示器显示处理的流程图。
具体实施方式
以下将参照附图对按照本发明实施例的信息存储器件和存储器访问控制处理进行详细描述。
以下将参照图1对在应用本发明的信息存储器件的过程中的数据的用途进行描述。例如,信息处理设备20包括例如PC(个人计算机)21和22、PDA(个人数字助理)23、移动通信终端24和数码相机25等。可以将信息存储器件30放置在信息处理设备20中,信息处理设备20能够使信息从信息存储器件30中输出。
例如,将具有非易失存储器(NVM)如闪存存储器的存储器卡30放置在每个信息处理设备20中。每个信息处理设备20将数据存储在存储器卡30上或者读取存储在存储器卡上的数据。
有这样的情况,即,PC(个人计算机)21和22、PDA(个人数字助理)23、移动通信终端24以及数码相机25共用一个存储器卡30。例如,将数码相机25捕获的图像数据存储在存储器卡30上,随后将存储器卡30放置在PC 21中,以便显示存储的图像或者对图像进行处理。或者,PC 21通过网络如互联网、或通过CD或DVD得到内容如音乐数据,并且将内容存储在存储器卡30上,然后,将已经将内容存储在其上的存储器卡30放置在PDA 23中,从而能够在遥远的地点利用PDA 23读取内容。
图2示出了可以将信息存储器件如存储器卡放置在其中的信息处理设备的配置的例子。CPU(Central Processing Unit,中央处理单元)101是执行各种应用程序和OS(Operating System,操作系统)的处理器。CPU 101对在对信息存储器件进行加锁和解锁的过程中的哈希值计算、包括生成随机数的各种类型的加密以及指令发送和接收等进行控制,在对信息存储器件进行加锁和解锁的过程中的哈希值计算用作在下面将详细描述的对信息存储器件的访问控制。
ROM(Read Only Memory,只读存储器)102存储由CPU 101执行的程序和计算参数等固定数据。ROM 102存储用于对信息存储器件加锁和解锁的程序,这起到了下面将详细描述的对信息存储器件的访问控制的作用。RAM(Random Access Memory,随机存取存储器)103存储应用于由CPU 101执行的程序的信息以及随着程序的执行而适当变化的参数。
当读取已经从信息存储器件200如存储器卡通过存储器件I/F 113输入的内容时,DSP(Digital Signal Processor,数字信号处理器)104进行加密、均衡器调节(根据音频信号的频带进行增益调节)和压缩/解压缩(编码/解码)等。
数/模转换器电路105将经过解密、解压缩的内容转换为模拟音频信号,该模拟音频信号被放大器电路106放大并且从音频输出单元107输出。由显示单元109如LCD通过显示控制器108输出图像数据。通过输入I/F 112,从外部信号源输入数字信号或模拟信号。当输入模拟信号时,对这个模拟信号进行A/D转换。利用A/D转换,将输入信号转换为数字信号。由SRC(SamplingRate Converter,采样速率转换器)将从外部信号源输入的数字信号转换为具有预定采样频率和预定量化比特数(quantifying bit number)的数字信号,并且输入经过转换的信号。
输入/输出I/F 115是一个连接外部单元的接口。例如,输入/输出I/F 115和通过例如USB或IEEE 1394连接与其连接的单元进行数据传输。
以下将参照图3对信息存储器件200如具有非易失存储器(NVM)如闪存存储器的存储器卡进行描述。闪存存储器是称为EEPROM(ElectricallyErasable Programmable ROM,电可擦除可编程只读存储器)的电可重写非易失存储器中的一种。由于已知EEPROM的每一位包括两个晶体管,因此每一位所占的面积较大。这样就限制了每个芯片的元件数量的增加。而另一方面,利用全位(all-bits)删除方案,闪存存储器的每一位包括一个晶体管。
将具有这种闪存存储器的信息存储器件200放置在信息处理设备如PC、PDA或数码相机中。从信息处理设备输入的数据被存储在存储器220中,而存储在存储器220中的数据被输出到信息处理设备中。
信息存储器件200还包括控制器210。控制器210包括用作执行各种程序的处理器的CPU(中央处理单元)211、存储由CPU 211执行的程序和计算参数等固定数据的ROM(只读存储器)212和存储应用于由CPU 211执行的程序的信息以及随着程序的执行而适当变化的参数的RAM(随机存取存储器)213。
RAM(随机存取存储器)213还被用作用于存储表示信息存储器件的加锁状态的状态值数据的区域,该状态值数据由于信息存储器件的加锁和解锁而发生变化,这起到了后面将详细描述的对信息存储器件进行访问控制的作用。
控制器210还包括用作与信息处理设备的数据输入/输出接口的单元接口214和用作与存储器220的数据输入/输出接口的存储器接口216。
CPU 211对在信息存储器件和信息处理设备之间进行的加锁和解锁过程中的哈希值计算、包括随机数生成的各种类型的加密以及指令发送和接收进行控制,其中,在信息存储器件和信息处理设备之间进行的加锁和解锁过程起以下将详细描述的访问控制的作用。
[基于加锁主密钥(LMK)的处理]
作为对信息存储器件进行访问控制的处理的一个例子,以下将描述通过应用加锁主密钥(LMK)对信息存储器件进行加锁和解锁。下面将参照图4示意性地描述这个处理,即通过应用加锁主密钥(LMK)进行的处理,的一个例子。
加锁是使对存储器(图3中的存储器220)如闪存存储器的访问控制有效,存储器是用于存储信息存储器件320如存储器卡的数据如内容的区域。解锁是取消访问控制。由主机设备310执行加锁和解锁。
如已经参照图1和2所描述的,主机设备310包括信息处理设备如PC、PDA、数码相机和DSC(Digital Still Camera,数字静止相机),它们中的每一个都具有用于与信息存储器件320如存储器卡进行数据传输的接口,都将数据写到信息存储器件320或者读取和使用来自信息存储器件320的数据。主机设备310还包括用作专门对信息存储器件320如存储器卡进行加锁/解锁的加锁/解锁单元312。
加锁/解锁单元312包括用作用于执行加锁和解锁算法的控制装置的CPU、用作数据存储存储器的ROM和RAM以及在其中放置信息存储器件320如存储器卡并且通过其进行数据传输的接口。加锁/解锁单元312是专门用于对信息存储器件320进行加锁/解锁的单元。
在下文中,将对信息存储器件320进行加锁和解锁的单元,即,包括PC、PDA和其他信息处理设备的单元以及加锁/解锁单元312,称为主机设备。
主机设备中的存储器315如ROM存储用作每个主机设备所独有的标识符的ID(例如,16个字节的数据)和用作应用于对信息存储器件320进行加锁和解锁的密钥数据的加锁密钥(LK)(例如,8个字节的数据)。包括在主机设备中的由每个主机设备所独有的标识符(ID)和加锁密钥(LK)组成的集[ID,LK]被称为密钥集。
同时,在信息存储器件320如存储器卡中的控制器中的存储器325如ROM存储加锁主密钥(LMK)。例如,这些信息在制造每个单元时被写入每个单元并且不能被用户重写。
存储在信息存储器件320中的加锁主密钥(LMK)与存储在主机设备中的ID和加锁密钥(LK)具有如下关系:
LK=H(LMK,ID)。
H(X,Y)表示通过应用密钥X为消息Y的哈希值的计算。换句话说,利用通过应用加锁主密钥(LMK)为ID计算哈希值,计算与ID相关的加锁密钥(LK)。
哈希函数是一个单向函数并且非常难以倒推(reverse),即,已知输出,非常难以计算输入。在上述等式中,通过应用作为密钥的加锁主密钥(LMK),将单向函数应用于每个主机设备所独有的ID上,由此计算出一个输出,就是一个与每个主机设备所独有的ID相关的加锁密钥(LK)。可以应用如MD5或SHA的哈希算法。
(加锁)
以下将描述通过应用上述的加锁主密钥(LMK)进行的加锁,即,使对信息存储器件的访问控制有效。
图5示出了在加锁处理中,在主机设备与信息存储器件之间进行的处理的顺序。将主机设备与信息存储器件相互连接,以便彼此进行数据传输。主机设备向信息存储器件输出随机数生成指令。当接收到随机数生成指令时,信息存储器件生成预定长度如16字节的随机数(Rms)并且将生成的随机数发送到主机设备。信息存储器件将生成的随机数(Rms)存储在信息存储器件的控制器中的存储器如RAM中。
当接收到来自信息存储器件的随机数(Rms)时,主机设备利用作为加密密钥存储在主机设备的存储器中的加锁密钥(LK)对接收到的随机数(Rms)进行加密E(LK,Rms),其中,E(X,Y)表示通过应用密钥[X]对消息[Y]进行的加密。可以将各种算法应用为加密算法。例如,应用DES加密算法。
主机设备利用作为加密密钥的加锁密钥(LK)对接收到的随机数(Rms)进行加密E(LK,Rms),并且将结果数据[E(LK,Rms)]、由主机设备预先存储在主机设备的存储器中的为主机设备所独有的标识符(ID)和加锁指令发送到信息存储器件。
当接收到包括ID和E(LK,Rms)的数据时,信息存储器件通过应用存储在信息存储器件的存储器中的加锁主密钥(LMK),为接收到的ID计算哈希值,由此计算与接收到的ID相关的加锁密钥(LK)。即,信息存储器件计算与接收到的ID相关的加锁密钥(LK):
LK=H(LMK,ID)。
接收到的ID被存储在信息存储器件的存储器中。在解锁处理中使用接收到的ID,这将在后面进行描述。
信息存储器件通过应用由上述的哈希值计算计算出的加锁密钥(LK),对存储在信息存储器件的存储器中的随机数Rms进行加密E(LK,Rms)并且进行检查,看这个经过加密的数据是否等于从主机设备接收到的加密数据E(LK,Rms)。可以应用各种算法,只要它们与主机设备使用的算法相同即可。
当从主机设备接收到的数据E(LK,Rms)等于由信息存储器件计算的加密数据E(LK,Rms)时,证明指令是来自具有有效ID和LK的集数据的主机设备的加锁请求。进行加锁,并且将加锁完成报告发送到主机设备。信息存储器件将已经进行了加锁的主机设备的密钥集[ID、LK]存储在包括非易失存储器(NVM)如闪存存储器的存储器220中。
当从主机设备接收到的数据E(LK,Rms)不等于由信息存储器件计算的加密数据E(LK,Rms)时,则判断该主机设备不是具有有效ID和LK的集数据的主机设备,并且判断该指令是来自一个未被授权的单元。不进行加锁并且将错误报告发送到主机设备。
如果执行了解锁则由信息存储器件进行的加锁允许访问包括作为用于存储数据如内容的区域的闪存存储器的存储器(图3中的存储器),后面将对解锁进行描述。
以下将参照图6的流程图对加锁处理的步骤进行描述。在步骤S101中,用作信息存储器件的存储器卡响应从主机设备接收到的随机数生成请求指令生成随机数(Rms)。在步骤S102中,主机设备读取生成的随机数。在步骤S103中,除了加锁指令以外,主机设备还向用作信息存储器件的存储器卡发送主机设备的ID以及通过使用主机设备的加锁密钥(LK)对随机数(Rms)进行加密而生成的加密数据E(LK,Rms)。
在步骤S104中,存储器卡将接收到的ID和加密数据E(LK,Rms)写入信息存储器件中的存储器中。在步骤S 105中,存储器卡通过应用存储在存储器卡的存储器中的加锁主密钥(LMK),为接收到的ID计算哈希值,即,计算与接收到的ID相关的加锁密钥(LK):
H(LMK,ID)=LK。
根据计算的加锁密钥(LK),存储器卡对在步骤S101中预先生成的随机数(Rms)进行加密并且计算用作检查数据的加密数据E(LK,Rms)。
在步骤S106中,存储器卡对在步骤S105中计算的加密数据E(LK,Rms)与在步骤S103中从主机设备接收的并且在步骤S104中存储在存储器中的除了加锁指令以外的加密数据E(LK,Rms)进行比较和检查[E(LK,Rms)=E(LK,Rms)?],看这两个数据是否相等。
当通过比较和检查判断这两个值相等时,证明主机设备为具有有效且正确的ID和加锁密钥(LK)的集数据的有效单元。在步骤S107中,响应加锁指令进行加锁,因此,假如解锁成功,则允许访问存储器,后面将对解锁进行描述。信息存储器件将已经进行了加锁的主机设备的密钥集[ID,LK]存储在包括非易失存储器(NVM)如闪存存储器的存储器220中。
当在步骤S106中通过比较和检查判断这两个值不相等时,在步骤S108中,判断已经发送了加锁指令的主机设备是没有正确的ID和加锁密钥(LK)的集数据的未被授权的单元。不进行加锁,并且向主机设备发送错误报告。
(解锁)
下面将描述对通过应用上述的加锁主密钥(LMK)进行加锁而设置的锁进行解锁或释放,即取消对信息存储器件的访问控制。
图7示出了在解锁处理中,在主机设备与信息存储器件之间进行的处理的顺序。将主机设备与信息存储器件相互连接,以便彼此进行数据传输。主机设备向信息存储器件输出随机数生成指令。当接收到随机数生成指令时,信息存储器件生成预定长度如16字节的随机数(Rms)并且将生成的随机数(Rms)和在前面的加锁处理中已经存储在存储器中的主机设备的ID,即已经进行过加锁的主机设备的ID,发送到主机设备。信息存储器件将生成的随机数(Rms)存储在信息存储器件的控制器中的存储器如RAM中。
当接收到来自信息存储器件的随机数(Rms)时,主机设备对照主机设备的ID对接收到的ID进行检查,看这两个ID是否相等。当两个ID不相等时,该锁是另一个主机设备设置的并且不能被释放。
当接收到的ID和主机设备的ID相等时,则该锁是由这个主机设备设置的并且可以被释放或解锁。在这种情况下,主机设备利用作为加密密钥存储在主机设备的存储器中的加锁密钥(LK)对接收到的随机数(Rms)进行加密E(LK,Rms)并且除了解锁指令以外还将结果数据发送到信息存储器件。
当接收到经过加密的数据E(LK,Rms)时,信息存储器件读取存储在信息存储器件的存储器中的主机设备ID,即已经进行过加锁的主机设备的ID,并且通过应用加锁主密钥(LMK)为读取的ID计算哈希值,由此计算与经过进行过加锁的主机设备的ID相关的加锁密钥(LK)。即,信息存储器件计算与已经进行过加锁的主机设备的ID相关的加锁密钥(LK):
LK=H(LMK,ID)。
信息存储器件通过应用由上述的哈希值而计算出计算的加锁密钥(LK),对存储在信息存储器件的存储器中的随机数Rms进行加密E(LK,Rms),并且对照从主机设备接收的加密数据E(LK,Rms)对这个加密数据进行检查,看这两个数据是否相等。
当从主机设备接收的数据E(LK,Rms)与信息存储器件计算的加密数据E(LK,Rms)相等时,证明解锁指令是来自具有有效ID和LK集数据的主机设备的解锁请求。进行解锁并且将解锁完成报告发送到主机设备。当两个数据不相等时,判断该主机设备不是具有有效ID和LK集数据的主机设备并且该解锁指令是来自未被授权的单元的解锁请求。不进行解锁并且将错误报告发送到主机设备。
由信息存储器件进行解锁的意思是释放锁,即,允许访问包括作为用于存储数据如内容的区域的闪存存储器等的存储器(图3中的存储器220)。
下面将参照图8的流程图对解锁处理的步骤进行描述。在步骤S201中,用作信息存储器件的存储器卡响应从主机设备接收的随机数生成请求指令生成随机数(Rms)。在步骤S202中,主机设备除了读取前面已经进行过加锁的主机设备的ID以外,还读取生成的随机数。
当从存储器卡读取的ID与主机设备的主机ID相等时,主机设备判断可以对该锁进行解锁。在步骤S203中,主机设备除了向用作信息存储器件的存储器卡发送解锁指令以外,还发送通过利用主机设备的加锁密钥(LK)对接收到的随机数进行加密而生成的加密数据E(LK,Rms)。
在步骤S204中,存储器卡将接收到的加密数据E(LK,Rms)写入信息存储器件中的存储器中。在步骤S205中,存储器卡读取在前面的加锁处理中存储在存储器中的,已经进行过加锁的主机设备的ID,并且通过应用存储在存储器卡的存储器中的加锁主密钥(LMK),为读取的ID计算哈希值,由此计算与ID相关的加锁密钥(LK):
H(LMK,ID)=LK。
根据计算的加锁密钥(LK),存储器卡对前面在步骤S201中生成的随机数(Rms)进行加密并且生成用作检查数据的加密数据E(LK,Rms)。
在步骤S206中,存储器卡对在步骤S205中计算的加密数据E(LK,Rms)与在步骤S203中从主机设备接收的并且在步骤S204中存储在存储器中的除了解锁指令以外的加密数据E(LK,Rms)进行比较和检查[E(LK,Rms)=E(LK,Rms)?],看这两个数据是否相等。
当通过比较和检查判断这两个值相等时,证明主机设备为具有有效且正确的ID和加锁密钥(LK)集数据的有效单元。在步骤S207中,响应解锁指令进行解锁,因此允许访问存储器。相反,当在步骤S206中通过比较和检查判断这两个值不相等时,在步骤S208中,将已经发送了解锁指令的主机设备判断为没有应用于加锁的正确的ID和加锁密钥(LK)集数据的未被授权的单元。不进行解锁,即,不释放锁,并且将错误报告发送到主机设备。
如上所述,按照本例的处理,只允许具有主机设备ID和与主机设备ID相关的加锁密钥(LK)的有效集数据的主机设备对信息存储器件进行加锁。只允许已经进行过加锁的主机设备对锁进行解锁或释放。在上述的加锁和解锁处理中,进行仅是信息存储器件对主机设备进行验证的单边验证。减轻了主机设备的处理负荷并且高效率地进行处理。
在上述的加锁和解锁处理中,在信息存储器件侧应用在每个处理中生成的随机数。不能应用在过去的处理中记录的数据,由此有效地防止了基于过去处理的轨迹的未被授权的处理。
[按照单元组加锁]
上述的加锁和解锁处理是由每个主机设备对信息存储器件进行的。只能由已经对信息存储器件加锁的主机设备对锁进行解锁。在多个主机设备使用一个信息存储器件(存储器卡)的情况下,一个主机设备(单元A)在信息存储器件(存储器卡)上存储数据并且对这个存储器卡加锁,而另一个主机设备(单元B)可能要使用这个信息存储器件(存储器卡)。
在这种情况下,除非主机设备(单元A)将锁释放,否则主机设备(单元B)不能将该锁释放。下面将描述用于解决这个问题的方法的例子。即,主机设备能够单独地对信息存储器件进行加锁和解锁。下面将参照图9示意性地描述该方法的例子。
加锁是使对信息存储器件520如存储器卡的作为用于存储数据如内容的区域的存储器(图3中的存储器220)如闪存存储器的访问控制有效。解锁是取消访问控制。这些与前面的处理的例子相同。由主机设备510进行加锁和解锁。
如已经参照图1和2进行描述的,主机设备510包括信息处理设备如PC、PDA、数码相机和DSC(数字静止相机),它们中的每一个都具有用于与信息存储器件520如存储器卡进行数据传输的接口,都将数据写到信息存储器件520或者读取和使用来自信息存储器件520的数据。主机设备510还包括用作专门对信息存储器件520如存储器卡进行加锁/解锁的单元的加锁/解锁单元512。
主机设备中的存储器515如ROM存储用作每个主机设备所独有的标识符的IDs(例如16字节数据)和用作应用于加锁和解锁的密钥数据的加锁密钥(LKs)(例如,8个字节数据)。如上所述,IDs和LKs是一组与该处理的前面的例子中的ID和LK对应的数据集。与前面的处理相同,可以将IDs和LKs应用于加锁和解锁。
该IDs是基本ID,LKs是基本加锁密钥。在制造每个主机设备时,IDs和LKs被写入每个主机设备中的存储器如ROM并且不能被用户重写。与前面的在其中应用LMK的处理的例子中相同,可以将基本ID(IDs)和基本加锁密钥(LKs)应用于其中主机设备与信息存储器件具有一对一关系的加锁和解锁。由每个主机设备独有的基本ID和基本加锁密钥组成的密钥集[IDs,LKs]被称为基本密钥集。
将通过应用这个基本密钥集[IDs,LKs]进行的加锁称为标准加锁。通过从用作主机设备的信息处理设备向信息存储器件输出标准加锁指令,进行标准加锁。通过输出解锁指令,进行解锁。
在主机设备中的存储器515如ROM至少可以存储一个用作副ID和副加锁密钥的集数据的副密钥集[IDen,LKen](n=1,2,…),副密钥集用作可以复制和提供给另一个主机设备的密钥集。
这个副密钥集[IDen,LKen]是可以被普遍存储在多个主机设备中的密钥。利用以下描述的处理,可以通过信息存储器件将存储在另一个主机设备中的副密钥集[IDen,LKen]复制并且存储在再另一个主机设备中。
通过应用可以通过信息存储器件(存储器卡)复制并且输出到另一个主机设备的副密钥集[IDen,LKen]对信息存储器件(存储器卡)进行的加锁称为出口加锁。
将通过应用副密钥集[IDen,LKen]进行的加锁称为出口加锁。通过从用作主机设备的信息处理设备向信息存储器件输出出口加锁指令,进行出口加锁。通过输出解锁指令进行解锁。
可以将主机设备从经过出口加锁的信息存储器件(存储器卡)得到的副密钥集[IDen,LKen]写入主机设备中的存储器。这种对副密钥集的复制和写入被称为盖印。通过盖印,形成由具有相同副密钥集[IDen,LKen]的多个主机设备组成的组。
因此,副密钥集[IDen,LKen]是可应用于其中能够输出副密钥集[IDen,LKen]的加锁即出口加锁的密钥集。通过给ID和LK加上[e]表示副密钥集[IDen,LKen],其中,[en]中的n表示与定义的组的编号对应的副密钥集的编号。
每个主机设备可以存储多个不同的副密钥集。例如,将副密钥集1[IDe1,LKe1]设置为在包括PC(个人计算机)-a、PC-b和PDA(个人数字助理)-a的三个主机设备的组当中共用的公共副密钥集(sub 1);将副密钥集2[IDe2,LKe2]设置为在包括PC-a、PDA-a和PDA-b的三个主机设备的组当中共用的公共副密钥集(sub 2)。在这种情况下,每个主机设备将相应的包括基本ID(IDs)和基本加锁密钥(LKs)的基本密钥集[IDs,LKs]存储在存储器中。此外,主机设备存储下面的副密钥集,每个副密钥集包括副ID和副加锁密钥:
PC-a存储[IDe1,LKe1]和[IDe2,LKe2];
PC-b存储[IDe1,LKe1];
PDA-a存储[IDe1,LKe1]和[IDe2,LKe2];以及
PDA-b存储[IDe2,LKe2]。
通过将由副ID和副加锁密钥的集数据组成的副密钥集[IDen,LKen]写入每个主机设备的存储器515中,每个主机设备成为了包括至少一个主机设备的主机设备组n的一个成员。组n的每个成员应用普遍存储的副ID(IDn)和公共的副密钥(LKn)对一个信息存储器件(存储器卡)进行加锁和解锁。
相反,在信息存储器件520如存储器卡中的控制器中的存储器525如ROM存储加锁主密钥(LMK)。存储在信息存储器件520中的加锁主密钥(LMK)和存储在主机设备中的ID(包括IDs和IDen)和加锁密钥(LK(包括LKs和LKen))具有如下关系:
LK=H(LMK,ID)。
加锁主密钥(LMK)与ID和LK的关系与前面描述的其中应用了LMK的处理中的关系完全一样。通过应用加锁主密钥LMK为基本ID(IDs)计算哈希值,计算基本加锁密钥(LKs)。通过应用加锁主密钥LMK为副ID(IDen)计算哈希值,计算副加锁密钥(LKen)。
以下将参照图10对使用基本密钥集[IDs,LKs]和副密钥集[IDen,LKen]的加锁模式进行描述。加锁模式包括在图10的部分(a)到(c)中示出的三种模式。
部分(a)示出了其中应用了由每个主机设备510所独有的基本ID(IDs)和基本加锁密钥(LKs)组成的基本密钥集[IDs,LKs]531的标准加锁。
通过从主机设备510向信息存储器件520输出标准加锁指令进行通过应用基本密钥集[IDs,LKs]531的标准加锁。通过输出解锁指令,进行解锁。
当信息存储器件520被标准加锁时,将基本密钥集[IDs,LKs]存储在信息存储器件(存储器卡)520的存储器(闪存存储器)的标准加锁密钥集存储区域541中。从经过加锁的信息存储器件(存储器卡)520不输出应用于标准加锁的基本密钥集[IDs,LKs]。只能由具有相同基本密钥集[IDs,LKs]的主机设备,即已经进行过标准加锁的主机设备,对信息存储器件520进行解锁。
与其中应用了LMK的前述处理相同,可以将由基本ID(IDs)和基本加锁密钥(LKs)组成的基本密钥集[IDs,LKs]应用于其中主机设备与信息存储器件具有一对一关系的加锁和解锁。可以进行加锁和解锁,它们与参照图5到图8描述的加锁和解锁相似。
部分(b)示出了其中应用了由在多个主机设备当中共用的副ID(IDen)和副加锁密钥(LKen)的组成副密钥集[IDen,LKen]532的出口加锁。
通过从主机设备510向信息存储器件520输出出口加锁指令进行通过应用副密钥集[IDen,LKen]532的出口加锁。通过输出解锁指令进行解锁。
当信息存储器件520被出口加锁时,将副密钥集[IDen,LKen]存储在信息存储器件(存储器卡)520的存储器(闪存存储器)的出口加锁密钥集存储区域542中。当进行这种类型的加锁时,可以由另一个主机设备通过盖印从经过加锁的信息存储器件(存储器卡)520得到应用于出口加锁的副密钥集[IDen,LKen],后面将对此进行详细描述。
当信息存储器件520被出口加锁时,可以由已经对信息存储器件520进行了加锁的主机设备并且可以由已经进行过盖印并且已经得到了应用于出口加锁的副密钥集[IDen,LKen]的主机设备对信息存储器件520进行解锁。
部分(c)示出了其中应用了可以由在多个主机设备510当中共用的副ID(IDen)和副加锁密钥(LKen)组成的副密钥集[IDen,LKen]532的标准加锁。将其称之为组加锁。
通过从主机设备510向信息存储器件520输出标准加锁指令进行通过应用副密钥集[IDen,LKen]532的标准加锁,即组加锁。通过输出解锁指令进行解锁。应用于组加锁的密钥集是副密钥集[IDen,LKen]532。
在本质上,组加锁与基本加锁相似。应用于组加锁的密钥集是副密钥集[IDen,LKen]532。当信息存储器件520被组加锁时,将副密钥集[IDen,LKen]存储在信息存储器件520的存储器(闪存存储器)的标准加锁密钥集存储区域541中。当进行这种类型的加锁时,将应用于组加锁的副密钥集[IDen,LKen]存储在标准加锁密钥集存储区域541中。因此,不从经过加锁的信息存储器件(存储器卡)520输出副密钥集[IDen,LKen]。
只能由具有相同副密钥集[IDen,LKen]的主机设备对经过组加锁的信息存储器件520进行解锁。在这种情况下,这些主机设备不仅包括已经对信息存储器件520进行过组加锁的主机设备,而且包括预先已经得到了相同的副密钥集[IDen,LKen]的主机设备。
例如,通过应用相同的副密钥集[IDen,LKen]预先进行出口加锁。在进行出口加锁的时候,主机设备进行盖印,得到相同的副密钥集[IDen,LKen]并且将副密钥集[IDen,LKen]存储在存储器中。这个主机设备能够进行解锁。
在通过应用副密钥集[IDen,LKen]进行标准加锁即组加锁处理中的加锁和解锁的顺序与通过应用LMK进行的加锁和解锁的顺序(见图5到图8)相似。区别仅在于,利用盖印,多个主机设备可以进行加锁和解锁。
以下将对通过应用由可以在多个主机设备当中共用的副ID(IDen)和副加锁密钥(LKen)组成的副密钥集[IDen,LKen]进行的加锁、通过信息存储器件(存储器卡)将副密钥集[IDen,LKen]复制和存储到主机设备以及对经过出口加锁的信息存储器件(存储器卡)进行解锁或释放等进行描述。
(基于副密钥集的加锁)
下面将详细描述通过应用由副ID(IDen)和副加锁密钥(LKen)组成的副密钥集[IDen,LKen]对信息存储器件(存储器卡)进行的加锁。
如上所述,利用通过应用副密钥集[IDen,LKen]对信息存储器件(存储器卡)加锁,将信息存储器件(存储器卡)出口加锁,其中,通过信息存储器件(存储器卡)可以将应用于加锁的副密钥集复制并且输出到另一个主机设备。
图11示出了在基于副密钥集进行加锁处理的过程中,在主机设备与信息存储器件之间进行的处理的顺序。将主机设备与信息存储器件相互连接,以便彼此进行数据传输。
信息存储器件包括图11中示出的加锁状态标志551。加锁状态标志551中的每一个保持一个表示信息存储器件的加锁状态的值。上部中的NVM包括存储在存储器220如在图3中示出的闪存存储器的NVM(非易失存储器)区域中的标志。下部包括存储在控制器210中的RAM 213中的标志。当关闭信息存储器件时,将RAM中的标志删除,而保持NVM中的标志数据。当将标志重新写入RAM时,复制NVM中的标志数据。当电源被关闭然后被打开时,将NVM中的标志信息复制到RAM。SL表示标准加锁;EL表示出口加锁;1表示加锁状态;0表示解锁状态。
标准加锁是其中不能将应用于加锁的密钥集[ID,LK]输出的加锁模式。出口加锁是其中能将应用于加锁的密钥集[ID,LK]输出的加锁模式。当SL=1时,信息存储器件被标准加锁。当EL=1时,信息存储器件被出口加锁。
信息存储器件(存储器卡)具有在存储器(闪存存储器(NVM))中的分别用于存储应用于标准加锁的密钥集和应用于出口加锁的密钥集的数据存储区域。
在初始状态中,如图所示,SL=0并且EL=0,其中既没有进行标准加锁(SL)也没有进行出口加锁(EL)。即,所有主机设备都可以访问信息存储器件的存储器。
在初始状态中,一个主机设备向信息存储器件输出随机数生成指令。当接收到随机数生成指令时,信息存储器件生成预定长度如16字节的随机数(Rms),并且将生成的随机数发送到主机设备。信息存储器件将生成的随机数(Rms)存储在控制器中的存储器如RAM中。
当接收到来自信息存储器件的随机数(Rms)时,主机设备将预先已经存储在主机设备中的存储器中的副加锁密钥(LKen)用作加密密钥,对接收到的随机数(Rms)进行加密E(LKen,Rms)。可以将各种算法应用为加密算法。例如,应用DES加密算法。
主机设备将副加锁密钥(LKen)用作加密密钥,对接收到的随机数(Rms)进行加密E(LKen,Rms)并且将结果数据E(LKen,Rms)、由主机设备预先存储在主机设备中的存储器中的用作与副加锁密钥(LKen)相关的集数据的副ID(IDen)以及加锁指令发送到信息存储器件。
当接收到包括IDen和E(LKen,Rms)的数据时,信息存储器件通过应用存储在信息存储器件的存储器中的加锁主密钥(LMK)为接收到的副ID(IDen)计算哈希值,由此计算与接收到的副ID(IDen)相关的副加锁密钥(LKen)。即,信息存储器件计算与接收到的副ID(IDen)相关的副加锁密钥(LKen):
LKen=H(LMK,IDen)。
接收到的副ID(IDen)被存储在信息存储器件的存储器中。接收到的副ID(IDen)被用在解锁处理中,后面将对此进行描述。
通过应用由上述的哈希值计算得到的副加锁密钥(LKen),信息存储器件对存储在信息存储器件的存储器中的随机数(Rms)进行加密E(LKen,Rms),并且进行检查,看这个加密数据是否与从主机设备接收到的加密数据E(LKen,Rms)相等。可以应用各种算法,只要它们与主机设备使用的算法相同即可。
当从主机设备接收到的数据E(LKen,Rms)等于由信息存储器件计算的加密数据E(LKen,Rms)时,证明指令是来自具有有效副ID(IDen)和副加锁密钥(LKen)集数据的主机设备的加锁请求。进行出口加锁,并且将加锁完成报告发送到主机设备。当从主机设备接收到的数据E(LKen,Rms)不等于由信息存储器件计算的加密数据E(LKen,Rms)时,则判断该主机设备不是具有有效副ID(IDen)和副加锁密钥(LKen)集数据的主机设备,并且判断该指令是来自未被授权的单元的加锁请求。不进行出口加锁并且将错误报告发送到主机设备。
由信息存储器件进行的出口加锁是指,假如通过应用副ID和副加锁密钥进行解锁,则允许访问包括作为用于存储数据如内容的闪存存储器的存储器(图3中的存储器220),后面将描述通过应用副ID和副加锁密钥进行解锁。应用于出口加锁的出口密钥集[IDen,LKen]被存储在信息存储器件(存储器卡)的存储器(闪存存储器(NVM))中的出口加锁密钥集存储区域中。重写加锁状态标志。
如图所示,当进行出口加锁时,使加锁状态标志变为表示出口加锁有效的EL=1,并且将加锁状态标志存储在NVM和RAM中。通过对信息存储器件中的控制器中的RAM 213(见图3)设置EL=1并且随后将EL=1复制到NVM(包括闪存存储器等的存储器220),使这些标志改变。当在这种状态中关闭电源时,将RAM中标志信息删除而保持NVM中的标志信息。随后,当打开电源时,将NVM(EL=1)中的标志信息复制到RAM,并且控制器210(见图3)基于RAM中的标志信息(EL=1)进行处理。
标志信息EL=1表示信息存储器件被出口加锁。可以通过盖印将存储在信息存储器件(存储器卡)的NVM(包括闪存存储器等的存储器220)的出口加锁密钥集存储区域中的副密钥输出到另一个主机设备,后面将对此进行描述。
下面将参照图12的流程图对出口加锁处理的步骤进行描述。在步骤S301中,用作信息存储器件的存储器卡响应从主机设备接收的随机数生成请求指令,生成随机数(Rms)。在步骤S302中,主机设备读取生成的随机数。在步骤S303中,除了加锁指令以外,主机设备还获得已经存储在主机设备的存储器中的副ID(IDen),主机设备利用已经存储在主机设备的存储器中的副加锁密钥(LKen)对接收到的随机数(Rms)加密从而生成数据E(LKen,Rms),并且将包括IDen和E(LKen,Rms)的这些相关数据发送到用作信息存储器件的存储器卡。
在步骤S304中,存储器卡将接收到的副ID(IDen)和加密数据E(LKen,Rms)写入信息存储器件中的存储器中。在步骤S305中,存储器卡通过应用存储在存储器卡的存储器中的加锁主密钥(LMK)为接收到的副ID(IDen)计算哈希值,由此计算与接收到的副ID(IDen)相关的副加锁密钥(LKen)。即,信息存储器件计算与接收到的副ID(IDen)相关的副加锁密钥(LKen):
H(LMK,IDen)=LKen。
根据计算的副加锁密钥(LKen),存储器卡对前面在步骤S301中生成的随机数(Rms)加密,并且生成用作检查数据的加密数据E(LKen,Rms)。
在步骤S306中,存储器卡对在步骤S305中计算的加密数据E(LKen,Rms)与在步骤S303中从主机设备接收的并且在步骤304中存储在存储器中的除了加锁指令以外的加密数据E(LKen,Rms)进行比较和检查[E(LKen,Rms)=E(LKen,Rms)?],看这两个数据是否相等。
当通过比较和检查确认这两个值相等时,证明主机设备为具有用作有效且正确的副ID(IDen)和加锁密钥(LKen)的集数据的副密钥集[IDen,LKen]的有效单元。在步骤S307中,响应加锁指令进行加锁,因此,如果通过应用副密钥集[IDen,LKen]进行解锁或释放成功,则允许访问存储器,后面将对此进行描述。上述的加锁状态标志被设置为EL=1。
当在步骤S306中通过比较和检查判断E(LKen,Rms)=E(LKen,Rms)不成立时,在步骤S308中,将已经发送了加锁指令的主机设备判断为没有正确的副ID(IDen)和副加锁密钥(LKen)的集数据的未被授权的单元。不进行加锁,并且将错误报告发送到主机设备。
可以通过与前面在[基于加锁主密钥(LMK)的处理]中描述的解锁相似的处理,由具有与在对信息存储器件进行加锁的处理中使用的用作副ID(IDen)和副加锁密钥(LKen)的集数据相同的副密钥集[IDen,LKen]的主机设备对已经通过上述处理被出口加锁的经过出口加锁的信息存储器件进行解锁。即,通过用副ID(IDen)和副加锁密钥(LKen)代替ID和加锁密钥可以使信息存储器件解锁。
另一个没有与在对信息存储器件进行加锁的处理中使用的副密钥集[IDen,LKen]相同的密钥集的主机设备不能使信息存储器件解锁,即,除非这个主机设备得到应用于对信息存储器件进行加锁的副密钥集[IDen,LKen],否则它就不能访问信息存储器件。
具有用作有效基本ID(IDs)和基本加锁密钥(LKs)的集数据的基本密钥集[IDs,LKs]的主机设备可以从信息存储器件获得存储在经过出口加锁的信息存储器件中的副密钥集[IDen,LKen]。这个主机设备可以通过应用获得的副密钥集[IDen,LKen]使信息存储器件解锁。通过信息存储器件得到副密钥集[IDen,LKen]被称为盖印。
当根据其中可以将副密钥集[IDen,LKen]输出到另一个主机设备的副密钥集[IDen,LKen]对信息存储器件加锁时,信息存储器件被出口加锁。
通过从经过出口加锁的信息存储器件获得(盖印)应用于出口加锁的副密钥集[IDen,LKen],主机设备成为由具有相同副密钥集[IDen,LKen]的多个主机设备组成的组中的一员。随后,这个主机设备可以应用获得的副密钥集[IDen,LKen]使信息存储器件解锁。以下将对盖印和解锁进行详细描述。
(盖印和解锁)
下面将对盖印或由主机设备从经过出口加锁的信息存储器件获得由副加锁密钥(LKen)和副ID(IDen)组成的副密钥集[IDen,LKen]以及使经过出口加锁的信息存储器件解锁进行描述。
图13示出了在主机设备与信息存储器件之间进行的盖印和解锁处理的顺序。将主机设备与信息存储器件相互连接,以便彼此进行数据传输。如图所示,将信息存储器件的加锁状态标志设置为表示出口加锁有效的EL=1并且存储在NVM和RAM中。
主机设备没有由应用于对信息存储器件进行出口加锁的副ID(IDen)和副加锁密钥(LKen)组成的副密钥集[IDen,LKen]。信息存储器件将副密钥集[IDen,LKen]存储在出口密钥存储区域中。信息存储器件处于所谓出口加锁状态。
主机设备向信息存储器件输出随机数生成指令。当接收到随机数生成指令时,信息存储器件生成预定长度如16字节的随机数(Rms),并且将生成的随机数(Rms)和在前面的出口加锁处理中已经存储在存储器中的副ID(IDen),即应用于出口加锁的副密钥集[IDen,LKen]中的副ID(IDen),发送到主机设备。信息存储器件将生成的随机数(Rms)存储在控制器中的存储器如RAM中。
当接收到来自信息存储器件的副ID(IDen)和随机数(Rms)时,主机设备对照主机设备的基本ID(IDs)检查接收到的副ID(IDen),看两个ID是否相等。当两个ID相等时,可以通过应用基本加锁密钥(LKs)使信息存储器件解锁,这与其中应用LMK的上述处理相似(见图7)。
当接收到的副ID不等于主机设备的基本ID(IDs)时,这意味着信息存储器件是被另一个主机设备加锁的。通过盖印或获得接收到的副ID(IDen)和副加锁密钥(LKen),该主机设备能够像其它已经通过应用副密钥集[IDen,LKen]进行了出口加锁的主机设备一样加入同一个组。
即,主机设备进行盖印以便得到副ID(IDen)和副加锁密钥(LKen),并且将这些数据作为集数据,即副密钥集[IDen,LKen],存储在主机设备的存储器中,由此加入组。通过应用得到的副密钥集[IDen,LKen],主机设备可以使经过出口加锁的信息存储器件解锁。当进行盖印时,主机设备将从信息存储器件接收到的副ID(IDen)存储在存储器中。
进行盖印的主机设备将已经存储在主机设备中的存储器中的基本加锁密钥(LKs)用作加密密钥,对接收到的随机数(Rms)进行加密E(LKs,Rms)并且将结果数据、基本ID(IDs)和标准加锁指令发送到信息存储器件。由于这个加锁处理是通过应用基本加锁密钥(LKs),将标准加锁添加到已经通过应用副加锁密钥(LKen)被出口加锁的出口加锁信息存储器件,因此这个加锁处理被称为过加锁。
当接收到来自主机设备的基本ID(IDs)和加密数据E(LKs,Rms)时,信息存储器件通过应用加锁主密钥(LMK)为接收到的基本ID(IDs)计算哈希值,由此计算与基本ID(IDs)相关的基本加锁密钥(LKs)。即,信息存储器件计算与基本ID(IDs)相关的基本加锁密钥(LKs):
LK=H(LMK,IDs)。
通过应用由上述的哈希值计算计算的基本加锁密钥(LKs),信息存储器件对存储在信息存储器件的存储器中的随机数Rms进行加密E(LKs,Rms),并且进行检查,看这个加密数据是否与从主机设备接收到的加密数据E(LKs,Rms)相等。
当从主机设备接收到的数据E(LKs,Rms)与信息存储器件计算的加密数据E(LKs,Rms)相等时,证明该指令是来自具有用作有效基本ID(IDs)和基本加锁密钥(LKs)的集数据的基本密钥集[IDs,LKs]的主机设备的过加锁请求。进行过加锁,并且将过加锁完成报告发送到主机设备。
当从主机设备接收到的数据E(LKs,Rms)与信息存储器件计算的加密数据E(LKs,Rms)不相等时,判断该主机设备不是具有用作有效基本ID(IDs)和基本加锁密钥(LKs)的集数据的基本密钥集[IDs,LKs]的主机设备,并且该指令是来自未被授权的单元的过加锁请求。不进行过加锁,并且将错误报告发送到主机设备。
由信息存储器件执行的过加锁是对经过出口加锁的信息存储器件进行标准加锁。如图所示,在NVM和RAM中的信息存储器件的加锁状态标志被设置为表示出口加锁有效的EL=1。通过进行过加锁,将表示标准加锁有效的SL=1设置在RAM中。在关闭电源之前,将在RAM中设置的标志信息复制到NVM中。
当接收到过加锁完成报告时,主机设备连续进行盖印和解锁。主机设备再次向信息存储器件发送随机数生成指令。
当接收到随机数生成指令时,信息存储器件生成第二随机数(Rms2)并且向信息存储器件发送下列包括IDs、Rms2、IDen和E(LKs,LKen)的相关数据,即:
生成的随机数(Rms2);
已经进行过标准加锁的主机设备的基本ID(IDs);
应用于出口加锁的副ID(IDen);以及
通过利用与基本ID(IDs)相关的基本加锁密钥(LKs)对与副ID(IDen)相关的副加锁密钥(LKen)进行加密生成的加密数据E(LKs,LKen)。
信息存储器件将生成的随机数(Rms2)存储在控制器中的存储器如RAM中。
当从信息存储器件接收到包括IDs、Rms2、IDen和E(LKs,LKen)的数据时,主机设备通过应用存储在主机设备的存储器中的基本加锁密钥(LKs)对加密数据E(LKs,LKen)进行解密,从而获得副加锁密钥(LKen)。这是一个与前面得到的副ID(IDen)相关的副加锁密钥(LKen)。将获得的副密钥集[IDen,LKen]存储在存储器中。通过进行盖印,主机设备加入编号为n的组。
接着,主机设备对信息存储器件进行解锁。根据通过应用基本加锁密钥(LKs)进行解密得到的副加锁密钥(LKen)和从信息存储器件接收到的加密数据E(LKs,LKen),主机设备对从信息存储器件接收到的随机数(Rms2)进行加密并且生成加密数据E(LKen,Rms2)。主机设备将加密数据E(LKen,Rms2)和解锁指令发送到信息存储器件。
当接收到来自主机设备的解锁指令和加密数据E(LKen,Rms2)时,信息存储器件通过应用加锁主密钥(LKs)为已经存储在信息存储器件的存储器中的副ID(IDen)计算哈希值,由此计算与副ID(IDen)相关的副加锁密钥(LKen)。即,信息存储器件计算与副ID(IDen)相关的副加锁密钥(LKen):
LKen=H(LMK,IDen)。
信息存储器件通过应用由上述的哈希值计算计算的副加锁密钥(LKen),对存储在信息存储器件的存储器中的随机数Rms2进行加密E(LKen,Rms2),并且进行检查,看这个加密数据是否与从主机设备接收到的加密数据E(LKen,Rms2)相等。
当从主机设备接收到的数据E(LKen,Rms2)与信息存储器件计算的加密数据E(LKen,Rms2)相等时,证明该指令是来自具有有效副ID(IDen)和副加锁密钥(LKen)的集数据的主机设备的锁释放请求,即解锁请求。进行解锁,并且将解锁完成报告发送到主机设备。
当从主机设备接收到的数据E(LKen,Rms2)与信息存储器件计算的加密数据E(LKen,Rms2)不相等时,判断该主机设备不是具有用作包括有效副ID(IDen)和副加锁密钥(LKen)的集数据的副密钥集[IDen,LKen]的主机设备,并且该指令是来自未被授权的单元的解锁请求。不进行解锁,并且将错误报告发送到主机设备。
通过对信息存储器件解锁,加锁状态标志从EL=1变为EL=0。还使用作对经过出口加锁的信息存储器件进行过加锁的标准加锁释放,并且使SL=1变为SL=0。即,根据对出口加锁的释放使标准加锁释放。
加锁状态标志改变的顺序如下。首先,对存储在控制器中的RAM中的标志进行重写。接着,例如在关闭电源之前,将RAM中的标志信息适当地复制到NVM中。当再次打开电源时,将NVM中的标志信息复制到RAM中。控制器根据RAM中的标志信息进行访问控制。
下面将参照图14和15的流程图,对盖印或者获得由来自经过出口加锁的信息存储器件的副加锁密钥(LKen)和副ID(IDen)组成的副密钥集[IDen,LKen]的过程以及对经过出口加锁的信息存储器件进行解锁的过程的步骤进行描述。
在步骤S401中,用作信息存储器件的存储器卡响应从主机设备接收的随机数生成请求,生成随机数(Rms)。在步骤S402中,主机设备读取生成的随机数和已经从已经对信息存储器件进行过出口加锁的主机设备发送的并且已经被存储在信息存储器件的存储器的出口加锁密钥集存储区域中的副ID(IDen)。此时,主机设备得到副密钥集[IDen,LKen]的副ID(IDen)。
由于主机设备判断从存储器卡读取的副ID(IDen)与主机设备的基本ID(IDs)不相等,因此主机设备判断该信息存储器件不是被标准加锁而是被出口加锁。在步骤S403中,除了标准加锁指令(用作过加锁)以外,主机设备还向用作信息存储器件的存储器卡发送通过利用主机设备的基本加锁密钥(LKs)和主机设备的基本ID(IDs)对接收到的随机数(Rms)进行加密生成的加密数据E(LKs,Rms)。
在步骤S404中,信息存储器件(存储器卡)将从主机设备接收的基本ID(IDs)和加密数据E(LKs,Rms)写入信息存储器件的存储器中。在步骤S405中,存储器卡通过应用存储在存储器卡的存储器中的加锁主密钥(LMK)为接收到的基本ID(IDs)计算哈希值,由此计算与基本ID(IDs)相关的基本加锁密钥(LKs)。即,存储器卡计算与基本ID(IDs)相关的基本加锁密钥(LKs):
H(LMK,IDs)=LKs。
根据计算的基本加锁密钥(LKs),存储器卡对前面在步骤S401中生成的随机数(Rms)进行加密,生成用作检查数据的加密数据E(LKs,Rms)。
在步骤S406中,存储器卡对在步骤S405中计算的加密数据E(LKs,Rms)与在步骤S403中从主机设备接收的并且在步骤S404中存储在存储器中的除了标准加锁指令以外的加密数据E(LKs,Rms)进行比较和检查[E(LKs,Rms)=E(LKs,Rms)?],看这两个数据是否相等。
当通过比较和检查判断这两个值相等时,证明主机设备为具有用作包括有效且正确的基本ID(IDs)和基本加锁密钥(LKs)的集数据的基本密钥集[IDs,LKs]的有效单元。在步骤S407中,响应标准加锁指令进行标准加锁。这对应于其中对经过出口加锁的信息存储器件进行标准加锁的过加锁。在RAM中的信息存储器件的加锁状态标志被设置为表示出口加锁和标准加锁都有效的EL=1和SL=1。
当在步骤S406中通过比较和检查判断这两个值不相等时,在步骤S408中,将已经发送了标准加锁指令的主机设备判断为没有用作包括有效基本ID(IDs)和基本加锁密钥(LKs)的集数据的基本密钥集[IDs,LKs]的主机设备。不进行过加锁,并且将错误报告发送到主机设备。
当在步骤S407中执行用作过加锁的标准加锁时,程序进行到图15的当要进行盖印和解锁时的步骤S501。
当接收到过加锁完成报告时,主机设备再次向信息存储器件发送随机数生成指令。当接收到随机数生成指令时,在步骤S501中,信息存储器件生成第二随机数(Rms2)。在步骤S502中,主机设备读取来自信息存储器件的下列相关数据[IDs、Rms2、IDen和E(LKs,LKen)]:
生成的随机数(Rms2);
已经进行过标准加锁的主机设备的基本ID(IDs);
副ID(IDen);以及
通过利用与基本ID(IDs)相关的集数据的基本加锁密钥(LKs)对与副ID(IDen)相关的集数据的副加锁密钥(LKen)进行加密而生成的加密数据E(LKs,LKen)。
在步骤S503中,主机设备向信息存储器件发送锁释放请求或解锁指令。除了加密数据E(LKen,Rms2)以外,主机设备还发送这个解锁指令。
通过下列步骤生成加密数据E(LKen,Rms2)。在步骤S502中,主机设备读取来自信息存储器件的包括IDs、Rms2、IDen和E(LKs,LKen)的数据。主机设备通过应用存储在主机设备的存储器中的基本加锁密钥(LKs)对加密数据E(LKs,LKen)进行解密,从而得到副加锁密钥(LKen)。这是与前面得到的副ID(IDen)相关的副加锁密钥(LKen)。根据副加锁密钥(LKen),主机设备对从信息存储器件接收到的随机数(Rms2)进行加密,从而生成加密数据E(LKen,Rms2)。
主机设备将得到的副密钥集[IDen,LKen]存储在存储器中,并且由此完成盖印。换句话说,主机设备进行盖印以便加入编号为n的组。
在步骤S504中,已经从主机设备接收到加密数据E(LKen,Rms2)的信息存储器件将接收到的加密数据E(LKen,Rms2)写入存储器。在步骤S505中,信息存储器件计算检查数据。
通过下列步骤计算检查数据。通过应用加锁主密钥(LMK)为存储在信息存储器件的存储器中的副ID(IDen)计算哈希值,由此计算与副ID相关的副加锁密钥(LKen)。即,计算与副ID相关的副加锁密钥(LKen):
LKen=H(LMK,IDen)。
信息存储器件通过应用由上述的哈希值计算计算的副加锁密钥(LKen),对在步骤S501中生成的并且被存储在存储器中的随机数Rms2进行加密E(LKen,Rms2),由此生成检查数据。
在步骤S506中,信息存储器件将检查数据E(LKen,Rms2)与从主机设备接收的加密数据E(LKen,Rms2)进行比较,以检查它们是否相等。
当从主机设备接收的数据E(LKen,Rms2)与由信息存储器件计算的加密数据E(LKen,Rms2)相等时,判断该指令是来自具有用作包括有效副ID(IDen)和副加锁密钥(LKen)的集数据的副密钥集[IDen,LKen]的主机设备的锁释放请求,即,解锁请求。在步骤S507中,进行解锁并且将解锁完成报告发送到主机设备。当两个数据不相等时,判断该主机设备不是具有有效副密钥集[IDen,LKen]的主机设备并且该指令是来自未被授权的单元的解锁请求。不进行解锁。在步骤S508中,将错误报告发送到主机设备。
按照这个处理的例子,多个主机设备具有公共的副密钥集[IDen,LKen]并且能够对一个信息存储器件(存储器卡)进行加锁和解锁。当信息存储器件被出口加锁时,可以通过信息存储器件将副密钥集[IDen,LKen]复制并且存储在另一个主机设备中。因此,能够以灵活的方式形成组。假如主机设备具有有效的基本ID(IDs)和基本加锁密钥(LKs)并且主机设备能够进行过加锁,则可以在主机设备中进行对副密钥集[IDen,LKen]的复制或盖印。这样就防止了将副密钥集[IDen,LKen]复制到未被授权的单元。
与已经参照图10(c)进行的描述相同,通过应用副密钥集[IDen,LKen]进行标准加锁(=组加锁)也是可以实现的。当进行组加锁时,副密钥集[IDen,LKen]被存储在信息存储器件的标准加锁密钥存储区域中(见图10)并且不能被复制或输出到另一个主机设备。换句话说,只有已经获得了相同的副密钥集[IDen,LKen]的主机设备能够通过进行不包含盖印的正常解锁访问信息存储器件。
[保持加锁状态标志]
在上述的[按照单元组加锁]中,当对经过出口加锁的信息存储器件进行解锁时,使所有加锁状态标志复位,即,在NVM和RAM中设置表示出口加锁被释放的EL=0和表示标准加锁被释放的SL=0。在设置EL=0和SL=0的同时,当电源被关闭然后被打开时,由于已经在NVM中设置了EL=0和SL=0,因此,也在控制器的RAM中设置EL=0和SL=0。所有加锁状态被释放,并且每个主机设备都可以在不进行验证的情况下访问存储器。
当这种被解锁的信息存储器件被盗或者丢失并且落入未被授权的第三方用户的黑手时,这个未被授权的第三方用户可以在不进行验证的情况下访问存储器。当存储了机密信息时,这种情况是很不利的。
考虑到上述问题,下面将对以下例子进行描述。即使当经过出口加锁的信息存储器件被主机设备解锁然后被关闭时,信息存储器件仍然维持出口加锁。当再次打开电源时,假如出口加锁被释放,则允许对信息存储器件进行存储器访问。
在本例中,与前面参照图9对[按照单元组加锁]进行的描述相同,将由基本ID(IDs)和基本加锁密钥(LKs)组成的基本密钥集[IDs,LKs]存储在主机设备中的存储器如ROM中。至少可以将一个用作包括可以应用于出口加锁的副ID和副加锁密钥的集数据的副密钥集[IDen,LKen]存储在主机设备中的存储器如ROM中。加锁主密钥(LMK)被存储在信息存储器件中的控制器中的存储器如ROM中。存储在信息存储器件中的加锁主密钥(LMK)与存储在主机设备中的ID(包括IDs和IDen)和加锁密钥(LK(包括LKs和LKen))具有如下关系:
LK=H(LMK,ID)。
由主机设备按照与在前面描述的[基于加锁主密钥(LMK)的处理]中描述的顺序相似的顺序,基于基本ID(IDs)和基本加锁密钥(LKs)进行加锁和解锁。按照与在前面描述的[按照单元组加锁]中描述的顺序相似的顺序,基于副ID(IDen)和副加锁密钥(LKen)进行加锁。下面将对在这个处理的例子中,在盖印和解锁处理中保持加锁状态标志进行描述。
(在盖印和解锁处理中保持加锁状态标志)
以下将参照图16等,对由主机设备进行盖印或者从经过出口加锁的信息存储器件获得由副加锁密钥(LKen)和副ID(IDen)组成的副密钥集[IDen,LKen]、对经过出口加锁的信息存储器件进行解锁以及由信息存储器件保持加锁状态标志等进行描述。
在图16中示出的顺序图与参照示出了在主机设备与信息存储器件之间进行的盖印和使经过出口加锁的信息存储器件解锁的处理的图13所描述的顺序图基本相同。处理的步骤也相同。
图16中示出的顺序图与图13中示出的顺序图的不同之处在于,在顺序图的最后步骤中,在发送了解锁完成报告之后,信息存储器件在NVM中设置标志。具体地说,在前面描述的[按照单元组加锁]中描述的处理中,当经过出口加锁的信息存储器件被解锁时,在NVM和RAM中设置表示出口加锁被释放的EL=0和表示标准加锁被释放的SL=0。相反,按照本处理,在NVM中设置表示信息存储器件被出口加锁和标准加锁的EL=1和SL=1。
下面将参照图17对在NVM中设置加锁状态标志的处理进行详细描述。图17中示出的处理流程是说明在图16(与图13相似)中示出的顺序图中,在接收到锁释放请求(解锁指令)之后,由信息存储器件执行的处理步骤的流程。
在步骤S601中,信息存储器件(存储器卡)接收锁释放请求(解锁指令)。信息存储器件判断是否执行解锁指令。在步骤S602中,信息存储器件对照由信息存储器件生成的加密数据E(LKen,Rms2),检查从主机设备接收的除了解锁指令以外的加密数据E(LKen,Rms2)。这与在[按照单元组加锁]中描述的相似。
当从主机设备接收的加密数据E(LKen,Rms2)与由信息存储器件计算的加密数据E(LKen,Rms2)不相等时,在步骤S607中,向主机设备发送错误报告。处理结束。
相反,当从主机设备接收的加密数据E(LKen,Rms2)与由信息存储器件计算的加密数据E(LKen,Rms2)相等时,判断该指令是来自具有有效副密钥集[IDen,LKen]的主机设备的解锁请求。在步骤S603中,进行解锁,并且将解锁完成报告发送到主机设备。
在步骤S604中,信息存储器件(存储器卡)将存储在控制器中的RAM中的加锁状态标志(SL=1和EL=1)复制到NVM,并且将NVM中的加锁状态标志设置为SL=1和EL=1,其中,SL=1表示信息存储器件被标准加锁,EL=1表示信息存储器件被出口加锁。
在步骤S604中完成了复制标志之后,在步骤S605中,使控制器中的RAM中的加锁状态标志(SL=1和EL=1)复位,即,将RAM中的加锁状态标志设置为SL=0和EL=0,其中,SL=0表示信息存储器件没有被标准加锁,EL=0表示信息存储器件没有被出口加锁。
在这种情况下,即,当加锁状态标志被设置为SL=0和EL=0时,存储器访问不受限制,即,已经将信息存储器件解锁的主机设备可以访问信息存储器件中的存储器(图3中的存储器220)。
当使信息存储器件(存储器卡)离开主机设备并且关闭信息存储器件(存储器卡)的电源时,并且当再次将电源打开时,将NVM中设置的加锁状态标志(SL=1和EL=1)装入控制器中的RAM。控制器基于在RAM中设置的加锁状态标志(SL=1和EL=1)进行处理。下面将参照图18的处理流程,对信息存储器件被再次打开以后进行的处理进行描述。
图18中示出的处理流程示出了当信息存储器件被关闭然后被打开时进行的处理。
在步骤S701中,将信息存储器件(存储器卡)放置在主机设备中并且从电源关闭状态变为电源打开状态。在步骤S702中,信息存储器件将存储在NVM中的加锁状态标志(SL和EL)复制到控制器中的RAM中。基于RAM中的状态标志,控制器进行控制。
在步骤S703中,信息存储器件接收来自所连接的主机设备的存储器访问请求或解锁指令。信息存储器件的控制器查询RAM中的加锁状态标志。
在步骤S704中,当确定RAM中的状态标志为EL=1时,在步骤S705中,进行解锁(见图13到15)。当主机设备没有应用于信息存储器件的出口加锁的副密钥集[IDen,LKen]时,该主机设备必须进行盖印。当通过参照图13到15描述的验证,判断指令是来自有效主机设备的解锁请求时,进行解锁(步骤S708中Yes)。在步骤S709中,允许进行存储器访问。当通过验证判断指令是来自未被授权的主机设备的解锁请求时,不进行解锁(步骤S708中No),并且发送错误报告(S710)。
当在步骤S704中判断RAM中的状态标志为EL=0时,在步骤S706中,判断RAM中的状态标志是否是SL=1。当判断RAM中的状态标志是SL=1时,在步骤S707中,使标准加锁释放(见图7和8)。当通过参照图7和8描述的验证,判断指令是来自有效主机设备的解锁请求时,进行解锁(步骤S708中的是)。在步骤S709中,允许进行存储器访问。当通过验证判断指令是来自未被授权的主机设备的解锁请求时,不进行解锁(步骤S708中的否),并且发送错误报告(S710)。
当在步骤S704中判断RAM中的状态标志为EL=0,并且在步骤S706中判断RAM中的状态标志为SL=0时,信息存储器件未被加锁。在步骤S709中,允许进行存储器访问。
如已经参照图16和17进行描述的,当经过出口加锁的信息存储器件被主机设备解锁然后信息存储器件被关闭时,NVM中的加锁状态标志被设置为SL=1和EL=1。当随后打开电源时,将RAM中的加锁状态标志设置为SL=1和EL=1。因此,在图18的处理流程的步骤S704中的判断(EL=?)为Yes。进行步骤S705中的处理。即,假如经过出口加锁的信息存储器件被解锁,则允许进行存储器访问(见图13到15)。
如上所述,按照这个处理的例子,将解锁之前的加锁状态标志存储在NVM中,加锁状态标志包括状态信息,根据这个状态信息判断信息存储器件被出口加锁(EL)还是被标准加锁(SL),在出口加锁中,能够输出可应用于加锁或解锁的密钥集,在标准加锁中,不能输出可应用于加锁或解锁的密钥集。当将信息存储器件关闭然后打开时,根据存储在NVM中的标志,如实地重新建立解锁之前的加锁状态。
按照这个处理的例子,举例来说,即使当经过出口加锁的信息存储器件被主机设备解锁时,仍然能够保持出口加锁状态。当将信息存储器件关闭然后打开时,假如进行了解锁,则允许存储器访问。只有当具有有效基本密钥集[IDs,LKs]的主机设备进行包括上述的过加锁的预定处理时,才能够进行解锁。防止了来自未被授权的单元的访问。
[通过对读取指定数据区域进行检测的自动加锁]
以下将对一个处理的例子进行描述,在这个处理中,由信息存储器件的控制器对主机设备从信息存储器件(存储器卡)读取数据进行监控并且响应一个触发信号,即对一个预定数据区域的读取(例如,一个特定簇),进行加锁。
例如,由根据存储的数据生成的重放管理文件(PBLIST)对读取存储在信息存储器件(存储器卡)的存储器(图2的存储器220)中的数据进行管理。根据重放管理文件,控制器从存储器(图2的存储器220)读取数据并且将数据输出到主机设备。
当读取数据时,信息存储器件的控制器可以监控正在被读取的数据。例如,可以按照预定的单元,如用作正在被读取的数据的单元的簇,对以ATRAC3格式压缩的音频数据进行监控。
如图19所示,按照ATRAC3格式压缩的音频数据包括多个部分,每个部分包括多个簇,每个簇包括多个用作最小数据单元的SU(sound unit,声音单元)。每个SU(声音单元)包括数百个字节的数据,它是通过按照44.1kHz的采样频率获得的1024个音频数据采样(1024×16比特×2信道)的音频数据压缩到大约十分之一而产生的。每个簇包括由多个SU组成的数据(例如42个SU)。一个由42个SU组成的簇代表大约持续一秒钟的声音。
给每个簇一个唯一的逻辑编号,并且通过这个逻辑编号对每个簇进行管理。信息存储器件的控制器210(见图3)根据逻辑编号检查是否读取了指定的簇。例如,当输出的数据是音乐内容时,至少将一个与音乐内容的序曲(introduction)或重复(refrain)对应的簇的逻辑编号提取为与内容相关的加锁相关簇。被提取的簇的逻辑编号被设置为与内容相关的注册信息并且被存储在用于存储内容的存储器(闪存存储器)中。
当读取内容时,将注册信息暂时存储在信息存储器件的控制器中的存储器(RAM)中。控制器对照加锁相关簇,对读取内容的每个簇进行检查。当读取内容的簇对应于加锁相关簇的逻辑编号时,进行加锁。可以在不同的时刻进行加锁,如在读取加锁相关簇开始时、在读取加锁相关簇结束时或者在读取包括加锁相关簇的全部内容结束时。按照设置进行检测,并且根据对控制设置的检测进行加锁。当进行加锁时,假如进行解锁,则必须进行重读。
下面将参照图20,对假如从存储器220(见图3)中读取了特定数据区域(例如指定簇),由信息存储器件的控制器210进行的加锁处理进行描述。
尽管为了简化说明,图20的处理流程仅包括标准加锁(SL),但是在出口加锁(EL)的情况下可以进行相似的处理。
在步骤S801中,将信息存储器件打开。在步骤S802中,将存储在NVM中的加锁状态标志复制并且存储在控制器210(见图3)的RAM 213中。控制器按照RAM 213中的状态标志进行控制。
在步骤S803中,判断信息存储器件是否被标准加锁(SL=1)。当SL=1时,在步骤S804中,使信息存储器件解锁。例如,解锁与参照图7和8描述的解锁相似。
当通过由信息存储器件进行验证判断主机设备具有有效基本ID和基本加锁密钥,并且当解锁成功时(S805中的Yes),过程进行到步骤S806。当解锁失败时,在步骤S810中,向主机设备发送错误报告并且结束处理。
假如解锁成功,在步骤S806中,更新在RAM和NVM中的加锁状态标志,即将加锁状态标志设置为表示锁被释放的SL=0。
当主机设备开始读取数据时,在步骤S807中,信息存储器件的控制器对是否读取了预定的加锁相关簇进行监控。当检测到读取了来自加锁相关簇的数据时,在步骤S808中,将控制器213(见图3)的RAM中的加锁状态标志设置为加锁状态(SL=1)。在步骤S809中,将NVM中的加锁状态标志设置为加锁状态(SL=1)。
通过读取预定的簇,使信息存储器件加锁。当以后进行重读时,必须进行解锁。只能由具有与在对信息存储器件进行加锁的过程中使用的基本ID(IDs)和基本加锁密钥(LKs)相同的基本ID(IDs)和相同的基本加锁密钥(LKs)的主机设备进行解锁。这样就防止了无限制地使用经过加锁的信息存储器件(存储器卡)。
当关闭信息存储器件时,可以将加锁信息设置为释放。或者,如上所述,即使关闭电源时,仍然将加锁状态标志保持在NVM中。当再次打开电源时,将NVM中的加锁状态标志复制到控制器中的RAM中,由此保持并且重新建立电源关闭之前的加锁状态标志。
按照这个处理的例子,当解锁之后读取数据时,实施只允许读取一次的所谓读取一次访问控制。
在图20的处理的例子中,仅示出了标准加锁。但是,在出口加锁的情况下可以进行相似的处理。即,可以响应一个触发信号,即读取预定数据区域,对信息存储器件进行出口加锁。
[在主机设备上的加锁状态显示]
以下将描述在用于对可以处在不同加锁状态中信息存储器件进行访问的主机设备中,用于检测信息存储器件的加锁状态的显示结构和过程。
图21示出了具有加锁状态显示指示器和各种处理开关的加锁/解锁单元的结构的例子。具有通过它可以与用作信息存储器件的存储器卡710进行数据传输的接口的加锁/解锁单元720具有下列加锁状态指示器:
一个解锁指示器721,用于表示解锁状态;
一个加锁指示器722,用于表示加锁状态;
一个E加锁指示器723,用于表示出口加锁状态;以及
一个ERR加锁指示器724,用于表示错误报告。
各种处理请求开关包括:
一个解锁开关731,用作解锁请求开关;
一个P加锁开关732,用作请求使用基本密钥集的标准加锁的开关;
一个G加锁开关733,用作请求使用副密钥集的标准加锁(组加锁)的开关;以及
一个E加锁开关734,用作请求使用副密钥集的出口加锁的开关。
除了上述开关以外,在图21(b)中示出的加锁/解锁单元的例子还包括盖印开关735,用作专门请求盖印的开关,盖印是将由存储在经过出口加锁的信息存储器件中的副ID(IDen)和副加锁密钥(LKen)组成的副密钥集[IDen,LKen]存储在主机设备中。
在图21中,示出了加锁/解锁单元的指示器和处理请求开关。如上所述,主机设备包括各种单元,这些单元包括:信息处理设备如PC和PDA等;数码相机如DSC;以及移动通信终端。这些单元中的每一个可以通过其输入装置将指令发送到信息存储器件(存储器卡)。可以在这些单元中的每一个的LCD等上显示加锁状态或者可以通过声音或警告信号等报告加锁状态。
以下将参照图22等对主机设备显示加锁状态以及将指令从主机设备发送到信息存储器件(存储器卡)的处理进行描述。
图22示出了例如当信息存储器件(存储器卡)与主机设备连接时,读取加锁状态的处理的流程。可以响应从用户输入的指令进行加锁状态读取处理或者当信息存储器件(存储器卡)与主机设备连接时可以自动进行加锁状态读取处理。
在步骤S901中,从信息存储器件读取加锁状态。这个状态信息是基于存储在信息存储器件的控制器210的RAM 213(见图3)中的加锁状态标志的。在步骤S902中,根据读取的加锁状态信息,开启指示器721到724中与该加锁状态有关的一个指示器。换句话说,当信息存储器件被标准加锁或组加锁时,显示(开启)表示加锁状态的加锁指示器722。当信息存储器件被出口加锁时,显示(开启)表示出口加锁状态的E加锁指示器723。当信息存储器件没有被加锁时,显示(开启)表示解锁状态的加锁指示器721。
下面将参照图23对根据加锁请求使指示器显示的过程以及进行加锁的处理进行描述。根据来自图21示出的处理请求开关732到734中的一个开关的输入进行加锁。
由来自S加锁开关732的输入提出应用由基本ID(IDs)和基本加锁密钥(LKs)组成的密钥集[IDs,LKs]的标准加锁的请求。由来自E加锁开关734的输入提出应用由副ID(IDen)和副加锁密钥(LKen)组成的副密钥集[IDen,LKen]的出口加锁的请求。由来自G加锁开关733的输入提出通过应用副密钥集[IDen,LKen]的标准加锁即组加锁的请求。
当接收到这些输入中的任何一个时,在步骤S911中,检测信息存储器件(存储器卡)的加锁状态。当信息存储器件没有被解锁时,在步骤S914中,使错误(ERR)指示器显示。当信息存储器件被解锁时,在步骤S912中,进行标准加锁、出口加锁和组加锁中的任何一个。在完成加锁之后,显示与主机设备的相关的加锁指示器,即显示表示加锁状态的加锁指示器722或者表示出口加锁状态的E加锁指示器723。
下面将参照图24对当使信息存储器件解锁并且使指示器显示时主机设备的操作进行描述。
通过按下图21的解锁请求开关731进行解锁。通过按下解锁请求开关,检测信息存储器件的加锁状态。根据上述存储在控制器中的RAM中的加锁状态标志进行状态检测。当信息存储器件被解锁时(在步骤S921中的No),在步骤S923中,使错误(ERR)指示器724显示。
在读取加锁状态的步骤S922中,判断信息存储器件被出口加锁还是被标准加锁。根据上述的加锁状态标志,判断信息存储器件被出口加锁还是被标准加锁。根据判断结果,开启在图21中示出的指示器721到724中与加锁状态有关的一个指示器。
当信息存储器件被出口加锁时(在步骤S924中的Yes),进行已经参照图16到18描述过的盖印和解锁。即,在步骤S925中,通过应用基本ID(IDs)和基本加锁(LKs)进行过加锁。在步骤S926中,对副ID(IDen)和副加锁密钥(LKen)进行盖印(接收和存储)。在步骤S927中,通过应用副ID(IDen)和副加锁密钥(LKen)进行解锁。已经参照图16到18对这些过程进行过详细描述。在步骤S928中,显示解锁指示器721。
当在步骤S924中判断加锁状态不是出口加锁,即,加锁状态表示标准加锁时,在步骤S929中,判断信息存储器件是否被标准加锁。当信息存储器件被标准加锁时,在步骤S930中进行解锁。应用于解锁的密钥集是基本密钥集[IDs,LKs],或者,在组加锁的情况下,为副密钥集[IDen,LKen]。当锁被释放时,在步骤S928中,显示解锁指示器721。
当在步骤S924中判断加锁状态不是出口加锁,并且当在步骤S929中判断信息存储器件不是被标准加锁时,在步骤S931中,显示错误(ERR)指示器724。
尽管已经参照特定实施例对本发明进行了详细描述,但很明显,本领域技术人员可以在不脱离本发明的范围的情况下进行修改和替换。换句话说,已经利用例子描述了本发明,并且不应该按照限制性的意义理解本发明。本发明的范围仅由在开始时描述的权利要求加以限定。
可以由硬件或软件或者二者一起进行在说明书中描述的一系列处理。当由软件进行处理时,将记录了处理顺序的程序安装在包括在专用硬件中的内置计算机中的存储器中并且执行该程序。或者,可以将程序安装在能够进行各种处理的普通计算机上并且执行该程序。
例如,可以将程序预先记录在用作记录介质的硬盘或ROM(只读存储器)上。或者,将该程序暂时或永久存储(记录)在可移动记录介质上,如软盘、CD-ROM(光盘只读存储器)、MO(磁光盘)盘、DVD(数字多用盘)、磁盘或半导体存储器等。可以按照所谓的封装软件提供这样的可移动记录介质。
除了将程序从上述的可移动记录介质安装到计算机上以外,可以将程序从下载站点无线传送到计算机,或者通过网络如互联网有线传送到计算机。计算机接收传送的程序并且将程序安装在内置记录介质上如硬盘。
本说明中描述的各种处理不仅可以按照基于描述的时间序列的方式进行,而且可以根据设备进行处理的整体情况或者需要,按照并行或单独方式进行。在本说明中的词“系统”指的是不必包含在一个外壳中多个设备的逻辑组合。
工业适用性
如上所述,按照本发明的结构,信息存储器件如存储器卡响应从信息处理设备输入的指令对存储器进行解锁。信息存储器件将存储器被解锁之前的加锁状态数据存储在存储装置中。当将信息存储器件被关闭然后被打开时,信息存储器件根据存储在存储装置中的加锁状态数据重新建立存储器的加锁状态并且根据重新建立的加锁状态进行存储器访问控制。这样就可靠地防止了第三方用户对丢失或被盗的信息存储器件进行存储器访问。
按照本发明的结构,将用作信息存储器件的加锁状态数据的加锁状态信息存储在用作第一存储装置的非易失存储器(NVM)中,即使在信息存储器件被关闭之后仍然保持存储在其中的信息。当再次打开信息存储器件时,将加锁状态信息复制到控制器中的用作第二存储装置的存储器中,由此进行访问控制。即使当电源被关闭时,仍然保持加锁状态。这样就防止了由于删除了加锁信息而导致的存储器访问。
按照本发明的结构,根据包括判断信息的加锁状态信息进行访问控制,根据加锁状态信息,判断信息存储器件被出口加锁(EL)还是被标准加锁(SL),在出口加锁中,允许输出可应用于加锁或解锁的密钥集,在标准加锁中禁止输出这样的密钥集。可以按照不同的方式进行存储器访问控制。
按照本发明的结构,在重新建立加锁状态的过程中,对包括已经输出了解锁请求的信息处理设备的标识符(ID)的密钥集进行验证。假如验证成功,则基于解锁请求进行解锁。假如从有效的主机设备输出该请求,则进行安全的存储器访问控制。
Claims (14)
1.一种信息存储器件,该器件包括一个用于存储数据的存储器和一个用于对该存储器进行访问控制的控制器,其中
所述控制器响应从信息处理设备输入的指令对所述存储器进行解锁,并且
所述控制器将所述存储器被解锁之前的加锁状态数据存储在存储装置中,并且当所述信息存储器件的电源被关断然后被接通时,所述控制器根据存储在所述存储装置中的加锁状态数据重新建立加锁状态,并且根据重新建立的加锁状态进行存储器访问控制。
2.如权利要求1所述的信息存储器件,其中,所述信息存储器件将用作所述信息存储器件的加锁状态数据的加锁状态信息存储在所述存储装置中,并且
所述控制器将加锁状态信息存储在用作第一存储装置的非易失存储器NVM中,以便即使在所述信息存储器件的电源被关断之后,仍然保持存储在其中的信息。
3.如权利要求2所述的信息存储器件,其中,在所述信息存储器件的电源被再次接通之后,所述控制器将存储在非易失存储器NVM中的加锁状态信息复制并且存储在用作第二存储装置的所述控制器中的存储器中,并且根据所述复制和存储的信息进行访问控制。
4.如权利要求1所述的信息存储器件,其中,所述信息存储器件将用作所述信息存储器件的加锁状态数据的加锁状态信息存储在所述存储装置中,
加锁状态信息包括判断信息,根据该判断信息判断
所述信息存储器件被出口加锁EL,其中允许输出可应用于加锁或解锁的密钥集,还是
所述信息存储器件被标准加锁SL,其中禁止输出可应用于加锁或解锁的密钥集,并且
所述控制器根据判断信息进行存储器访问控制。
5.如权利要求1所述的信息存储器件,其中,当再次接通所述信息存储器件的电源时,所述控制器根据重新建立的加锁状态,响应来自信息处理设备的解锁请求进行处理,并且
所述控制器对包括已经输出了解锁请求的信息处理设备的标识符ID的密钥集进行验证,假如验证成功则基于解锁请求进行解锁。
6.如权利要求5所述的信息存储器件,其中,所述密钥集是由信息处理设备所拥有的ID和与该ID相关的加锁密钥LK组成的密钥集[ID,LK],
所述信息存储器件具有可应用于计算加锁密钥LK的加锁主密钥LMK,加锁密钥LK是基于关系式LK=H(LMK,ID)的哈希值,该哈希值是通过应用加锁主密钥LMK为ID计算的,并且
所述控制器根据通过应用加锁主密钥LMK计算哈希值而得到的加锁密钥LK,对从信息处理设备输入的由信息处理设备所拥有的密钥集进行检验。
7.如权利要求6所述的信息存储器件,其中,所述控制器生成一个随机数,接收来自信息处理设备的,根据由信息处理设备所拥有的加锁密钥LK对该随机数Rms加密而生成的加密数据[E(LK,Rms)],并且
所述控制器进行验证,该验证包括对照根据通过计算哈希值得到的加锁密钥LK而计算的加密数据[E(LK,Rms)],对接收到的加密数据进行检查。
8.一种用于信息存储器件的存储器访问控制方法,该信息存储器件包括一个用于存储数据的存储器和一个用于对该存储器进行访问控制的控制器,所述方法包括:
一个解锁执行步骤,用于响应从信息处理设备输入的指令对所述存储器进行解锁;
一个加锁状态数据存储步骤,用于将所述存储器被解锁之前的加锁状态数据存储在存储装置中;以及
一个存储器访问控制步骤,用于当所述信息存储器件的电源被关断然后被接通时,根据存储在所述存储装置中的加锁状态数据,重新建立所述存储器的加锁状态,并且根据重新建立的加锁状态进行存储器访问控制。
9.如权利要求8所述的存储器访问控制方法,其中,加锁状态数据存储步骤包括将用作所述信息存储器件的加锁状态数据的加锁状态信息存储在用作第一存储装置的非易失存储器NVM中的步骤,以便即使在所述信息存储器件的电源被关断之后,仍然保持存储在其中的信息。
10.如权利要求9所述的存储器访问控制方法,还包括在所述信息存储器件的电源被再次接通之后,将存储在非易失存储器NVM中的加锁状态信息复制并且存储到所述控制器中的用作第二存储装置的存储器中的步骤,
其中,存储器访问控制步骤是根据复制和存储的信息进行访问控制的步骤。
11.如权利要求8所述的存储器访问控制方法,其中,加锁状态数据存储步骤是将用作所述信息存储器件的加锁状态数据的加锁状态信息存储在所述存储装置中的步骤,
加锁状态信息包括判断信息,根据该判断信息判断,
所述信息存储器件被出口加锁EL,其中允许输出可应用于加锁或解锁的密钥集,还是
所述信息存储器件被标准加锁SL,其中禁止输出可应用于加锁或解锁的密钥集,并且
存储器访问控制步骤是一个根据该判断信息重新建立存储器的加锁状态并且根据重新建立的加锁状态进行存储器访问控制的步骤。
12.如权利要求8所述的存储器访问控制方法,还包括一个解锁请求相关处理步骤,用于当所述信息存储器件的电源被再次接通时,根据重新建立的加锁状态,响应来自信息处理设备的解锁请求进行处理,
其中,解锁请求相关处理步骤包括:
一个验证步骤,用于对包括已经输出了解锁请求的信息处理设备的标识符ID的密钥集进行验证;以及
一个解锁步骤,用于假如验证成功,则基于解锁请求进行解锁。
13.如权利要求12所述的存储器访问控制方法,其中,所述密钥集是由信息处理设备所拥有的ID和与该ID相关的加锁密钥LK组成的密钥集[ID,LK],
所述信息存储器件具有可应用于计算加锁密钥LK的加锁主密钥LMK,该加锁密钥LK是基于关系式LK=H(LMK,ID)的哈希值,该哈希值是通过应用加锁主密钥LMK为ID计算的,并且
所述验证步骤包括根据通过应用加锁主密钥LMK计算哈希值而得到的加锁密钥LK,对从信息处理设备输入的由信息处理设备所拥有的密钥集进行验证的步骤。
14.如权利要求13所述的存储器访问控制方法,还包括生成一个随机数,接收来自信息处理设备的,通过根据由信息处理设备所拥有的加锁密钥LK对该随机数Rms加密而生成的加密数据[E(LK,Rms)]的步骤,
其中,所述验证步骤包括对照根据通过计算哈希值得到的加锁密钥LK而计算的加密数据[E(LK,Rms)],对接收到的加密数据进行检查的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP183883/2002 | 2002-06-25 | ||
JP2002183883A JP3979195B2 (ja) | 2002-06-25 | 2002-06-25 | 情報記憶装置、およびメモリアクセス制御方法、並びにコンピュータ・プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1556954A CN1556954A (zh) | 2004-12-22 |
CN1304964C true CN1304964C (zh) | 2007-03-14 |
Family
ID=29996695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB038010860A Expired - Fee Related CN1304964C (zh) | 2002-06-25 | 2003-06-19 | 信息存储器件、存储器访问控制方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7962713B2 (zh) |
EP (1) | EP1519275B1 (zh) |
JP (1) | JP3979195B2 (zh) |
KR (1) | KR100998855B1 (zh) |
CN (1) | CN1304964C (zh) |
WO (1) | WO2004001607A1 (zh) |
Families Citing this family (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050283662A1 (en) * | 2004-06-21 | 2005-12-22 | Li Yi Q | Secure data backup and recovery |
US8245000B2 (en) * | 2005-05-20 | 2012-08-14 | Stec, Inc. | System and method for managing security of a memory device |
JP4590321B2 (ja) * | 2005-07-25 | 2010-12-01 | キヤノン株式会社 | 画像処理装置、記録再生装置、制御方法 |
WO2007046497A1 (ja) * | 2005-10-20 | 2007-04-26 | Yamato Ltd. | データファイル記録システム及びデータファイル記録方法 |
US20070254713A1 (en) * | 2006-04-28 | 2007-11-01 | Isaac Lagnado | System and method for managing operation of a system based at least in part on a component of the system being physically accessible |
JP4936834B2 (ja) * | 2006-09-20 | 2012-05-23 | 三洋電機株式会社 | 半導体メモリカードにおけるデータ保護方法、および半導体メモリカード |
KR100841982B1 (ko) * | 2007-02-08 | 2008-06-27 | 삼성전자주식회사 | 호스트 식별 정보를 저장하는 메모리 카드 및 그것의액세스 방법 |
US8438652B2 (en) * | 2007-03-23 | 2013-05-07 | Seagate Technology Llc | Restricted erase and unlock of data storage devices |
JP4867760B2 (ja) * | 2007-03-30 | 2012-02-01 | ソニー株式会社 | 情報処理装置および方法、並びに情報処理システム |
US11237956B2 (en) | 2007-08-13 | 2022-02-01 | Digital Kiva, Inc. | Apparatus and system for object-based storage solid-state device |
US9824006B2 (en) | 2007-08-13 | 2017-11-21 | Digital Kiva, Inc. | Apparatus and system for object-based storage solid-state device |
CN101796525A (zh) * | 2007-08-28 | 2010-08-04 | 松下电器产业株式会社 | 电子设备、解锁方法和程序 |
JP4953316B2 (ja) * | 2007-12-13 | 2012-06-13 | 株式会社メガチップス | 記憶装置および情報処理システム |
US8353026B2 (en) * | 2008-10-23 | 2013-01-08 | Dell Products L.P. | Credential security system |
TWI385522B (en) * | 2008-12-31 | 2013-02-11 | Recognizing method of memory storage device | |
JP5499807B2 (ja) * | 2010-03-19 | 2014-05-21 | 富士通株式会社 | 情報処理プログラム、情報処理方法及び情報処理装置 |
US8839371B2 (en) * | 2010-08-26 | 2014-09-16 | Standard Microsystems Corporation | Method and system for securing access to a storage device |
NZ714501A (en) * | 2012-02-13 | 2016-04-29 | Xceedid Corp | Credential management system |
CN103634347B (zh) * | 2012-08-24 | 2019-04-12 | 腾讯科技(深圳)有限公司 | 一种并行业务处理方法、设备及系统 |
FR2999592B1 (fr) | 2012-12-18 | 2014-12-26 | Pascal Seguin | Composition comprenant une resine phenolique, materiau composite comprenant une telle composition et procede de preparation d'un materiau composite |
TWI497297B (zh) * | 2013-01-15 | 2015-08-21 | Innostor Technology Corp | Portable storage device and its data security control method |
US11802422B2 (en) | 2013-03-15 | 2023-10-31 | August Home, Inc. | Video recording triggered by a smart lock device |
US10181232B2 (en) | 2013-03-15 | 2019-01-15 | August Home, Inc. | Wireless access control system and methods for intelligent door lock system |
US11352812B2 (en) | 2013-03-15 | 2022-06-07 | August Home, Inc. | Door lock system coupled to an image capture device |
US9624695B1 (en) | 2013-03-15 | 2017-04-18 | August Home, Inc. | Intelligent door lock system with WiFi bridge |
US11441332B2 (en) | 2013-03-15 | 2022-09-13 | August Home, Inc. | Mesh of cameras communicating with each other to follow a delivery agent within a dwelling |
US10388094B2 (en) | 2013-03-15 | 2019-08-20 | August Home Inc. | Intelligent door lock system with notification to user regarding battery status |
US11072945B2 (en) | 2013-03-15 | 2021-07-27 | August Home, Inc. | Video recording triggered by a smart lock device |
US9704314B2 (en) | 2014-08-13 | 2017-07-11 | August Home, Inc. | BLE/WiFi bridge that detects signal strength of Bluetooth LE devices at an exterior of a dwelling |
US9916746B2 (en) | 2013-03-15 | 2018-03-13 | August Home, Inc. | Security system coupled to a door lock system |
US10140828B2 (en) | 2015-06-04 | 2018-11-27 | August Home, Inc. | Intelligent door lock system with camera and motion detector |
US11043055B2 (en) | 2013-03-15 | 2021-06-22 | August Home, Inc. | Door lock system with contact sensor |
US10443266B2 (en) | 2013-03-15 | 2019-10-15 | August Home, Inc. | Intelligent door lock system with manual operation and push notification |
US11527121B2 (en) | 2013-03-15 | 2022-12-13 | August Home, Inc. | Door lock system with contact sensor |
US11421445B2 (en) | 2013-03-15 | 2022-08-23 | August Home, Inc. | Smart lock device with near field communication |
US9706365B2 (en) * | 2013-03-15 | 2017-07-11 | August Home, Inc. | BLE/WiFi bridge that detects signal strength of bluetooth LE devices at an interior of a dwelling |
CN104182706B (zh) * | 2013-05-24 | 2019-01-04 | 中兴通讯股份有限公司 | 一种移动终端存储卡的保密方法、装置及移动终端 |
US10496553B2 (en) | 2015-05-01 | 2019-12-03 | Hewlett Packard Enterprise Development Lp | Throttled data memory access |
WO2017106707A1 (en) * | 2015-12-18 | 2017-06-22 | Cpi Card Group - Colorado, Inc. | Improved system and method for providing ic chip cards |
CN110414276B (zh) * | 2018-04-27 | 2021-05-18 | 联华电子股份有限公司 | 电子元件的加密方法 |
CN111478770A (zh) * | 2020-03-31 | 2020-07-31 | 西安广和通无线软件有限公司 | 安全校验方法、装置、计算机设备和存储介质 |
US20220021544A1 (en) * | 2020-07-15 | 2022-01-20 | Micron Technology, Inc. | Secure Serial Peripheral Interface (SPI) Flash |
JP2023542359A (ja) | 2020-09-17 | 2023-10-06 | アッサ・アブロイ・インコーポレイテッド | ロック位置用磁気センサ |
JP2023543236A (ja) | 2020-09-25 | 2023-10-13 | アッサ・アブロイ・インコーポレイテッド | 磁力計付きドアロック |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09293022A (ja) * | 1996-04-24 | 1997-11-11 | Toshiba Corp | データ記録再生装置及び同装置におけるデータ保護方法 |
JPH11237983A (ja) * | 1998-02-20 | 1999-08-31 | Mitsubishi Electric Corp | ワンチップマイコンおよびこのワンチップマイコンにおけるブート領域アクセスのためのエントリー方法 |
EP1048998A2 (en) * | 1999-04-28 | 2000-11-02 | Casio Computer Co., Ltd. | Security managing system, data distribution apparatus and portable terminal apparatus |
JP2001022642A (ja) * | 1999-07-08 | 2001-01-26 | Mitsubishi Electric Corp | メモリの機密保持回路 |
EP1193601A2 (en) * | 2000-09-29 | 2002-04-03 | Sony Corporation | Memory apparatus and memory access restricting method |
CN1346093A (zh) * | 2000-09-29 | 2002-04-24 | 索尼公司 | 存储器装置及存储器访问限制方法 |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4405829A (en) * | 1977-12-14 | 1983-09-20 | Massachusetts Institute Of Technology | Cryptographic communications system and method |
US4736419A (en) * | 1984-12-24 | 1988-04-05 | American Telephone And Telegraph Company, At&T Bell Laboratories | Electronic lock system |
US4786900A (en) * | 1985-09-30 | 1988-11-22 | Casio Computer Co. Ltd. | Electronic key apparatus |
JPH0622030B2 (ja) * | 1988-10-03 | 1994-03-23 | 富士通株式会社 | 取引の正当性確認方式 |
US5231310A (en) * | 1990-09-05 | 1993-07-27 | Oh Soo Young | Electrical and electronic appliance lock |
JPH04139552A (ja) | 1990-10-01 | 1992-05-13 | Nec Corp | メモリカード |
JPH05113932A (ja) | 1991-10-23 | 1993-05-07 | Kyocera Corp | パーソナルコンピユータ |
US5287519A (en) * | 1992-09-17 | 1994-02-15 | International Business Machines Corp. | LAN station personal computer system with controlled data access for normal and unauthorized users and method |
US5293424A (en) * | 1992-10-14 | 1994-03-08 | Bull Hn Information Systems Inc. | Secure memory card |
US5282247A (en) * | 1992-11-12 | 1994-01-25 | Maxtor Corporation | Apparatus and method for providing data security in a computer system having removable memory |
GB9323453D0 (en) * | 1993-11-13 | 1994-01-05 | Calluna Tech Ltd | Security system for portable hard disk drive |
US5963142A (en) * | 1995-03-03 | 1999-10-05 | Compaq Computer Corporation | Security control for personal computer |
KR100378112B1 (ko) * | 1995-07-25 | 2003-05-23 | 삼성전자주식회사 | 무선통신을이용한자동잠금/풀림장치및방법 |
US5638448A (en) * | 1995-10-24 | 1997-06-10 | Nguyen; Minhtam C. | Network with secure communications sessions |
US5857021A (en) | 1995-11-07 | 1999-01-05 | Fujitsu Ltd. | Security system for protecting information stored in portable storage media |
JPH09134330A (ja) | 1995-11-07 | 1997-05-20 | Fujitsu Ltd | セキュリティ保護システム |
WO1998003920A1 (fr) * | 1996-07-22 | 1998-01-29 | Sony Corporation | Changeur de supports, procedes de verrouillage et deverrouillage, procede d'execution de commandes d'execution et ordinateur adressant de telles commandes au changeur |
US6003135A (en) * | 1997-06-04 | 1999-12-14 | Spyrus, Inc. | Modular security device |
US5991519A (en) | 1997-10-03 | 1999-11-23 | Atmel Corporation | Secure memory having multiple security levels |
US6119020A (en) * | 1997-12-16 | 2000-09-12 | Motorola, Inc. | Multiple user SIM card secured subscriber unit |
US6179205B1 (en) * | 1998-03-05 | 2001-01-30 | Visa International Service Association | System and method for locking and unlocking and application in a smart card |
JPH11265318A (ja) | 1998-03-17 | 1999-09-28 | Bug:Kk | 相互認証システム、相互認証方法及び記録媒体 |
GB2353623B (en) * | 1998-05-05 | 2003-01-08 | Jay Chieh Chen | Systems for electronic transactions |
JP2000020402A (ja) | 1998-07-03 | 2000-01-21 | Nec Corp | 情報処理システム |
WO2000025278A1 (en) * | 1998-10-27 | 2000-05-04 | Visa International Service Association | Delegated management of smart card applications |
JP3528701B2 (ja) * | 1999-09-21 | 2004-05-24 | カシオ計算機株式会社 | セキュリティ管理システム |
JP4104801B2 (ja) | 2000-01-14 | 2008-06-18 | 株式会社エヌ・ティ・ティ・データ | Icカード読取装置及びicカードシステム |
JP2001236333A (ja) | 2000-02-21 | 2001-08-31 | Hitachi Ltd | 電子署名付移動エージェント |
US7315949B1 (en) * | 2000-06-24 | 2008-01-01 | Palm, Inc. | Method and system for providing a personal identification security feature to a portable computing device |
GB0020370D0 (en) * | 2000-08-18 | 2000-10-04 | Hewlett Packard Co | Trusted device |
US6782477B2 (en) * | 2002-04-16 | 2004-08-24 | Song Computer Entertainment America Inc. | Method and system for using tamperproof hardware to provide copy protection and online security |
JP4016741B2 (ja) * | 2002-06-25 | 2007-12-05 | ソニー株式会社 | 情報記憶装置、メモリアクセス制御システム、および方法、並びにコンピュータ・プログラム |
US8276185B2 (en) * | 2005-01-19 | 2012-09-25 | Micron Technology, Inc. | Enhanced security memory access method and architecture |
US7818255B2 (en) * | 2006-06-02 | 2010-10-19 | Microsoft Corporation | Logon and machine unlock integration |
-
2002
- 2002-06-25 JP JP2002183883A patent/JP3979195B2/ja not_active Expired - Fee Related
-
2003
- 2003-06-19 EP EP03760898.1A patent/EP1519275B1/en not_active Expired - Lifetime
- 2003-06-19 KR KR1020047002772A patent/KR100998855B1/ko not_active IP Right Cessation
- 2003-06-19 CN CNB038010860A patent/CN1304964C/zh not_active Expired - Fee Related
- 2003-06-19 US US10/487,008 patent/US7962713B2/en not_active Expired - Fee Related
- 2003-06-19 WO PCT/JP2003/007779 patent/WO2004001607A1/ja active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09293022A (ja) * | 1996-04-24 | 1997-11-11 | Toshiba Corp | データ記録再生装置及び同装置におけるデータ保護方法 |
JPH11237983A (ja) * | 1998-02-20 | 1999-08-31 | Mitsubishi Electric Corp | ワンチップマイコンおよびこのワンチップマイコンにおけるブート領域アクセスのためのエントリー方法 |
EP1048998A2 (en) * | 1999-04-28 | 2000-11-02 | Casio Computer Co., Ltd. | Security managing system, data distribution apparatus and portable terminal apparatus |
JP2001022642A (ja) * | 1999-07-08 | 2001-01-26 | Mitsubishi Electric Corp | メモリの機密保持回路 |
EP1193601A2 (en) * | 2000-09-29 | 2002-04-03 | Sony Corporation | Memory apparatus and memory access restricting method |
CN1346093A (zh) * | 2000-09-29 | 2002-04-24 | 索尼公司 | 存储器装置及存储器访问限制方法 |
Also Published As
Publication number | Publication date |
---|---|
EP1519275A1 (en) | 2005-03-30 |
CN1556954A (zh) | 2004-12-22 |
KR20050013522A (ko) | 2005-02-04 |
WO2004001607A1 (ja) | 2003-12-31 |
US7962713B2 (en) | 2011-06-14 |
EP1519275B1 (en) | 2019-03-27 |
EP1519275A4 (en) | 2008-11-12 |
KR100998855B1 (ko) | 2010-12-08 |
JP3979195B2 (ja) | 2007-09-19 |
US20040243779A1 (en) | 2004-12-02 |
JP2004030104A (ja) | 2004-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1304964C (zh) | 信息存储器件、存储器访问控制方法 | |
CN1278245C (zh) | 信息存储器件、存储器存取控制系统及方法 | |
CN1306425C (zh) | 信息存储器件、存储器存取控制系统和方法 | |
CN1292357C (zh) | 信息存储设备、存储器存取控制方法 | |
CN1208729C (zh) | 记录/再现设备、数据移动方法和数据删除方法 | |
CN1311382C (zh) | 信息分配系统 | |
CN1293491C (zh) | 信息处理设备和方法,以及程序存储介质 | |
CN1236581C (zh) | 用于加密数据传送的数据处理方法、装置和系统 | |
CN1396568A (zh) | 数字作品保护系统、记录媒体装置、发送装置和重放装置 | |
CN100343831C (zh) | 能够不重叠地存储多个历史信息项的数据存储设备 | |
CN1276364C (zh) | 数据管理设备,数据管理方法以及计算机程序 | |
CN1682174A (zh) | 组形成/管理系统,组管理装置,以及成员装置 | |
CN101047495A (zh) | 用于传送数据的方法和系统 | |
CN101053200A (zh) | 信息处理设备、信息存储媒体、内容管理系统、数据处理方法、以及计算机程序 | |
CN1735939A (zh) | 内容发布系统、记录设备和方法、重放设备和方法及程序 | |
CN1914649A (zh) | 认证系统, 认证设备,以及记录介质 | |
CN1940952A (zh) | 用于管理内容数据的系统和装置 | |
CN1363077A (zh) | 数据处理设备和数据处理方法 | |
CN1183685A (zh) | 加密译码方法,记录重放装置及记录媒体 | |
CN1871568A (zh) | 程序执行设备 | |
CN1273902C (zh) | 调试系统,微处理器,以及调试器 | |
CN1656555A (zh) | 鉴别通信系统、鉴别通信设备和鉴别通信方法 | |
CN1868229A (zh) | 用于对存储在记录载体上的数据进行条件存取的记录载体、系统、方法和程序 | |
CN1969551A (zh) | 内容利用方法和内容记录装置 | |
CN1886713A (zh) | 机密信息处理系统以及lsi |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20070314 Termination date: 20210619 |
|
CF01 | Termination of patent right due to non-payment of annual fee |