WO2006118101A1 - 機密情報処理用ホスト機器および機密情報処理方法 - Google Patents

機密情報処理用ホスト機器および機密情報処理方法 Download PDF

Info

Publication number
WO2006118101A1
WO2006118101A1 PCT/JP2006/308626 JP2006308626W WO2006118101A1 WO 2006118101 A1 WO2006118101 A1 WO 2006118101A1 JP 2006308626 W JP2006308626 W JP 2006308626W WO 2006118101 A1 WO2006118101 A1 WO 2006118101A1
Authority
WO
WIPO (PCT)
Prior art keywords
key
confidential information
information processing
target device
authentication
Prior art date
Application number
PCT/JP2006/308626
Other languages
English (en)
French (fr)
Inventor
Kazuya Shimizu
Tomoya Sato
Makoto Fujiwara
Kentaro Shiomi
Original Assignee
Matsushita Electric Industrial Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co., Ltd. filed Critical Matsushita Electric Industrial Co., Ltd.
Priority to EP06745654.1A priority Critical patent/EP1876753B1/en
Priority to JP2006529384A priority patent/JPWO2006118101A1/ja
Priority to US11/912,422 priority patent/US8024583B2/en
Priority to CN2006800143600A priority patent/CN101167301B/zh
Publication of WO2006118101A1 publication Critical patent/WO2006118101A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution

Definitions

  • the present invention relates to a cryptographic conversion processing method for a key stored in a target device, and a host device as a confidential information processing apparatus that implements the method.
  • target devices In recent years, devices such as memory cards for storing data (hereinafter referred to as “target devices”) have come to be widely used with the expansion of their usage.
  • This target device generally has a slot for inserting a target device, and is used by a device (hereinafter referred to as “host device”) that stores data in the inserted target device.
  • host device a device that stores data in the inserted target device.
  • one of the uses of the target device is to handle data that requires copyright protection such as audio data.
  • confidential information processing methods are used to protect copyrights such as audio data.
  • data that requires copyright protection is encrypted, and the encrypted data is stored in the target device. This prevents unauthorized copying of content such as copyrighted works, or leakage of content to the outside.
  • FIG. 1 is a functional block diagram showing the configuration of the main part of a host device that executes such a confidential information processing method.
  • the target device 1301 is inserted into the host device 1300, and the confidential information processing unit 1302 for performing encryption and decryption of confidential information such as a key provided in the host device 1300 provides a work area.
  • the confidential information processing unit is mounted on a semiconductor integrated circuit as hardware in order to increase security.
  • an authentication key KaO (1307), which is a key generated from the authentication process 1306, is generated.
  • the authentication key is a key generated in the confidential information processing unit 1302 only when the authentication is successful.
  • the authentication host key that is an authentication key owned by the host device and the target It is calculated based on the authentication slave key that is the authentication key of the device.
  • the content key is stored in the target device 1301, and is obtained from the target device 1301 when the content is decrypted.
  • Kc is held in the target device 1301 in a form encrypted by KaO as an authentication key in order to ensure confidentiality. Therefore, it can be seen that only the host device that generated KaO by the authentication process can decrypt the encrypted Kc.
  • the encryption key obtained by encrypting Kc with KaO is expressed as Enc (Kc, KaO) (the same notation is used for other encryption keys).
  • Enc Kc, KaO
  • the encrypted content is encrypted by Kc and stored in the target device 1301. Therefore, any host device that has generated Kc can be decrypted by obtaining the encrypted content from the target device 1301.
  • Enc (Kc, KaO) 1308 stored in the target device after authentication processing and stores it in the work area 1303 will be described. Further, it is assumed that the encrypted content 1304 is also obtained from the target device 1301 after the authentication processing and stored in the work area 1303. Enc (Kc, KaO) and encrypted content are not necessarily It is also possible to input the confidential information processing unit 1302 directly from the target device 1301 without having to store it in the work area 1303.
  • the host device 1300 inputs Enc (Kc, KaO) 1308 to the confidential information processing unit 1302, and performs decryption processing 1309 using KaO (1307) generated in the authentication processing 1306.
  • Kc 1310 which is a content key in a plaintext state (referring to an unencrypted state)
  • the generated Kcl 310 is held in the confidential information processing unit 1302 and the host device 1300 cannot know its value.
  • the host device 1300 inputs the encryption key content 1304, and the secret information processing unit 1302 and the decryption key processing 1311 by Kc are performed.
  • the host device 1300 can obtain the decrypted content 1305, and the content decryption processing ends.
  • Kc is input to the confidential information processing unit in the form of an encrypted Enc (Kc, KaO), and unencrypted Kc is input to the confidential information processing unit. Retained. Therefore, the host device can decrypt the content in a form that ensures the confidentiality of Kc.
  • Patent Document 1 JP 2000-357126 A
  • the content key Kc which is a key for encrypting content
  • the confidentiality of Kc needs to be ensured.
  • unauthorized mutual use when a certain content key Kc is allowed to be used only within the same target device, the content key Kc can be used mutually between different target devices. and so on.
  • Enc (Kc, KaO) encrypted with the authentication key KaO is stored in the target device.
  • This confidential information processing method uses encryption content. It is necessary to perform two-stage decryption before decrypting into plaintext content.
  • the content of the encrypted content key ENC (Kc, KaO) with the authentication key KaO is also in two stages: decryption into the content key Kc and decryption of the encrypted content with the content key Kc.
  • Enc (Kal, KaO) encrypted with the authentication key KaO is stored in the target device, and Enc (Kc, Ka 1) encrypted with Kal is further encrypted. ) Is stored in the target device.
  • Enc (Kal, KaO) can be decrypted, and Enc is further decrypted by Kal. (Kc, Kal) can be decrypted.
  • the object of the present invention is to provide m encryption keys [Enc (Kal, Ka2),..., Enc (Ka
  • the confidential information processing host device of the present invention reads the encrypted content from the target device that stores the encrypted confidential information including the encrypted content, A confidential information processing host device used by decryption and operating according to only a plurality of predetermined sequences, and the plurality of sequences for the confidential information processing unit. Input / output of data including the confidential information between the CPU instructing activation of the CPU, the confidential information processing unit and the target device.
  • a first interface unit that performs and a second interface unit that inputs and outputs data including the confidential information between the confidential information processing unit and the CPU, and the target device or the host device is , M keys ⁇ K1,..., Km ⁇ are stored in the encrypted state as the confidential information, and the key Km is a content key for encrypting content, and the key Ki (l ⁇ i (A natural number satisfying ⁇ m) is encrypted by the key K (i—1), and the plurality of sequences is a key for encrypting an arbitrary key Ki among the m keys. ) Including a key conversion sequence for converting to a different key, wherein the first interface unit and the second interface unit are encrypted in a secret state when the key conversion sequence is activated. Only the information is output to the outside of the confidential information processing unit.
  • the CPU does not freely perform key conversion using the confidential information processing unit.
  • the CPU instructs the confidential information processing unit to start a predetermined key conversion sequence. Since the confidential information generated during the key conversion sequence is not output to the outside of the confidential information, the content can be used between different confidential information processing methods while maintaining security.
  • the host device performs a first authentication process with the target device, and the key KO for encrypting the key K1 is an authentication key KaO generated by the first authentication process.
  • a target device that is the same as or different from the target device stores n (n is a natural number) keys ⁇ Kb 1,..., Kbn ⁇ , and a key Kbj (a natural number satisfying l ⁇ j ⁇ n) is Kb ( j-1)
  • the host device further performs a second authentication process between target devices that are the same as or different from the target device, and the key KbO is generated by the second authentication process.
  • It is an authentication key, and the other key may be any one of the keys ⁇ KbO,..., Kb (n—1) ⁇ .
  • the another key may be Kb (n-m + i). According to this configuration, the content key can be decrypted without changing the number of times of decryption from the authentication key KbO (the number of stages), which is further preferable.
  • the host device performs a first authentication process with the target device, and the key KO for encrypting the key K1 is an authentication key generated by the first authentication process. KaO, and the other key may be the host key Kh stored in the confidential information processing unit. Yes.
  • the knocked-up key information is stored encrypted with the host key Kh, only the host device having the host key Kh, that is, the host device that performed the knock-up can decrypt it.
  • the key KO is a host key Kh stored in the confidential information processing unit, and the host device further performs a second authentication process between target devices that are the same as or different from the target device.
  • the target device stores n keys (where n is a natural number) ⁇ Kbl,..., Kbn ⁇ , and the key Kbj (natural number satisfying 1 ⁇ j ⁇ n) is encrypted with the key Kb (j-1)
  • the key KbO is an authentication key generated by the second authentication process, and the key for encrypting the key K1 in the key conversion sequence is transferred from the host key Kh to ⁇ KbO,... Kb (n- l) ⁇ may be converted to one of the keys.
  • the above configuration is useful when restoring key information backed up by the host device to the target device. Since the knocked-up key information is stored encrypted with the host key Kh, only the host device with the host key Kh, that is, the host device that performed the backup can decrypt it.
  • the host device performs a first authentication process with the target device, and the key KO for encrypting the K1 is an authentication key generated by the first authentication process.
  • the target device stores (m—s) keys ⁇ Kel,... Ke (m—s) ⁇ , and the key Kej (a natural number satisfying l ⁇ j ⁇ m—s) is
  • the key KeO is encrypted with the key Ke (j— 1), and the key KeO is one of the m keys ⁇ K1,..., Km ⁇ , Ks (natural number satisfying l ⁇ s ⁇ m).
  • the other key may be any key of ⁇ Kel,..., Ke (m—s—l) ⁇ .
  • the confidential information processing unit further includes a flag holding unit that holds an authentication flag indicating whether or not the first authentication process has been properly completed. If it is not indicated that the authentication process 1 is properly completed, the activation of the key conversion sequence from the host CPU may be prohibited. [0027] With the above configuration, since the key key conversion sequence is not activated when the first authentication process is properly terminated, it is possible to prevent the key conversion sequence from being activated by an unauthorized authentication process.
  • the confidential information processing unit further includes a flag holding unit that holds an authentication flag indicating whether or not the second authentication process has been properly completed, and the authentication flag is the first flag. If it is not indicated that the second authentication process has been completed properly, it may be prohibited to start the key conversion sequence from the host CPU.
  • the confidential information processing unit further includes a flag holding unit that holds a key generation flag indicating whether or not the key K (i-1) has been generated therein, and the key generation flag However, if it does not indicate that the key K (i—1) has been generated internally, the activation of the key conversion sequence of the host CPU may be prohibited.
  • the key conversion sequence is activated only when the key K (i-1) that has been encrypted with the key Ki has been generated. Can be prevented from being activated.
  • the confidential information processing unit further includes a flag holding unit that holds a key generation flag indicating whether or not the other key has been generated therein, and the key generation flag is If you do not indicate that the key has been generated internally, you may prohibit the activation of the key conversion sequence of the host CPU.
  • the confidential information processing unit further holds a target flag indicating whether or not the first authentication process and the second authentication process are performed on the same target device.
  • the host C when the target flag does not indicate that the first authentication process and the second authentication process have been performed on the same target device. It may be prohibited to start the key conversion sequence from the PU!
  • the key conversion process can be executed between secret information processing methods having different authentication keys.
  • Kc etc. can be used mutually between different confidential information processing.
  • the confidential information processing unit confirms that the unauthorized process by the user is not performed when executing the key conversion process, the unauthorized key conversion process by the user can be prevented from being performed.
  • the confidentiality of the key information is ensured by holding the unencrypted key in the confidential information processing unit.
  • key arrangement by deleting unnecessary keys or the like can be performed in a form that prevents unauthorized processing by the user, and in a form in which key information is concealed.
  • FIG. 1 is a diagram showing a content decryption method in the prior art.
  • FIG. 2 is a diagram showing the entire confidential information processing system according to the present invention.
  • FIG. 3 is a diagram showing a configuration for performing key conversion processing for obtaining an output Enc (Kc, Kbl) from an input Enc (Kc, Ka2) in the present invention.
  • FIG. 4 is a diagram showing a configuration of a key conversion control unit and a key conversion control flag in the present invention.
  • FIG. 5 is a flowchart for performing key conversion processing for obtaining an output Enc (Kc, Kbl) from an input Enc (Kc, Ka2) in the present invention.
  • FIG. 6 is a diagram showing a configuration before replacement of a target device in the case of deletion of authentication in the present invention.
  • FIG. 7 is a diagram showing a configuration after replacement of a target device in the case of deletion of authentication in the present invention.
  • FIG. 8 is a diagram showing a configuration for performing key conversion processing for obtaining an output Enc (Kc, Kh) from an input Enc (Kc, Ka2) in the present invention.
  • FIG. 9 is a flowchart for performing key conversion processing for obtaining an output Enc (Kc, Kh) from an input Enc (Kc, Ka2) in the present invention.
  • FIG. 10 is a diagram showing a configuration for performing key conversion processing for obtaining an output Enc (Kc, Kbl) from an input Enc (Kc, Kh) in the present invention.
  • FIG. 11 is a flowchart for performing key conversion processing for obtaining an output Enc (Kc, Kbl) from an input Enc (Kc, Kh) in the present invention.
  • FIG. 12 is a diagram showing a configuration for performing key conversion processing for obtaining output Enc (Kc, Kd2) from input Enc (Kc, Ka2) in the present invention.
  • FIG. 13 is a flowchart for performing key conversion processing for obtaining an output Enc (Kc, Ke2) from an input Enc (Kc, Kd2) according to the present invention.
  • FIG. 2 shows the overall configuration of a confidential information processing system composed of the host device 100 and the target device 101.
  • the host device 100 encrypts and decrypts confidential information (in the following, the unauthorized use of plain keys such as keys is not permitted! /, Indicating information) in accordance with a predetermined control sequence.
  • the processing unit 102, the host CPU 103 that activates a predetermined control sequence for the confidential information processing unit 102, and the host IZF that inputs and outputs data between the host CPU 103 and the target device 101 and the confidential information processing unit 102 A target I / F unit 105 that inputs and outputs data between the unit 104 and the target device 101, and a work for the host CPU 103 and the confidential information processing unit 102 to temporarily store data for the operation.
  • the confidential information processing unit 102 is a hardware that is concealed together with the host IZF unit 104 and the target IZF unit 105.
  • the conductor integrated circuit 108 is configured.
  • the host CPU 103 may be configured as a concealed semiconductor integrated circuit.
  • the host device 100 reads the confidential information from the target device 101 via the target I / F unit 105, decrypts it using the confidential information processing unit 102, and uses it. Also, the operation of the confidential information processing unit 102 is started from the host CPU 103, and when it is started, only a predetermined sequence is performed in which security is ensured or security is low!
  • the host IZF unit 104 and the target IZF unit 105 are classified as intermediate information generated in the middle of a sequence performed by the confidential information processing unit 102 (such as confidential information in a plaintext state).
  • the concealed semiconductor integrated circuit 108 is configured not to output to the outside.
  • the confidential information processing unit 102 and the host CPU 103 may be configured with the same semiconductor chip or different chips.
  • FIG. 3 shows one embodiment of key conversion processing in the present invention.
  • the same reference numerals are used for the same elements as in FIG.
  • three encryption keys ⁇ Enc (Kal, KaO), Enc (Ka2, Kal), Enc (Kc, Ka2) ⁇ are stored in the target device 101.
  • Enc (Kc, Kbl) is obtained will be explained.
  • decoding keys 202, 205, 209, and 213 are depicted as if there is a separate decoding key circuit. This is to simplify the description along the sequence. In practice, the same decoding circuit is often used multiple times along a sequence. In this case, each key used for decryption or generated as a result of decryption must be stored in an area that cannot be accessed by external force. If there is a relationship between the encryption and decryption algorithms, part or all of the decryption and encryption circuits can be shared.
  • the authentication process for the target device is completed and the authentication key KaO (200) is generated in the confidential information processing unit 102 when performing the key conversion process.
  • the Enc (Kal, KaO) 201 stored in the target device 101 is stored in the work area 106 and then input to the confidential information processing unit 102 as IN1, and decrypted by the authentication key KaO (200) 202
  • Kal (203) is generated
  • Enc (Ka2, Kal) 204 stored in the target device 101 is stored in the work area 106 and then manually input to the confidential information processing unit 102 as IN2.
  • Ka2 (206) force S is generated by decoding 205 by (203).
  • the authentication information KbO (207) is generated in the confidential information processing unit 102 by performing another authentication process on the target device.
  • the Enc (Kbl, KbO) 208 stored in the target device 101 is stored in the work area 106, it is input to the confidential information processing unit 102 as IN3 and decrypted with the authentication key KbO (207).
  • Kbl (210) is generated.
  • these Enc (Kal, KaO) 201, Enc (Ka2, Kal) 204, and Enc (Kbl, KbO) 208 are not necessarily stored in the work area 106 directly from the target device 101 to the confidential information processing unit 102. Can also be entered.
  • Enc (Kc, Ka2) 211 which is an input of the key conversion process, is already stored in the work area 106 of the host device 100 from the target device 101 after the authentication process, and is the output Enc (Kc, Kbl). ) 212 is stored in the work area 106. Then, after storing the work area, it will be stored in the target device again.
  • Enc (Kc, Ka2) 211 and Enc (Kc, Kbl) 212 are directly input from the target device 101 to the confidential information processing unit 102 and need not be stored in the work area 106, or Direct output from the confidential information processing unit 102 to the target device 101 is also possible.
  • the confidential information processing unit 102 defines a control sequence for performing key conversion processing from Enc (Kc, Ka2) to Enc (Kc, Kbl). This control sequence is defined by the host CPU 103 and the like. Suppose that it was started. Thereby, the key conversion process is started. [0051] In the key conversion process, first, the keys for performing the encryption key and the decryption key for Kc (Ka2 (206) and Kbl (210) generated in the confidential information processing unit 102) perform the decryption key. And a circuit for performing encryption.
  • Enc (Kc, Ka2) 211 is input to confidential information processing unit 102, and decryption processing 213 is performed on the input key using Ka2 (206).
  • Ka2 Ka2
  • unencrypted Kc 214 is generated in the confidential information processing unit 102.
  • the secret information processing unit 102 holds this key in a form that is not accessed from the host CPU 103! /.
  • the Kc 214 may be deleted by the confidential information processing unit 102 after the key conversion process is completed.
  • encryption processing 215 is performed on Kc 214 using Kbl (210). With this encryption processing 215, Enc (Kc, Kbl) 212 is output from the confidential information processing unit 102.
  • the key conversion process is completed by the above process.
  • the encryption process 215 and the decryption process 213 in the key conversion process are controlled by the key conversion control unit 216 and the key conversion control flag 217 shown in FIG.
  • the key conversion control unit 216 generates a signal for setting a key used in each circuit and an enable signal for each circuit for the circuits that perform the encryption process 215 and the decryption process 213. It is a circuit for doing.
  • the enable signal here is a signal for enabling encryption and decryption in each circuit while this signal is input.
  • the key conversion control flag 217 is read to the key conversion control unit 216 when a key conversion processing control sequence is activated from the host CPU 103, and is used as a condition for generating an enable signal.
  • the key conversion control flag 217 also has three types of flag powers.
  • the first is a target device that stores an encryption key that is input to the key conversion process, and an output of the key conversion process. Confirm that each target device is not an unauthorized device by using a flag (hereinafter referred to as “authentication flag”) to indicate whether authentication processing has been performed for each target device that stores the encryption key. Used for. In the example of Fig. 3, it is assumed to be 1 when each authentication is performed.
  • the second indicates whether the two authentication processes are performed on the same target device. If the encryption key to be used for key conversion processing and the encryption key to be output need to be stored in the same target device (hereinafter referred to as “same target flag”) In addition, it is used to check whether the authentication process has been performed on the same target device. In the example shown in Fig. 3, it is set to 1 when the same target device is authenticated.
  • An example of a method for confirming that the devices are the same target device is that the identification number unique to the target device is held in the confidential information processing unit 102 at the time of each authentication process, and the stored identifications are kept. There is a method to determine whether the target equipment power is the same by checking whether the numbers are the same.
  • the third is a key for performing decryption and encryption in the key conversion process (Ka2 in Fig. 3).
  • Ka2 (206) and Kbl (210) are flags that indicate whether or not they have been generated in the confidential information processor (hereinafter referred to as “key generation flags”).
  • the decryption processing necessary for generating Ka2 in FIG. 3, decryption processing 202 and decryption processing).
  • the confidential information processing unit 102 holds that each of the encryption processing 205) is performed, and confirms whether or not the necessary decryption processing has been performed.
  • FIG. 4 shows a configuration example of the key conversion control unit 216 and the key conversion control flag 217 used in the key conversion process of FIG.
  • the key conversion control unit 216 has a key conversion processing setting for setting which key conversion processing is to be activated for the confidential information processing unit 102 as input from the host CPU 103, and the key selection signal for the encryption circuit and Enable signal as output.
  • a key conversion setting decoding circuit 300 for decoding the key conversion processing setting, a selector 301 that uses a signal output from the decoding circuit as a selection signal, and an AND gate 302 that is used as an input to the selector 301
  • the key conversion setting decoding circuit 300 converts, for example, a register for holding the key conversion processing setting from the host CPU 103 and an internal control signal used by the confidential information processing unit 102.
  • the circuit power to do is also configured.
  • the input of AND gate 302 A flag necessary for the key conversion process started from the host CPU 103 to be performed without any illegality is input.
  • the same target flag 305 is used and its value must be 1. If the key conversion process is not performed within the same target device, the same target flag 305 is not used as a condition for generating the enable signal. In the key conversion process, both Ka2 (206) and Kbl (210) need to be generated in the confidential information processing unit 102. Therefore, the key generation flag (Ka2) 306 and the key generation flag (Kb 1) 307 are Used and both need to be 1. Therefore, when the key conversion processing setting for performing the key conversion processing shown in FIG. 3 is performed from the host CPU 103, it is selected as the output of the output selector 301 of the AND gate 302 having these five flags as inputs. Therefore, the encryption circuit can be used only when these five flags are all 1.
  • the same target flag 305 is not necessarily required when there is no such mode that requires a mode that only allows key conversion with the same target. However, when there are two slots, the reason why it is preferable to provide the same target flag 305 will be described later in the second embodiment.
  • the key conversion process setting 400 is performed by the PU 103.
  • the key conversion process executed by the confidential information processing unit 102 is started.
  • key conversion control flag reading 401 is performed on the key conversion control unit 216.
  • Enc (Kc, Ka2) input 402 is performed to the confidential information processing unit 102.
  • These confirmation processes correspond to conditional branch 403 to conditional branch 407 in FIG. As long as it can be confirmed that unauthorized processing is not performed, the order of confirmation may not be as shown in FIG.
  • conditional branch 404 confirms whether or not the authentication process for generating the authentication key KbO (207) is performed for the target device that stores the Enc (Kc, Kbl) 212 that is the output of the key conversion process. As a result, it is confirmed that the authentication process for generating the authentication key Kb0 (207) has been performed and that the target device storing the Enc (Kc, Kbl) 212 is not an unauthorized device.
  • Ka2 (206) and Kbl (210) are generated in the confidential information processing unit 102.
  • a conversion process 408 (in FIG. 3, a process of decrypting with Ka2 (206) and encrypting with Kbl (210)) is performed on Enc (Kc, Ka2) as an input after confirmation.
  • the enable signal is output from the key conversion control unit 216 to the circuit that performs the encryption process 215 and the decryption process 213.
  • Enc (Kc, Kbl) output 409 is performed by performing the conversion process. After the output, the key conversion process ends.
  • Enc (Kal, KaO), Enc (Ka2, Kal), Enc (Kc, Ka2) ⁇ is stored in the target device
  • Enc (Kc, Kabl) 212 is obtained by performing key conversion processing on Enc (Kc, Ka2) 211.
  • the present invention is not limited to this case. For example, there may be a case where there are a plurality of content keys encrypted with Ka2, and all of them are desired to be used in a confidential information processing method using KbO obtained by another authentication process as an authentication key.
  • the confidential information processing unit is configured to manage the number of times of decryption according to the authentication key, and not to output the result obtained by the decryption key other than the number of times. In such cases, it is preferable to convert Enc (Ka2, Kal) to Enc (Ka2, KbO).
  • the target device has m keys (m is a natural number) ⁇ Enc (Kal, KaO),..., Enc (Kam, Ka (m— 1)) ⁇ , And n (n is a natural number) keys ⁇ En c (Kbl, KbO),..., Enc (Kbn, Kb (n— 1)) ⁇ are stored, and Kam and Kbn Used for content encryption and decryption, i and j are natural numbers satisfying l ⁇ i ⁇ m and 1 ⁇ j ⁇ n, respectively, and key conversion processing is performed for Enc (Kai, Ka (i— 1)). It is good also as a structure which goes and obtains Enc (Kai, Kb (j— 1)).
  • Embodiment 2 will be described.
  • the basic overall configuration is the same as in Fig. 2, so the explanation is omitted.
  • Figures 6 and 7 show that by deleting the authentication flag that generates the authentication key KaO and deleting the authentication key KaO, unauthorized processing due to unauthorized insertion and removal of the target device can be prevented. Is.
  • the same reference numerals are used for the same elements as in FIG. 6 and 7, the decoding keys 503, 506, 604, and 606 are depicted as if there is a separate decoding key circuit. This simplifies the description along the sequence. Therefore, in practice, the same decoding circuit is often used multiple times along a sequence.
  • each key used for decryption or generated as a result of decryption must be stored in an area that cannot be accessed by external force. Also, if there is a relationship between the encryption key and decryption key algorithms, it is possible to share part or all of the decryption and encryption circuits.
  • target device 1 (500) is inserted into host device 100, and three encryption keys ⁇ Enc (Kal, KaO), Enc (Ka2, Kal), Enc (Kc, Ka2) ⁇ are inserted into the target device. Is stored. Also, in FIG. 7, target device 1 (500) is removed from host device 100, and instead target device 2 (600) is inserted into host device 100, and one encryption key Enc (Kbl, KbO) is inserted into the target device. Assume that it is stored.
  • authentication is performed with target device 1 (500) inserted as shown in Fig. 6! If target device 1 (500) is a legitimate device, authentication is performed with the confidential information processing unit.
  • An authentication flag (KaO) 508 holds that the key KaO (501) has been generated and the authentication process for generating the authentication key KaO (501) has been performed.
  • Enc (Kal, KaO) 502 stored in the target device 1 is stored in the work area 106 and then input to the confidential information processing unit 102 as IN1, and decrypted with the authentication key KaO (501).
  • Enc (Ka2, Kal) 505 stored in the target device 1 is stored in the work area 106 and input to the confidential information processing unit 102 as IN2.
  • Ka2 (507) is generated by decoding 506 using Kal (504).
  • Enc (Kal, Ka 0) 502 and Enc (Ka2, Kal) 505 can be directly input to the confidential information processing unit 102 from the target device 500, which is not necessarily stored in the work area 106. It is.
  • Enc (Kc, Ka2) 509 stored in target device 1 (500) is already stored in work area 106 of host device 100.
  • This Enc (Kc, Ka2) can be directly input from the target device 500 to the confidential information processing unit 102 without necessarily being stored in the work area 106.
  • the target device 1 500
  • the target device 2 600
  • key conversion processing is performed for the same target device. Therefore, this insertion / extraction is illegal It becomes.
  • the target device is removed and the confidential information processing unit is authenticated during the authentication process.
  • the authentication key generated in 102 is deleted.
  • the secret information processing unit 102 when the secret information processing unit 102 generates a key (Kal (504) or Ka2 (507)) generated from the authentication key, it may be deleted.
  • the deletion of authentication is the deletion of the authentication flag.
  • the authentication flag (KaO) 5 08 is set to 0.
  • the erasure of this information is based on the detection method that the confidential information processing unit 102 detects that the target device has been removed and the confidential information processing unit 102 has deleted the target device. For example, there is a method in which the host CPU 103 activates a control sequence for detecting and erasing the confidential information processing unit 102.
  • Enc (Kbl, KbO) 603 stored in target device 2 (600) is stored in work area 106 and then input to secret information processing unit 102 as IN3 and authentication key KbO (601 ) Is decoded 604, and Kbl (605) is generated.
  • the Enc (Kbl, KbO) 603 can be directly input from the target device 600 to the confidential information processing unit 102 without necessarily being stored in the work area 106.
  • the host CPU 103 starts the key conversion process to Enc (Kc, Ka2) force Enc (Kc, Kbl) and stores the Enc (Kc, Ka2) 509 force stored in work area 106.
  • the authentication flag (KaO) 508 is 0, that is, authentication processing for generating the authentication key KaO is performed, and this is held in the confidential information processing unit. . Therefore, since no enable signal is generated for the encryption circuit that performs decryption using Ka2 (507), Kc cannot be obtained without performing decryption processing 606. It is also enabled for the encryption circuit that performs encryption processing 607 for Kc. No signal is generated.
  • the authentication flag (KaO) of the confidential information processing unit 102 is removed even after the target device 1 (500) is removed. ) 508 remains at 1. Then, the authentication flag (KbO) 602 is set to 1 by the authentication of the target device 2 (600) inserted next.
  • the key generation flag (Ka2) 306 and the key generation flag (Kb 1) 3 07 can also be 1. Therefore, there is a possibility that the key conversion process is illegally activated.
  • the usefulness of the same target flag 305 will be described by taking an example in which there are two slots.
  • the authentication flag (KaO) 508 and the authentication flag (KbO ) 602 becomes 1, and the key itself can be generated properly. Therefore, there is a possibility that illegal key conversion may be performed if the CPU starts processing illegally.
  • this is a method for updating the same target flag, but in addition to the mounting method using the unique identification number described in the first embodiment, there is also a mounting method for holding to which slot each authentication process has been performed.
  • Embodiment 3 will be described.
  • the basic overall configuration is the same as in Fig. 2, so the explanation is omitted.
  • FIG. 8 shows the book 1 shows one embodiment of a key conversion process in the invention.
  • the same reference numerals are used for the same elements as in FIGS.
  • three encryption keys ⁇ Enc (Kal, KaO), Enc (Ka2, Kal), Enc (Kc, Ka2) ⁇ are stored in the target device 101.
  • Enc (Kc, Kh) is obtained by performing a key conversion process on Enc (Kc, Ka2) using the stored host key Kh so that it is not read out by the confidential information processing unit. To do.
  • the host key Kh in the confidential information processing unit is installed in the confidential information processing unit at the time of manufacturing the semiconductor integrated circuit, or encrypted via electronic distribution or the like from the outside of the semiconductor integrated circuit.
  • the data is input into the semiconductor integrated circuit in the state, decrypted inside the semiconductor integrated circuit, and stored in the confidential information processing unit.
  • the decoding keys 702, 705, and 710 are depicted as if there are separate decoding circuits. This is to simplify the explanation along the sequence. In many cases, the same decoding circuit is used a plurality of times along a sequence.
  • each key used for decryption or generated as a result of decryption must be stored in an area that cannot be accessed from the outside. If the encryption key and decryption key algorithms are related, it is possible to share part or all of the decryption and encryption circuits.
  • Enc (Kc, Kh) is not stored in the target device, but is stored in a storage device such as a hard disk in the host device.
  • Kc stored in the target device can be backed up.
  • the backed up Kc is stored as Enc (Kc, Kh), so only the host device with Kh, that is, the host device that performed the backup, can decrypt the power 3 ⁇ 4nc (Kc, Kh). It becomes.
  • Enc (Kc, Ka2) 707 which is an input of the key conversion process, is already stored in the work area 106 of the host device 100 from the target device 101 after the authentication process, and is the output Enc (Kc, Kh ) 708 is stored in the work area 106. Then, after storing the work area, it is saved again in the storage device of the host device 100 or the like.
  • the input Enc (Kc, Ka2) can be directly input from the target device 101 to the confidential information processing unit 102 without necessarily being stored in the work area 106.
  • the confidential information processing unit 102 defines a control sequence for performing key conversion processing from Enc (Kc, Ka2) to Enc (Kc, Kh), and this control sequence is activated from the host CPU 103. To do. Thereby, the key conversion process is started.
  • Kc Ka2 (706) generated in confidential information processing unit 102) and Kh 709 stored in confidential information processing unit 102
  • Enc (Kc, Ka2) 707 is input to the confidential information processing unit 102, and decryption processing 710 is performed on the input key using Ka2 (706).
  • Ka2 (706) Ka2 7.06
  • the secret information processing unit 102 holds this key in a form that is not accessed by the host CPU 103.
  • Kc711 there is a method of storing Kc711 in a register inaccessible from the host CPU103.
  • Kc711 may be deleted by the confidential information processing unit 102 after the key conversion processing is completed.
  • encryption processing 712 is performed on Kc711 using Kh709.
  • Enc (Kc, Kh) 708 is output from the confidential information processing unit 102.
  • the key conversion process is completed by the above process.
  • the encryption process 712 and the decryption process 710 in the key conversion process are controlled by the key conversion control unit 216 and the key conversion control flag 217 shown in FIG. . Now consider the flags required in the case of Figure 8. In the process of FIG.
  • Ka2 (706) needs to be generated in the confidential information processing unit 102 by the decryption process. Therefore, the key generation flag (Ka2) is required as one of the key conversion control flags 217.
  • Kh709 is a key stored in the host device 100 in advance, a generation flag for Kh709 is unnecessary. Therefore, when the key conversion processing setting for performing the key conversion processing shown in FIG. 8 is performed from the host CPU 103, the output of the AND gate having two flags of the authentication flag (KaO) and the key generation flag (Ka2) as inputs. Output This is selected as the output of selector 301 shown in FIG. Therefore, the encryption circuit can be used only when these two flags are both 1.
  • the host CPU 103 performs the key conversion process setting 800.
  • the key conversion process executed by the confidential information processing unit 102 is started.
  • key conversion control flag reading 801 is performed on the key conversion control unit 216.
  • Enc (Kc, Ka2) input 802 is performed to the confidential information processing unit 102.
  • the confidential information processing unit 102 confirms whether a condition for preventing unauthorized processing is satisfied.
  • a conversion process 805 (in FIG. 8, a process of decrypting with Ka2 (706) and encrypting with Kh (709)) is performed on the input Enc (Kc, Ka2) after confirmation.
  • the enable signal is output from the key conversion control unit 216 to the circuit that performs the encryption process 712 and the decryption process 710.
  • Enc (Kc, Kh) output 806 is performed by performing the conversion process. After the output, the key conversion process ends.
  • Enc (K ai, Kh) it is also possible to obtain Enc (K ai, Kh).
  • Ka (i-1) is used for the circuit that performs the decryption of the confidential information processing unit
  • Kh is used for the circuit that performs the encryption
  • the key conversion is performed. If a flag indicating that Ka (i-1) has been generated is used as the processing flag instead, the same key conversion processing as in Fig. 8 can be executed. Therefore, a key generation flag corresponding to Ka (i-1) may be added to the confidential information processing unit, and a circuit for selecting this flag may be added to the key conversion control unit.
  • FIG. 10 shows one embodiment of the key conversion process in the present invention.
  • the same reference numerals are used for the same elements as in FIGS.
  • two encryption keys ⁇ Enc (Kbl, KbO), Enc (K b2, Kbl) ⁇ are stored in the target device 101, and Enc (Kc , Kh), a case where Enc (Kc, Kbl) is obtained by performing a key conversion process using Kbl will be described.
  • the decoding 902 and 907 are depicted as if there is a separate decoding circuit. This is for simplifying the explanation along the sequence, and is actually the same.
  • Decryption circuits are often used multiple times along a sequence. In this case, each key used for decryption or generated as a result of decryption must be stored in an area that cannot be accessed from the outside. If the encryption and decryption algorithms are related, part or all of the decryption and encryption functions can be shared.
  • Enc (Kc, Kh) is not stored in the target device, but is stored in a storage device such as a hard disk in the host device, as in the third embodiment.
  • An example of the use of this key conversion process is the process of restoring Kc backed up on the host device to the target device.
  • the backed up Kc is stored as Enc (Kc, Kh), so that only the host device with Kh, that is, the host device that performed the backup, can decrypt the power 3 ⁇ 4nc (Kc, Kh). Become.
  • Enc (Kbl, KbO) 901 stored in the target device 101 is stored in the work area 106 and stored in the secret information processing unit 102 as IN1, and decrypted by KbO (900) 902. (903) Force ⁇ Assume that it is generated.
  • the Enc (Kbl, KbO) 901 can be directly input from the target device 101 to the confidential information processing unit 102 without necessarily being stored in the work area 106.
  • Enc (Kc, Kh) 904 which is the input of the key conversion process, has already stored power in the work area 106, such as the storage device of the host device 100, and outputs Enc (Kc, Kbl) 9 05 is stored in work area 106. Then, after the work area is stored, it is stored again in the target device 101.
  • the output Enc (Kc, Kbl) can be output from the confidential information processing unit 102 to the target device 101 without being necessarily stored in the work area 106.
  • a key for performing encryption key and decryption key for Kc (Kh906 stored in confidential information processing unit 102 and Kbl (903) generated in confidential information processing unit 102) ) Is set to a circuit for performing decryption and a circuit for performing encryption.
  • Enc (Kc, Kh) 904 is input to the confidential information processing unit 102, and decryption processing 907 is performed on the input key using Kh906.
  • Kh906 By performing decryption using Kh906 in this way, unencrypted Kc908 is generated in the confidential information processing unit 102.
  • the secret information processing unit 102 holds this key in a form that is not accessed by the host CPU 103.
  • Kc908 there is a method of storing Kc908 in a register inaccessible from the host CPU103.
  • Kc908 may be deleted by the confidential information processing unit 102 after the key conversion process is completed.
  • encryption processing 909 is performed on Kc908 using Kbl (903). With this encryption processing 909, Enc (Kc, Kbl) 905 is output from the confidential information processing unit 102.
  • the key conversion process is completed by the above process.
  • the encryption process 909 and the decryption process 907 in the key conversion process are controlled by the key conversion control unit 216 and the key conversion control flag 217 shown in FIG. .
  • the flags required in the case of Figure 10 Kb 1 (903), which also generates the authentication key KbO (900) force, is used. For this reason, the authentication process for generating the authentication key Kb0 (900) needs to be completed. Therefore, the authentication flag (KbO) is required as one of the key conversion control flags 217.
  • Kb 1 (903)
  • the authentication flag (KbO) is required as one of the key conversion control flags 217.
  • Enc (Kc, Kh) 904 which is the input of the key conversion process
  • Enc (Kc, Kbl) 905, which is the output do not need to be stored in the same target device. No flag is required.
  • this key In the conversion process Kbl (903) needs to be generated in the confidential information processing unit 102 by the decryption process. Therefore, the key generation flag (Kbl) is required as one of the key conversion control flags 217. Since Kh906 is a key stored in the host device 100 in advance, a generation flag for Kh906 is not necessary. Therefore, when the key conversion processing setting for performing the key conversion processing shown in FIG.
  • the host CPU 103 first performs the key conversion process setting 1000. As a result, the key conversion process executed by the confidential information processing unit 102 is started. Next, key conversion control flag reading 1001 is performed on the key conversion control unit 217. After reading, Enc (Kc, Kh) input 1002 is performed to the confidential information processing unit 102. Then, based on the read flag, it is confirmed whether the condition for preventing unauthorized processing from being performed in the confidential information processing unit 102 is satisfied. These confirmation processes correspond to conditional branch 1003 and conditional branch 1004 in FIG. If it can be confirmed that unauthorized processing will not be performed, the order of confirmation may not be as shown in Fig. 11! /.
  • the key conversion process is executed by using the processes of FIG. 10 and FIG.
  • Enc (Kbl, KbO), Enc (Kb2, Kbl) ⁇ stored in the target device
  • Enc (Kc, Kh) 904 is subjected to key conversion processing
  • Enc (Kc, Kb 1) 905 was explained.
  • n keys (n is a natural number) ⁇ Enc (Kbl, KbO),..., Enc (Kbn, Kb (n— 1)) ⁇ are stored in the target device
  • Kbn is used for content encryption and decryption
  • j is a natural number satisfying 1 ⁇ j ⁇ n
  • Enc (Kai, Kh) is subjected to a key conversion process.
  • Kb (j— 1) Kb (j— 1)
  • Kh is used for the circuit that performs encryption of the confidential information processing unit
  • Kb (j—1) is used for the circuit that performs decryption, and the key conversion process is performed.
  • a flag indicating that Kb (j 1) has been generated is used instead, the same key conversion process as in FIG. 10 can be executed. Therefore, a key generation flag corresponding to Kb (j ⁇ 1) may be added to the confidential information processing unit, and a circuit for selecting this flag may be added to the key conversion control unit.
  • Embodiment 5 will be described.
  • the basic overall configuration is the same as in Fig. 2, so the explanation is omitted.
  • FIG. 12 shows one embodiment of the key conversion process in the present invention.
  • the encryption key Enc (Kai, KaO) is stored in the target device 101, and two encryption keys encrypted by Kai in the same target device. ⁇ Keys (Enc (Kd2, Kai) and Enc (Ke2, Kai) are stored, and keys Enc (Kc, Kd2) and Enc (Ke3, Ke2) encrypted by Kd2 and Ke2 are stored Will be explained.
  • Enc (Kc, Kd2) is obtained by performing key conversion processing with Ke2 on Enc (Kc, Kd2)
  • Embodiment 5 a key conversion process between keys generated from the same authentication key KaO will be described.
  • decoding 1102, 1105, 1108, and 1112 are depicted as if there is a separate decoding circuit. This is to simplify the explanation along the sequence, In many cases, the same decoding circuit is used several times along the sequence. In this case, each key used for decryption or generated as a result of decryption must be stored in an area that cannot be accessed by external force. If there is a relationship between the encryption and decryption algorithms, it is possible to share part or all of the decryption and encryption circuits.
  • the key for encrypting Kc is changed from Kd2 to Ke2 by performing this process. By erasing the target device power, it can be used for applications such as reducing the number of keys used to encrypt Kc.
  • Enc (Ke2, Kal) 1107 stored in the target device 101 is stored in the work area 106 and then input to the confidential information processing unit 102 as IN3 and decrypted by Kal (11 03) 1108 Ke2 (1109) is generated!
  • these Enc (Kal, KaO) 1101, Enc (Kd2, Kal) 1104, and Enc (Ke2, Kal) 1 107 are not necessarily stored in the work area 106 and are directly confidential information processing from the target device 101. It is also possible to input to the part 102.
  • Enc (Kc, 1 ⁇ 12) 1110 which is the input of the key conversion process, has already been stored in the work area 106 of the host device 100 from the target device 101 after the authentication process, and the output Enc (K c, Ke2) 1111 shall be stored in work area 106. Then, after storing the work area, it is stored again in the target device 101.
  • Enc (Kc, Kd2) and Enc (Kc, Ke2) are not necessarily stored in the work area 106 and are directly input from the target device 101 to the confidential information processing unit 102 or directly confidential information. It is also possible to output from the processing unit 102 to the target device 101.
  • the confidential information processing unit 102 defines a control sequence for performing key conversion processing to Enc (Kc, Ke2) and Enc (Kc, K d2) force, and this control sequence is activated from the host CPU 103.
  • An example of this implementation is to store Kcl 113 in a register that is not accessible from the host CPU 103.
  • Kcl l3 may be deleted by the confidential information processing unit 102 after the key conversion process is completed.
  • the encryption process 1114 is performed on Kc 1113 using Ke2 (1109).
  • This encryption processing l l l ⁇ Enc (Kc, Ke2) 1111 is output from the confidential information processing unit 102.
  • the key conversion process is completed by the above process.
  • the encryption process 1114 and the decryption process 1112 in the key conversion process are controlled by the key conversion control unit 216 and the key conversion control flag 217 shown in FIG. Is done.
  • the flags required in the case of Figure 12. Kd2 (1106) and Ke2 (1109), which generate the authentication key KaO (1100) force, are used. For this reason, the authentication process for generating the authentication key KaO (1100) must be completed. Therefore, an authentication flag (KaO) is required as one of the key conversion control flags 217. Note that in the case of Figure 12 only the authentication process for generating the authentication key KaO (1100) is performed, so No get flag is required.
  • Kd2 (1106) and Ke2 (1109) need to be generated in the confidential information processing unit 102 by the decryption process. Therefore, the key generation flag (Kd2) and the key generation flag (Ke2) are required as the key conversion control flag 217. Therefore, when the key conversion processing setting for performing the key conversion processing shown in FIG. 12 is performed from the host CPU 103, three flags of an authentication flag (KaO), a key generation flag (Kd2), and a key generation flag (Ke2) are set. Output power of AND gate as input It is selected as the output of the selector 301 shown in Fig.4. Therefore, the encryption circuit can be used only when these three flags are all 1.
  • the host CPU 103 first performs the key conversion process setting 1200. As a result, the key conversion process executed by the confidential information processing unit 102 is started. Next, key conversion control flag reading 1201 is performed on the key conversion control unit 217. After reading, Enc (Kc, Kd2) input 1202 is performed to the confidential information processing unit 102. Then, based on the read flag, it is confirmed whether or not the confidential information processing unit 102 satisfies a condition for preventing unauthorized processing. These confirmation processes correspond to the conditional branch 1203 to the conditional branch 1205 in FIG. Note that as long as it can be confirmed that unauthorized processing will not be performed, the order of confirmation may not be as shown in FIG.
  • the conversion process 1206 Encryption with Kd2 (1106) and encryption with Ke2 (1109) in FIG. 12
  • the enable signal is output from the key conversion control unit 216 to the circuit that performs the encryption process 1114 and the decryption process 1112.
  • Enc (Kc, Ke2) output 1207 is performed by performing the conversion process. After output, the key conversion process ends.
  • the key conversion processing is executed by using the processing in FIG. 12 and FIG.
  • the target device is Enc (Kal, KaO), ⁇ Enc (Kd2, Kal), Enc (Kc, Kd2) ⁇ and ⁇ Enc (Ke2, Kal), Enc (Ke3, Ke2) ⁇
  • Enc (Kc, Kd2) 1110 may be subjected to key conversion processing to obtain Enc (Kc, Ke2) llll.
  • Kd (i-1) is used for the circuit that performs the decryption of the confidential information processing unit
  • Ke (i-1) is used for the circuit that performs the encryption. If the flag indicating that Kd (i-1) has been generated and the flag indicating that Ke (i-1) has been generated are used instead as the key conversion processing flag, the same as in FIG. Key conversion processing can be executed. Therefore, a key generation flag corresponding to Kd (i-1) and Ke (i-1) may be added to the confidential information processing unit, and a circuit for selecting this flag may be added to the key conversion control unit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

 ターゲット機器に、m個(mは自然数)の鍵{Ka1,...,Kam}をKai(iは1≦i≦mを満たす自然数)がKa(i-1)により暗号化された形で格納し、またn個(nは自然数)の鍵{Kb1,...,Kbn}をKbj(jは1≦j≦nを満たす自然数)がKb(j-1)により暗号化された形で格納する場合に、機密情報処理部において、KaiがKa(i-1)により暗号化された暗号化鍵Enc(Kai,Ka(i-1))を、Kb(j-1)により暗号化しなおして、暗号化鍵Enc(Kai,Kb(j-1))として出力する処理を行わせる。

Description

明 細 書
機密情報処理用ホスト機器および機密情報処理方法
技術分野
[0001] 本発明は、ターゲット機器に格納される鍵に対する暗号変換処理方法および、それ を実現する機密情報処理装置としてのホスト機器に関する。
背景技術
[0002] 近年、メモリカードといったデータを蓄積するための機器 (以下、「ターゲット機器」と いう。)は、その利用用途の拡大に伴い広く利用されるようになってきた。このターゲッ ト機器は、一般的にターゲット機器を挿入するためのスロットを備え、挿入されたター ゲット機器に対してデータの格納を行う機器 (以下、「ホスト機器」という。)により使用 される。
[0003] また、ターゲット機器の利用用途の一つに、オーディオデータなどの著作権保護が 必要なデータを扱う用途がある。このような用途においては、オーディオデータなどの 著作権を保護する目的で機密情報処理方法が用いられる。この機密情報処理方法 では、著作権の保護が必要なデータに対しては暗号ィ匕を行い、暗号化されたデータ をターゲット機器に格納する。これにより、著作物などのコンテンツに対する不正なコ ピー、ある 、はコンテンツの外部への漏洩を防止する。
[0004] 以下では、このような著作権保護を行うための機密情報処理方法について説明す る。著作権保護を行う機密情報処理方法においては、まず、ターゲット機器とホスト機 器の間で認証処理を行う。次に、認証が成功した場合のみ、暗号化コンテンツを復 号ィ匕するための鍵であるコンテンツ鍵 (以下、「Kc」という。)をホスト機器がターゲット 機器力も入手可能な構成となっている。ホスト機器は、コンテンツ鍵の入手により、タ 一ゲット機器に格納された暗号ィ匕コンテンツを利用可能になる。このような構成により 、不正なホスト機器により暗号化コンテンツが復号化されるのを防ぐことが出来る。こ のような著作権保護を行うための機密情報処理方法に関する先行技術文献として特 許文献 1がある。
[0005] 続 ヽて、認証が成功した場合に、 Kcを用いてホスト機器がコンテンツを復号ィ匕する 処理について図面を参照しながら説明する。図 1はこのような機密情報処理方法を実 行するホスト機器の主要部の構成を示す機能ブロック図である。ここで、図 1では認 証処理が正常に終了し、ターゲット機器とホスト機器がともに正当な機器であることが 確認されているとする。図 1では、ホスト機器 1300にターゲット機器 1301が挿入され 、ホスト機器 1300に備わった鍵などの機密情報の暗号ィ匕ゃ復号ィ匕を行うための機 密情報処理部 1302により、ワーク用の領域であるワーク領域 1303に格納された暗 号ィ匕コンテンツ 1304を復号ィ匕してコンテンツ 1305を利用する場合を説明する。なお 、ここで機密情報処理部は、セキュリティを高めるために、ハードウェアとして半導体 集積回路に実装されている。
[0006] 図 1では、前述したようにターゲット機器 1301に対して認証が成功している場合を 説明するため、認証処理 1306から生成される鍵である認証鍵 KaO ( 1307)が生成さ れている。ここで認証鍵とは、認証が成功した場合にのみ機密情報処理部 1302に 生成される鍵であり、認証処理において、ホスト機器が所有する認証用の鍵である認 証用ホスト鍵と、ターゲット機器が有する認証用の鍵である認証用スレーブ鍵とに基 づいて算出される。
[0007] また、コンテンツ鍵はターゲット機器 1301に格納され、コンテンツの復号ィ匕が行わ れる際にターゲット機器 1301から入手される。なお、 Kcはその秘匿性確保のために 、認証鍵である KaOにより暗号ィ匕された形でターゲット機器 1301に保持される。した 力 Sつて、認証処理により KaOを生成したホスト機器のみが暗号ィ匕された Kcを復号可 能なことが分かる。なお、以下では Kcを KaOにより暗号化した暗号化鍵は Enc (Kc, KaO)と表記する(その他の暗号ィ匕鍵についても同様の表記を用いる)。また暗号ィ匕 されたコンテンツは、 Kcにより暗号ィ匕され、ターゲット機器 1301に格納される。その ため、 Kcを生成したホスト機器であれば、暗号ィ匕コンテンツをターゲット機器 1301か ら入手することにより復号ィ匕可能である。
[0008] 以下では、認証処理後にホスト機器 1300がターゲット機器に格納された Enc (Kc, KaO) 1308を入手し、ワーク領域 1303に格納した後の処理を説明する。また、暗号 化コンテンツ 1304も認証処理後にターゲット機器 1301から入手され、ワーク領域 13 03に格納済みとする。なお、 Enc (Kc, KaO)や暗号ィ匕コンテンツは、必ずしもー且 ワーク領域 1303に格納する必要はなぐ直接ターゲット機器 1301から機密情報処 理部 1302に入力することも可能である。
[0009] コンテンツの復号化においては、まずホスト機器 1300は Enc (Kc, KaO) 1308を 機密情報処理部 1302に入力し、認証処理 1306で生成した KaO (1307)により復号 化処理 1309を行う。これにより平文状態(暗号化されていない状態を称す)のコンテ ンッ鍵である Kc 1310が生成される。なお、生成された Kcl310は機密情報処理部 1 302に保持され、ホスト機器 1300はその値を知ることが出来ない。続いて、ホスト機 器 1300は暗号ィ匕コンテンッ 1304を入力し、機密情報処理部 1302〖こお 、て Kcによ る復号ィ匕処理 1311が行われる。これによりホスト機器 1300は復号ィ匕されたコンテン ッ 1305を得ることができ、コンテンツの復号ィ匕処理が終了となる。このように、コンテ ンッの復号化の際は、 Kcは暗号ィ匕された Enc (Kc, KaO)の形で機密情報処理部に 入力され、また暗号ィ匕されていない Kcは機密情報処理部に保持される。そのため、 ホスト機器では Kcの秘匿性を確保した形でコンテンツの復号ィ匕が行える。
特許文献 1 :特開 2000— 357126号公報
発明の開示
発明が解決しょうとする課題
[0010] 近年、ターゲット機器の利用用途が広まってきたことに伴い、複数の機密情報処理 方法が混在してターゲット機器に実装される場合が増えてきた。このような状況にお いては、コンテンツを暗号化するための鍵であるコンテンツ鍵 Kcは、異なる機密情報 処理方法の間で相互に利用できることが望ましい。ところが、コンテンツ鍵 Kcを相互 に利用する際において、 Kcはその秘匿性が確保されている必要がある。つまり暗号 化されていないコンテンツ鍵 Kcがユーザーなどの第三者に知られるのを防ぐ必要が ある。また、第三者によりコンテンツ鍵 Kcの不正な相互利用が行われるのを防ぐ必要 がある。ここで、不正な相互利用の例としては、あるコンテンツ鍵 Kcが同一ターゲット 機器内でのみ相互利用が許されている場合に、異なるターゲット機器間でそのコンテ ンッ鍵 Kcを相互利用可能とすることなどがある。
[0011] また、図 1に示した機密情報処理方法では認証鍵 KaOにより暗号ィ匕された Enc (Kc , KaO)をターゲット機器に格納している。この機密情報処理方法は、暗号化コンテン ッを平文のコンテンツに復号化するまでに、 2段階の復号を必要とする。つまり、認証 鍵 KaOによる暗号化コンテンツ鍵 ENC (Kc, KaO)力もコンテンツ鍵 Kcへの復号、コ ンテンッ鍵 Kcによる暗号ィ匕コンテンッの復号の 2段階である。
[0012] これに対して、 2段階よりも多い段数の機密情報処理方法が考えられる。例えば、 3 段階の機密情報処理方法では、認証鍵 KaOにより鍵 Kalを暗号ィ匕した Enc (Kal, KaO)をターゲット機器に格納し、さらにこの Kalにより Kcを暗号化した Enc (Kc, Ka 1)をターゲット機器に格納することになる。これによつても、コンテンツの保護を行うこ とが可能である。この場合、ターゲット機器との間で認証処理を行うことによって機密 情報処理部に認証鍵 KaOを生成すれば、 Enc (Kal, KaO)が復号可能になり、さら に復号ィ匕された Kalにより Enc (Kc, Kal)を復号可能になる。
[0013] 同様に、多段階の機密情報処理方法を一般化すれば、 m個の暗号ィ匕鍵 [Enc (Ka 1, Ka2) , . . . , Enc (Ka (m— 1) , Kam) ]をターゲット機器に格納し、 Kamをコンテ ンッ鍵の暗号鍵として使用することになると考えられる。 2段階の機密情報処理方法 におけるコンテンツ鍵 Kcを、異なる機密情報処理方法の間で相互利用可能とするこ とが望まれるのと同様に、多段階の全部又は一部の鍵 Kai (iは l≤i≤mを満たす自 然数)が異なる機密情報処理方法との間で相互利用可能になることも望まれる。
[0014] したがって、本発明の目的は、 m個の暗号化鍵 [Enc (Kal, Ka2) , . . . , Enc (Ka
(m- 1) , Kam) ]がターゲット機器に格納される場合において、鍵 Kaiを異なる機密 情報処理方法との間で相互利用するための処理方法を提供することにある。
[0015] またその処理方法が、 Kaiの秘匿性が確保された状態で、また第三者による Kaiの 不正な相互利用を防いだ状態で実行可能とすることを目的とする。
課題を解決するための手段
[0016] 上記課題を解決するために、本発明の機密情報処理用ホスト機器は、暗号化コン テンッを含む暗号化された状態の機密情報を格納するターゲット機器から前記暗号 ィ匕コンテンツを読み出し、復号ィ匕して利用する機密情報処理用のホスト機器であって 、予め定められた複数のシーケンスのみに従って動作を行う機密情報処理部と、前 記機密情報処理部に対して、前記複数のシーケンスの起動を指示する CPUと、前 記機密情報処理部とターゲット機器との間で前記機密情報を含むデータの入出力を 行う第 1のインターフェース部と、前記機密情報処理部と前記 CPUとの間で前記機 密情報を含むデータの入出力を行う第 2のインターフェース部と、を備え、前記ター ゲット機器またはホスト機器は、 m個の鍵 {K1, . . . , Km}を暗号化された状態で前 記機密情報として格納し、前記鍵 Kmは、コンテンツを暗号化するコンテンツ鍵であり 、鍵 Ki (l≤i≤mを満たす自然数)は鍵 K(i—1)により暗号化され、前記複数のシー ケンスは、前記 m個の鍵のうち任意の鍵 Kiを暗号ィ匕する鍵を、 K(i— 1)力 別の鍵 に変換する鍵変換シーケンスを含み、前記第 1のインターフェース部と前記第 2のィ ンターフェース部は、前記鍵変換シーケンスが起動された場合に、暗号化された状 態の機密情報のみを前記機密情報処理部の外部に出力するように構成されている。
[0017] 上記構成をとることにより、 CPUが機密情報処理部を用いて自由に鍵変換を行うの ではなぐ CPUが機密情報処理部に予め定められた鍵変換シーケンスの起動を指 示することによって動作を行い、かつ鍵変換シーケンスの過程で生成される機密情 報が機密情報外部に出力されないため、セキュリティを保ったままコンテンツを異なる 機密情報処理方法の間で相互利用することが可能となる。
[0018] また、前記ホスト機器は前記ターゲット機器との間で第 1の認証処理を行 、、前記 鍵 K1を暗号ィ匕する前記鍵 KOは第 1の認証処理により生成される認証鍵 KaOであり 、前記ターゲット機器と同一または異なるターゲット機器は n個(nは自然数)の鍵 {Kb 1, . . . , Kbn}を格納し、鍵 Kbj (l≤j≤nを満たす自然数)は Kb (j— 1)により暗号 化され、前記ホスト機器は、さらに前記ターゲット機器と同一または異なるターゲット 機器の間で第 2の認証処理を行 ヽ、前記鍵 KbOは前記第 2の認証処理により生成さ れる認証鍵であり、前記別の鍵は前記鍵 {KbO, . . . , Kb (n— 1) }のうちの何れか の鍵であるようにしてもょ 、。
[0019] また、前記別の鍵は、 Kb (n—m+i)であってもよい。この構成によれば、認証鍵 K bOからの復号ィ匕の回数 (段数)が変わらずにコンテンツ鍵を復号ィ匕できるので、さら に好ましい。
[0020] また、前記ホスト機器は前記ターゲット機器との間で第 1の認証処理を行 、、前記 鍵 K 1を暗号化する前記鍵 KOが、前記第 1の認証処理により生成される認証鍵 KaO であり、前記別の鍵は、前記機密情報処理部に格納されたホスト鍵 Khであってもよ い。
[0021] 上記構成は、ターゲット機器に格納された鍵情報のノックアップとして有用である。
ノ ックアップされた鍵情報はホスト鍵 Khで暗号ィ匕された状態で保存されるため、ホス ト鍵 Khを持ったホスト機器、すなわちノ ックアップを行ったホスト機器のみが復号可 能となる。
[0022] また、前記鍵 KOは、前記機密情報処理部に格納されたホスト鍵 Khであり、前記ホ スト機器は、さらに前記ターゲット機器と同一または異なるターゲット機器の間で第 2 の認証処理を行い、該ターゲット機器は n個(nは自然数)の鍵 {Kbl, . . . , Kbn}を 格納し、鍵 Kbj (1≤j≤nを満たす自然数)は鍵 Kb (j - 1)により暗号化され、前記鍵 KbOは、前記第 2の認証処理により生成された認証鍵であり、前記鍵変換シーケンス において、鍵 K1を暗号化する鍵を、前記ホスト鍵 Khから {KbO, . . . , Kb (n- l) } のうち何れかの鍵へと変換するようにしてもょ 、。
[0023] 上記構成は、ホスト機器にバックアップされた鍵情報をターゲット機器にリストアする 場合に有用である。ノ ックアップされた鍵情報はホスト鍵 Khで暗号ィ匕された状態で 保存されるため、ホスト鍵 Khを持ったホスト機器、すなわちバックアップを行ったホス ト機器のみが復号可能となる。
[0024] また、前記ホスト機器は前記ターゲット機器との間で第 1の認証処理を行 、、前記 K 1を暗号ィ匕する前記鍵 KOは、前記第 1の認証処理により生成される認証鍵 KaOであ り、前記ターゲット機器は、(m— s)個の鍵 {Kel, . . . Ke (m— s) }を格納し、鍵 Kej (l≤j≤m— sを満たす自然数)は鍵 Ke (j— 1)により暗号ィ匕され、鍵 KeOは、前記 m 個の鍵 {K1, . . . , Km}のうちの何れかの鍵 Ks (l≤s<mを満たす自然数)であり、 前記別の鍵は、 {Kel, . . . , Ke (m— s— l) }のうち何れかの鍵であってもよい。
[0025] 上記構成によると、ターゲット機器に格納されるべき暗号化された鍵情報の数を減 らすことが可能となる。
[0026] また、前記機密情報処理部は、さらに、前記第 1の認証処理が適正に終了している か否かを示す認証フラグを保持するフラグ保持部を有し、前記認証フラグが前記第 1 の認証処理が適正に終了して 、ることを示さな 、場合に、前記ホスト CPUからの鍵 変換シーケンスの起動を禁止するようにしてもょ 、。 [0027] 上記構成により、適正に第 1の認証処理を終了した場合にしカゝ鍵変換シーケンスが 起動されな 、ので、不正な認証処理によって鍵変換シーケンスを起動することを防 止できる。
[0028] また、前記機密情報処理部は、さらに、前記第 2の認証処理が適正に終了している か否かを示す認証フラグを保持するフラグ保持部を有し、前記認証フラグが前記第 2 の認証処理が適正に終了して 、ることを示さな 、場合に、前記ホスト CPUからの鍵 変換シーケンスの起動を禁止するようにしてもょ 、。
[0029] 上記構成により、適正に第 2の認証処理を終了した場合にしカゝ鍵変換シーケンスが 起動されな 、ので、不正な認証処理によって鍵変換シーケンスを起動することを防 止できる。
[0030] また、前記機密情報処理部は、さらに、前記鍵 K(i—1)が内部に生成されているか 否かを示す鍵生成フラグを保持するフラグ保持部を有し、前記鍵生成フラグが、鍵 K (i— 1)が内部に生成されていることを示さない場合に、前記ホスト CPU力もの鍵変 換シーケンスの起動を禁止するようにしてもょ 、。
[0031] 上記構成により、鍵 Kiを暗号ィ匕していた鍵 K(i—1)が生成されている場合にしか鍵 変換シーケンスが起動されな 、ので、不正な鍵を用いて鍵変換シーケンスが起動さ れることを防止することができる。
[0032] また、前記機密情報処理部は、さらに、前記別の鍵が内部に生成されているか否か を示す鍵生成フラグを保持するフラグ保持部を有し、前記鍵生成フラグが前記別の 鍵が内部に生成されていることを示さない場合に、前記ホスト CPU力もの鍵変換シ 一ケンスの起動を禁止するようにしてもょ 、。
[0033] 上記構成により、変換するための鍵が生成されている場合にしカゝ鍵変換シーケンス が起動されないので、不正な鍵を用いて鍵変換シーケンスが起動されることを防止 することができる。
[0034] また、前記機密情報処理部は、さらに、前記第 1の認証処理と前記第 2の認証処理 とが同一のターゲット機器に対して行われたか否かを示すターゲットフラグを保持す るフラグ保持部を有し、前記ターゲットフラグが前記第 1の認証処理と前記第 2の認証 処理とが同一のターゲット機器に対して行われたことを示さない場合に、前記ホスト C PUからの鍵変換シーケンスの起動を禁止するようにしてもよ!、。
[0035] 上記構成により、同一のターゲット機器に対してし力鍵変換を受け付けないといつ た制約がある場合に、その制約を確実に守ることができる。また、ターゲット機器を接 続するスロットが 2つある場合に、各々のスロットに異なるターゲット機器を接続して不 正に鍵変換シーケンスを起動することを防止できる。
発明の効果
[0036] 本発明の処理方法を用いた場合、異なる認証鍵を持つ機密情報処理方法の間な どにおいて鍵変換処理を実行することができる。これにより、 Kcなどを異なる機密情 報処理の間で相互に利用可能となる。また、機密情報処理部においては、鍵変換処 理の実行にあたりユーザーによる不正な処理が行われていないこと確認することから 、ユーザーによる不正な鍵変換処理が実行されるのを防ぐことができる。さらに暗号 ィ匕されていない鍵を機密情報処理部内で保持することにより、鍵情報の秘匿性が確 保される。
[0037] またターゲット機器以外の機器との間で、鍵の相互利用やバックアップ力 ユーザ 一による不正な処理を防 、だ形で、かつ鍵情報が秘匿ィヒされた形で実現される。
[0038] さらに、不要となった鍵の消去などによる鍵の整理が、ユーザーによる不正な処理 を防 、だ形で、かつ鍵情報が秘匿化された形で可能となる。
図面の簡単な説明
[0039] [図 1]図 1は、従来技術におけるコンテンツの復号ィ匕方法を示す図である。
[図 2]図 2は、本発明における機密情報処理システムの全体を示す図である。
[図 3]図 3は、本発明における入力 Enc (Kc,Ka2)から出力 Enc (Kc,Kbl)を得る鍵 変換処理を行うための構成を示す図である。
[図 4]図 4は、本発明における鍵変換制御部および鍵変換制御フラグの構成を示す 図である。
[図 5]図 5は、本発明における入力 Enc (Kc,Ka2)から出力 Enc (Kc,Kbl)を得る鍵 変換処理を行うためのフローチャートである。
[図 6]図 6は、本発明における認証の消去でのターゲット機器交換前の構成を示す図 である。 [図 7]図 7は、本発明における認証の消去でのターゲット機器交換後の構成を示す図 である。
[図 8]図 8は、本発明における入力 Enc (Kc,Ka2)から出力 Enc (Kc,Kh)を得る鍵変 換処理を行うための構成を示す図である。
[図 9]図 9は、本発明における入力 Enc (Kc,Ka2)から出力 Enc (Kc,Kh)を得る鍵変 換処理を行うためのフローチャートである。
[図 10]図 10は、本発明における入力 Enc (Kc,Kh)から出力 Enc (Kc,Kbl)を得る 鍵変換処理を行うための構成を示す図である。
[図 11]図 11は、本発明における入力 Enc (Kc,Kh)から出力 Enc (Kc,Kbl)を得る 鍵変換処理を行うためのフローチャートである。
[図 12]図 12は、本発明における入力 Enc (Kc,Ka2)から出力 Enc (Kc,Kd2)を得る 鍵変換処理を行うための構成を示す図である。
[図 13]図 13は、本発明〖こおける入力 Enc (Kc,Kd2)から出力 Enc (Kc,Ke2)を得る 鍵変換処理を行うためのフローチャートである。
符号の説明
100 ホスト機器
101 ターゲット機器
102 機密情報処理部
103 ホスト CPU
104 ホスト IZF
105 ターゲット IZF
106 ワーク領域
107 内部バス
108 半導体集積回路
216 鍵変換制御部
217 鍵変換制御フラグ
300 鍵変換処理設定デコード回路
301 セレクタ 302 ANDゲート
303 認証フラグ (KaO)
304 認証フラグ (KbO)
305 同一ターゲットフラグ
306 鍵生成フラグ (Ka2)
307 鍵生成フラグ (Kbl)
500 ターゲット機器 1
600 ターゲット機器 2
1300 ホス卜機器
1301 ターゲット機器
1302 機密情報処理部
1303 ワーク領域
発明を実施するための最良の形態
[0041] 以下、本発明を実施するための最良の形態について、図面を参照しながら説明す る。
[0042] (実施の形態 1)
実施の形態 1では、本発明における鍵変換処理方法について説明する。図 2はホ スト機器 100とターゲット機器 101から構成される機密情報処理システムの全体構成 を示したものである。
[0043] ホスト機器 100は、所定の制御シーケンスに従って機密情報(以下では、鍵などの 平文状態での不正利用が許されな!/、情報を示す)の暗号化や復号化を行う機密情 報処理部 102と、機密情報処理部 102に対して所定の制御シーケンスを起動するホ スト CPU103と、ホスト CPU103とターゲット機器 101、および機密情報処理部 102 との間でデータの入出力を行うホスト IZF部 104と、ターゲット機器 101との間でデー タの入出力を行うターゲット I/F部 105と、ホスト CPU103や機密情報処理部 102が その動作のためにデータを一時格納しておくためのワーク用の領域であるワーク領 域 106、および内部バス 107とから構成される。また、機密情報処理部 102は、ホスト IZF部 104およびターゲット IZF部 105とともに秘匿ィ匕されたハードウェアである半 導体集積回路 108として構成される。なお、上記の構成要素に加えホスト CPU103 も併せて秘匿化された半導体集積回路として構成してもよい。
[0044] また、ホスト機器 100とターゲット機器 101との間で鍵などの機密情報の読み出しお よび書き出しが行われる場合には、ホスト機器 100とターゲット機器 101との間で認 証処理を行う必要がある。なお、ここで行う認証処理は、秘密鍵方式または公開鍵方 式のいずれの暗号方式を利用して行ってもよい。認証が成功すると、ホスト機器 100 はターゲット機器 101からターゲット I/F部 105を介して機密情報を読み出し、機密 情報処理部 102を用いて復号ィ匕して利用する。また、機密情報処理部 102の動作の 起動はホスト CPU103から行われ、起動された場合、セキュリティの確保された、ある いはセキュリティの必要の少な!/、所定のシーケンスのみを行う。
[0045] ここで、ホスト IZF部 104とターゲット IZF部 105とは、機密情報処理部 102が行う シーケンスの途中で生成される中間情報のうち機密性の高いもの(平文状態の機密 情報等)を、秘匿化された半導体集積回路 108外部には出力しないように構成され ている。
[0046] また、機密情報処理部 102とホスト CPU103は同一の半導体チップで構成しても 別チップで構成してもどちらでも構わな 、。
[0047] 図 3は本発明における、鍵変換処理の実施の形態の一つを示したものである。図 2 と同一の要素については、同一の符号を用いている。図 3では本発明の実施の形態 の一つとして、ターゲット機器 101に三つの暗号化鍵 {Enc (Kal, KaO) , Enc (Ka2 , Kal) , Enc (Kc, Ka2) }が格納され、さらに同一のターゲット機器 101に二つの喑 号化鍵 {Enc (Kbl, KbO) , Enc (Kb2, Kbl) }が格納された状態で、 Enc (Kc, Ka 2)に対して鍵変換処理を行うことにより Enc (Kc, Kbl)を得る場合を説明する。なお 、この図では説明の簡略化のために、図 2におけるホスト IZF部 104、ターゲット IZF 咅 105、および内咅ノ ス 107は省略した。なお、図 3において、復号ィ匕 202、 205、 2 09、 213は別個の復号ィ匕回路があるかのように描かれている力 これは説明をシー ケンスに沿って簡略ィ匕するためであり、実際には同一の復号ィ匕回路をシーケンスに 沿って複数回利用することが多い。この場合、復号化に用いられる、あるいは復号化 の結果生成される各鍵は外部力 アクセスできない領域に格納しておく必要がある。 また、暗号化と復号ィ匕のアルゴリズムに関連性がある場合は、復号化と暗号化の回 路の一部、あるいは全部を共用することも可能である。
[0048] また、ここでは鍵変換処理を行うにあたり、ターゲット機器に対する認証処理が終了 し機密情報処理部 102に認証鍵 KaO (200)が生成されているものとする。またター ゲット機器 101に格納された Enc (Kal, KaO) 201がワーク領域 106にー且格納さ れた後に、機密情報処理部 102に IN1として入力され認証鍵 KaO (200)により復号 ィ匕 202することにより Kal (203)が生成され、さらにターゲット機器 101に格納された Enc (Ka2, Kal) 204がワーク領域 106にー且格納された後に、機密情報処理部 1 02に IN2として人力され Kal (203)により復号ィ匕 205することにより Ka2 (206)力 S生 成されているものとする。また同様に、ターゲット機器に対して別の認証処理を行うこ とにより認証鍵 KbO (207)が機密情報処理部 102に生成されているものとする。ター ゲット機器 101に格納された Enc (Kbl, KbO) 208がワーク領域 106にー且格納さ れた後に、機密情報処理部 102に IN3として入力され認証鍵 KbO (207)により復号 ィ匕 209することにより Kbl (210)が生成されているものとする。なお、これら Enc (Kal , KaO) 201、 Enc (Ka2, Kal) 204および Enc (Kbl, KbO) 208は、必ずしもー且 ワーク領域 106に格納する必要はなぐ直接ターゲット機器 101から機密情報処理部 102に入力することも可能である。
[0049] また、鍵変換処理の入力となる Enc (Kc, Ka2) 211は、認証処理後にターゲット機 器 101からホスト機器 100のワーク領域 106に格納済みであり、出力である Enc (Kc , Kbl) 212はワーク領域 106に格納されるものとする。そしてワーク領域格納後に、 改めてターゲット機器に格納されるものとする。なお、これら Enc (Kc, Ka2) 211や E nc (Kc, Kbl) 212は、必ずしもー且ワーク領域 106に格納する必要はなぐ直接タ 一ゲット機器 101から機密情報処理部 102に入力する、もしくは直接機密情報処理 部 102からターゲット機器 101に出力することも可能である。
[0050] 以下、鍵変換処理が行われる際の機密情報処理部 102の動作を説明する。図 3で は、機密情報処理部 102に Enc (Kc, Ka2)から Enc (Kc, Kbl)への鍵変換処理を 行うための制御シーケンスが定義されており、この制御シーケンスがホスト CPU103 カゝら起動されたとする。これにより、鍵変換処理が開始される。 [0051] 鍵変換処理では、まず Kcに対する暗号ィ匕および復号ィ匕を行うための鍵 (機密情報 処理部 102に生成された Ka2 (206)および Kbl (210) )が復号ィ匕を行うための回路 および暗号ィ匕を行うための回路に設定される。そして次に Enc (Kc, Ka2) 211が機 密情報処理部 102に入力され、この入力された鍵に対して Ka2 (206)を用いて復号 化処理 213を行う。このように Ka2 (206)で復号ィ匕を行うことにより、暗号ィ匕されてい ない Kc214が機密情報処理部 102に生成される。この際、機密情報処理部 102で はこの鍵をホスト CPU103からアクセスされな!/、形で保持する。この実装の例として は、ホスト CPU103からアクセス不可能なレジスタに Kc214を格納する方法がある。 なお、 Kc214は鍵変換処理終了後に機密情報処理部 102により消去しても構わな い。そして、 Kc214に対して Kbl (210)を用いて暗号化処理 215を行う。この暗号 化処理 215により Enc (Kc, Kbl) 212が機密情報処理部 102から出力される。以上 の処理により鍵変換処理が終了する。
[0052] また、鍵変換処理における暗号化処理 215や復号化処理 213は、図 3に示す鍵変 換制御部 216や、鍵変換制御フラグ 217により制御される。ここで、鍵変換制御部 21 6は暗号化処理 215や復号化処理 213を行う回路に対して、それぞれの回路で使用 される鍵を設定するための信号、およびそれぞれの回路に対するィネーブル信号を 生成するための回路である。なお、ここでのィネーブル信号とは、この信号が入力さ れている間はそれぞれの回路において暗号ィ匕ゃ復号ィ匕が実行可能とするための信 号である。また、鍵変換制御フラグ 217は、ホスト CPU103から鍵変換処理の制御シ 一ケンスが起動された際に鍵変換制御部 216に読み出され、ィネーブル信号生成の 条件として使用される。
[0053] ここで本発明における鍵変換制御フラグ 217は三種類のフラグ力も成り、一つ目は 鍵変換処理の入力となる暗号ィ匕鍵を格納するターゲット機器、および鍵変換処理の 出力となる暗号ィ匕鍵を格納するターゲット機器に対してそれぞれ認証処理が行われ たどうかを示すためのフラグ (以下、「認証フラグ」という。)で、それぞれのターゲット 機器が不正な機器でないことを確認するために使用される。図 3の例では、それぞれ の認証が行われた場合に 1になるものとする。
[0054] 二つ目は前記の二つの認証処理が同一のターゲット機器に対して行われたかを示 すためのフラグ (以下、「同一ターゲットフラグ」という。)で、鍵変換処理の入力となる 暗号ィ匕鍵および出力となる暗号ィ匕鍵が同一のターゲット機器に格納される必要があ る場合に、同一ターゲット機器に対して認証処理が行われた力どうかを確認するため に使用される。図 3の例では、同一のターゲット機器に対して認証が行われた場合に 1になるものとする。なお、同一ターゲット機器であることを確認するための方法の一 例には、それぞれの認証処理の際に、ターゲット機器に固有な識別番号を機密情報 処理部 102に保持し、それら保持された識別番号が同一かどうかを確認することによ り、同一ターゲット機器力どうかを判定する方法がある。
[0055] 三つ目は鍵変換処理において復号ィ匕および暗号ィ匕を行うための鍵(図 3では Ka2
(206)および Kbl (210) )が機密情報処理部にそれぞれ生成されたかどうかを示す ためのフラグ(以下、「鍵生成フラグ」という。)で、図 3の例では Ka2 (206)または Kb 1 (210)が生成されていない状態、すなわち Ka2 = 0または Kbl =0などの状態で復 号ィ匕または暗号ィ匕が行われないことを確認するために使用される。図 3の例では、鍵 の生成が行われた場合に 1になるものとする。なお、鍵が生成されたことを確認する 方法としては、図 3の Ka2 (206)を例とした場合、 Ka2を生成するために必要な復号 化処理(図 3では、復号化処理 202および復号化処理 205)がそれぞれ行われたこと を機密情報処理部 102で保持し、それらの結果カゝら必要な復号ィ匕処理がすべて行 われた力どうかを確認する方法などがある。
[0056] 図 4は、図 3の鍵変換処理で使用される鍵変換制御部 216と鍵変換制御フラグ 217 の構成例を示したものである。鍵変換制御部 216は、機密情報処理部 102に対して どの鍵変換処理を起動するかを設定するための鍵変換処理設定をホスト CPU103 力ゝらの入力として持ち、暗号回路に対する鍵選択信号およびィネーブル信号を出力 として持つ。また、鍵変換処理設定をデコードするための鍵変換設定デコード回路 3 00と、デコード回路から出力される信号を選択信号とするセレクタ 301、およびセレク タ 301への入力として使用するための ANDゲート 302から構成される。ここで、鍵変 換設定デコード回路 300は例えば、ホスト CPU103からの鍵変換処理設定を保持す るためのレジスタと、それらレジスタの値を機密情報処理部 102で使用される内部制 御信号に変換するための回路力も構成される。また、 ANDゲート 302の入力には、 ホスト CPU103から起動された鍵変換処理が不正なく行われるために必要となるフラ グが入力される。
[0057] ここで、図 3の場合に必要となるフラグを説明する。図 3の処理では認証鍵 KaO (20 0)および認証鍵 KbO (207)力も生成される Ka2 (206)および Kbl (210)が使用さ れる。そのため、認証鍵 KaO (200)を生成する認証処理および認証鍵 KbO (207)を 生成する認証処理がともに終了している必要がある。そのため、認証フラグ (KaO) 30 3および認証フラグ (KbO) 304が使用され、それらがともに 1となる必要がある。また、 図 3の場合は鍵変換処理の入力である Enc (Kc, Ka2) 211と、出力である Enc (Kc , Kbl) 212がともに同一のターゲット機器に格納されているものとする。そのため、 同一ターゲットフラグ 305が使用され、その値が 1となる必要がある。なお、同一ター ゲット機器内での鍵変換処理ではな ヽ場合は、同一ターゲットフラグ 305はイネーブ ル信号生成の条件として使用されない。また、鍵変換処理においては Ka2 (206)お よび Kbl (210)がともに機密情報処理部 102に生成される必要があるので、鍵生成 フラグ (Ka2) 306および鍵生成フラグ (Kb 1) 307が使用され、それらがともに 1となる 必要がある。したがって、図 3に示す鍵変換処理を行う鍵変換処理設定がホスト CPU 103から行われた場合は、これら五つのフラグを入力に持つ ANDゲート 302の出力 力 セレクタ 301の出力として選択される。そのため、これら五つのフラグがすべて 1と なっている場合のみ、暗号回路が使用可能となる。なお、上記の五つのフラグを全て 備える必要は必ずしもない。例えば、認証フラグと鍵生成フラグは何れか一方しかな くともシステムによっては一定のセキュリティレベルを達成することができ得る。また、 同一ターゲットフラグ 305は、同一ターゲットでの鍵変換しか許容しないようなモード が存在する場合は必要である力 そういったモードが存在しない場合には必ずしも必 要ない。し力し、ここでスロットが二つ存在する場合には、同一ターゲットフラグ 305を 備えることが好ましぐその理由については実施の形態 2において後述する。
[0058] なお、これらのフラグは CPUが直接に書き換えを行うことはできず、各処理の結果 を受けて機密情報処理部内でノ、一ドウエア的に書き換えられるものである。
[0059] 次に、図 5のフローチャートを用いることにより図 3に示した鍵変換処理の流れを説 明する。本発明の鍵変換処理では、図 3に対する説明でも示したように、まずホスト C PU103により鍵変換処理設定 400が行われる。これにより、機密情報処理部 102で 実行される鍵変換処理が起動される。次に、鍵変換制御フラグ読み出し 401が鍵変 換制御部 216に対して行われる。読み出し後に、機密情報処理部 102に対して Enc (Kc, Ka2)入力 402を行う。そして、読み出されたフラグを基に、機密情報処理部 1 02で不正な処理が行われな 、ための条件が満たされて 、るかどうかが確認される。 これらの確認の処理は、図 5では条件分岐 403から条件分岐 407に相当する。なお 、不正な処理が行われないことが確認出来るのであれば、確認を行う順番は図 5に示 すとおりでなくても構わない。
[0060] 図 5では、図 3の鍵変換制御フラグの説明でも示したように、五つの確認が行われる 。まず、ターゲット機器に対する認証の条件として、鍵変換処理の入力である Enc (K c, Ka2) 211を格納するターゲット機器に対して認証鍵 KaO (200)を生成する認証 処理が行われているかを条件分岐 403で確認する。これにより、認証鍵 KaO (200) を生成する認証処理が行われていること、および Enc (Kc, Ka2) 211を格納するタ 一ゲット機器が不正な機器でないことを確認する。次に、鍵変換処理の出力である E nc (Kc, Kbl) 212を格納するターゲット機器に対して認証鍵 KbO (207)を生成する 認証処理が行われているかを条件分岐 404で確認する。これにより、認証鍵 Kb0 (2 07)を生成する認証処理が行われていること、および Enc (Kc, Kbl) 212を格納す るターゲット機器が不正な機器でな 、ことを確認する。
[0061] 次に、同一ターゲットフラグの説明で示したように、図 3の例では鍵変換処理は同一 のターゲット機器内で行われる場合を前提として 、るため、実行した二つの認証処理 が同一のターゲット機器に対して行われたかを条件分岐 405で確認する。これにより 、同一ターゲット機器内での鍵変換処理が行われて ヽるかを確認する。
[0062] また、鍵生成フラグの説明で示したように、 Ka2 (206)および Kbl (210)が機密情 報処理部 102に生成されていることを、条件分岐 406および条件分岐 407で確認す る。これにより、 Ka2 (206)および Kbl (210)が生成されていない状態、すなわち Ka 2 = 0および Kbl =0などの状態で復号ィ匕および暗号ィ匕が行われな 、ことを確認する
[0063] 以上の確認が行われた場合、ホスト CPU103が設定した鍵変換処理が不正なく実 行されることが確認される。そのため、確認後に入力である Enc (Kc, Ka2)に対する 変換処理 408 (図 3では、 Ka2 (206)で復号化して、 Kbl (210)で暗号化する処理) が行われる。この間、鍵変換制御部 216から暗号化処理 215や復号化処理 213を行 う回路に対してィネーブル信号が出力されている。そして変換処理が行われたことに より、 Enc (Kc, Kbl)出力 409が行われる。出力後、鍵変換処理が終了となる。
[0064] 以上のように、図 3および図 5の処理を用いることにより鍵変換処理が実行される。
なお、図 3の例ではターゲット機器に {Enc (Kal, KaO) , Enc (Ka2, Kal) , Enc (K c, Ka2) }が格納され、また同一ターゲット機器に {Enc (Kbl, KbO) , Enc (Kb2, K bl) }が格納された状態で、 Enc (Kc, Ka2) 211に対して鍵変換処理を行って Enc ( Kc, Kbl) 212を得る場合を説明した。しカゝしながら、本発明はこの場合に限られるも のではない。例えば、 Ka2で暗号化されたコンテンツ鍵が複数あり、これらの全てに っ 、て別の認証処理で得られた KbOを認証鍵とする機密情報処理方法で利用した い場合でもよい。この場合、各々のコンテンツ鍵を暗号化する鍵を Kblに変換すると 、コンテンツ鍵の個数と同じ回数の鍵変換処理を行う必要がある。そこで、 Enc (Ka2 , Kal)を Enc (Ka2, KbO)へと変換するような鍵変換処理を行う。すると、 Ka2を暗 号化のための鍵とする全てのコンテンツ鍵力 一度の鍵変換処理を行うのみで、 KbO を認証鍵とする機密情報処理方法で利用可能となる。なお、ここで Enc (Kal, KaO) を Enc (Kal, KbO)へと変換することも可能ではある。しかしながら、この場合は認証 鍵 KbOから Kcを復号ィ匕するまでの回数が Kblを用いる場合と比べて増えてしまう。 したがって、機密情報処理部が、認証鍵に応じてその復号ィ匕の回数を管理し、管理 して 、る回数以外の回数の復号ィ匕で得られた結果を出力しな 、ように構成されて 、 る場合などは Enc (Ka2, Kal)を Enc (Ka2, KbO)へと変換したほうが好ましい。
[0065] そこで、これを一般ィ匕して、ターゲット機器に m個(mは自然数)の鍵 {Enc (Kal, K aO) , . . . , Enc (Kam, Ka (m— 1) ) }が格納され、さらに n個(nは自然数)の鍵 {En c (Kbl, KbO) , . . . , Enc (Kbn, Kb (n— 1) ) }が格納された状態で、 Kamおよび Kbnをコンテンツの暗号化および復号化に使用し、 iおよび jをそれぞれ l≤i≤m、 1 ≤j≤nを満たす自然数として、 Enc (Kai, Ka (i— 1) )に対して鍵変換処理を行って Enc (Kai, Kb (j— 1) )を得る構成としても良い。この場合、鍵変換処理を行うために は、機密情報処理部の復号ィ匕を行う回路に Ka (i—1)を使用し、暗号化を行う回路 に Kb (j 1)を使用して、また鍵変換処理フラグとして Ka (i- 1)が生成されたことを 示すフラグ、および Kb (j 1)が生成されたことを示すフラグを代わりに使用すれば、 図 3と同様の鍵変換処理が実行可能である。したがって、機密情報処理部に Ka (i— 1)および Kb (j - 1)に対応する鍵生成フラグを追加し、鍵変換制御部にこのフラグを 選択するための回路を追加すればよい。また、 m— i=n— jを満たすと、認証鍵 KbO 力もの復号ィ匕の回数が変わらずにコンテンツ鍵を復号ィ匕できるので、さらに好ましい
[0066] (実施の形態 2)
次に実施の形態 2について説明する。基本的な全体構成は図 2と同様なので説明 を省略する。
[0067] 実施の形態 2では、本発明における認証のフラグの消去、および認証鍵の消去に ついて説明する。図 6および図 7は、認証鍵 KaOを生成する認証のフラグの消去およ び認証鍵 KaOの消去を行うことにより、不正なターゲット機器の挿抜による不正な処 理を防ぐことができることを示したものである。なお、図 2と同一の要素については、同 一の符号を用いている。なお、図 6、図 7において、復号ィ匕 503、 506、 604, 606は 別個の復号ィ匕回路があるかのように描かれている力 これは説明をシーケンスに沿つ て簡略ィ匕するためであり、実際には同一の復号ィ匕回路をシーケンスに沿って複数回 利用することが多い。この場合、復号化に用いられる、あるいは復号ィ匕の結果生成さ れる各鍵は外部力もアクセスできない領域に格納しておく必要がある。また、暗号ィ匕 と復号ィ匕のアルゴリズムに関連性がある場合は、復号化と暗号化の回路の一部、ある いは全部を共用することも可能である。
[0068] 図 6ではターゲット機器 1 (500)がホスト機器 100に挿入され、ターゲット機器に三 つの暗号化鍵 {Enc (Kal, KaO) , Enc (Ka2, Kal) , Enc (Kc, Ka2) }が格納され た状態であるものとする。また図 7ではターゲット機器 1 (500)がホスト機器 100から 抜かれ、代わりにターゲット機器 2 (600)がホスト機器 100に挿入され、ターゲット機 器に一つの暗号ィ匕鍵 Enc (Kbl, KbO)が格納された状態であるものとする。ここで本 実施の形態では、ホスト CPU103が不正な処理を行おうとした場合でもセキュリティ を保てる仕組みを提供することを目的とする。したがって、ホスト CPU103のワーク領 域 106に格納された三つの暗号化鍵 {Enc (Kal, KaO) , Enc (Ka2, Kal) , Enc ( Kc, Ka2) }はワーク領域 106から消去されないものと仮定する。そして図 6および図 7を用いて、 Kcに対して、 KaOから生成される Ka2と、認証鍵 KbOから生成される Kb 1により鍵変換処理が行われるものとする。このように、図 6および図 7では、鍵変換処 理を行うにあたりターゲット機器を交換した場合に、機密情報処理部 102がどのような 動作をするかを説明する。なお、ここでは鍵変換処理が同一ターゲット機器に対して 行われる必要があるものとする。そのため、ターゲット機器の挿抜が行われた場合は その挿抜は不正な処理となる。
[0069] まず、図 6のようにターゲット機器 1 (500)が挿入された状態で認証を行!ヽ、ターゲ ット機器 1 (500)が正当な機器であれば、機密情報処理部に認証鍵 KaO (501)が生 成され、また認証鍵 KaO (501)を生成する認証処理が行われたことが、認証フラグ( KaO) 508により保持される。その後、ターゲット機器 1に格納されていた Enc (Kal, KaO) 502がワーク領域 106にー且格納された後に、機密情報処理部 102に IN1と して入力され認証鍵 KaO (501)により復号化 503することにより Kal (504)を生成し 、またターゲット機器 1に格納されていた Enc (Ka2, Kal) 505がワーク領域 106に ー且格納された後に、機密情報処理部 102に IN2として入力され Kal (504)により 復号化 506することにより Ka2 (507)を生成したとする。なお、これら Enc (Kal, Ka 0) 502および Enc (Ka2, Kal) 505は、必ずしもー且ワーク領域 106に格納する必 要はなぐ直接ターゲット機器 500から機密情報処理部 102に入力することも可能で ある。
[0070] さらにターゲット機器 1 (500)に格納された Enc (Kc, Ka2) 509をホスト機器 100の ワーク領域 106に格納済みとする。なお、この Enc (Kc, Ka2)は、必ずしも一且ヮー ク領域 106に格納する必要はなぐ直接ターゲット機器 500から機密情報処理部 10 2に入力することも可能である。
[0071] ここで、図 7に示すように、ターゲット機器 1 (500)をホスト機器 100から抜き、ターゲ ット機器 2 (600)が代わりに挿入されたとする。なお、ここでは鍵変換処理が同一ター ゲット機器に対して行われることを前提としている。そのため、この挿抜は不正な挿抜 となる。このような場合、本発明の鍵変換処理においては、ターゲット機器が抜かれた ことによりそのターゲット機器に対する認証、および認証処理の際に機密情報処理部
102に生成した認証鍵を消去する。また、機密情報処理部 102に認証鍵から生成さ れた鍵 (Kal (504)や Ka2 (507) )が生成されて ヽる場合は、それらを消去してもよ い。
[0072] ここで認証の消去とは、認証フラグの消去であり、図 7の例では認証フラグ (KaO) 5 08を 0とする処理である。また認証鍵の消去とは、図 7の例ではターゲット機器 1 (50 0)の認証鍵 KaO (501)に対し KaO = 0と設定することなどを指す。なお、これらの情 報の消去には、機密情報処理部 102によりターゲット機器が抜かれたことを検知し、 機密情報処理部 102が消去を行う方法や、ホスト CPU103によりターゲット機器が抜 かれたことを検知し、ホスト CPU103が機密情報処理部 102に消去を行う制御シー ケンスを起動する方法などがある。
[0073] 次に、図 7の例では、ターゲット機器 2 (600)に対して認証鍵 KbO (601)を生成す る認証処理を行ったものとする。もしターゲット機器 2 (600)が正当な機器であれば、 認証鍵 KbO (601)が生成され、また認証鍵 KbOを生成する認証が成立したことが、 認証フラグ (KbO) 602により保持される。さらに、ここではターゲット機器 2 (600)に格 納されていた Enc (Kbl, KbO) 603がワーク領域 106にー且格納された後に、機密 情報処理部 102に IN3として入力され認証鍵 KbO (601)により復号化 604すること により Kbl (605)が生成されているとする。なお、この Enc (Kbl, KbO) 603は、必 ずしもー且ワーク領域 106に格納する必要はなぐ直接ターゲット機器 600から機密 情報処理部 102に入力することも可能である。
[0074] この状態で、ホスト CPU103により Enc (Kc, Ka2)力 Enc (Kc, Kbl)への鍵変 換処理が起動され、ワーク領域 106に格納されてあつた Enc (Kc, Ka2) 509力入力 されたとする。このような処理を行った場合は、認証フラグ (KaO) 508が 0である、す なわち認証鍵 KaOを生成する認証処理が行われて 、な 、ことが機密情報処理部で 保持されている。そのため、 Ka2 (507)を用いて復号ィ匕を行う暗号回路に対してイネ 一ブル信号が生成されていないため、復号ィ匕処理 606が行われずに Kcを得ることが できない。また Kcに対する暗号ィ匕処理 607を行う暗号回路に対しても、ィネーブル 信号が生成されていない。
[0075] ところが、ここでターゲット機器 1 (500)に対する認証が行われたことが消去されて いなければ、ターゲット機器 1 (500)が抜かれた後も機密情報処理部 102の認証フラ グ (KaO) 508が 1のままとなる。すると、次に挿入されたターゲット機器 2 (600)の認 証によって、認証フラグ (KbO) 602が 1となる。ここで、図 4を参照すると、鍵自体は認 証によって適正に存在し得るため、鍵生成フラグ (Ka2) 306と鍵生成フラグ (Kb 1) 3 07も 1となり得る。したがって、不正に鍵変換処理が起動される可能性が残る。
[0076] またここで、同一ターゲットフラグ 305の有用性について、スロットが二つ存在する 場合を例にとって説明する。この場合、第 1のスロットに対して、ターゲット機器 1の認 証を成功させ、第 2のスロットに対してターゲット機器 2の認証を成功させると、認証フ ラグ (KaO) 508と認証フラグ (KbO) 602が 1となり、鍵自体も正当に生成され得る。し たがって、 CPUが不正に処理を起動することで不正な鍵変換が行われる可能性があ る。しかし同一ターゲットフラグを設け、同一ターゲット機器への鍵変換のみを許容す ることで、そのような不正を行うことができなくなる。なお、同一ターゲットフラグを更新 する方法であるが、実施の形態 1で説明した固有な識別番号を用いる実装方法以外 に、それぞれの認証処理がどのスロットに対して行われたかを保持する実装方法でも よい。このような実装方法では、ホスト機器に二つのスロットが存在し、それぞれに異 なるターゲット機器が挿入された場合、スロットが異なることからそれぞれが異なるタ 一ゲット機器と判定することができ、上述したような状況でも不正な処理の起動を防ぐ ことが可能である。当然、一度ターゲット機器を抜いて力も再度挿入した場合は、認 証フラグが消去されるので不正な処理は行われない。
[0077] したがって、図 6および図 7に示すように、ターゲット機器がホスト機器 100から抜か れた場合は、そのターゲット機器に対する認証が成功したことや認証鍵を消去するこ とにより、不正な鍵変換処理が防ぐことができる。
[0078] (実施の形態 3)
次に実施の形態 3について説明する。基本的な全体構成は図 2と同様なので説明 を省略する。
[0079] 実施の形態 3では、本発明における鍵変換処理方法にっ 、て説明する。図 8は本 発明における、鍵変換処理の実施の形態の一つを示したものである。図 2および図 3 と同一の要素については、同一の符号を用いている。図 8では本発明の実施の形態 の一つとして、ターゲット機器 101に三つの暗号化鍵 {Enc (Kal, KaO) , Enc (Ka2 , Kal) , Enc (Kc, Ka2) }が格納された状態で、 Enc (Kc, Ka2)に対して、機密情 報処理部に外部力 読み出されないようにして格納されたホスト鍵 Khにより鍵変換 処理を行って Enc (Kc, Kh)を得る場合を説明する。ここで、ホスト鍵 Khを機密情報 処理部に格納する方法としては半導体集積回路の製造時に機密情報処理部内に実 装する方法、あるいは半導体集積回路外部カゝら電子配信等を介して暗号化された状 態で半導体集積回路内部に入力し、半導体集積回路内部において復号ィ匕して機密 情報処理部内に格納する方法等がある。これは後述する実施の形態 4にお 、ても同 様である。なお、図 8において、復号ィ匕 702、 705、 710は別個の復号化回路がある かのように描かれている力 これは説明をシーケンスに沿って簡略ィ匕するためであり、 実際には同一の復号ィ匕回路をシーケンスに沿って複数回利用することが多い。この 場合、復号化に用いられる、あるいは復号ィ匕の結果生成される各鍵は外部からァク セスできない領域に格納しておく必要がある。また、暗号ィ匕と復号ィ匕のアルゴリズム に関連性がある場合は、復号化と暗号化の回路の一部、あるいは全部を共用するこ とも可能である。
[0080] ここで、 Enc (Kc, Kh)はターゲット機器に格納されるのではなぐ例えばホスト機器 内のハードディスクなどの蓄積デバイスに格納される。この鍵変換処理の利用例とし ては、ターゲット機器に格納された Kcのバックアップなどを可能にする。このような処 理では、バックアップされた Kcは Enc (Kc, Kh)として保存されるため、 Khを持った ホスト機器、すなわちバックアップを行ったホスト機器のみ力 ¾nc (Kc, Kh)を復号可 能となる。
[0081] また、図 8では、ターゲット機器 101に対する認証処理が終了し機密情報処理部 10 2に KaO (700)が生成されたものとする。またターゲット機器 101に格納された Enc ( Kal, KaO) 701がワーク領域 106にー且格納された後に、機密情報処理部 102に I N1として入力され KaO (700)により復号化 702することにより Kal (703)が生成され 、さらにターゲット機器 101に格納された Enc (Ka2, Kal) 704がワーク領域 106に ー且格納された後に、機密情報処理部 102に IN2として入力され Kal (703)により 復号化 705することにより Ka2 (706)が生成されているものとする。なお、これら Enc ( Kal, Ka0) 701および Enc (Ka2, Kal) 704は、必ずしもー且ワーク領域 106に格 納する必要はなぐ直接ターゲット機器 101から機密情報処理部 102に入力すること も可能である。
[0082] また、鍵変換処理の入力となる Enc (Kc, Ka2) 707は、認証処理後にターゲット機 器 101からホスト機器 100のワーク領域 106に格納済みであり、出力である Enc (Kc , Kh) 708はワーク領域 106に格納されるものとする。そしてワーク領域格納後に、改 めてホスト機器 100の蓄積デバイスなどに保存されるものとする。なお、入力の Enc ( Kc, Ka2)は、必ずしもー且ワーク領域 106に格納する必要はなぐ直接ターゲット 機器 101から機密情報処理部 102に入力することも可能である。
[0083] 以下、 Ka2 (706)および Kh709を用いた鍵変換処理が行われる際の機密情報処 理部 102の動作を説明する。図 8では、機密情報処理部 102に Enc (Kc, Ka2)から Enc (Kc, Kh)への鍵変換処理を行うための制御シーケンスが定義されており、この 制御シーケンスがホスト CPU103から起動されたとする。これにより、鍵変換処理が 開始される。
[0084] 鍵変換処理では、まず Kcに対する暗号ィ匕および復号ィ匕を行うための鍵 (機密情報 処理部 102に生成された Ka2 (706)、および機密情報処理部 102に格納された Kh 709)が復号ィ匕を行うための回路および暗号ィ匕を行うための回路に設定される。そし て次に Enc (Kc, Ka2) 707が機密情報処理部 102に入力され、この入力された鍵 に対して Ka2 (706)を用いて復号化処理 710を行う。このように Ka2 (706)で復号 化を行うことにより、暗号ィ匕されていない Kc711が機密情報処理部 102に生成される 。この際、機密情報処理部 102ではこの鍵をホスト CPU103からアクセスされない形 で保持する。この実装の例としては、ホスト CPU103からアクセス不可能なレジスタに Kc711を格納する方法がある。なお、 Kc711は鍵変換処理終了後に機密情報処理 部 102により消去しても構わない。そして、 Kc711に対して Kh709を用いて暗号ィ匕 処理 712を行う。この暗号化処理 712により Enc (Kc, Kh) 708が機密情報処理部 1 02から出力される。以上の処理により鍵変換処理が終了する。 [0085] また、実施の形態 1の場合と同様に、鍵変換処理における暗号化処理 712ゃ復号 化処理 710は、図 8に示す鍵変換制御部 216や、鍵変換制御フラグ 217により制御 される。ここで、図 8の場合に必要となるフラグを考察する。図 8の処理では認証鍵 Ka 0 (700)力も生成される Ka2 (706)が使用される。そのため、認証鍵 Ka0 (700)を生 成する認証処理が終了している必要がある。そのため、認証フラグ (KaO)が鍵変換 制御フラグ 217の一つとして必要となる。なお、図 8の場合は鍵変換処理の入力であ る Enc (Kc, Ka2) 707と、出力である Enc (Kc, Kh) 708は同一のターゲット機器に 格納される必要がないため、同一ターゲットフラグは不要である。また、この鍵変換処 理においては、 Ka2 (706)が復号ィ匕処理により機密情報処理部 102に生成される必 要がある。そのため、鍵生成フラグ (Ka2)が鍵変換制御フラグ 217の一つとして必要 となる。なお、 Kh709は前もってホスト機器 100に格納されている鍵なので、 Kh709 に対する生成フラグは不要である。したがって、図 8に示す鍵変換処理を行う鍵変換 処理設定がホスト CPU103から行われた場合は、認証フラグ (KaO)および鍵生成フ ラグ (Ka2)の二つのフラグを入力に持つ ANDゲートの出力力 図 4に示すセレクタ 3 01の出力として選択される。そのため、これら二つのフラグがともに 1となっている場 合のみ、暗号回路が使用可能となる。
[0086] 次に、以下では図 9のフローチャートを用いることにより図 8に示した鍵変換処理の 流れを説明する。本発明の鍵変換処理では、実施の形態 1でも説明したように、まず ホスト CPU103により鍵変換処理設定 800が行われる。これにより、機密情報処理部 102で実行される鍵変換処理が起動される。次に、鍵変換制御フラグ読み出し 801 が鍵変換制御部 216に対して行われる。読み出し後に、機密情報処理部 102に対し て Enc (Kc, Ka2)入力 802を行う。そして、読み出されたフラグを基に、機密情報処 理部 102で不正な処理が行われないための条件が満たされているかどうかが確認さ れる。これらの確認の処理は、図 9では条件分岐 803と条件分岐 804に相当する。な お、不正な処理が行われないことが確認出来るのであれば、確認を行う順番は図 9に 示すとおりでなくても構わない。
[0087] 図 9では、図 8の鍵変換制御フラグの説明でも示したように、二つの確認が行われる 。まず、ターゲット機器に対する認証の条件として、鍵変換処理の入力である Enc (K c, Ka2) 707を格納するターゲット機器に対して認証鍵 KaO (700)を生成する認証 処理が行われているかを条件分岐 803で確認する。これにより、認証鍵 KaO (700) を生成する認証処理が行われていること、および Enc (Kc, Ka2) 707を格納するタ 一ゲット機器が不正な機器でないことを確認する。また、鍵生成フラグの説明で示し たように、 Ka2 (706)が機密情報処理部 102に生成されていることを条件分岐 804 で確認する。これにより、 Ka2 (706)が生成されていない状態、すなわち Ka2 = 0な どの状態で復号化が行われな ヽことを確認する。
[0088] 以上の確認が行われた場合、ホスト CPU103が設定した鍵変換処理が不正なく実 行されることが確認される。そのため、確認後に入力である Enc (Kc, Ka2)に対する 変換処理 805 (図 8では、 Ka2 (706)で復号化して、 Kh (709)で暗号化する処理) が行われる。この間、鍵変換制御部 216から暗号化処理 712や復号化処理 710を行 う回路に対してィネーブル信号が出力されている。そして変換処理が行われたことに より、 Enc (Kc, Kh)出力 806が行われる。出力後、鍵変換処理が終了となる。
[0089] 以上のように、図 8および図 9の処理を用いることにより鍵変換処理が実行される。
なお、図 8の例ではターゲット機器に {Enc (Kal, KaO) , Enc (Ka2, Kal) , Enc (K c, Ka2) }が格納された状態で、 Enc (Kc, Ka2) 707に対して鍵変換処理を行って Enc (Kc, Kh) 708を得る場合を説明した。そこで、これを一般ィ匕して、ターゲット機 器に m個(mは自然数)の鍵 {Enc (Kal, KaO) , . . . , Enc (Kam, Ka (m— 1) ) }が 格納された状態で、 Kamをコンテンツの暗号ィ匕および復号ィ匕に使用し、 iを l≤i≤m を満たす自然数として、 Enc (Kai, Ka (i— 1) )に対して鍵変換処理を行って Enc (K ai, Kh)を得る構成としても良い。この場合、鍵変換処理を行うためには、機密情報 処理部の復号ィ匕を行う回路に Ka (i—1)を使用し、暗号ィ匕を行う回路に Khを使用し て、また鍵変換処理フラグとして Ka (i- 1)が生成されたことを示すフラグを代わりに 使用すれば、図 8と同様の鍵変換処理が実行可能である。したがって、機密情報処 理部に Ka (i— 1)に対応する鍵生成フラグを追加し、鍵変換制御部にこのフラグを選 択するための回路を追加すればよい。
[0090] (実施の形態 4)
次に実施の形態 4について説明する。基本的な全体構成は図 2と同様なので説明 を省略する。
[0091] 実施の形態 4では、本発明における鍵変換処理方法について説明する。図 10は本 発明における、鍵変換処理の実施の形態の一つを示したものである。図 2および図 3 と同一の要素については、同一の符号を用いている。図 10では本発明の実施の形 態の一つとして、ターゲット機器 101に二つの暗号化鍵 {Enc (Kbl, KbO) , Enc (K b2, Kbl) }が格納された状態で、 Enc (Kc, Kh)に対して、 Kblにより鍵変換処理を 行って Enc (Kc, Kbl)を得る場合を説明する。なお、図 10において、復号化 902、 907は別個の復号ィ匕回路があるかのように描かれている力 これは説明をシーケンス に沿って簡略ィ匕するためであり、実際には同一の復号ィ匕回路をシーケンスに沿って 複数回利用することが多い。この場合、復号化に用いられる、あるいは復号ィ匕の結果 生成される各鍵は外部からアクセスできな 、領域に格納しておく必要がある。また、 暗号化と復号ィ匕のアルゴリズムに関連性がある場合は、復号化と暗号ィ匕の回路の一 部、あるいは全部を共用することも可能である。
[0092] ここで、 Enc (Kc, Kh)はターゲット機器に格納されるのではなぐ実施の形態 3と同 様に、例えばホスト機器内のハードディスクなどの蓄積デバイスに格納される。この鍵 変換処理の利用例としては、ホスト機器にバックアップされた Kcをターゲット機器にリ ストアする処理などが挙げられる。このような処理では、バックアップされた Kcは Enc ( Kc, Kh)として保存されているため、 Khを持ったホスト機器、すなわちバックアップを 行ったホスト機器のみ力 ¾nc (Kc, Kh)を復号可能となる。
[0093] また、図 10では、ターゲット機器 101に対する認証処理が終了し機密情報処理部 1 02に認証鍵 KbO (900)が生成されたものとする。またターゲット機器 101に格納され た Enc (Kbl, KbO) 901がワーク領域 106にー且格納された後に、機密情報処理部 102に IN1として人力され KbO (900)により復号ィ匕 902することにより Kbl (903)力 ^ 生成されているものとする。なお、この Enc (Kbl, KbO) 901は、必ずしもー且ワーク 領域 106に格納する必要はなぐ直接ターゲット機器 101から機密情報処理部 102 に入力することも可能である。
[0094] また、鍵変換処理の入力となる Enc (Kc, Kh) 904は、すでにホスト機器 100の蓄 積デバイスなど力もワーク領域 106に格納済みであり、出力である Enc (Kc, Kbl) 9 05はワーク領域 106に格納されるものとする。そしてワーク領域格納後に、改めてタ 一ゲット機器 101に格納されるものとする。なお、出力の Enc (Kc, Kbl)は、必ずし もー且ワーク領域 106に格納する必要はなぐ直接機密情報処理部 102からターゲ ット機器 101に出力することも可能である。
[0095] 以下、 Kh906および Kbl (903)を用いた鍵変換処理が行われる際の機密情報処 理部 102の動作を説明する。図 10では、機密情報処理部 102に Enc (Kc, Kh)から Enc (Kc, Kbl)への鍵変換処理を行うための制御シーケンスが定義されており、こ の制御シーケンスがホスト CPU103から起動されたとする。
[0096] 鍵変換処理では、まず Kcに対する暗号ィ匕および復号ィ匕を行うための鍵 (機密情報 処理部 102に格納された Kh906、および機密情報処理部 102に生成された Kbl (9 03) )が復号ィ匕を行うための回路および暗号ィ匕を行うための回路に設定される。そし て次に Enc (Kc, Kh) 904が機密情報処理部 102に入力され、この入力された鍵に 対して Kh906を用いて復号化処理 907を行う。このように Kh906で復号化を行うこと により、暗号ィ匕されていない Kc908が機密情報処理部 102に生成される。この際、 機密情報処理部 102ではこの鍵をホスト CPU103からアクセスされない形で保持す る。この実装の例としては、ホスト CPU103からアクセス不可能なレジスタに Kc908を 格納する方法がある。なお、 Kc908は鍵変換処理終了後に機密情報処理部 102に より消去しても構わない。そして、 Kc908に対して Kbl (903)を用いて暗号化処理 9 09を行う。この暗号化処理 909により Enc (Kc, Kbl) 905が機密情報処理部 102か ら出力される。以上の処理により鍵変換処理が終了する。
[0097] また、実施の形態 1の場合と同様に、鍵変換処理における暗号化処理 909ゃ復号 化処理 907は、図 10に示す鍵変換制御部 216や、鍵変換制御フラグ 217により制御 される。ここで、図 10の場合に必要となるフラグを考察する。図 10の処理では認証鍵 KbO (900)力も生成される Kb 1 (903)が使用される。そのため、認証鍵 Kb0 (900) を生成する認証処理が終了している必要がある。そのため、認証フラグ (KbO)が鍵 変換制御フラグ 217の一つとして必要となる。なお、図 10の場合は鍵変換処理の入 力である Enc (Kc, Kh) 904と、出力である Enc (Kc, Kbl) 905は同一のターゲット 機器に格納される必要がないため、同一ターゲットフラグは不要である。また、この鍵 変換処理においては、 Kbl (903)が復号化処理により機密情報処理部 102に生成 される必要がある。そのため、鍵生成フラグ (Kbl)が鍵変換制御フラグ 217の一つと して必要となる。なお、 Kh906は前もってホスト機器 100に格納されている鍵なので 、 Kh906に対する生成フラグは不要である。したがって、図 10に示す鍵変換処理を 行う鍵変換処理設定がホスト CPU103から行われた場合は、認証フラグ (KbO)およ び鍵生成フラグ (Kbl)の二つのフラグを入力に持つ ANDゲートの出力力 図 4に示 すセレクタ 301の出力として選択される。そのため、これら二つのフラグがともに 1とな つている場合のみ、暗号回路が使用可能となる。
[0098] 次に、以下では図 11のフローチャートを用いることにより図 10に示した鍵変換処理 の流れを説明する。本発明の鍵変換処理では、実施の形態 1でも説明したように、ま ずホスト CPU103により鍵変換処理設定 1000が行われる。これにより、機密情報処 理部 102で実行される鍵変換処理が起動される。次に、鍵変換制御フラグ読み出し 1001が鍵変換制御部 217に対して行われる。読み出し後に、機密情報処理部 102 に対して Enc (Kc, Kh)入力 1002を行う。そして、読み出されたフラグを基に、機密 情報処理部 102で不正な処理が行われな 、ための条件が満たされて 、るかどうかが 確認される。これらの確認の処理は、図 11では条件分岐 1003と条件分岐 1004〖こ 相当する。なお、不正な処理が行われないことが確認出来るのであれば、確認を行う 順番は図 11に示すとおりでなくても構わな!/、。
[0099] 図 11では、図 10の鍵変換制御フラグの説明でも示したように、二つの確認が行わ れる。まず、ターゲット機器に対する認証の条件として、鍵変換処理の出力である En c (Kc, Kbl) 905を格納するターゲット機器に対して認証鍵 KbO (900)を生成する 認証処理が行われているかを条件分岐 1003で確認する。これにより、認証鍵 KbO ( 900)を生成する認証処理が行われていること、および Enc (Kc, Kbl) 905を格納 するターゲット機器が不正な機器でないことを確認する。また、鍵生成フラグの説明 で示したように、 Kbl (903)が機密情報処理部 102に生成されていることを、条件分 岐 1004で確認する。これにより、 Kbl (903)が生成されていない状態、すなわち Kb 1 =0などの状態で暗号ィ匕が行われな 、ことを確認する。
[0100] 以上の確認が行われた場合、ホスト CPU103が設定した鍵変換処理が不正なく実 行されることが確認される。そのため、確認後に入力である Enc (Kc, Kh)に対する 変換処理 1005 (図 10では、 Kh906で復号ィ匕して、 Kbl (903)で暗号化する処理) が行われる。この間、鍵変換制御部 216から暗号化処理 909や復号化処理 907を行 う回路に対してィネーブル信号が出力されている。そして変換処理が行われたことに より、 Enc (Kc, Kbl)出力 1006が行われる。出力後、鍵変換処理が終了となる。
[0101] 以上のように、図 10および図 11の処理を用いることにより鍵変換処理が実行される 。なお、図 10の例ではターゲット機器に {Enc (Kbl, KbO) , Enc (Kb2, Kbl) }が 格納された状態で、 Enc (Kc, Kh) 904に対して鍵変換処理を行って Enc (Kc, Kb 1) 905を得る場合を説明した。そこで、これを一般ィ匕して、ターゲット機器に n個 (nは 自然数)の鍵 {Enc (Kbl, KbO) , . . . , Enc (Kbn, Kb (n— 1) ) }が格納された状 態で、 Kbnをコンテンツの暗号ィ匕および復号ィ匕に使用し、 jを 1≤j≤nを満たす自然 数として、 Enc (Kai, Kh)に対して鍵変換処理を行って Enc (Kai, Kb (j— 1) )を得る 構成としても良い。この場合、鍵変換処理を行うためには、機密情報処理部の暗号 化を行う回路に Khを使用し、復号ィ匕を行う回路に Kb (j— 1)を使用して、また鍵変換 処理フラグとして Kb (j 1)が生成されたことを示すフラグを代わりに使用すれば、図 10と同様の鍵変換処理が実行可能である。したがって、機密情報処理部に Kb (j— 1 )に対応する鍵生成フラグを追加し、鍵変換制御部にこのフラグを選択するための回 路を追加すればよい。
[0102] (実施の形態 5)
次に実施の形態 5について説明する。基本的な全体構成は図 2と同様なので説明 を省略する。
[0103] 実施の形態 5では、本発明における鍵変換処理方法について説明する。図 12は本 発明における、鍵変換処理の実施の形態の一つを示したものである。図 2および図 3 と同一の要素については、同一の符号を用いている。図 12では本発明の実施の形 態の一つとして、ターゲット機器 101に暗号ィ匕鍵 Enc (Kai, KaO)が格納され、さら に同一ターゲット機器に Kaiにより暗号ィ匕された二つの暗号ィ匕鍵 {Enc (Kd2, Kai) および Enc (Ke2, Kai)が格納され、またそれぞれ Kd2および Ke2により暗号化さ れた鍵 Enc (Kc, Kd2)および Enc (Ke3, Ke2)が格納された状態を説明する。そし て、 Enc (Kc, Kd2)に対して、 Ke2により鍵変換処理を行って Enc (Kc, Ke2)を得 る場合を説明する。このように、実施の形態 5では、同一の認証鍵 KaOから生成され る鍵の間での鍵変換処理を説明する。なお、図 12において、復号化 1102、 1105、 1108、 1112は別個の復号ィ匕回路があるかのように描かれている力 これは説明を シーケンスに沿って簡略ィ匕するためであり、実際には同一の復号ィ匕回路をシーケン スに沿って複数回利用することが多い。この場合、復号化に用いられる、あるいは復 号ィ匕の結果生成される各鍵は外部力 アクセスできない領域に格納しておく必要が ある。また、暗号化と復号ィ匕のアルゴリズムに関連性がある場合は、復号化と暗号ィ匕 の回路の一部、あるいは全部を共用することも可能である。
[0104] この鍵変換処理の利用例としては、この処理を行ったことにより Kcを暗号ィ匕する鍵 が Kd2から Ke2に変更されることから、 Kd2を不要として、さらに不要となった Kd2を ターゲット機器力も消去することにより、 Kcを暗号ィ匕する鍵の個数を減らすなどの用 途に利用できる。
[0105] また、図 12では、ターゲット機器 101に対する認証処理が終了し機密情報処理部 1 02に認証鍵 KaO (1100)が生成されたものとする。またターゲット機器 101に格納さ れた Enc (Kal, KaO) 1101がワーク領域 106にー且格納された後に、機密情報処 理部 102に IN1として入力され認証鍵 KaO (1100)により復号化 1102することにより Kal (1103)が生成され、さらにターゲット機器 101に格納された Enc (Kd2, Kal) l 104がワーク領域 106にー且格納された後に、機密情報処理部 102に IN2として入 力され Kal (1103)により復号化 1105することにより Kd2 (1106)が生成されて!、る ものとする。またターゲット機器 101に格納された Enc (Ke2, Kal) 1107がワーク領 域 106にー且格納された後に、機密情報処理部 102に IN3として入力され Kal (11 03)により復号化 1108することにより Ke2 (1109)が生成されて!、るものとする。なお 、これら Enc (Kal, KaO) 1101、 Enc (Kd2, Kal) 1104および Enc (Ke2, Kal) 1 107は、必ずしもー且ワーク領域 106に格納する必要はなぐ直接ターゲット機器 10 1から機密情報処理部 102に入力することも可能である。
[0106] また、鍵変換処理の入力となる Enc (Kc, 1^12) 1110は、認証処理後にターゲット 機器 101からホスト機器 100のワーク領域 106に格納済みであり、出力である Enc (K c, Ke2) 1111はワーク領域 106に格納されるものとする。そしてワーク領域格納後 に、改めてターゲット機器 101に格納されるものとする。なお、これら Enc (Kc, Kd2) や Enc (Kc, Ke2)は、必ずしもー且ワーク領域 106に格納する必要はなぐ直接タ 一ゲット機器 101から機密情報処理部 102に入力する、もしくは直接機密情報処理 部 102からターゲット機器 101に出力することも可能である。
[0107] 以下、 Kd2 (1106)および Ke2 (1109)を用いた鍵変換処理が行われる際の機密 情報処理部 102の動作を説明する。図 12では、機密情報処理部 102に Enc (Kc, K d2)力ら Enc (Kc, Ke2)への鍵変換処理を行うための制御シーケンスが定義されて おり、この制御シーケンスがホスト CPU103から起動されたとする。
[0108] 鍵変換処理では、まず Kcに対する暗号ィ匕および復号ィ匕を行うための鍵 (機密情報 処理部に生成された Kd2 (1106)および Ke2 (1109) )が復号ィ匕を行うための回路 および暗号化を行うための回路に設定される。そして次に Enc (Kc, Kd2) 1110が 機密情報処理部 102に入力され、この入力された鍵に対して Kd2 (1106)を用いて 復号化処理 1112を行う。このように Kd2 (1106)で復号ィ匕を行うことにより、暗号化さ れていない Kcl 113が機密情報処理部 102に生成される。この際、機密情報処理部 102ではこの鍵をホスト CPU103からアクセスされない形で保持する。この実装の例 としては、ホスト CPU103からアクセス不可能なレジスタに Kcl 113を格納する方法 がある。なお、 Kcl l l3は鍵変換処理終了後に機密情報処理部 102により消去して も構わな 、。そして、 Kc 1113に対して Ke2 ( 1109)を用 、て暗号化処理 1114を行 う。この暗号化処理 l l l^ Enc (Kc, Ke2) 1111が機密情報処理部 102から出 力される。以上の処理により鍵変換処理が終了する。
[0109] また、実施の形態 1の場合と同様に、鍵変換処理における暗号化処理 1114ゃ復 号ィ匕処理 1112は、図 12に示す鍵変換制御部 216や、鍵変換制御フラグ 217により 制御される。ここで、図 12の場合に必要となるフラグを考察する。図 12の処理では認 証鍵 KaO (1100)力も生成される Kd2 (1106)および Ke2 (1109)が使用される。そ のため、認証鍵 KaO (1100)を生成する認証処理が終了している必要がある。その ため、認証フラグ (KaO)が鍵変換制御フラグ 217の一つとして必要となる。なお、図 1 2の場合は認証鍵 KaO (1100)を生成する認証処理のみが行われるため、同一ター ゲットフラグは不要である。また、この鍵変換処理においては、 Kd2 (1106)および K e2 (1109)が復号ィ匕処理により機密情報処理部 102に生成される必要がある。その ため、鍵生成フラグ (Kd2)および鍵生成フラグ (Ke2)が鍵変換制御フラグ 217として 必要となる。したがって、図 12に示す鍵変換処理を行う鍵変換処理設定がホスト CP U103から行われた場合は、認証フラグ (KaO)、鍵生成フラグ (Kd2)および鍵生成 フラグ (Ke2)の三つのフラグを入力に持つ ANDゲートの出力力 図 4に示すセレク タ 301の出力として選択される。そのため、これら三つのフラグがともに 1となっている 場合のみ、暗号回路が使用可能となる。
[0110] 次に、以下では図 13のフローチャートを用いることにより図 12に示した鍵変換処理 の流れを説明する。本発明の鍵変換処理では、実施の形態 1でも説明したように、ま ずホスト CPU103により鍵変換処理設定 1200が行われる。これにより、機密情報処 理部 102で実行される鍵変換処理が起動される。次に、鍵変換制御フラグ読み出し 1201が鍵変換制御部 217に対して行われる。読み出し後に、機密情報処理部 102 に対して Enc (Kc, Kd2)入力 1202を行う。そして、読み出されたフラグを基に、機 密情報処理部 102で不正な処理が行われないための条件が満たされているかどうか が確認される。これらの確認の処理は、図 13では条件分岐 1203から条件分岐 120 5に相当する。なお、不正な処理が行われないことが確認出来るのであれば、確認を 行う順番は図 13に示すとおりでなくても構わない。
[0111] 図 13では、図 12の鍵変換制御フラグの説明でも示したように、三つの確認が行わ れる。まず、ターゲット機器に対する認証の条件として、鍵変換処理の入力である En c (Kc, Kd2) 1110ぉょび出カでぁるEnc (Kc, Ke2) 1111を格納するターゲット機 器に対して認証鍵 KaO (1100)を生成する認証処理が行われて!/、るかを条件分岐 1 203で確認する。これにより、認証鍵 KaO (1100)を生成する認証処理が行われてい ること、および Enc (Kc, Kd2) 1110^Enc (Kc, Ke2) 1111を格納するターゲット 機器が不正な機器でないことを確認する。また、鍵生成フラグの説明で示したように、 Kd2 (1106)および Ke2 (1109)が機密情報処理部 102に生成されていることを、条 件分岐 1204および条件分岐 1205で確認する。これ〖こより、 Kd2 ( 1106)および Ke 2 (1109)が生成されていない状態、すなわち Kd2 = 0および Ke2 = 0などの状態で 復号ィ匕および暗号ィ匕が行われないことを確認する。
[0112] 以上の確認が行われた場合、ホスト CPU103が設定した鍵変換処理が不正なく実 行されることが確認される。そのため、確認後に入力である Enc (Kc, Kd2)に対する 変換処理 1206 (図 12では、 Kd2 (1106)で復号化して、 Ke2 ( 1109)で暗号化する 処理)が行われる。この間、鍵変換制御部 216から暗号化処理 1114や復号化処理 1 112を行う回路に対してィネーブル信号が出力されて ヽる。そして変換処理が行わ れたことにより、 Enc(Kc, Ke2)出力 1207が行われる。出力後、鍵変換処理が終了 となる。
[0113] 以上のように、図 12および図 13の処理を用いることにより鍵変換処理が実行される 。なお、図 12の例ではターゲット機器に Enc (Kal, KaO)と、 {Enc(Kd2, Kal), E nc (Kc, Kd2)}および {Enc(Ke2, Kal), Enc (Ke3, Ke2) }が格納された状態で 、 Enc (Kc, Kd2) 1110に対して鍵変換処理を行って Enc (Kc, Ke2)llllを得る 構成としても良い。そこで、これを一般ィ匕して、ターゲット機器に s個(sは自然数)の鍵 {Enc (Kal, KaO), ... , Enc (Kas, Ka(s— 1)) }が格納され、またそれぞれ t個(t は自然数)からなる鍵 {Enc (Kdl, Kas), Enc(Kd2, Kdl), ... , Enc (Kdt, Kd( t 1))}および {Enc(Kel, Kas), Enc (Ke2, Kel), ... , Enc (Ket, Ke(t— 1) )}が格納された状態で、 Kdtおよび Ketをコンテンツの暗号化および復号化に使用 し、 iを l≤i≤tを満たす自然数として、 Enc(Kdi, Kd(i— 1))に対して鍵変換処理を 行って Enc(Kdi, Ke(j— 1))を得る場合でもよい。この場合、鍵変換処理を行うため には、機密情報処理部の復号ィ匕を行う回路に Kd(i—1)を使用し、暗号化を行う回 路に Ke (i- 1)を使用して、また鍵変換処理フラグとして Kd (i- 1)が生成されたこと を示すフラグ、および Ke (i- 1)が生成されたことを示すフラグを代わりに使用すれば 、図 12と同様の鍵変換処理が実行可能である。したがって、機密情報処理部に Kd(i - 1)および Ke (i- 1)に対応する鍵生成フラグを追加し、鍵変換制御部にこのフラグ を選択するための回路を追加すればよい。
産業上の利用可能性
[0114] 本発明により、異なる機密情報処理方法の間などで鍵変換処理を実行可能であり 、またその際、鍵情報が漏洩することなぐさらに不正な処理が行われることなく処理 が実行可能である。したがって、複数の機密情報処理方法を実装したターゲット機器 を利用する機密情報システムなどで利用可能である。

Claims

請求の範囲
[1] 暗号化コンテンツを含む暗号化された状態の機密情報を格納するターゲット機器 力 前記暗号ィ匕コンテンツを読み出し、復号ィ匕して利用する機密情報処理用のホス ト機器であって、
予め定められた複数のシーケンスのみに従って動作を行う機密情報処理部と、 前記機密情報処理部に対して、前記複数のシーケンスの起動を指示する CPUと、 前記機密情報処理部とターゲット機器との間で前記機密情報を含むデータの入出 力を行う第 1のインターフェース部と、
前記機密情報処理部と前記 CPUとの間で前記機密情報を含むデータの入出力を 行う第 2のインターフェース部と、
を備え、
前記ターゲット機器またはホスト機器は、 m個の鍵 {K1 , . . . , Km}を暗号ィ匕され た状態で前記機密情報として格納し、
前記鍵 Kmは、コンテンツを暗号ィ匕するコンテンツ鍵であり、
鍵 Ki (l≤i≤mを満たす自然数)は鍵 K (i— 1)により暗号ィ匕され、
前記複数のシーケンスは、前記 m個の鍵のうち任意の鍵 Kiを暗号ィ匕する鍵を、 K (i - 1)力も別の鍵に変換する鍵変換シーケンスを含み、
前記第 1のインターフェース部と前記第 2のインターフェース部は、前記鍵変換シー ケンスが起動された場合に、暗号化された状態の機密情報のみを前記機密情報処 理部の外部に出力する
ことを特徴とする機密情報処理用のホスト機器。
[2] 前記ホスト機器は前記ターゲット機器との間で第 1の認証処理を行 ヽ、
前記鍵 K1を暗号化する前記鍵 KOは第 1の認証処理により生成される認証鍵 KaO であり、
前記ターゲット機器と同一または異なるターゲット機器は n個(nは自然数)の鍵 {Kb 1, . . . , Kbn}を格納し、
鍵 Kbj (1≤j≤nを満たす自然数)は Kb (j - 1)により暗号ィ匕され、
前記ホスト機器は、さらに前記ターゲット機器と同一または異なるターゲット機器の 間で第 2の認証処理を行 、、
前記鍵 KbOは前記第 2の認証処理により生成される認証鍵であり、
前記別の鍵は前記鍵 {KbO, . . . , Kb (n— 1) }のうちの何れかの鍵である ことを特徴とする請求項 1記載の機密情報処理用のホスト機器。
[3] 前記別の鍵は、 Kb (n-m+i)である
ことを特徴とする請求項 2記載の機密情報処理用のホスト機器。
[4] 前記ホスト機器は前記ターゲット機器との間で第 1の認証処理を行 ヽ、
前記鍵 K1を暗号化する前記鍵 KOが、前記第 1の認証処理により生成される認証 鍵 KaOであり、
前記別の鍵は、前記機密情報処理部に格納されたホスト鍵 Khである
ことを特徴とする請求項 1記載の機密情報処理用のホスト機器。
[5] 前記鍵 KOは、前記機密情報処理部に格納されたホスト鍵 Khであり、
前記ホスト機器は、さらに前記ターゲット機器と同一または異なるターゲット機器の 間で第 2の認証処理を行 、、
該ターゲット機器は n個(nは自然数)の鍵 {Kbl, . . . , Kbn}を格納し、 鍵 Kbj (l≤j≤ nを満たす自然数)は鍵 Kb (j - 1)により暗号ィ匕され、
前記鍵 KbOは、前記第 2の認証処理により生成された認証鍵であり、
前記鍵変換シーケンスにおいて、鍵 K1を暗号ィ匕する鍵を、前記ホスト鍵 Khから {K bO, . . . , Kb (n— 1) }のうち何れかの鍵へと変換する
こと特徴とする請求項 1記載の機密情報処理用のホスト機器。
[6] 前記ホスト機器は前記ターゲット機器との間で第 1の認証処理を行 ヽ、
前記 K1を暗号化する前記鍵 K0は、前記第 1の認証処理により生成される認証鍵 KaOであり、
前記ターゲット機器は、(m— s)個の鍵 {Kel, . . . Ke (m— s) }を格納し、 鍵 Kej (1≤j≤m— sを満たす自然数)は鍵 Ke (j - 1)により暗号化され、
鍵 KeOは、前記 m個の鍵 {K1, . . . , Km}のうちの何れかの鍵 Ks (l≤s<mを満 たす自然数)であり、
前記別の鍵は、 {Kel, . . . , Ke (m— s— 1) }のうち何れかの鍵である ことを特徴とする請求項 1記載の機密情報処理用のホスト機器。
[7] 前記機密情報処理部は、さらに、
前記第 1の認証処理が適正に終了しているか否かを示す認証フラグを保持するフ ラグ保持部を有し、
前記認証フラグが前記第 1の認証処理が適正に終了していることを示さない場合に 、前記ホスト CPUからの鍵変換シーケンスの起動を禁止する
ことを特徴とする請求項 2、 4、 6何れか〖こ記載の機密情報処理用のホスト機器。
[8] 前記機密情報処理部は、さらに、
前記第 2の認証処理が適正に終了しているか否かを示す認証フラグを保持するフ ラグ保持部を有し、
前記認証フラグが前記第 2の認証処理が適正に終了していることを示さない場合に 、前記ホスト CPUからの鍵変換シーケンスの起動を禁止する
ことを特徴とする請求項 2または 5に記載の機密情報処理用のホスト機器。
[9] 前記機密情報処理部は、さらに、
前記鍵 K(i— 1)が内部に生成されているカゝ否かを示す鍵生成フラグを保持するフ ラグ保持部を有し、
前記鍵生成フラグ力 鍵 K(i—1)が内部に生成されていることを示さない場合に、 前記ホスト CPU力 の鍵変換シーケンスの起動を禁止する
ことを特徴とする請求項 7記載の機密情報処理用のホスト機器。
[10] 前記機密情報処理部は、さらに、
前記別の鍵が内部に生成されているか否かを示す鍵生成フラグを保持するフラグ 保持部を有し、
前記鍵生成フラグが前記別の鍵が内部に生成されていることを示さない場合に、前 記ホスト CPUからの鍵変換シーケンスの起動を禁止する
ことを特徴とする請求項 8記載の機密情報処理用のホスト機器。
[11] 前記機密情報処理部は、さらに、
前記第 1の認証処理と前記第 2の認証処理とが同一のターゲット機器に対して行わ れたカゝ否かを示すターゲットフラグを保持するフラグ保持部を有し、 前記ターゲットフラグが前記第 1の認証処理と前記第 2の認証処理とが同一のター ゲット機器に対して行われたことを示さな ヽ場合に、前記ホスト CPUからの鍵変換シ 一ケンスの起動を禁止する
ことを特徴とする請求項 2記載の機密情報処理用のホスト機器。
[12] 前記機密情報処理部は、さらに、
前記ターゲット機器との間の接続が切断された場合、前記フラグ保持手段に保持さ れた前記フラグを初期化する
ことを特徴とする請求項 7または 8に記載の機密情報処理用のホスト機器。
[13] 前記ホスト機器は、前記ターゲット機器との間の接続が切断された場合、前記機密 情報処理部が復号ィ匕し内部に保持する鍵を消去する
ことを特徴とする請求項 1〜 13の何れか〖こ記載の機密情報処理用のホスト機器。
[14] 単一の半導体装置として実装されたことを特徴とする請求項 1〜14の何れかに記 載の機密情報処理用のホスト機器。
[15] 暗号化コンテンツを含む暗号化された状態の機密情報を格納するターゲット機器 力 前記暗号ィ匕コンテンツを読み出し、復号ィ匕して利用する機密情報処理用のホス ト機器における機密情報処理方法であって、
前記ホスト機器は、
予め定められた複数のシーケンスのみに従って動作を行う機密情報処理部と、 前記機密情報処理部に対して、前記複数のシーケンスの起動を指示する CPUと、 前記機密情報処理部とターゲット機器との間で前記機密情報を含むデータの入出 力を行う第 1のインターフェース部と、
前記機密情報処理部と前記 CPUとの間で前記機密情報を含むデータの入出力を 行う第 2のインターフェース部とを備え、
前記ターゲット機器またはホスト機器は、 m個の鍵 {K1, . . . , Km}を暗号ィ匕され た状態で前記機密情報として格納し、
前記鍵 Kmは、コンテンツを暗号ィ匕するコンテンツ鍵であり、
鍵 Ki (l≤i≤mを満たす自然数)は鍵 K (i— 1)により暗号ィ匕され、
前記機密情報処理方法は、 前記複数のシーケンスにお 、て、前記 m個の鍵のうち任意の鍵 Kiを暗号ィ匕する鍵 を、 K (i- 1)力も別の鍵に変換する鍵変換シーケンスを実行し、
前記第 1のインターフェース部と前記第 2のインターフェース部は、前記鍵変換シー ケンスが起動された場合に、暗号化された状態の機密情報のみを前記機密情報処 理部の外部に出力する
ことを特徴とする機密情報処理方法。
PCT/JP2006/308626 2005-04-27 2006-04-25 機密情報処理用ホスト機器および機密情報処理方法 WO2006118101A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP06745654.1A EP1876753B1 (en) 2005-04-27 2006-04-25 Confidential information processing host device and confidential information processing method
JP2006529384A JPWO2006118101A1 (ja) 2005-04-27 2006-04-25 機密情報処理用ホスト機器および機密情報処理方法
US11/912,422 US8024583B2 (en) 2005-04-27 2006-04-25 Confidential information processing host device and confidential information processing method
CN2006800143600A CN101167301B (zh) 2005-04-27 2006-04-25 机密信息处理用主机及机密信息处理方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005-129308 2005-04-27
JP2005129308 2005-04-27

Publications (1)

Publication Number Publication Date
WO2006118101A1 true WO2006118101A1 (ja) 2006-11-09

Family

ID=37307901

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2006/308626 WO2006118101A1 (ja) 2005-04-27 2006-04-25 機密情報処理用ホスト機器および機密情報処理方法

Country Status (5)

Country Link
US (1) US8024583B2 (ja)
EP (1) EP1876753B1 (ja)
JP (1) JPWO2006118101A1 (ja)
CN (1) CN101167301B (ja)
WO (1) WO2006118101A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102769525A (zh) * 2011-05-04 2012-11-07 国民技术股份有限公司 一种tcm的用户密钥备份与恢复方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010108237A (ja) * 2008-10-30 2010-05-13 Nec Corp 情報処理システム
US20120096542A1 (en) * 2010-10-14 2012-04-19 Shea David P Portable confidential account information management device
EP2831787B1 (en) * 2012-03-30 2020-07-08 Irdeto B.V. Method and system for preventing and detecting security threats
US9171170B2 (en) * 2012-08-17 2015-10-27 Broadcom Corporation Data and key separation using a secure central processing unit
US10218496B2 (en) * 2014-08-04 2019-02-26 Cryptography Research, Inc. Outputting a key based on an authorized sequence of operations

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0916477A (ja) * 1995-06-30 1997-01-17 Oki Electric Ind Co Ltd 機密性データの処理方法と処理装置
JP2000508854A (ja) * 1996-04-17 2000-07-11 インテル・コーポレーション データ再暗号化装置および方法
JP2000357126A (ja) 1999-06-16 2000-12-26 Toshiba Corp 記憶媒体及び同媒体を使用したコンテンツ保護方法
JP2001256113A (ja) * 2000-03-13 2001-09-21 Toshiba Corp コンテンツ処理システムおよびコンテンツ保護方法
JP2004096666A (ja) * 2002-09-04 2004-03-25 Matsushita Electric Ind Co Ltd 暗号化部を有する半導体装置、外部インターフェースを有する半導体装置、およびコンテンツ再生方法
WO2004082201A1 (en) 2003-03-14 2004-09-23 Koninklijke Philips Electronics N.V. Protected return path from digital rights management dongle
JP2004265026A (ja) * 2003-02-28 2004-09-24 Matsushita Electric Ind Co Ltd アプリケーション認証システムと装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1195660A (ja) 1997-09-22 1999-04-09 Nippon Telegr & Teleph Corp <Ntt> 電子文書匿名通信方法、そのプログラム記録媒体及びその装置
JP3677001B2 (ja) * 1999-12-03 2005-07-27 三洋電機株式会社 データ配信システムおよびそれに用いられる記録装置
JP2001175606A (ja) * 1999-12-20 2001-06-29 Sony Corp データ処理装置、データ処理機器およびその方法
JP2002094499A (ja) * 2000-09-18 2002-03-29 Sanyo Electric Co Ltd データ端末装置およびヘッドホン装置
US7167559B2 (en) * 2001-03-28 2007-01-23 Matsushita Electric Industrial Co., Ltd. Information security device, exponentiation device, modular exponentiation device, and elliptic curve exponentiation device
JP4596686B2 (ja) * 2001-06-13 2010-12-08 富士通株式会社 Dpaに対して安全な暗号化
JP3869761B2 (ja) * 2002-06-05 2007-01-17 三洋電機株式会社 コンテンツ再生装置
US7184550B2 (en) * 2002-08-15 2007-02-27 Intel Corporation Method and apparatus for simultaneous decryption and re-encryption of publicly distributed content via stream ciphers
CN1150726C (zh) * 2002-10-01 2004-05-19 华中科技大学 一种安全网络传输方法及其系统
CN1317649C (zh) * 2003-09-19 2007-05-23 联想(北京)有限公司 一种基于安全芯片的计算机终端安全系统
EP1695174A1 (en) * 2003-12-17 2006-08-30 Matsushita Electric Industrial Co., Ltd. Methods and apparatuses for distributing system secret parameter group and encrypted intermediate key group for generating content encryption and decryption deys
KR20050087271A (ko) * 2004-02-26 2005-08-31 삼성전자주식회사 가변 키 길이를 가지는 초기 라운드 키에 대응하는 암호라운드 키와 복호 라운드 키를 선택적으로 발생하는 키스케쥴 장치
JP4763368B2 (ja) * 2005-07-12 2011-08-31 パナソニック株式会社 通信カード、機密情報処理システム、機密情報転送方法およびプログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0916477A (ja) * 1995-06-30 1997-01-17 Oki Electric Ind Co Ltd 機密性データの処理方法と処理装置
JP2000508854A (ja) * 1996-04-17 2000-07-11 インテル・コーポレーション データ再暗号化装置および方法
JP2000357126A (ja) 1999-06-16 2000-12-26 Toshiba Corp 記憶媒体及び同媒体を使用したコンテンツ保護方法
JP2001256113A (ja) * 2000-03-13 2001-09-21 Toshiba Corp コンテンツ処理システムおよびコンテンツ保護方法
JP2004096666A (ja) * 2002-09-04 2004-03-25 Matsushita Electric Ind Co Ltd 暗号化部を有する半導体装置、外部インターフェースを有する半導体装置、およびコンテンツ再生方法
JP2004265026A (ja) * 2003-02-28 2004-09-24 Matsushita Electric Ind Co Ltd アプリケーション認証システムと装置
WO2004082201A1 (en) 2003-03-14 2004-09-23 Koninklijke Philips Electronics N.V. Protected return path from digital rights management dongle

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1876753A4

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102769525A (zh) * 2011-05-04 2012-11-07 国民技术股份有限公司 一种tcm的用户密钥备份与恢复方法

Also Published As

Publication number Publication date
CN101167301B (zh) 2011-02-16
EP1876753A4 (en) 2012-03-07
CN101167301A (zh) 2008-04-23
EP1876753B1 (en) 2016-03-02
EP1876753A1 (en) 2008-01-09
US20090083547A1 (en) 2009-03-26
US8024583B2 (en) 2011-09-20
JPWO2006118101A1 (ja) 2008-12-18

Similar Documents

Publication Publication Date Title
EP2016525B1 (en) Encryption apparatus and method for providing an encrypted file system
JPH08328962A (ja) 端末機と、当該端末機に接続されるメモリカードからなるシステム
JP4758904B2 (ja) 機密情報処理方法
CN110298186B (zh) 一种基于动态可重构密码芯片的无密钥数据加解密方法
WO2006118101A1 (ja) 機密情報処理用ホスト機器および機密情報処理方法
JP2009104380A (ja) ロボット不正使用防止装置およびロボット不正使用防止方法
JP2008005408A (ja) 記録データ処理装置
US9542537B2 (en) Method and system for confidentially providing software components
JPH10271104A (ja) 暗号化方法及び復号化方法
WO2006046484A1 (ja) 認証方法
JP2007193800A (ja) カード認証システムのセキュリティレベルを向上させる装置及び方法
CN111294199B (zh) 加解密系统、加密装置、解密装置和加解密方法
CN113343215A (zh) 嵌入式软件的授权和认证方法及电子设备
KR20020071274A (ko) Pc기반의 암호칩 및 플래시 메모리를 이용한 유.에스.비보안보조기억장치
JP5539024B2 (ja) データ暗号化装置およびその制御方法
JP4192738B2 (ja) 電子文書編集装置、電子文書編集プログラム
JP2008003774A (ja) マイクロコンピュータ
JP7063628B2 (ja) 暗号化装置、暗号化方法およびプログラム
CN114065267A (zh) 基于国密算法的fpga码流的保护方法及其装置
JP2004038476A (ja) 暗号化装置及び暗号化システム
KR101516751B1 (ko) 암호문의 편집을 통한 원문 해독 방지방법과 방지시스템
JP4738547B2 (ja) 記憶装置およびデータ漏洩防止方法
JP2008003706A (ja) 完全削除によるコンピュータデータ保護システム
JP2004260359A (ja) データ処理装置

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200680014360.0

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2006529384

Country of ref document: JP

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: 11912422

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2006745654

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

NENP Non-entry into the national phase

Ref country code: RU

WWP Wipo information: published in national office

Ref document number: 2006745654

Country of ref document: EP