WO2004001609A1 - 情報記憶装置、メモリアクセス制御システム、および方法、並びにコンピュータ・プログラム - Google Patents
情報記憶装置、メモリアクセス制御システム、および方法、並びにコンピュータ・プログラム Download PDFInfo
- Publication number
- WO2004001609A1 WO2004001609A1 PCT/JP2003/007781 JP0307781W WO2004001609A1 WO 2004001609 A1 WO2004001609 A1 WO 2004001609A1 JP 0307781 W JP0307781 W JP 0307781W WO 2004001609 A1 WO2004001609 A1 WO 2004001609A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- lock
- key
- storage device
- information processing
- information storage
- Prior art date
Links
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/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
-
- 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
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
- G06F12/1466—Key-lock mechanism
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K17/00—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
Definitions
- the present invention relates to an information storage device, a memory access control system and a method, and a computer program. More specifically, the present invention realizes various configurations for restricting access to data stored in an information storage device such as a memory card, and performs a process of hacking or undoing a memory in the information storage device.
- TECHNICAL FIELD The present invention relates to an information storage device, a memory access control system, a method, and a computer program, which can be realized in a common and secure manner for a plurality of information processing devices using the information processing device. Background art
- PCs Personal Computers
- PDAs Personal Digital Assistants
- Various storage media such as hard disks, DVDs, CDs, memory cards, etc. Data recording and playback processing is performed using.
- a small card-type memory device including a memory unit configured by a flash memory and the like and a control unit configured by a CPU and the like is capable of storing various software data (contents) such as music data, image data, and programs. (Content)) is often used as a storage means.
- Reading or writing of data stored in a memory card or the like is made possible by mounting the card on a device having a memory card interface and performing data transfer via the interface.
- Data recording and playback using a memory device can be configured so that anyone can freely execute it. For example, by setting a password or performing a cryptographic process, a so-called exclusion restriction configuration is realized in which memory access is permitted only to specific users or specific devices, and access by unauthorized third parties is eliminated. ing.
- a password is transferred from a content using device as an information reproducing device to a content storage device such as a memory card, and a control unit (CPU or the like) of the memory card is used. ), The password is verified, and the content is output from the content storage device, such as a memory card, to the content-using device as the information reproducing device, or the content reproducing device is used as the information reproducing device.
- a mutual authentication process is performed between the content use device and the content storage device such as a memory card, and the content use device as an information playback device is transferred from the content storage device such as a memory card to the condition that mutual authentication is established. For example, there is a configuration that outputs content to
- a data storage device such as a memory card can be attached to various devices such as a PC, a PDA, and a digital camera, and these devices often use one memory card for each other.
- a data usage mode if the above-described password verification processing, authentication processing, and the like are required every time the memory card is inserted into the device, it takes time to perform data reading or data writing. In other words, the processing efficiency decreases.
- the present invention has been made in view of the above-described problems, and realizes various configurations for restricting access to storage data of an information storage device such as a memory card.
- an information storage device such as a memory card.
- Implementing the hacking process or the hacking process commonly and securely for multiple information processing devices that use information storage devices It is an object of the present invention to provide an information storage device, a memory access control system and a method, and a computer program, which enable the above.
- a first aspect of the present invention
- An information storage device comprising: a data storage memory; and a control unit that performs access control on the memory.
- the control unit includes:
- the memory has a configuration for executing a hacking process based on a lock command and an identifier (ID) input from the information processing device,
- the information storage device is characterized in that it has a configuration for judging which of the above and storing the discrimination information in a storage means.
- the information storage device is configured to store the acknowledgment status information in the storage means as discrimination information of the acknowledgment state of the information storage device; Contains information that can determine whether or not the device is in the standard lock state and whether or not the device is in the export lock state.
- the control unit controls the information storage device based on the lock status information. On the condition that it is determined that the user is in the lip-locked state, the configuration is such that the process of outputting the above-mentioned Ethernet lock key set to the information processing apparatus is performed.
- control unit has a configuration for executing a process of determining whether or not output processing of the export port key set to the information processing device is possible, and the determination process includes an information processing process. Including verification processing of a key set unique to the information processing apparatus input from the apparatus, output processing of the export lock key set to the information processing apparatus at least on condition that the verification is established. Is performed.
- the key set unique to the information processing device includes a primary ID (IDs) as a unique ID of the information processing device and a lock key corresponding to the unique ID.
- a lock master key (LMK) capable of calculating a primary lock key (LK s) as a hash value obtained by applying the lock master key (LMK) to the information processing device. It is characterized in that the unique key set is verified based on a lock key (LK) obtained by calculating a hash value using the above-mentioned master key (LMK).
- the control unit executes a random number generation process, and encrypts the random number (Rms) based on a primary lock key (LKs) owned by the information processing device.
- the data [E (L ks, Rms)] is received from the information processing apparatus, and the encryption calculated based on the received encrypted data and the primary lock key (LK s) obtained by the hash value calculation is performed. It is characterized in that it is configured to execute verification processing including collation with data [E (L ks, Rms)].
- the information processing device includes, as a unique key set, a primary ID (ID s), which is a unique ID of the information processing device, and the primary ID (ID s). It has a primary key set [ID s, LK s] consisting of a primary lock key (LK s) set correspondingly, and the control unit responds to the output request of the export lock key set from the information processing device.
- the configuration data of the export lock key set is encrypted and output based on the primary lock key (LK s) of the information processing apparatus.
- the export key set is input from the information processing device that has executed the export lock.
- a sub key set [ID en, LK en] constituted by a data set of a sub ID (ID en and a sublock key (LK en) set corresponding to the sub ID (ID en);
- a second aspect of the present invention provides:
- An information storage device having a memory for data storage and a control unit for executing access control to the memory, and an interface to the information storage device, and executing a memory access in the information storage device via the interface
- a memory access control system having an information processing device;
- the information processing device includes
- a key set including an identifier (ID) and a lock key (LK) is stored in a storage means,
- the control unit of the information storage device includes
- the key set including the identifier (ID) is: (a) a standard lock key set as a key set that does not allow external output;
- the memory access control system has a configuration for determining whether or not to output a keyset to the information processing device based on the determination information.
- the information processing device includes a primary ID (ID s) as a unique ID of the information processing device, and a primary ID as a lock key corresponding to the unique ID.
- a primary key set [ID s, LK s] consisting of a lock key (LK s) is stored in the storage means,
- the information storage device control unit obtains verification of a key set unique to the information processing device, which is input from the information processing device, by calculating a hash value to which the lip master key (LMK) is applied. It is characterized in that it is executed based on the lip key (LK).
- the control unit of the information storage device executes a random number generation process, and executes the random number generation process based on a primary lock key (LK s) owned by the information processing device.
- Rm s) encrypted data [E (L ks, Rm s)] is received from the information processing apparatus, and based on the received encrypted data and the primary lock key (LK s) obtained by the hash value calculation. It is characterized in that verification processing including collation with the calculated encrypted data [E (L ks, Rms)] is executed.
- the information processing device includes, as a unique key set, a primary ID (ID s) that is a unique ID of the information processing device, and the primary ID (ID s). ), A primary key set [ID s, LK s] including a primary lock key (LK s) set in correspondence with the information storage device.
- a primary key set [ID s, LK s] including a primary lock key (LK s) set in correspondence with the information storage device.
- encrypted data obtained by encrypting the configuration data of the export lock key set based on a primary lock key (LK s) of the information processing device is output, and the information processing device outputs the encrypted data.
- the decrypted data is subjected to a decryption process based on the primary lock key (LK s) of the information processing device to execute the export lock key set. Characterized in that it is a construction you get the growth data.
- the export lock key set includes a sub ID (ID en) input from the information processing apparatus that has executed the export lotter, and the sub ID (ID en).
- ID en input from the information processing apparatus that has executed the export lotter
- ID en sub ID
- ) Is set by the data set of the suplock key (LKen) set corresponding to The sub-key set [ID en, LK en], and the control unit of the information storage device, based on the primary lock key (LK s) of the sub-key set output request information processing device, Encrypted data generated by encryption: [E (LKs, LKen)] is output to the information processing device.
- a third aspect of the present invention is that
- a memory access control method in an information storage device including a data storage memory and a control unit that performs access control on the memory
- the key set including the identifier (ID) is: (a) a standard lock key set as a key set that does not allow external output;
- a memory access control method comprising the steps of: determining which of the two types; and storing the determination information in a storage unit.
- the discrimination information is a hook status information as a hook state discrimination information
- the lock status information is a standard lock state or not
- the memory access control method further includes determining that the information storage device is in the export lock state based on the lock status information. Performing a process of outputting the export / keyset to the information processing device, on condition that the determination is made.
- the memory access control method further includes a step of determining whether or not output processing of the export lock key set to the information processing apparatus can be performed by the information processing apparatus. Performs verification of the key set unique to the information processing device to be input, and at least confirms that the verification is successful. As a condition, output processing of the export lock key set to the information processing device is performed.
- the key set unique to the information processing device includes a primary ID (ID s) as a unique ID of the information processing device and a lock key corresponding to the unique ID.
- a primary key set [ID s, LK s] consisting of a certain primary lock key (LK s), and the information storage device has a relationship of LK s H (LMK, ID s), that is, a primary ID (ID s) has a lock master key (LMK) capable of calculating a primary lock key (LK s) as a hash value obtained by applying the lock master key (LMK) to the lock master key (LMK). Verifying the unique key set on the basis of the LK key obtained by calculating the hash value using the LK master key (LMK). Sign.
- the verification process execution step executes a random number generation process, and executes the random number (Rms) based on a primary lock key (LKs) owned by the information processing apparatus. ) Is received from the information processing apparatus, and is calculated based on the received encrypted data and the primary lock key (LK s) obtained by the hash value calculation. And performing a verification process including a check with the encrypted data [E (L ks, Rms)].
- the information processing device includes, as a unique key set, a primary ID (ID s) that is a unique ID of the information processing device, and the primary ID (ID s). ), A primary key set [ID s, LK s] consisting of a primary lock key (LK s) set in accordance with the above.
- the memory access control method further includes an export lock key set from the information processing device. An encryption output step of encrypting and outputting the configuration data of the export lock key set based on a primary lock key (LK s) of the information processing apparatus in response to a request for output of the export lock key set. You.
- the export key set includes a sub-ID (ID en) input from the information processing apparatus that has executed the export, and the sub ID (ID en).
- ID en) is a supkey set [ID en, LK en] composed of a sap lock key (LK en) data set that is set corresponding to the sub-encryption key (LK en). ) Based on the primary key (LK s) of the sub-keyset output request information processing device, and outputs encrypted data: [E (LK s, LK en)].
- a fourth aspect of the present invention is that
- a computer for executing a memory access control process in an information storage device having a memory for storing data and a control unit for executing access control to the memory.
- the key set including the identifier (ID) is: (a) a standard lock key set as a key set that does not allow external output;
- an information storage device such as a memory card
- (a) external output is not allowed according to a mouth command input from an information processing device serving as a host device such as a PC. It determines whether it is a standard lock key set as a key set, or (b) an export lock key set as a key set that allows external output, and stores each key set information.
- an export lock key set the required Since the configuration is such that external output is permitted as a condition, a configuration is realized in which only a plurality of valid information processing devices can execute memory hacking or unlocking processing.
- the memory access control is performed based on the lock status information that can determine whether the lock state is the standard lock state or the export lock state. Since the key set output process is executed only in the lock state, various memory access restriction processes can be performed according to the memory usage mode.
- the exporter key set when the exporter key set is output to the information processing device, a verification process of a key set unique to the information processing device input from the information processing device is performed. Since the configuration is such that the output processing of the memory is executed, unrestricted memory access is prevented, and secure memory access control is realized.
- the information processing apparatus is provided with a primary ID (IDs) as a unique ID of the information processing apparatus, and a primary lock key (LKL) which is a lock key corresponding to the unique ID.
- IDs a primary ID
- LKL primary lock key
- the sub-key set [ID en, LK en] composed of the data set of (en) is stored.
- the computer program of the present invention is, for example, a storage medium and a communication medium provided in a computer-readable format for a general-purpose computer system capable of executing various programs and codes, such as a CD FD and an MO. It is a computer program that can be provided via a storage medium or a communication medium such as a network. By providing such a program in a computer-readable format, processing corresponding to the program is realized on the computer 'system.
- a system is a logical set of a plurality of devices, and is not limited to a device in which each component is located in the same housing.
- FIG. 1 is a diagram for explaining an outline of a use form of the information storage device of the present invention.
- FIG. 2 is a diagram illustrating an example of a hardware configuration of a host device using an information storage device.
- FIG. 3 is a diagram illustrating an example of a hardware configuration of the information storage device.
- FIG. 4 is a diagram for explaining data stored in the information storage device and the host device of the present invention.
- FIG. 5 is a diagram illustrating a communication processing sequence between the information storage device and the host device in the hacking process for the information storage device.
- FIG. 6 is a diagram showing a processing flow for explaining a hacking process for the information storage device.
- FIG. 7 is a diagram illustrating a communication processing sequence between the information storage device and the host device in the unlocking process on the information storage device.
- FIG. 8 is a diagram showing a processing flow for explaining an unlocking process for the information storage device.
- FIG. 9 is a diagram for explaining data stored in the information storage device and the host device of the present invention.
- FIG. 10 is a diagram for explaining a hook processing mode for the information storage device of the present invention.
- FIG. 11 is a diagram for explaining a communication processing sequence between the information storage device and the host device in the lock process applying the subkey set to the information storage device.
- FIG. 12 is a diagram showing a process flow for explaining a hack process using a subkey set for an information storage device.
- FIG. 13 is a diagram illustrating a communication processing sequence between the information storage device and the host device in the unpacking process using the imprint and the sub-keyset for the information storage device.
- FIG. 14 is a flowchart for explaining an imprint process using an imprint and a subkey set for an information storage device.
- FIG. 15 is a flowchart illustrating an imprint process using an imprint and a subkey set for an information storage device.
- FIG. 16 is a diagram illustrating a communication processing sequence between the information storage device and the host device in the unpacking process using the imprint and the subkey set for the information storage device.
- FIG. 17 is a flowchart illustrating a process of updating the acknowledgment status flag in the undocking process using the imprint and the subkey set for the information storage device.
- FIG. 18 is a flowchart illustrating a process of referring to a hook status flag in an unlock process for an information storage device.
- FIG. 19 is a diagram illustrating a cluster configuration as a data storage mode in the information storage device.
- FIG. 20 is a flowchart illustrating a hacking process based on reading of a specific data area (cluster).
- FIG. 21 is a diagram for explaining a configuration of a hook-and-loop-free execution device for the information storage device.
- FIG. 22 is a flowchart of a process of reading the wake-up state in the host device.
- FIG. 23 is a flowchart for explaining the processing at the time of the lock processing in the host device and the indicator display processing.
- FIG. 24 is a flowchart for explaining the process at the time of the unlocking process in the host device and the indicator display process.
- the information processing device 20 is equipped with an information storage device 30 such as a PC (Personal Computer) 21, a PDA (Personal Digital Assistants) 22, a mobile communication terminal 23, a digital camera 24, etc.
- an information storage device 30 such as a PC (Personal Computer) 21, a PDA (Personal Digital Assistants) 22, a mobile communication terminal 23, a digital camera 24, etc.
- a device that can output information from the device 30 is equipped with an information storage device 30 such as a PC (Personal Computer) 21, a PDA (Personal Digital Assistants) 22, a mobile communication terminal 23, a digital camera 24, etc.
- These information processing devices 20 are equipped with a memory card 30 equipped with a nonvolatile memory (NVM: Non-Volatile Memory) such as a flash memory, and store data in the memory card 30 or Executes reading of data stored in the memory card.
- NVM Non-Volatile Memory
- Each of the PCs (Personal Computers) 21 and 22, the PDAs (Personal Digital Assistants) 23, the mobile communication terminal 24, and the digital camera 25 may use one memory card 30 mutually.
- image data captured by a digital camera 25 is stored in a memory card 30, and then the memory card 30 is inserted into a PC 21 to display stored image data and execute image processing, or 21 In 1, contents such as music data obtained via the Internet or the like or via CD, DVD, etc. are stored in the memory card 30, and then the memory card 30 storing the contents is stored in the PDA. 22 to be used to play contents on the go using the PDA 22.
- FIG. 2 shows a configuration example of an information processing apparatus to which an information storage device such as a memory card can be attached.
- the CPU (Central Processing Unit) 101 is a processor that executes various application programs and OS (Operating System). It performs various kinds of encryption processing including hash value calculation, random number generation, and the like in the hacking processing as access restriction processing for the information storage device, which will be described in detail later, and control in command transmission and reception.
- OS Operating System
- the ROM (Read Only Memory) 102 stores a program executed by the CPU 101 and fixed data among calculation parameters. This will be explained in detail later. That mouth click processing as an access restriction process against to the information storage device is stored en-locking processing program force s.
- a RAM (Random Access Memory) 103 stores information applied to the execution program of the CPU 101, parameters that change as appropriate in the execution, and the like.
- a DSP (Digital Signal Processor) 104 is used to perform symbol processing and equalizer adjustment (audio processing) when playing back content input from the information storage device 200 such as a memory card via the storage device IZF 113. Performs gain adjustment according to the frequency band of the signal), and performs compression / decompression (encode / decode) processing.
- the decoded and decompressed content is converted into an analog audio signal by a digital-to-analog conversion circuit 105, amplified by an amplifier circuit 106, and then output via an audio output unit 107.
- the output of the image data is executed by the display unit 109 such as a CD via the display controller 108.
- Digital or analog signals are input from an external source from the input I / F 112, and AZD conversion is performed when analog signals are input.
- the AZD conversion converts an input input signal into a digital signal.
- An input digital signal from an external source is converted into a digital signal having a predetermined sampling frequency and a predetermined number of quantization bits by a sampling rate converter (SRC) and input.
- SRC sampling rate converter
- the input / output IZF 115 is an interface for connecting an external device, and performs data transfer with a connected device by making a connection in a connection mode such as, for example, USB.
- Flash memory is a form of electrically rewritable nonvolatile memory called EPROM (Electrically Erasable Programmable ROM).
- EPROM Electrically Erasable Programmable ROM
- Conventional EEPROMs have a large area occupied by one bit because one bit is composed of two transistors, which limits the degree of integration.However, flash memory erases all bits at once. With this method, one bit can be realized with one transistor.
- the information storage device 200 having such flash memory is a PC, PDA, Data that is attached to an information processing device such as a digital camera and is input from the information processing device is stored in the memory unit 220, and data stored in the memory unit 220 is output to the information processing device. I do.
- the information storage device 200 further includes a control unit 210, and the control unit 210 is executed by a CPU (Central Processing Unit) 211 as a processor that executes various programs.
- ROM Read Only Memory
- ROM Read Only Memory
- RAM Random Access Memory 2 13
- a RAM (Random Access Memory) 2 13 is a state value of a wake-up state which is changed by a wake-up process as a process of restricting access to an information storage device and a wake-up process which will be described in detail later. Also used as data storage area.
- the control unit 210 further functions as a device interface 2 14 as an interface for data input / output between the information processing devices, and as a data input / output interface with the memory unit 220.
- Memory interface 2 16 Memory interface 2 16.
- the CPU 211 performs various types of encryption including hash processing, hash value calculation, random number generation, and the like in the hacking process as an access restriction process executed with the information processing device described in detail below. Executes processing and control of command transmission and reception.
- a process for enabling access restriction to a memory section (memory section 220 in FIG. 3) constituted by a flash memory or the like, which is a data storage area for contents and the like of the information storage device 320 such as a memory card, is executed.
- Processing and access restrictions Is referred to as an unlocking process.
- the host device 310 performs the lock process and the unlock process.
- the host device 310 has an interface for executing data transfer with the information storage device 320 such as a memory device, and has an information storage device. It includes an information processing device such as a PC, a PDA, a digital camera, and a DSC (Digital Still Camera) that performs data utilization by writing data to the 320 or reading data from the information storage device 320. Further, the host device 310 also includes a lock / unlock device 3 1 2 as a device dedicated to performing a hook process / unlock process with respect to the information storage device 320 such as a memory card. .
- the lock / unlock device 3 1 2 has a CPU as a control means for executing the lock / unlock processing algorithm, a ROM and a RAM as data storage memories, and further stores information such as a memory card. It has an interface for mounting the device 320 and executing data transfer, and is configured as a device dedicated to hacking and unlocking of the information storage device 320.
- a device that performs a hooking process and an unlocking process on the information storage device 320 that is, a PC, a PDA and other information processing devices, and a lock / unlock device 3
- the host device including 1 and 2 is called.
- An ID for example, 16-byte data
- a memory 315 such as a ROM in the host device
- a lock key (LK) (for example, 8-byte data) is stored as key data.
- the set (ID, LK) of the host device identifier (ID) unique to each host device and the lock key (LK) is called a key set.
- a lock master key is stored in a memory 325 such as a ROM in a control unit in the information storage device 320 such as a memory card.
- LTK lock master key
- the lock master key (LMK) stored in the information storage device 320, the ID stored in the host device, and the lock key (LK) have the following relationship.
- LK H (LMK, ID)
- H (X, Y) indicates a hash value calculation process for message Y to which key X is applied. That is, a lock key (L K) corresponding to the ID is obtained by a hash value calculation process using the lock master key (LMK) for the ID.
- L K lock key
- the hash function is a one-way function, and it is very difficult to find the input from the output.
- a one-way function is applied to the ID unique to each host device using the master key (LMK) as a key, and the output is used as the key (LK) corresponding to the ID unique to each host device. ).
- MD5, SHA, etc. can be applied as the hash 'algorithm.
- FIG. 5 shows a processing sequence diagram executed between the host device and the information storage device in the hacking process.
- the host device and the information storage device are connected to each other so that data can be transferred.
- the host device outputs a random number generation command to the information storage device.
- the information storage device that has received the random number generation command performs a process of generating a predetermined length, for example, a 16-byte random number (Rms), and transmits the generated random number (Rms) to the host device.
- the information storage device stores the generated random numbers (Rms) in a memory such as a RAM in the control unit.
- the host device that has received the random number (Rms) from the information storage device performs encryption processing of the received random number (Rms) using the encryption key (LK) stored in advance in the memory of the host device as an encryption key: E (LK) , R ms).
- E (X, Y) indicates the symbol processing of message [Y] to which key [X] is applied.
- Various algorithms can be applied to the cryptographic algorithm, for example, the DESS cryptographic algorithm is applied.
- the host device uses the lock key (LK) as the key to process the received random number (Rms).
- Symbol processing Executes E (LK, Rms), and as a result, the data [E (LK, Rms)] and the host device's unique information stored in the memory in the host device in advance. Is transmitted to the information storage device together with the lock command.
- Data The information storage device that has received the ID, E (LK, Rms) first performs a hash value calculation process that applies the received master ID (LMK) stored in its own memory to the received ID. Calculate the lock key (LK) corresponding to the reception ID. That is,
- the lock key (LK) corresponding to the received ID is calculated.
- the received ID is stored and retained in its own memory.
- the received ID is used in the unlocking process described later.
- the information storage device executes a symbol processing: E (LK, Rms) on the random number Rms stored in its own memory, by applying the hack key (LK) obtained by the above-described hash value calculation. Then, a collation process is performed to determine whether or not it matches the encrypted data: E (LK, Rms) received from the host device.
- E (LK, Rms) the encrypted data received from the host device.
- E (LK, Rms) If the data received from the host device: E (LK, Rms) matches the encryption processing data calculated by itself: E (LK, Rms), the host with a valid ID and LK combination data It determines that the request is a hacking process request from the device, executes the hacking process, and sends a lock completion notification to the host device.
- the information storage device stores and holds the key set [ID, LK] of the host device that has executed the lock processing in a memory unit 220 constituted by a non-volatile memory (NVM) such as a flash memory. .
- NVM non-volatile memory
- E (LK, Rms) If the data received from the host device: E (LK, Rms) does not match the symbol processing data calculated by itself: E (LK, Rms), it has a valid ID and LK pair data. It determines that the device is not the host device, determines that the request is for a hacking process from an unauthorized device, and sends an error notification to the host device without performing the hacking process. It should be noted that the packet processing executed by the information storage device is based on data storage such as content. To access the memory section (memory section 220 in Fig. 3) composed of flash memory, etc., which is the area, as a condition to execute the unpacking process described below. It is.
- step S101 the memory card as the information storage device generates a random number (R sm) based on the reception of the random number generation request command from the host device.
- the generated random number is read out by the host device in step S102, and in step S103, the ID of the host device and the random number (Rms) are transmitted along with the lock command together with the lock key (LKM) of the host device.
- E (LK, Rms) is transmitted to the memory card as the information storage device.
- step S104 the memory card writes the received ID and the encrypted data: E (LK, Rms) to the memory in the information storage device.
- step S105 the memory card calculates the hash value of the received ID by applying the master key (LMK) stored in its own memory, that is,
- the memory card executes the encryption processing of the random number (Rms) generated in step S101 based on the calculated P-key (LK), and obtains the encrypted data: E ( LK, Rms) are calculated as collation data.
- the host device determines that the device is a legitimate device having a paired data of a legitimate ID and a lock key (LK), and the host device determines in step S 107 Memory, which can be accessed on the condition that the acknowledgment process responds to the Perform the settings you want.
- the information storage device stores the key set [ID, LK] of the host device that has executed the lock process in a memory section 220 constituted by a non-volatile memory (NVM) such as a flash memory.
- NVM non-volatile memory
- step S108 the host device that has transmitted the lock command transmits the correct ID and the lock key (LK). Judgment is made that the unauthorized device does not have the set data, and the error notification is sent to the host device without performing the hack process.
- FIG. 7 shows a processing sequence diagram executed between the host device and the information storage device in the unlocking process.
- the host device and the information storage device are connected to each other so that data can be transferred.
- the host device outputs a random number generation command to the information storage device.
- the information storage device that has received the random number generation command executes a process of generating a predetermined length, for example, a 16-byte random number (Rms), and stores the generated random number (Rms) in the memory at the time of the previous hack process.
- the ID of the stored host device that is, the ID of the host device that executed the hack process, is transmitted to the host device.
- the information storage device stores the generated random numbers (Rms) in a memory such as a RAM in the control unit.
- the host device that has received the ID and the random number (Rms) from the information storage device first determines whether or not the received ID matches its own ID. If they do not match, it means that a lock has been executed by another host device, and the lock cannot be released.
- the host device If the received ID matches its own ID, it means that the host device itself has executed the lock, and it is possible to unlock it as the release processing.
- the host The device performs encryption processing of the received random number (Rms) using the lock key (LK) stored in the memory in the host device in advance as the key for processing the key: E (LK, Rms), and executes the resulting data. Is transmitted to the information storage device together with the unlock command.
- the information storage device Upon receiving the encrypted data: E (LK, Rms), the information storage device first reads the host device ID stored in its own memory, that is, the ID of the host device that has executed the hack process, The lock key (LK) corresponding to the ID of the host device that executed the lock process is calculated by the hash value calculation process that applies the lock master key (LMK) to the read ID. That is,
- LK lip key
- the information storage device executes a symbol processing: E (LK, Rms) on the random number Rms stored in its own memory, by applying the hack key (LK) obtained by the above-described hash value calculation. Then, a collation process is performed to determine whether or not it matches the encrypted data: E (LK, Rms) received from the host device.
- E (LK, Rms) matches the encryption processing data calculated by itself: E (LK, Rms)
- the host determines that the request is an unlocking process request from the device, executes the unlocking process, and transmits an unlocking completion notification to the host device.
- the host device does not have a valid ID and LK pair data, it is determined that the request is an unlocking process request from an unauthorized device, and the unlocking process is not performed.
- the unlocking process executed by the information storage device means the cancellation of the unlocking process, and a memory unit configured by a flash memory or the like, which is a data storage area for contents and the like (the memory unit 22 in FIG. 3). This is a process for setting to permit access to (0).
- step S201 a random number (R sm) is set based on the reception of a random number generation request command from the memory card as the information storage device. Occurs.
- step S202 the generated random number is read by the host device together with the ID of the host device that has executed the hooking process earlier.
- the host device determines that unlocking is possible when the ID read from the memory card matches its own host ID, and in step S203, the host device transmits the received random number (Rms) together with the unlock command.
- Data encrypted with the lock key (LK) of the remote device: E (LK, Rms) is transmitted to the memory card as the information storage device.
- step S204 the memory card writes the received encrypted data: E (LK, Rms) into the memory in the information storage device.
- the memory card reads the host device ID that executed the hacking process stored in the memory at the time of the previous hacking process, and reads the read ID into its own memory.
- a hash value is calculated by applying the stored lock master key (LMK), that is,
- the memory card performs an encryption process on the random number (Rms) generated in step S201 first, and obtains encrypted data: E ( LK, Rms) are calculated as collation data.
- the host device determines that the device is a legitimate device having a paired data of a legitimate ID and a lock key (LK). Performs the undocking process in response to the wake-up command, that is, the setting that enables access to the memory.
- the host device that has transmitted the unlock command transmits the unlock command. It is determined that the host device does not have the correct ID and lock key (LK) pair data that has been subjected to the lock process, and an error notification is sent to the host device without performing the unlock process, that is, unlocking. I do.
- the host device having the valid combination data of the host device ID and the corresponding lock key (LK) can execute the lock process on the information storage device.
- Unlock processing as unlocking can be performed only by the host device that executed the lock processing.
- only the information storage device performs the so-called one-side authentication process of executing the authentication process of the host device, so that the processing load on the host device side is reduced.
- efficient processing becomes possible.
- the above-described hacking process and undocking process are executed as processes corresponding to the information storage device for each host device, and only the host device that has executed the hacking process can perform the undocking process.
- This is a configuration example.
- an information storage device (memory card) in which data is stored and locked by a certain host device (device A).
- a situation arises in which the user wants to use this on another host device (device B).
- the process of validating the access restriction on the memory unit (the memory unit 220 in FIG. 3) constituted by a flash memory or the like is defined as a hacking process, and the process of releasing the access restriction is defined as an undocking process. This is the same as the above-described processing example.
- the host device 5100 performs the wake-up process and the undocking process.
- the host device 5100 has an interface for executing data transfer with the information storage device 520 such as a memory device, and the information storage device.
- the information storage device 520 such as a memory device
- the information storage device. 5 Includes information processing devices such as PCs, PDAs, digital cameras, and DSCs (Digital Still Cameras) that use data by writing data to or reading data from information storage device 520. And the like, as well as a device for locking and unlocking the information storage device 520, which is a device dedicated to executing the hacking process and the unlocking process.
- a memory 515 such as a ROM in the host device has an ID s (for example, 16-byte data) as an identifier unique to each host device, and a key data to be applied to the hacking process and the hacking process.
- Lock key (LK s) (for example, 8-byte data) as a key is stored.
- IDs and LKs are sets of data corresponding to IDs and LKs in the above-described processing example, and can be applied to the same mouthpiece processing and the same mouthpiece processing as those described above.
- the IDs and LKs are a primary ID and a primary lock key, and are written into a memory such as a ROM in the host device at the time of manufacturing each host device, and are data that cannot be rewritten by a user.
- These primary IDs (IDs) and primary hack keys (LK s) are used in one-to-one correspondence between host device and information storage device in the same manner as the LMK application process described above. Applicable to A key set consisting of a primary ID and a primary lock key unique to each host device: [ID s, LK s] is called a primary key set.
- This primary key set The process of applying the lock [IDs, LKs] is called the standard lock process, and the information processing device as the host device outputs a standard lock command to the information storage device.
- the standard lock is executed, and the unlock process is executed by the output of the unlock command.
- a memory 515 such as a ROM in the host device further stores a supkey set as a combination of a sup ID and a suplock key as a key set that can be supplied for copying to another host device.
- This subkey set: [ID en, LK en] is a key that can be stored in common in multiple host devices, and is stored in another host device by the processing procedure described below: [ID en, LK en] en, LK en] can be copied and stored in another host device via the information storage device.
- Subkeyset Apply [ID en, LKen] to perform the hacking process on the information storage device (memory card), and apply the subkeyset applied to the hacking process to the information storage device (memory card).
- the process that enables copying and output to other host devices via) is called export processing.
- This sub-keyset Lock processing using [ID en, LK en] is called export lock processing, and an export lock command is sent from the information processing device as the host device to the information storage device. The output locks the export port, and the output of the unlock command executes the unlocking process.
- the sub-keyset [IDen, LKen] obtained by the host device from the information storage device (memory card) on which the port lock has been made can be written to the memory in the host device.
- This sub-keyset copy writing process is called the implementation process.
- the implementation process forms a group consisting of a plurality of host devices having the same subkeyset: [Iden, LKen].
- the subkey set: [ID en, LK en] is a key set that can be applied to the mouth processing set to be able to output to the outside, that is, the export processing (eXport) mouth processing. , ID, and LK with [ e ] appended.
- n in [en] indicates the subkeyset number, which corresponds to the set number of groups.
- Sub key set 1 [ID el, LK el] is shared by a group of three host devices: PC (Personal Computer) as host device-a, PC-b, PDA (Personal Digital Assistants) Set as a subkey set (Sub1), and set Subkeyset2: [ID e2, LKe2] as a shared subkeyset (Sub2) for the group of PC_a, PDA-a.
- PC Personal Computer
- PDA Personal Digital Assistants
- Subkeyset2 [ID e2, LKe2] as a shared subkeyset (Sub2) for the group of PC_a, PDA-a.
- PDA-b When set, each host device stores the primary key set [ID s, LK s] consisting of the primary ID (ID s) and the primary lock key (LK s) in the memory,
- P C—a is [I D e l, LK e l], [I D e 2, L K e 2]
- P C—b is [I D e l, LK e l]
- PDA-a is [IDel, LKel], [IDel2, LKel2]
- PDA-b is [I D e 2, L K e 2]
- the sub key set consisting of each sub ID and sub key is stored.
- a sub key set including these sub IDs and data of the sub key keys By writing [ID en, LK en] in its own memory 5 15, a sub key set including these sub IDs and data of the sub key keys:
- the members of group n can use a common sub-ID (ID n) and a common sub-lock key (LKn) to associate with one information storage device (memory card). Locking and unlocking can be performed.
- a memory master such as a ROM in a control unit in the information storage device such as a memory card stores a master key (LMK).
- a master key (LMK) stored in the information storage device 520, an ID (including ID s and ID en) stored in the host device, and a lock key (LK (including LK s and LK en)) Has the following relationship:
- the correspondence between the lock master key (LMK) and the ID and LK is exactly the same as the above-described processing of applying the LM K.
- the hash value calculation processing that applies the lock master key LMK to the primary ID (ID s) , Primary rock key (LK s) is calculated, and the hash value calculation processing using the lock master key LMK for the sub ID (ID en) is performed to calculate the sub lock key (LK en).
- (a) applies a primary key set [ID s, LK s] 531 consisting of a primary ID (ID s) unique to each host device 501 and a primary lock key (LK s) This is the standard lock process.
- Standard lock processing using 531 is executed by outputting a standard lock command from the host device 5100 to the information storage device 5200.
- the unlocking process is executed by the output of the unlocking command.
- the primary key set [IDs, LKs] is stored in the standard lock keyset storage area 541 of the storage section (flash memory) of the lock information storage device (memory card) 520. ] Is stored.
- the primary key set [IDs, LKs] applied to the standard lock is not output from the lock information storage device (memory card) 520 to the outside.
- the unlocking (unlocking) process can be executed only by the host device that has the same primary key set [IDs, LKs], that is, the only host device that has executed the standard lock process. .
- the primary key set [ID s, LK s] including the primary ID (ID s) and the primary lock key (LK s) has a one-to-one correspondence between the host device and the information storage device, just like the LMK application processing described above.
- the present invention can be applied to the lip-locking process and the lip-locking process, and the lip-locking process and the unlock process in the same processes as those described with reference to FIGS. 5 to 8 are possible.
- (b) is an export port to which a sub-key set [ID en, LK en] 532 consisting of a sub-ID (ID en) that can be shared by multiple host devices and a sub-lock key (LK en) is used. Processing.
- the export lock processing using the subkey set [ID en, LK en] 532 is executed by outputting an export lock command from the host device 501 to the information storage device 52, and an unlock command.
- the unlock process is executed by the output of.
- the sub-key set [ID en, LK en] is stored in the export lock key set storage area 542 of the storage section (flash memory) of the lock information storage device (memory card) 520. Is stored.
- the sub-key set [ID en, LK en] applied to the export port executes the imprint processing described in detail later, so that other host devices can execute the lock processing.
- the unlocking (unlocking) processing can be executed only for the host device that executed the lock processing and the subkey set applied to the export lottery by the imprint processing.
- G [ID en, LK e ⁇ ].
- (c) is a standard to which a sub-key set [ID en, LK en] 532 consisting of a sub ID (ID en) that can be shared by each host device 501 and a sub lock key (LK en) is used. Lock processing. This process is called a group process.
- a standard lock command is output from the host device 5 10 to the information storage device 5 20.
- the unlock process is executed by the output of the unlock command.
- the key set applied in this process is the subkey set [IDen, LKen] 5332.
- the key set to be applied is a subkey set [ID en, LK en] 532.
- the standard lock key set storage area of the lock information storage device (memory card) 520 storage unit (flash memory) is stored.
- the subkey set [ID en, LK en] is stored in area 541.
- the subkey set [ID en, LK en] applied to the group lock is stored in the standard lock key set storage area 541, so the lock information storage device (memory card) ) There is no output from 520.
- the host device that has the same subkey set [IDen, LKen] can execute this group unlocking (unlocking) process.
- the host device that executed the group hack not only the host device that executed the group hack, but also the host device that already obtained the same sub key set [IDen, LKen] in advance.
- export lock processing using the same subkey set [ID en, LK en] is performed in advance, and the same sub key set [ID en, LK en] is obtained by imprint processing when the export lock processing is executed. ], And the host device stored in the memory can be unlocked.
- the sequence of the standard lock using the sub-key set [ID en, LK en], that is, the lock processing and unlock processing sequence in the gnole wrapper is the same as the LMK application processing described above (see FIGS. 5 to 8). Becomes However, the difference is that there can be more than one host device that can execute mouth-to-mouth and mouth-to-mouth due to imprint processing.
- a sub-ID (ID en) and a sub-key (LK en) that can be shared by a plurality of host devices, that is, a packet processing using a sub-key set [ID en, LK en], and an information storage device (Copy processing of sub key set [ID en, LK en] to the host device via (memory card) (imprint processing) and unclamping processing to release export port explain.
- the sub-keyset The sub-key set applied to the lip-locking process is processed by the lip-locking process for the information storage device (memory card) to which [ID en, LK en] is applied. This enables export lock processing that enables copy output to other host devices via.
- FIG. 11 shows a processing sequence diagram executed between the host device and the information storage device in the hacking process based on the sap key set.
- the host device and the information storage device are connected to each other so that data can be transferred.
- the information storage device has a hook status flag 551 shown in FIG. 11 and holds a value indicating the hook state in the information storage device.
- the upper NVM is a flag stored in an NVM (Non-Volatile Memory) area of the memory unit 220 constituted by the flash memory described in FIG. 3 and the lower NVM is a control unit 210. This is a flag stored in RAM 2 13 in the RAM. When the power of the information storage device is turned off, the flag in the RAM is erased, but the flag data of the NVM is maintained. Therefore, the flag data is copied to the NVM in response to the rewriting of the flag in the RAM, and when the power is turned on after the power is turned off, the flag information of the NVM is copied to the RAM.
- NVM Non-Volatile Memory
- Standard lock is a lock mode in which the external output of the key set [ID, LK] applied to the lock is not allowed.
- the information storage device (memory card) has a data storage area in the memory unit (flash memory (NVM)) for storing the key set applied to the standard lock and the key set applied to the export lotter.
- flash memory flash memory
- the memory unit of the storage device can be accessed.
- the host device outputs a random number generation command to the information storage device.
- the information storage device that has received the random number generation command executes a process of generating a random number (Rms) of a predetermined length, for example, 16 bytes, and transmits the generated random number (Rms) to the host device.
- the information storage device stores the generated random numbers (Rms) in a memory such as a RAM in the control unit.
- the host device Upon receiving the random number (Rms) from the information storage device, the host device encrypts the received random number (Rms) using the sub-key (LKen) previously stored in the memory of the host device as an encryption key: Execute E (LK en, Rms).
- LKen sub-key
- Various algorithms can be applied to the encryption algorithm, for example, the DES encryption algorithm is applied.
- the host device executes the encryption processing of the received random number (Rms) using the sub-key (LKen) as the symbol processing key: E (LKen, Rms), and executes the resulting data [E (LKen, Rm). s)], and the sub-ID (ID en) as a set of data corresponding to the sublock key (LK en) stored in the memory of the host device in advance, together with the lock command, in the information storage device.
- the information storage device that has received the ID en, E (LK en, Rms) first sends the received master ID (LMK) stored in its own memory to the received sub ID (ID en).
- the suplock key (LKen) corresponding to the received sub ID (ID en) is calculated by the applied hash value calculation processing. That is,
- a sublock key (LK en) corresponding to the reception sub ID (ID en) is calculated.
- the reception sub ID (ID en) is stored and retained in its own memory.
- the reception sub-ID (ID en) is used at the time of the unlock process described later.
- the information storage device performs a cryptographic process of applying the sub-key (LKen) obtained by the above-described hash value calculation to the random number Rms stored in its own memory: E (LKen, Rms) And executes the collation processing to determine whether or not it matches the encryption processing data received from the host device: E (LKen, Rms).
- E (LKen, Rms) the encryption algorithm
- various algorithms are used. Algorithms can be applied.
- a valid sub-ID (ID en) is obtained.
- the request is a processing request from a legitimate host device that has the set data of the sublock key (LKen)
- executes the export processing and sends a notification of the completion of the process to the host device.
- the export lock process executed by the information storage device will be described below with respect to access to a memory unit (memory unit 220 in FIG. 3) constituted by a flash memory or the like which is a data storage area for contents and the like.
- This process is a setting that allows the unlocking process to be applied with the sub ID and sub lock key, and stores the information of the export key set applied to the export lotter: [ID en, LK en]. Store it in the exporter key set storage area of the memory section (flash memory (NVM)) of the device (memory card). Further, the lock status flag is rewritten.
- 1 1 is copied.
- the flag information of the RAM is erased, but the flag information of the NVM is maintained. Thereafter, when the power of the information storage device is turned on again, the flag information of the NVM is turned off.
- the sub key stored in the export lock key set storage area of the memory unit 220) can be output to another host device by an imprint process described later.
- step S301 the memory card as the information storage device generates a random number (R sm) based on the reception of the random number generation request command from the host device.
- the generated random number is read by the host device in step S302, and in step S303, the sub-ID (ID en) stored in the storage unit of the host device together with the lock command is read.
- the received random number (Rms) is encrypted with the sub-key (LKen) stored in the storage unit of the host device, and data: E (LKen, Rms) is generated.
- ID en, E (LKe ⁇ , Rms) are transmitted to a memory card as an information storage device.
- step S304 the memory card writes the received sub ID (IDen) and the encrypted data: E (LKen, Rms) to the memory in the information storage device.
- step S305 the memory card applies the master key (LMK) stored in its own memory to calculate the hash value of the reception sub ID (IDen), that is,
- the memory card performs an encryption process on the random number (Rms) generated in step S301 based on the calculated sub-key (LKen) to obtain encrypted data: E ( LK en, Rms) is calculated as collation data.
- step S306 the memory card receives the encrypted data calculated in step S305: E (LK en, Rms) from the host device together with the lock command in step S303.
- the host device has a subkey set [iDen, LKen] as a paired data of a valid and correct sub ID (ID en) and a sap lock key (LK en).
- step S306 the lock command is issued in step S308.
- the host device that has transmitted the message determines that the device is unauthorized and does not have the correct sub-ID (ID en) and suplock key (LK en) data. Send to host device.
- the information storage device on which the export lock has been performed uses the same sub key set [ID en, LK en] can be unlocked by the same processing procedure as the unlocking process described in [Processing Based on Lock Master Key (LMK)] above. . That is, unlocking becomes possible by replacing the applied ID and lock key with the sub ID (IDen) and the sublock key (LKen).
- LLK Lock Master Key
- other host devices that do not have the same key set as the supkey set [ID en, LK en] that has performed the lock process will use the sub key set [ID en, LK en] applied to the hack process. ].
- the information storage device cannot be unlocked, that is, cannot be accessed.
- a host device that has a primary key set [ID s, LK s] as a set of a valid primary ID (ID s) and a primary lock key (LK s) is an information storage device that has been exported.
- the sub key set [ID en, LK en] stored in the information storage device can be obtained from the information storage device.
- the lock can be released by applying the obtained sub key set [ID en, LK en]. Acquisition of the subkey set [ID en, LK en] via the information storage device is called imprint processing.
- the lip state is set based on a certain sub-key set [ID en, LK en], and the lip state where the sup-key set [ID en, LK en] can be output to another host device is exported. It is referred to as a lip lock state.
- the host device obtains (imprints) the subkey set [ID en, LK en] applied to the exporter processing from the information storage device in the export port state, thereby obtaining the same sub key set [ID en, LK en], becomes a member of a group composed of multiple host devices, and then unlocks by applying the acquired subkey set [ID en, LK en].
- the details of this implementation and the unlocking process (unlock process) will be described below.
- the host device obtains a subkey set including a sublock key (LKen) and a sub ID (IDen) [ID en, LK en] from the information storage device that has been locked by the export lock process described above.
- LKen sublock key
- IDen sub ID [ID en, LK en]
- FIG. 13 shows a processing sequence diagram of an imprint process and an unlock process performed between the host device and the information storage device.
- the host device and the information storage device are connected so as to be able to transfer data to each other.
- the host device does not have the sub key set [ID en, LK en] including the sub ID (ID en) applied to the export lock on the information storage device and the sublock key (LK en), and the information storage device Stores the subkey set [ID en, LK en] in the export key storage area.
- Information storage device Is in the so-called export lock state.
- the host device outputs a random number generation command to the information storage device.
- the information storage device that has received the random number generation command executes processing for generating a predetermined length, for example, a 16-byte random number (Rms), and stores the generated random number (Rms) in the memory at the time of the previous export port processing.
- the sub ID (ID en) stored in the sub key set (ID en), that is, the sub ID (ID en) in the sub key set [ID en, LK en] applied to the export lock processing is transmitted to the host device.
- the information storage device stores the generated random numbers (Rms) in a memory such as a RAM in the control unit.
- the host device Upon receiving the sub ID (ID en) and the random number (R ms) from the information storage device, the host device first determines whether the received sub ID (ID en) matches its own primary ID (ID s). judge. If they match, unlocking using the same primary lock key (LK s) as in the LMK application process (see Fig. 7) is possible.
- ID s its own primary ID
- LK s primary lock key
- receiving sub-ID (ID en) does not match its own primary ID (ID s), it means that another host device has performed hacking, but this receiving sub-ID (ID en) has not been executed. ) And sublock key (LKen) by imprint processing, it is possible to belong to the same group as another host device that has executed the export lock using the subkey set [ID en, LKen]. Become.
- the sub-ID (ID en) and sub-lock key (LK en) are obtained by executing the imprint process, and the sub-key set [ID en, LK en] is stored in its own memory as a set of these data. Then, it becomes a host device belonging to the group, and it becomes possible to release the export lock by applying the obtained subkey set [ID en, LK en].
- the host device stores the sub-ID (IDen) received from the information storage device in the memory.
- the host device that executes the imprint process then performs encryption processing of the received random number (Rms) using the primary lock key (LKs) stored in the memory in the host device in advance as a symbol processing key: E (LK s, Rm s)
- the primary ID (IDs) is transmitted to the information storage device together with the standard lock command.
- this lock process is a process to further apply the standard lock with the primary lock key (LKs) to the information storage device that has already been exported with the sublock key (LKen). This is called overlock processing.
- the information storage device that has received the primary ID (ID s) and the encoded data: E (LK s, Rms) from the host device first sends the lock master key (ID s) to the received primary ID (ID s).
- the primary key (LK s) corresponding to the primary ID (ID s) is calculated by the hash value calculation processing applying LMK). That is,
- LK s primary lock key corresponding to the primary ID (ID s) is calculated.
- the information storage device applies the primary lock key (LK s) obtained by the above-described hash value calculation to the random number Rms stored in its own memory.
- Signal processing: E (LK s, Rms) And executes the collation processing to determine whether it matches the signal processing data received from the host device: E (LK s, Rm s). If the data received from the host device: E (LKs, Rms) and the signal processing data calculated by itself: E (LKs, Rms) match, a valid primary ID (IDs) is obtained.
- the host device having the primary key set [ID s, LK s] as the primary lock key (LK s) pair data determines that the request is an over acknowledgment processing request, and executes the over acknowledgment processing. Sends the acknowledgment to the host device.
- E (LKs, Rms) If the received data from the host device: E (LKs, Rms) does not match the encryption processing data: E (LKs, Rms) calculated by itself, a valid primary ID (IDs) is used. It is determined that the host device does not have the primary key set [ ⁇ D s, LK s] as the primary lock key (LK s) group data, and that it is an over-hook processing request from an unauthorized device. Judge, and send an error notification to the host device without performing over-hook processing. Note that the over-lock processing executed by the information storage device is a state in which the export lock state is further overlapped with the standard lock, and the information storage device's acknowledgment status flag is set as shown in the figure.
- EL 1, which indicates that the port lock is enabled, is set in the NVM and RAM, respectively
- SL 1, which indicates the state in which the standard lock is enabled, is set in the RAM by the over-lock process. You. The flag information set in RAM is copied to NVM before the power is turned off.
- the host device that has received the over-hook completion notification performs the imprint process and the wake-up release continuously.
- the host device transmits the random number utterance command to the information storage device again.
- the information storage device that has received the random number generation command newly performs a process of generating a second random number (Rms2)
- the information storage device stores the generated random number (Rms2) in a memory such as a RAM in the control unit.
- the host device that has received the data: IDs, Rms2, IDen, E (LKs, LKen) from the information storage device first stores the encrypted data: E (LKs, LKen) in its own memory. Decrypt by applying the stored primary lock key (LK s) to obtain the sap lock key (LK en). This is the sub-key key (LKen) corresponding to the previously acquired sub ID (ID en), and stores the obtained sub-key key set [ID en, LK en] in the memory. By this imprint procedure, this host device must belong to the group No.n. it can.
- the host device continues the unlocking process of the information storage device.
- the host device obtains the information based on the sub-lock key (LK en) obtained by decrypting the encrypted data received from the information storage device: E (LK s, LK en) using the primary lock key (LK s).
- the random number (Rms2) received from the storage device is encrypted, and encrypted data: E (LKen, Rms2) is generated and transmitted to the information storage device together with the unlock command.
- the information storage device that has received the encrypted data: E (LKen, Rms 2) from the host device together with the unlock command, first sends the unlock master key to the sub-ID (ID en) stored in its own memory.
- the sub value key (LK en) corresponding to the sub ID (ID en) is calculated by the hash value calculation processing using (LMK). That is,
- the information storage device performs a cryptographic process of applying the suplock key (LKen) obtained by the above-described hash value calculation to the random number Rms2 stored in its own memory: E (LKen, Rms2). Is executed, and a collation process is performed to determine whether or not the encryption process data received from the host device: E (LKen, Rms2).
- LKen suplock key
- E (LK en, R ms 2) matches the encryption processing data calculated by itself: E (LK en, R ms 2), a valid sub-ID (ID en)
- ID en a valid sub-ID
- release the lock from the host device that has the data of the pair of sub-keys (LKen) that is, determine that the request is an unlocking process request, execute the unlocking process, and send an unlocking completion notification to the host device.
- the storage flag of the RAM in the control unit is first rewritten, and then, for example, the flag information in the RAM is copied to the NVM before the power is turned off, and the power is restarted. At the time of insertion, this is a sequence in which the NVM flag information is copied to the RAM, and the control unit executes access restriction processing based on the RAM flag information.
- step S401 the memory card as the information storage device generates a random number (R sm) based on the reception of the random number generation request command from the host device.
- step S402 the generated random number is transmitted to the information storage device by the host device that has executed the export lock process first, and is stored in the export lock key set storage area of the memory unit of the information storage device. It is read by the host device together with the sub-ID (ID en). At this point, the host device acquires the sub ID (ID en) in the sub key set [ID en, LK en].
- the host device confirms that the sub ID (ID en) read from the memory card and its own primary ID (ID s) do not match, and the information storage device is in the export lock state instead of the standard lock state. Judge. Next, in step S403, the host device transmits the received random number (Rms) with the primary lock key (LKs) of the host device together with the standard lock command as an overhook.
- the dangling data: E (LK s, Rm s) Sends its own primary ID (IDs) to the memory card as an information storage device.
- step S404 the information storage device (memory card) stores the primary ID (IDs) received from the host device and the encrypted data: E (LKs, Rms) in the memory in the information storage device.
- E LKs, Rms
- step S405 the memory card calculates a hash value by applying a received master key (LMK) stored in its own memory to the received primary ID (IDs), that is,
- the memory card executes encryption processing of the random number (Rms) generated in step S401 first, and obtains encrypted data: E ( LK s, Rms) are calculated as collation data.
- the memory card hosts the encrypted data calculated in step S405: E (LKs, Rms) and the standard lock command in step S403.
- E (LKs, Rms) E (LKs, Rms) )? ].
- the host device determines that the primary key set [ID s, as a set of valid primary ID (ID s) and primary lock key (LK s) LK s] is determined to be a legitimate device, and in step S407, standard lock processing corresponding to the standard lock command is executed.
- This is an over-the-mouth process in which the standard lock is further added to the export-the-open state.
- step S 406 determines whether the two values are not equal in step S 406 or not equal in step S 406 or in step S 408, the host device that has transmitted the standard lock command transmits a valid primary ID (ID s) and the primary rock key It is determined that the host device does not have the primary key set [ID s, LK s] as the set data of one (LK s), does not execute over-snap processing, and sends an error notification to the host device. Send.
- ID s primary ID
- LK s the primary rock key
- Standard lock is performed as overlock processing in step S407, and further.
- the process proceeds to step S501 in FIG.
- the host device that has received the over-acknowledgement completion notification transmits the random number generation command to the information storage device again, and the information storage device that has received the random number generation command newly transmits the second random number command in step S501.
- the random number Rms 2
- IDs Primary ID
- IDen sub ID
- step S503 the host device transmits an unlock command as a hook release request to the information storage device.
- the host device transmits the unlock command together with the encrypted data E (LK en, R ms 2).
- the method of generating the encrypted data E (LKen, Rms2) follows the following procedure.
- step S502 the host device that has read the data: IDs, Rms2, IDen, E (LKs, LKen) from the information storage device firstly encrypts the data: E (LKs, LKs, LKen).
- LK en) is decrypted by applying the primary lock key (LK s) stored in its own memory to obtain a sublock key (LK en).
- the host device performs an encryption process on the random number (Rms2) received from the information storage device based on the sublock key (LKen). Then, encrypted data: E (LK en, Rms 2) is generated.
- the host device stores the obtained subkey set: [IDen, LKen] in the memory, and the imprint process is completed. That is, the host device belongs to the group No. n by the imprint processing.
- step S504 the information storage device that has received the encrypted data: E (LKEn, Rms2) from the host device writes the received data: E (LKEn, Rms2) to the memory. Further, in step S505, calculation of collation data is executed.
- the process of calculating the data for collation is performed in the following procedure.
- the sub ID (ID en) stored in its own memory is hashed by applying the lock master key (LMK) to the sub ID key (LK en) corresponding to the sub ID (ID en). Is calculated. That is,
- the suplock key (LKen) corresponding to the sub ID (IDen) is calculated. Furthermore, the random number Rms2 generated in step S501 and stored in the memory is subjected to an encryption process using the suplock key (LKen) obtained by the above hash value calculation: E (LKen, Rms2). ) To generate collation data. In step S506, the information storage device determines whether the collation data: E (LKen, Rms2) matches the encryption processing data: E (LKen, Rms2) received from the host device. The collation process is performed.
- step S507 If the data received from the host device: E (LK en, Rms 2) matches the symbol processing data calculated by itself: E (LK en, Rms 2), a valid sub ID (ID en) ) And the sap lock key (LK en) is released from the host device having the sap key set [ID en, LK en] as the set data, that is, it is determined that the request is an unlock processing request. Proceeding to S507, the unlock process is executed and an unlock completion notification is transmitted to the host device. In the case of a mismatch, it is determined that the host device does not have a valid subkey set [ID en, LK en], that the request is an unlocking process request from an unauthorized device, and that the unlocking process is not performed. In step S508, an error notification is sent to the host device I do.
- a plurality of host devices have a common sub-key set [ID e ⁇ , LK en], and a lock and unlock using one information storage device (memory card) are performed. It becomes possible.
- the subkey set [ID en, LK en] can be copied and stored in another host device via the information storage device by executing the export lock, which enables flexible group formation. Become.
- the subkey set [ID en, LK en] is stored in the standard lock key storage area (see Fig. 10) of the information storage device, and is copied to another host device. Is not done. In other words, only the host device that has already acquired the same subkey set [IDen, LKen] can be accessed by normal unlocking without imprinting.
- the information storage device unlocked in this way is obtained by an unauthorized third party due to loss, theft, or the like, the memory can be freely accessed. Such a situation is not preferable when storing confidential information.
- the example described below is made in view of the above-described problem. Even when the host device turns off the power after releasing the export port by the unlock process, the export port can be performed. In this example, when the information storage device is turned on again, the memory access is permitted on condition that the export lotter is released.
- the primary ID (ID s) and the primary lock key (ID s) are stored in the memory such as the ROM in the host device, as described earlier with reference to FIG. 9 in “Lock processing configuration in device group”.
- Primary key set [ID s, LK s] consisting of sub-keys [ID en, LK s) is stored.
- the master key (LMK) stored in the information storage device, the ID (including ID s and ID en) stored in the host device, and the lock key (LK (including LK s and LK en)) are as follows: Have a relationship.
- Lock processing and unlock processing based on the primary ID (ID s) and primary lock key (LK s) by the host device are executed in the same sequence as described in [Processing based on lock master key (LMK)] above.
- the lock processing based on the sub ID (ID en) and sub lock key (LK en) is executed by the same sequence as described in the above [Lock processing configuration in device group].
- the process of maintaining the lip status flag in the imprinting and undocking processes in this processing example will be described. (Maintenance of the lip status flag in the imprint and undo processing)
- the host device obtains a sub-key set [ID en, LK en] including a sub-key (LK en) and a sub-ID (ID en) from the information storage device locked by the export-port process.
- Fig. 16 shows the imprint process to acquire, the unlock process to release the lock of the information storage device locked by the export lock process, and the process to maintain the status flag of the lock executed by the information storage device. This will be described with reference to the following.
- the sequence diagram shown in FIG. 16 shows the imprint processing and export lock executed between the host device and the information storage device described above with reference to FIG. 13 in [Lock processing configuration in device group].
- the unlocking process is basically the same as the process sequence diagram, and the processing procedure is also the same.
- FIG. 17 is a flow for explaining the processing procedure in the information storage device after receiving the acknowledgment release request (unlocking command) in the sequence diagram of FIG. 16 (similar to FIG. 13). .
- step S601 when the information storage device (memory device) receives a lock release request (unlock command), the information storage device performs a verification process to determine whether or not the unlock command can be executed.
- step S602 the encrypted data received together with the unlock command from the host device: E (LK en, R ms 2), and the encrypted data generated by itself: E (LK en , Rms 2). This process is described in [Device Group Configuration] is the same as that described in [1.
- the information storage device (memory card) is removed from the host device, and then the power supply to the information storage device (memory card) is stopped.
- the processing flow in FIG. 18 shows the processing in the case where the power of the information storage device is once turned off and the power supply is turned on again.
- step S701 when the information storage device (memory card) is turned on from the power-off state by, for example, being set in the host device, the information storage device returns to N in step S702.
- the lock status flags (SL, EL) stored in the VM are copied to the RAM of the control unit.
- the control unit executes control according to the status flag of the RAM.
- step S703 when a memory access request or an unlock command is input from the connected host device, the control unit of the information storage device refers to the RAM status flag in the RAM.
- step S704 the processing flow becomes Yes, and the processing of step S705, that is, the export port unlocking processing (see Figs. 13 to 15) is a condition.
- the memory access permission process is performed.
- the export lock state is maintained, and the information storage device is turned off and then turned on again.
- a host device having a valid primary key set [ID s, LK s] can perform a predetermined operation including the above-described overhook processing. Only when the procedure is executed can the unlocking be performed, and access from unauthorized devices can be eliminated.
- reading of data from the information storage device (memory card) to the host device is monitored by the control unit of the information storage device, and the execution of reading of a predetermined data area (for example, a specific cluster) is used as a trigger to read data.
- a predetermined data area for example, a specific cluster
- the reading of data stored in the memory section (memory section 220 in FIG. 2) of the information storage device (memory card) is managed by, for example, a playback management file (PBLIST) generated according to the stored data, and is controlled.
- the unit reads data from the memory unit (the memory unit 220 in FIG. 2) according to the reproduction management file, and outputs the data to the host device.
- control unit of the information storage device can monitor the read data.
- audio data compressed by ATRAC 3 can monitor a cluster as a predetermined data unit as a read data unit.
- the audio data compressed by ATRAC 3 consists of a cluster consisting of a plurality of SUs (sound units) as the minimum data unit, and a part composed of a plurality of clusters.
- SU sound unit
- SU sound unit
- One hundred bytes of data, and a cluster is data composed of multiple SUs (eg, two SUs). If one cluster consists of 42 SUs, one cluster can represent about 1 second of sound.
- Each cluster is assigned a logical number unique to each cluster, and is managed by the logical number.
- the control unit 210 (see FIG. 3) of the information storage device can check whether or not a specific cluster has been read based on the logical number. For example, if the output data is music content, the intro of the music content, Alternatively, the logical number of one or more clusters corresponding to the rust part is extracted as a hackable cluster corresponding to the content, the extracted cluster logical number is set as registration information corresponding to the content, and the content is stored.
- the registration information is stored in the memory in the control unit of the information storage device.
- the control unit executes a matching process between the cluster of the read content and the cluster corresponding to the hack, and when the cluster of the read content matches the logical number of the cluster corresponding to the hack, Executes the licking process.
- Various settings can be made for the lock processing timing, such as the start time of reading of the lock-capable cluster, the end time of reading of the lock-capable cluster, or the end time of reading of the entire contents having the clutter-compatible cluster. Yes, a detection process according to the setting is executed, and a hooking process is performed based on the detection of the setting condition. If the lock is executed, re-reading must execute the unlock process.
- step S801 when the power of the information storage device is turned on, in step S802, the acknowledgment status flag stored in the NVM is transmitted to the control unit 210 (see FIG. 3). Copied and stored in RAM 2 13. The control unit executes control according to the status flag of the RAM 213.
- the unlocking process is the same as the process described with reference to FIGS. 7 and 8, for example.
- the host device has a valid primary ID and primary lock key. Is verified by the verification process in the information storage device, and if the unlocking succeeds (S805: Yes), the process proceeds to step S806. If unlocking has failed, an error notification is issued to the host device in step S810, and the process ends.
- step S 807 when data reading from the host device is started, the control unit of the information storage device monitors in step S 807 whether or not there is a preset reading process of the cluster corresponding to the hook. I do.
- the lock is applied, and then, when the read processing is executed again, the unlock processing is required.
- the unlocking process can be performed only by the host device having the same primary ID (IDs) and the primary lock key (LKs) as when the lock is executed, and the locked information storage device (memory card) can be unlocked. It will be prevented from being used randomly.
- the lock information is set to be released when the power of the information storage device is turned off, or as described above, the lock status flag is set in the NVM even when the power is turned off, and the lock of the NVM is turned on when the power is turned on again.
- the status flag may be copied to the RAM of the control unit, and the wake-up state before power off may be maintained and reproduced.
- Fig. 21 shows an example of the configuration of the dedicated Z-unlock dedicated device, which has an indicator for indicating the state of the zipper and various processing switches.
- a lock Z unlock device 720 with a memory card as an information storage device and an interface capable of transferring data is used as a lock status indicator.
- [Imp rint] switch 735 is a switch for requesting execution of only imprint processing. .
- Fig. 21 shows the indicator configuration and processing of the dedicated Although an example of the required switch configuration is shown, as described above, the host device includes a PC,
- an information processing device such as a PDA, a digital camera such as a DSC, and a mobile communication terminal.
- a command transmission configuration to an information storage device (memory card) via respective input means is included. It is possible.
- the acknowledgment state presentation processing in the host device and the command transmission processing from the host device to the information storage device will be described.
- FIG. 22 is a flowchart illustrating a hook state reading process executed when an information storage device (memory card) is connected to the host device, for example.
- the hook state reading process may be executed by a command input by the user, or may be automatically executed when an information storage device (memory card) is connected to the host device.
- step S901 the lip state is read from the information storage device. This state information is based on the acknowledgment status flag stored in the RAM 2 13 of the control unit 210 (see FIG. 3) of the information storage device described above.
- step S902 the indicators 72 1 to 724 corresponding to the lock state are turned on based on the lock state read information. That is, when the standard lock and the group lock are executed, the [Locked] indicator 722 indicating the lock state is displayed (lit), and when the export lock is executed, The [ ⁇ — Locked] indicator 7 23 that indicates the export lock status is displayed (lit), and if not locked, the [Unlocked] indicator 7 21 that indicates the unlock status is displayed (lit). You.
- the lip-locking process is executed based on the input by the process request switches 732 to 732 of FIG.
- step S911 the locked state of the information storage device (memory card) is detected. If the unlocked state is not established, an error (E RR) is detected in step S914. Perform indicator display. If it is in the unlocked state, in step S912, one of the standard lock processing, the export lock processing, and the group lock processing is executed, and after the lock processing is completed, the corresponding port of the host device is executed.
- the lock indicator ie, the [Locked] indicator 722 indicating the lock status or the [E—Locked] indicator 723 indicating the export lock status is executed.
- the unlocking process is executed by pressing the unlocking request switch 731 in FIG.
- the state of the information storage device is detected.
- the state detection is executed based on the acknowledgment status flag of the RAM in the control unit described above. If it is not in the lip state (step S921: No), an error (ERR) indicator 724 is displayed in step S923.
- ERR error
- step S922 of reading the lock state it is determined whether the information storage device is in the export lock state or the standard lock state. Based on the above-mentioned acknowledgment status flag, whether the port is in the export lock state or the standard lock state is identified. Based on the identification result, the indicators 72 1 to 72 4 corresponding to the lip states shown in FIG. 21 light up.
- step S922: Yes the imprint and unlock processing described above with reference to FIGS. 16 to 18 is executed.
- step S925 the over-lock processing by the primary ID (IDs) and the primary lock key (LKs) shown in step S925, the sub-ID (IDen) of step S926 and the sublock key (LKen)
- step S927 This is a print (input storage) process, and further, a lock release process using a sub ID (ID en) and a sap lock key (LK en) in step S927.
- the details of this processing are as described above with reference to FIGS. 16 to 18.
- a lip release indicator 721 is displayed in step S922.
- step S922 If it is determined in step S922 that the lock state is other than the export lock state, that is, in the standard lock state, it is determined in step S922 whether or not the standard lock has been performed. If there is a standard lock, an unlock process is executed in step S930.
- the key set applied to this unlocking process is the primary key set [IDs, LKs] or, in the case of a group lock, the subkeyset [IDen, LKen].
- a lock release indicator 7 21 is displayed in step S 9 28.
- step S924 If the lock state is other than the export lock in step S924, and it is determined in step S929 that the lock is not the standard lock, the flow advances to step S931 to display the error (E RR) indicator 7 2 4 Is displayed.
- E RR error indicator 7 2 4 Is displayed.
- the series of processes described in the specification can be executed by hardware, software, or a combination of both.
- a program that records the processing sequence It can be installed and executed in a memory inside a computer built into dedicated hardware, or the program can be installed and executed on a general-purpose computer that can execute various processes.
- the program can be recorded in a hard disk or ROM (Read Only Memory) as a recording medium in advance.
- the program may be a removable recording medium such as a flexi disk, a CD-ROM (Compact Disk Read Only Memory), an MO (Magneto opt i cal) disk, a DVD (Digital Versatile Disk), a magnetic disk, or a semiconductor memory. It can be stored (recorded) temporarily or permanently.
- a removable recording medium can be provided as so-called package software.
- the program is installed in the computer from the removable recording medium as described above, and can be wirelessly transferred to a computer from a download site or via a network such as a LAN (Local Area Network) or the Internet. Then, the program can be transferred to a computer via a wire, and the computer can receive the transferred program and install it on a recording medium such as a built-in hard disk.
- a network such as a LAN (Local Area Network) or the Internet.
- the program can be transferred to a computer via a wire, and the computer can receive the transferred program and install it on a recording medium such as a built-in hard disk.
- a system is a logical set configuration of a plurality of devices, and is not limited to a device in which each component is in the same housing.
- Industrial Applicability As described above, according to the configuration of the present invention, in the information storage device such as a memory card, a lock command input from an information processing device as a host device such as a PC (A) a standard lock keyset as a keyset that does not allow external output, and (b) an export lock keyset as a keyset that allows external output. Determine each key set The external information is allowed only when the key is an export key set, and only when a certain verification is established. A configuration that enables the execution of the licking process is realized.
- the memory access control is performed based on the lock status information that can determine whether the device is in the standard lock state or the export rotator state, and the device is in the export lock state. Only in this case, the output processing of the key set is executed, so that various memory access restriction processing can be performed according to the use state of the memory.
- the process of verifying the key set unique to the information processing device input from the information processing device is performed. Since the configuration is such that the output processing of the memory is executed, unrestricted memory access is prevented, and secure memory access control is realized.
- a primary ID (ID s) as a unique ID of the information processing device and a primary lock key as a lock key corresponding to the unique ID are provided to the information processing device.
- (LK s) a primary key set [ID s, LK s], a sub ID (ID en) that can execute export lock, and a sub key set corresponding to the sub ID (ID en) (LK en) is configured to store the sub key set [ID en, LK en].
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Storage Device Security (AREA)
- Lock And Its Accessories (AREA)
Abstract
Description
Claims
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP03760900.5A EP1517244B1 (en) | 2002-06-25 | 2003-06-19 | Information storage device, memory access control system and method, and computer program |
KR1020047002720A KR100968733B1 (ko) | 2002-06-25 | 2003-06-19 | 정보 기억 장치, 메모리 액세스 제어 시스템 및 방법, 및컴퓨터 프로그램 |
US10/486,094 US7636826B2 (en) | 2002-06-25 | 2003-06-19 | Systems and methods for locking and exporting the locking of a removable memory device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002183882A JP4016741B2 (ja) | 2002-06-25 | 2002-06-25 | 情報記憶装置、メモリアクセス制御システム、および方法、並びにコンピュータ・プログラム |
JP2002-183882 | 2002-06-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2004001609A1 true WO2004001609A1 (ja) | 2003-12-31 |
Family
ID=29996694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2003/007781 WO2004001609A1 (ja) | 2002-06-25 | 2003-06-19 | 情報記憶装置、メモリアクセス制御システム、および方法、並びにコンピュータ・プログラム |
Country Status (6)
Country | Link |
---|---|
US (2) | US7636826B2 (ja) |
EP (1) | EP1517244B1 (ja) |
JP (1) | JP4016741B2 (ja) |
KR (1) | KR100968733B1 (ja) |
CN (1) | CN1278245C (ja) |
WO (1) | WO2004001609A1 (ja) |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3979195B2 (ja) * | 2002-06-25 | 2007-09-19 | ソニー株式会社 | 情報記憶装置、およびメモリアクセス制御方法、並びにコンピュータ・プログラム |
KR100476929B1 (ko) * | 2002-09-03 | 2005-03-16 | 삼성전자주식회사 | 카드형 유에스비 인터페이스 컨넥터를 갖는 유에스비 시스템 |
US8099762B2 (en) * | 2003-12-02 | 2012-01-17 | Integic Technologies Llc | Secure digital content trading systems and methods |
EP3029597A1 (en) | 2005-07-21 | 2016-06-08 | Clevx, LLC | Memory lock system |
US8996482B1 (en) * | 2006-02-10 | 2015-03-31 | Amazon Technologies, Inc. | Distributed system and method for replicated storage of structured data records |
WO2008017913A2 (en) * | 2006-08-07 | 2008-02-14 | Nokia Corporation | Connecting a first device and a second device |
KR100782113B1 (ko) * | 2006-11-13 | 2007-12-05 | 삼성전자주식회사 | 메모리 카드 시스템 및 그것의 호스트 식별 정보 전송 방법 |
US7877563B2 (en) * | 2006-12-07 | 2011-01-25 | International Business Machines Corporation | Programmable memory device security |
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 |
JP5042313B2 (ja) * | 2007-08-28 | 2012-10-03 | パナソニック株式会社 | 電子機器およびロック解除方法 |
US8271736B2 (en) * | 2008-02-07 | 2012-09-18 | International Business Machines Corporation | Data block frequency map dependent caching |
US20100174913A1 (en) * | 2009-01-03 | 2010-07-08 | Johnson Simon B | Multi-factor authentication system for encryption key storage and method of operation therefor |
US9286493B2 (en) | 2009-01-07 | 2016-03-15 | Clevx, Llc | Encryption bridge system and method of operation thereof |
US8365304B2 (en) | 2010-05-24 | 2013-01-29 | Microsoft Corporation | Restricting access to volumes |
US8081013B1 (en) * | 2010-07-13 | 2011-12-20 | Amlogic Co., Ltd. | Digital phase and frequency detector |
US20120047582A1 (en) * | 2010-08-20 | 2012-02-23 | Nexcom International Co., Ltd. | Data deleting method for computer storage device |
JP5198539B2 (ja) * | 2010-11-05 | 2013-05-15 | 株式会社東芝 | 記憶装置、アクセス装置およびプログラム |
US11352812B2 (en) | 2013-03-15 | 2022-06-07 | August Home, Inc. | Door lock system coupled to an image capture device |
US9322194B2 (en) | 2013-03-15 | 2016-04-26 | August Home, Inc. | Intelligent door lock system |
US11527121B2 (en) | 2013-03-15 | 2022-12-13 | August Home, Inc. | Door lock system with contact sensor |
US10691953B2 (en) | 2013-03-15 | 2020-06-23 | August Home, Inc. | Door lock system with one or more virtual fences |
US11072945B2 (en) | 2013-03-15 | 2021-07-27 | August Home, Inc. | Video recording triggered by a smart lock device |
US10140828B2 (en) | 2015-06-04 | 2018-11-27 | August Home, Inc. | Intelligent door lock system with camera and motion detector |
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 |
US11802422B2 (en) | 2013-03-15 | 2023-10-31 | August Home, Inc. | Video recording triggered by a smart lock device |
US10443266B2 (en) | 2013-03-15 | 2019-10-15 | August Home, Inc. | Intelligent door lock system with manual operation and push notification |
US9916746B2 (en) | 2013-03-15 | 2018-03-13 | August Home, Inc. | Security system coupled to a door lock system |
US10388094B2 (en) | 2013-03-15 | 2019-08-20 | August Home Inc. | Intelligent door lock system with notification to user regarding battery status |
US11421445B2 (en) | 2013-03-15 | 2022-08-23 | August Home, Inc. | Smart lock device with near field communication |
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 |
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 |
US10181232B2 (en) | 2013-03-15 | 2019-01-15 | August Home, Inc. | Wireless access control system and methods for intelligent door lock system |
US11043055B2 (en) | 2013-03-15 | 2021-06-22 | August Home, Inc. | Door lock system with contact sensor |
KR20150101232A (ko) * | 2014-02-26 | 2015-09-03 | 삼성전자주식회사 | 불휘발성 메모리 및 메모리 컨트롤러를 포함하는 스토리지 장치의 동작 방법 |
US11210238B2 (en) * | 2018-10-30 | 2021-12-28 | Cypress Semiconductor Corporation | Securing data logs in memory devices |
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 |
WO2022060704A1 (en) | 2020-09-17 | 2022-03-24 | ASSA ABLOY Residential Group, Inc. | Magnetic sensor for lock position |
CN112859694A (zh) * | 2021-01-20 | 2021-05-28 | 深圳池航科技有限公司 | 一种基于互联网的智能头盔锁远程控制*** |
US11782621B2 (en) | 2021-06-30 | 2023-10-10 | Western Digital Technologies, Inc. | Lock or unlock indicator on a data storage device |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04139552A (ja) * | 1990-10-01 | 1992-05-13 | Nec Corp | メモリカード |
JPH05113932A (ja) * | 1991-10-23 | 1993-05-07 | Kyocera Corp | パーソナルコンピユータ |
JPH09134330A (ja) * | 1995-11-07 | 1997-05-20 | Fujitsu Ltd | セキュリティ保護システム |
JPH09293022A (ja) * | 1996-04-24 | 1997-11-11 | Toshiba Corp | データ記録再生装置及び同装置におけるデータ保護方法 |
JPH11237983A (ja) * | 1998-02-20 | 1999-08-31 | Mitsubishi Electric Corp | ワンチップマイコンおよびこのワンチップマイコンにおけるブート領域アクセスのためのエントリー方法 |
JPH11265318A (ja) * | 1998-03-17 | 1999-09-28 | Bug:Kk | 相互認証システム、相互認証方法及び記録媒体 |
JP2001022642A (ja) * | 1999-07-08 | 2001-01-26 | Mitsubishi Electric Corp | メモリの機密保持回路 |
JP2001092718A (ja) * | 1999-09-21 | 2001-04-06 | Casio Comput Co Ltd | セキュリティ管理システム、記憶媒体アクセス方法、データ配布装置、及び携帯端末装置 |
JP2001195551A (ja) * | 2000-01-14 | 2001-07-19 | Ntt Data Corp | Icカード読取装置及びicカードシステム |
JP2001236333A (ja) * | 2000-02-21 | 2001-08-31 | Hitachi Ltd | 電子署名付移動エージェント |
US20020002654A1 (en) | 2000-07-03 | 2002-01-03 | Ichiro Tomohiro | Semiconductor storage device |
JP2002108714A (ja) * | 2000-09-29 | 2002-04-12 | Sony Corp | メモリ装置およびメモリアクセス制限方法 |
JP2002108713A (ja) * | 2000-09-29 | 2002-04-12 | Sony Corp | メモリ装置およびメモリアクセス制限方法 |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3602896A (en) * | 1969-06-30 | 1971-08-31 | Ibm | Random access memory with flexible data boundaries |
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 |
US4817140A (en) * | 1986-11-05 | 1989-03-28 | International Business Machines Corp. | Software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor |
US5148534A (en) * | 1986-11-05 | 1992-09-15 | International Business Machines Corp. | Hardware cartridge representing verifiable, use-once authorization |
US4937736A (en) * | 1987-11-30 | 1990-06-26 | International Business Machines Corporation | Memory controller for protected memory with automatic access granting capability |
US5231310A (en) * | 1990-09-05 | 1993-07-27 | Oh Soo Young | Electrical and electronic appliance lock |
US5231668A (en) * | 1991-07-26 | 1993-07-27 | The United States Of America, As Represented By The Secretary Of Commerce | Digital signature algorithm |
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 |
AU1265195A (en) * | 1993-12-06 | 1995-06-27 | Telequip Corporation | Secure computer memory card |
US6002772A (en) * | 1995-09-29 | 1999-12-14 | Mitsubishi Corporation | Data management system |
US5963142A (en) * | 1995-03-03 | 1999-10-05 | Compaq Computer Corporation | Security control for personal computer |
US6169687B1 (en) * | 1995-04-21 | 2001-01-02 | Mark B. Johnson | High density and speed magneto-electronic memory for use in computing system |
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 |
US6131090A (en) * | 1997-03-04 | 2000-10-10 | Pitney Bowes Inc. | Method and system for providing controlled access to information stored on a portable recording medium |
US6330624B1 (en) * | 1999-02-09 | 2001-12-11 | International Business Machines Corporation | Access limiting to only a planar by storing a device public key only within the planar and a planar public key only within the device |
US7031946B1 (en) * | 1999-12-28 | 2006-04-18 | Matsushita Electric Industrial Co., Ltd. | Information recording medium, noncontact IC tag, access device, access system, life cycle management system, input/output method, and access method |
US6832317B1 (en) * | 2001-05-10 | 2004-12-14 | Advanced Micro Devices, Inc. | Personal computer security mechanism |
JP4690600B2 (ja) * | 2001-08-23 | 2011-06-01 | 富士通株式会社 | データ保護方法 |
US20030135507A1 (en) * | 2002-01-17 | 2003-07-17 | International Business Machines Corporation | System and method for managing and securing meta data using central repository |
-
2002
- 2002-06-25 JP JP2002183882A patent/JP4016741B2/ja not_active Expired - Fee Related
-
2003
- 2003-06-19 WO PCT/JP2003/007781 patent/WO2004001609A1/ja active Application Filing
- 2003-06-19 US US10/486,094 patent/US7636826B2/en not_active Expired - Fee Related
- 2003-06-19 CN CNB038011387A patent/CN1278245C/zh not_active Expired - Fee Related
- 2003-06-19 KR KR1020047002720A patent/KR100968733B1/ko not_active IP Right Cessation
- 2003-06-19 EP EP03760900.5A patent/EP1517244B1/en not_active Expired - Fee Related
-
2009
- 2009-11-05 US US12/612,706 patent/US8402240B2/en active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04139552A (ja) * | 1990-10-01 | 1992-05-13 | Nec Corp | メモリカード |
JPH05113932A (ja) * | 1991-10-23 | 1993-05-07 | Kyocera Corp | パーソナルコンピユータ |
JPH09134330A (ja) * | 1995-11-07 | 1997-05-20 | Fujitsu Ltd | セキュリティ保護システム |
JPH09293022A (ja) * | 1996-04-24 | 1997-11-11 | Toshiba Corp | データ記録再生装置及び同装置におけるデータ保護方法 |
JPH11237983A (ja) * | 1998-02-20 | 1999-08-31 | Mitsubishi Electric Corp | ワンチップマイコンおよびこのワンチップマイコンにおけるブート領域アクセスのためのエントリー方法 |
JPH11265318A (ja) * | 1998-03-17 | 1999-09-28 | Bug:Kk | 相互認証システム、相互認証方法及び記録媒体 |
JP2001022642A (ja) * | 1999-07-08 | 2001-01-26 | Mitsubishi Electric Corp | メモリの機密保持回路 |
JP2001092718A (ja) * | 1999-09-21 | 2001-04-06 | Casio Comput Co Ltd | セキュリティ管理システム、記憶媒体アクセス方法、データ配布装置、及び携帯端末装置 |
JP2001195551A (ja) * | 2000-01-14 | 2001-07-19 | Ntt Data Corp | Icカード読取装置及びicカードシステム |
JP2001236333A (ja) * | 2000-02-21 | 2001-08-31 | Hitachi Ltd | 電子署名付移動エージェント |
US20020002654A1 (en) | 2000-07-03 | 2002-01-03 | Ichiro Tomohiro | Semiconductor storage device |
JP2002108714A (ja) * | 2000-09-29 | 2002-04-12 | Sony Corp | メモリ装置およびメモリアクセス制限方法 |
JP2002108713A (ja) * | 2000-09-29 | 2002-04-12 | Sony Corp | メモリ装置およびメモリアクセス制限方法 |
Also Published As
Publication number | Publication date |
---|---|
EP1517244B1 (en) | 2019-01-09 |
EP1517244A1 (en) | 2005-03-23 |
US20040215910A1 (en) | 2004-10-28 |
US8402240B2 (en) | 2013-03-19 |
JP4016741B2 (ja) | 2007-12-05 |
EP1517244A4 (en) | 2008-11-19 |
KR100968733B1 (ko) | 2010-07-08 |
US20100049993A1 (en) | 2010-02-25 |
US7636826B2 (en) | 2009-12-22 |
CN1564982A (zh) | 2005-01-12 |
JP2004030103A (ja) | 2004-01-29 |
CN1278245C (zh) | 2006-10-04 |
KR20050010749A (ko) | 2005-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3979195B2 (ja) | 情報記憶装置、およびメモリアクセス制御方法、並びにコンピュータ・プログラム | |
JP4016741B2 (ja) | 情報記憶装置、メモリアクセス制御システム、および方法、並びにコンピュータ・プログラム | |
WO2004001608A1 (ja) | 情報記憶装置、およびメモリアクセス制御システム、および方法、並びにコンピュータ・プログラム | |
JP3979194B2 (ja) | 情報記憶装置、およびメモリアクセス制御方法、並びにコンピュータ・プログラム | |
US9037875B1 (en) | Key generation techniques | |
TW514844B (en) | Data processing system, storage device, data processing method and program providing media | |
US6618789B1 (en) | Security memory card compatible with secure and non-secure data processing systems | |
JP4687703B2 (ja) | 記録システム、情報処理装置、記憶装置、記録方法及びプログラム | |
AU785421B2 (en) | Data authentication system | |
US20050060540A1 (en) | Security unit for use in memory card | |
WO2002033880A9 (fr) | Reproduction de donnees/appareil d'enregistrement/procede et procede de mise a jour d'une liste | |
WO2004051483A1 (ja) | ライセンス移動装置及びプログラム | |
JP2006237881A (ja) | 携帯情報端末およびデータ保護方法 | |
WO2011157242A2 (zh) | 文件的保护方法及装置 | |
JP2003195758A (ja) | データ処理装置、インタフェースボードおよびデータ秘匿方法 | |
JP2007193477A (ja) | コンテンツ保護装置及びプログラム | |
WO2023178724A1 (zh) | 智能门铃防盗版方法、***、智能门铃及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): CN KR US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR |
|
WWE | Wipo information: entry into national phase |
Ref document number: 10486094 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2003760900 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020047002720 Country of ref document: KR |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 20038011387 Country of ref document: CN |
|
WWP | Wipo information: published in national office |
Ref document number: 2003760900 Country of ref document: EP |