WO2006046484A1 - 認証方法 - Google Patents

認証方法 Download PDF

Info

Publication number
WO2006046484A1
WO2006046484A1 PCT/JP2005/019407 JP2005019407W WO2006046484A1 WO 2006046484 A1 WO2006046484 A1 WO 2006046484A1 JP 2005019407 W JP2005019407 W JP 2005019407W WO 2006046484 A1 WO2006046484 A1 WO 2006046484A1
Authority
WO
WIPO (PCT)
Prior art keywords
authentication
key
intermediate key
host
target device
Prior art date
Application number
PCT/JP2005/019407
Other languages
English (en)
French (fr)
Inventor
Tomoya Sato
Makoto Fujiwara
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 JP2006543100A priority Critical patent/JPWO2006046484A1/ja
Priority to US11/666,142 priority patent/US20080104396A1/en
Publication of WO2006046484A1 publication Critical patent/WO2006046484A1/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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials

Definitions

  • the present invention relates to an authentication method performed between a target device and a host device when confidential information stored in the target device is handled by the host device.
  • the content is stored in the target device in an encrypted state. Is done.
  • authentication processing is performed between the target device and the host device. If the authentication fails, the content key for decrypting the encrypted content cannot be obtained from the target device. With this configuration, it is possible to prevent decryption of encrypted content by an unauthorized host device.
  • the target device indicates a memory card such as an SD card, for example.
  • a host device refers to a semiconductor integrated circuit that reads memory card force data, or a set device that incorporates the semiconductor integrated circuit, and a content distribution device that distributes content to a target device.
  • Patent Document 1 As a conventional technique related to an authentication method.
  • Patent Document 1 has a feature that authentication processing is performed by two-step authentication, that is, first authentication calculation processing and second authentication calculation processing.
  • FIG. 7 is a flowchart showing an authentication method between the target device and the host device described in Patent Document 1.
  • the second authentication calculation process is performed when the authentication host key is broken and the first authentication calculation process is illegally authenticated.
  • This is an extended process that is executed after the first authentication calculation process in order to ultimately fail authentication with a host device that has a broken authentication host key.
  • the second authentication slave key used in the second authentication calculation process is the same as the authentication host key leaked and the first authentication calculation process When it is detected that it has been broken, it is mounted on the target device by electronic distribution via a network. That is, if the second authentication slave key is installed in the target device V, the first authentication calculation process is broken, so there is no need to perform the second authentication calculation process. It will be.
  • the first authentication calculation process 703 is a process composed of a plurality of functions including a one-way function. If the authentication succeeds, the first authentication intermediate key 704 is generated, and if the authentication fails, the value "0" "Is a process that generates. When the first authentication calculation process 703 ends, the generated first authentication intermediate key 704 or the value “0” is stored in the authentication intermediate key storage area in the host device, and authentication determination is performed. In the authentication determination, it is determined whether or not the output power of the first authentication calculation process is “0.” If it is “0”, the host device fails the authentication as unauthorized access, and thereafter Do not perform the process.
  • the host device determines whether the second authentication slave key 705 exists in the target device. If there is a second authentication slave key 705, it is stored in a predetermined area in the target device in advance.
  • Second authentication slave key 705 force S If it exists in the target device, the target device force is also read out and the second authentication calculation processing 706 is performed.
  • the second authentication calculation process 706 is a process that also includes a plurality of function forces including a one-way function. If the authentication succeeds, the second authentication intermediate key 707 is generated, and if the authentication fails, the value "0""Is a process to generate. When the authentication host key is broken, the second authentication calculation processing 706 is performed between the broken authentication host key and the second authentication slave key newly arranged in the target device.
  • a second authentication slave key that satisfies the above conditions is generated and stored in the target device.
  • the generated second authentication intermediate key or value "0" is stored in the authentication intermediate key storage area, and authentication determination is performed. In the authentication determination, it is determined whether or not the output of the second authentication calculation processing 706 is “0”. When it is “0”, the host device fails authentication because it is an unauthorized access and does not perform the subsequent processing.
  • the second authentication intermediate key 707 is different from the first authentication intermediate key 704 because the authentication slave key that is the seed of generation is different from the first authentication intermediate key 704. Rubesa.
  • the encrypted content key that already exists in the target device is encrypted with the first authentication intermediate key or the second authentication intermediate key before being updated. Therefore, the content key is re-encrypted with another second authentication intermediate key whose value has been updated.
  • the host device When the authentication between the target device and the host device is successful, the host device also reads out the encryption key content key and the encrypted content from the target device, and decrypts the encrypted content. Alternatively, the host device encrypts the content and content key and transfers them to the target device.
  • FIG. 8 is a flowchart showing the decryption method for encrypted content shown in Patent Document 1.
  • the host device also reads out the target content of the encrypted content key 801 encrypted with the first authentication intermediate key 704 or the second authentication intermediate key 707.
  • the host device uses the second authentication intermediate key 707 when the second authentication intermediate key 707 is generated, and the first authentication intermediate key 704 as the selected authentication intermediate key 802 otherwise.
  • a plaintext content key 803 is obtained.
  • the host device also reads out the encrypted content 804 encrypted with the content key 803, and also obtains the plaintext content 805 by decrypting with the content key 803.
  • FIG. 9 is a flowchart showing the content encryption method disclosed in Patent Document 1.
  • the host device generates the encrypted content 804 by encrypting the content 805 with the content key 803, and transfers it to the target device. If the second authentication intermediate key 707 is generated, the host device uses the second authentication intermediate key 707 as the selected authentication intermediate key 802. Otherwise, the first authentication intermediate key 704 is used as the selected authentication intermediate key 802. Then, by encrypting the content key 803 with the selected authentication intermediate key 802, an encrypted content key 801 is generated and transferred to the target device.
  • FIG. 10 shows areas in the target device and data stored in each area. 10, the same components as those in FIGS. 7 to 9 are denoted by the same reference numerals, and the description thereof is omitted.
  • the first device 1001 and the second device are the regions for storing the data in the target device.
  • the first area 1001 is an area that is accessed when executing authentication between the target device and the host device, and stores a first authentication slave key 702.
  • the second area 1002 is an area that can be accessed only after successful authentication between the host device and the target device, and stores the encrypted content key 801.
  • the third area 1003 is an area that the user can freely access, and stores the encrypted content 804 and the second authentication slave key 705.
  • Patent Document 1 JP 2000-357126 A
  • the second authentication calculation process which is an extension process executed after the first authentication calculation process, is characterized in that the use of a host device having a broken authentication host key is invalidated.
  • the authentication algorithm is the first one. If it is the same as the authentication calculation process, the second authentication calculation process generates a second authentication intermediate key with the same value as the first authentication intermediate key generated by the first authentication calculation process. End up. Since the second authentication calculation process is executed only when the authentication in the first authentication calculation process is successful, the value of the first authentication intermediate key is not “0”. Therefore, the host device whose second authentication intermediate key value is not “0” also determines that the authentication in the second authentication calculation process is successful. In the case of a host device having a broken authentication host key, the authentication succeeds even though the authentication in the second authentication calculation process should normally fail. For this reason, there has been a problem of allowing unauthorized access by a host device having a broken authentication host key.
  • the encrypted content key that already exists in the target device must be re-encrypted with another second authentication intermediate key whose value has been updated.
  • the second authentication calculation process is the first authentication calculation process.
  • a key with the same value as the first authentication intermediate key generated by the calculation process is generated as the second authentication intermediate key.
  • the selected authentication intermediate key that is the key before re-encryption may be the same as another second authentication intermediate key that is the key after re-encryption. For this reason, there has been a problem that it is impossible to safely re-encrypt the encrypted content key.
  • the authentication method of the present invention is provided with means for counting how many times the required number of authentications is required and how many times the authentication calculation process being executed is the authentication calculation process.
  • the authentication calculation process being executed is the first authentication calculation process or the second authentication calculation process.
  • the power that is is clearly distinguished.
  • the power that is the second authentication calculation process is clearly distinguished.
  • the key comparison circuit compares the newly generated second authentication intermediate key with the value of the authentication intermediate key generated in the previous authentication calculation process. . If they are the same as a result of the comparison, the host device determines that the authentication with the target device has failed, assuming that an unauthorized authentication process has been executed.
  • FIG. 1 A diagram showing the overall configuration of a confidential information processing system according to the present invention.
  • FIG. 2 is a flowchart of an authentication method in Embodiment 1 of the present invention.
  • FIG. 3 is a diagram showing an example of a circuit that executes the authentication method according to the first embodiment of the present invention.
  • FIG. 4 is a diagram showing an example of a circuit that re-encrypts the key according to the first embodiment of the present invention.
  • FIG. 5 is a flowchart of an authentication method in Embodiment 2 of the present invention.
  • FIG. 6 is a diagram showing an example of a circuit that executes an authentication method according to Embodiment 2 of the present invention.
  • FIG. 7 is a flowchart of a conventional authentication method.
  • FIG. 10 A diagram showing a state where confidential information is stored in the target device
  • FIG. 1 shows the overall configuration of a confidential information processing system consisting of a host device and a target device.
  • the target device 101 is a memory card represented by an SD card, and stores data including confidential information. Details of the storage are the same as in FIG.
  • the host device 102 connects the target device 101 and reads / writes confidential information Z with the target device 101.
  • the host device 102 performs authentication between the internal bus 103 and the target IZF unit 104 that inputs and outputs data between the target device 101 and the target device according to a predetermined sequence, and also performs confidentiality. Between the confidential information processing unit 105 that encrypts / decrypts information, the host CPU 106 that activates a predetermined sequence for the confidential information processing unit 105, the target device 101, the confidential information processing unit 105, and the host CPU 106 The host I ZF unit 107 that inputs / outputs data and the host CPU 106 and the confidential information processing unit 105 include a RAM 108 as a work area for temporarily storing data for the operation.
  • the confidential information processing unit 105 is activated by the host CPU 106 to perform authentication processing.
  • the host device 102 reads confidential information from the target device 101 via the target IZF unit 104.
  • the read confidential information is decrypted and used by the confidential information processing unit 105.
  • the host CPU 106 starts the operation of the confidential information processing unit 105.
  • the confidential information processing unit 105 is concealed nodeware, and, when activated, performs only a predetermined sequence in which security is ensured or security is low.
  • FIG. 2 shows a flowchart of the authentication method in Embodiment 1 of the present invention.
  • the host device executes the first authentication calculation process 203 by inputting the authentication host key 201 possessed by the host device and the first authentication slave key 202 from which the target device power is also read. To do.
  • the first authentication calculation process 203 is a process that also includes a plurality of functional forces including a one-way function. If the authentication is successful, the first authentication intermediate key 204 is generated. If the authentication fails, the value “0” is generated. When the first authentication calculation process 203 is completed, the generated first authentication intermediate key 204 or the value “0” is stored in the authentication intermediate key storage area in the confidential information processing unit 105, and the authentication determination 205 is Done. In the authentication judgment 205, it is judged whether or not the output of the first authentication calculation process 203 is “0”. If it is “0”, the host device fails authentication because it is an unauthorized access (206), and does not perform the subsequent processing.
  • the host device After incrementing the count value of the counter, the host device performs a comparison determination 209 between the required authentication count 208 and the count value of the counter. If the required authentication count 208 is “1”, the count value of the current counter becomes equal to the required authentication count 208, and the authentication is completed as it is not necessary to execute the second authentication calculation process 210.
  • the second authentication calculation process 210 needs to be executed.
  • the second authentication calculation process 210 in the host device, the second authentication slave key 211 read out from the authentication host key 201 and the target device camera that the host device has is input, and the second authentication operation 210 is performed.
  • the arithmetic processing 210 is executed.
  • the second authentication calculation process 210 is a process composed of a plurality of functions including a one-way function. If the authentication succeeds, the second authentication intermediate key 212 is generated, and if the authentication fails, the value "0" "Is a process that generates.
  • the second authentication calculation processing 210 is performed between the broken authentication host key and the second authentication slave key newly arranged in the target device. This is also the process of failing the authentication and succeeding in the authentication between the second authentication slave key and the second authentication slave key that has been broken.
  • the generated second authentication intermediate key 212 or value “0” is stored in the authentication intermediate key storage area, and an authentication determination 213 is performed.
  • the authentication determination 213 it is determined whether or not the output of the second authentication calculation process 210 is “0”. If it is “0”, the host device determines that the access is unauthorized and fails authentication (214), and does not perform the subsequent processing.
  • the second authentication intermediate key 212 is generated. After that, count up 215 is executed, the count value of the counter held by the host device is incremented, and the count value of the counter is set to “2”.
  • the host device After incrementing the count value of the counter, the host device performs a comparison judgment 216 between the required authentication count 208 and the count value of the counter. If the required authentication count 208 is “2”, the count value of the current counter becomes equal to the required authentication count 208, and the process proceeds to the next step. If the required number of authentications 208 and the count value of the counter do not match, the number of authentications assumed in the present embodiment is “2” at the maximum, so that the process is terminated as abnormal (217 ).
  • the required authentication count 208 and the current counter count value match, a key comparison is made between the value of the generated first authentication intermediate key 204 and the value of the second authentication intermediate key 212 ( 218), it is determined whether the first authentication intermediate key 204 and the second authentication intermediate key 212 are equal (219). If the value of the first authentication intermediate key 204 and the value of the second authentication intermediate key 212, which should be different from each other, are equal, it is assumed that authentication is being attempted using unauthorized means, so an abnormality is detected. As a result, the authentication flow is terminated (220). When the values of the first authentication intermediate key 204 and the second authentication intermediate key 212 are different, the host device ends the authentication process assuming that the authentication is successful. Thus, the authentication flow between the host device and the target device is completed, and the host device can decrypt the encrypted content stored in the target device.
  • FIG. 3 is a circuit diagram of a circuit that performs authentication in the confidential information processing unit 105 in the host device in which the above authentication method is implemented.
  • the same reference numerals are used for the same components as those in FIGS.
  • the configuration shown in Fig. 3 is concealed as hardware in the semiconductor integrated circuit. In other words, the processing sequence cannot be changed by access from the host CPU.
  • the authentication intermediate key and the like generated during the authentication process are all stored in the authentication intermediate key storage area (register) in the confidential information processing unit 105, but are not shown.
  • the host device receives the authentication host key 201 and the first authentication slave key 202 of the target device, and executes the first authentication calculation processing 203 in the first authentication calculation processing circuit 301. Then, the first authentication intermediate key 204 is generated. The host device uses the first authentication intermediate key 204 as an input, and the authentication determination circuit 302 determines the success or failure of the authentication calculation process. Ingredients Specifically, it is determined whether or not the power of the first authentication intermediate key 204 is “0”, and the authentication result is output to the authentication completion signal output circuit 303.
  • the authentication completion signal output circuit 303 outputs an abnormality detection interrupt 304 to end the processing. Even if the value is not “0”, the authentication completion signal 305 is not output because the authentication count end signal has not been received yet.
  • the authentication determination circuit 302 If the value power of the first authentication intermediate key 204 is not “0”, that is, if the authentication is successful, the authentication determination circuit 302 outputs a count-up signal to the counter 306.
  • the counter 306 It is incremented and output as “1” to the comparator 307.
  • the comparator 307 compares the required authentication count 208 with the count value.
  • the comparator 307 When the required authentication count 208 is "1" and the count value of the counter 306 is equal to the required authentication count 208, the comparator 307 outputs an enable signal to the second authentication arithmetic processing circuit 308. The second authentication calculation process 210 is not executed. Further, an authentication completion signal is output to the authentication completion signal output circuit 303.
  • the required authentication count 208 is also input to the authentication completion signal output circuit 303.
  • the authentication completion signal output circuit 303 that has received the authentication count end signal outputs an authentication completion signal 305.
  • the second authentication calculation process 210 is executed.
  • the host device uses the authentication host key 201 and the second authentication slave key 211 from which the target device power is also read as an input to the second authentication calculation processing circuit 308, and performs the second authentication calculation processing 210. And generate a second authentication intermediate key 212.
  • the host device inputs the second authentication intermediate key 212 to the authentication determination circuit 302, and determines whether the second authentication calculation processing 210 is successful. Specifically, it is determined whether or not the value of the second authentication intermediate key 212 is “0”.
  • the authentication result is output as an authentication completion signal output circuit 3 03. If the authentication result indicates that the authentication has failed, the authentication completion signal output circuit 303 outputs an abnormality detection interrupt 304.
  • Authentication determination circuit 302 If the value of the second authentication intermediate key 212 is not "0", that is, if the authentication is successful, Authentication determination circuit 302 outputs a count-up signal to counter 306. The counter 306 increments the count value to “2” and outputs it to the comparator 307. The comparator 307 compares the required authentication count 208 with the count value.
  • the comparator 307 When the required authentication count 208 is “2” and the count value of the counter 306 is equal to the required authentication count 208, the comparator 307 outputs an enable signal to the key comparison circuit 309. Further, an authentication completion signal is output to the authentication completion signal output circuit 303.
  • the required authentication count 208 is also output to the authentication completion signal output circuit 303. Even if the authentication completion signal output circuit 303 receives the authentication count end signal and the required authentication count 208 is "2", the authentication completion signal is output until the key comparison result output by the key comparison circuit 309 is input. 305 is not output.
  • the key comparison circuit 309 to which the enable signal is input compares whether or not the first authentication intermediate key 204 and the second authentication intermediate key 212 are the same, and the result of the key comparison is an authentication completion signal. Output to output circuit 303.
  • the authentication completion signal output circuit 303 generates an error when the key comparison result output from the key comparison circuit 309 indicates that the first authentication intermediate key 204 and the second authentication intermediate key 212 match. Outputs detection interrupt 304 and terminates processing. Also, when the key comparison result power output from the key comparison circuit 309 indicates that the first authentication intermediate key 204 and the second authentication intermediate key 212 are different, the authentication completion signal 305 is output to make the authentication successful.
  • the authentication completion signal output circuit 303 ends the authentication assuming that the authentication is successful when receiving the authentication number end signal. If the required number of authentications 208 is “2”, if both the authentication number end signal and the key comparison result indicating that the two keys are different are received, the authentication is completed as successful authentication.
  • FIG. 4 is a circuit diagram of a re-encryption circuit that re-encrypts the encrypted content key with another second authentication intermediate key when the authentication is successful. It is implemented in the information processing unit 105. Re-encryption is a process performed when the authentication host key is broken and the second authentication slave key is updated.
  • FIG. 4 the same components as those in FIG. 2 are denoted by the same reference numerals and description thereof is omitted.
  • the host device selects the second authentication intermediate key 212 when the second authentication intermediate key 212 is generated, and selects the first authentication intermediate key 204 using the selector 401 otherwise.
  • This is an authentication intermediate key.
  • the host device reads the encrypted content key 402 that has been encrypted in advance with the selected authentication intermediate key and stored in the target device, and decrypts it with the selected authentication intermediate key in the decryption circuit 403, thereby clearing the plaintext.
  • the content key 404 is obtained.
  • the content key 404 is re-encrypted by the encryption circuit 405 with a second authentication intermediate key 406 different from the selected authentication intermediate key.
  • the second authentication intermediate key 406 is generated when authentication is performed using the updated authentication slave key when the authentication host key is broken and the second authentication slave key is updated. Is done.
  • the re-encrypted encrypted content key 407 is stored in the target device by overwriting the encrypted content key 402.
  • the number of authentications is counted, so that the process does not end unless an authentication calculation process for the required number of authentications is performed.
  • the key comparison circuit 309 compares the value of the second authentication intermediate key 212 generated in the second authentication calculation process 210 and the value of the first authentication intermediate key 204 generated in the first authentication calculation process 203. By doing so, it is possible to prevent unauthorized authentication from succeeding between the target device having the information of the broken authentication host key 201 and the host device having the broken authentication host key 201. Further, it is possible to safely perform re-encryption of the encrypted content key that is performed when the authentication host key 201 is broken.
  • FIG. 5 is a diagram showing a flowchart of the authentication method in the second embodiment.
  • the second embodiment is significantly different from the first embodiment in that the target device has a plurality of second authentication slave keys and the host device can execute the authentication calculation process three times or more.
  • the host device receives the authentication host key 501 possessed by the host device and the first authentication slave key 502 from which the target device power is also read, and receives the first authentication calculation process. 503 is executed.
  • the first authentication calculation process 503 is a process that also includes a plurality of functional forces including a one-way function. If the authentication is successful, the first authentication intermediate key 504 is generated, and if the authentication fails, the value is “ 0 "is generated.
  • the generated first authentication intermediate key 504 or the value “0” is stored in the authentication intermediate key storage area in the host device, and the authentication determination 505 is performed. It is. In the authentication determination 505, it is determined whether or not the output of the first authentication calculation processing 503 is “0”. If it is “0”, the host device determines that the access is unauthorized and fails authentication (506), and does not perform the subsequent processing.
  • the host device After incrementing the count value of the counter, the host device performs a comparison determination 509 between the required authentication count 508 and the counter count value. If the required number of authentications 508 is “1”, the count value of the current counter is equal to the required number of authentications 508, and the authentication is completed as it is not necessary to execute the second authentication calculation processing 510.
  • the second authentication calculation processing 510 needs to be executed.
  • the host device reads one of the plurality of second authentication slave keys 511 that the target device has. Then, the second authentication calculation processing 510 is executed with the read second authentication slave key 511 and authentication host key 501 as inputs.
  • the second authentication calculation process 510 is a process comprising a plurality of functional forces including a one-way function, and if the authentication is successful, the second authentication intermediate key 512 is generated, and if authentication fails, the value “0” is generated.
  • the second authentication calculation processing 510 is performed when the authentication host key 501 is broken, between the broken authentication host key and the second authentication slave key newly arranged in the target device. This is a process for causing the authentication between the second authentication slave key and the second authentication slave key to succeed if the authentication is failed and broken.
  • the generated second authentication intermediate key 512 or the value “0” is stored in the authentication intermediate key storage area, and the authentication determination 513 is performed.
  • the authentication judgment 513 it is determined whether or not the output of the second authentication calculation processing 510 is “0”. If it is “0”, the host device fails authentication because it is an unauthorized access (514), and does not perform the subsequent processing.
  • the host device After incrementing the count value of the counter, the host device performs a key comparison 516.
  • the key comparison 516 there is a first authentication intermediate key 504! / ⁇ selects one of the previous second authentication intermediate keys 517 (518) and the second authentication intermediate key Compare with 512.
  • the count value S "2" of the counter is selected, the first authentication intermediate key 504 is selected and compared with the second authentication intermediate key.
  • the count value of the force counter is other than “2”, the previous second authentication intermediate key 517 is selected and compared with the second authentication intermediate key 512.
  • the host device completes the authentication, assuming that the required number of authentication computation processes have been executed. Otherwise, the host device returns to the second authentication calculation processing 510 and uses a second authentication slave key different from the second authentication slave key used in the first second authentication calculation processing.
  • the second authentication calculation process Execute. At this time, the second authentication intermediate key 512 generated in the previous authentication is updated as the second authentication intermediate key immediately before (522). As a result, in the second authentication calculation process for the second time, the second authentication intermediate key generated in the first time and the second authentication intermediate key generated in the second authentication calculation process for the second time are used. Will be compared in the key comparison 516.
  • FIG. 6 is a circuit diagram of a circuit that performs authentication in the confidential information processing unit in the host device that implements the above authentication method.
  • the same components as those in FIG. 5 are denoted by the same reference numerals and description thereof is omitted.
  • the configuration shown in FIG. 6 is concealed in the semiconductor integrated circuit as hardware. In other words, the processing sequence cannot be changed by access from the host CPU. Note that the authentication intermediate key and the like generated during the authentication process are all stored in the authentication intermediate key storage area (register) in the confidential information processing unit 105, but are not shown.
  • the host device receives as input the authentication host key 501 and the first authentication slave key 502 read from the target device, and the first authentication calculation processing circuit 601 performs the first authentication calculation.
  • the processing 503 is executed to generate a first authentication intermediate key 504.
  • the host device receives the first authentication intermediate key 504 as input, and determines whether or not the first authentication calculation processing 503 is successful in the authentication determination circuit 602. Specifically, it is determined whether or not the first authentication intermediate key 504 has a value “0”.
  • the authentication result is output to the authentication completion signal output circuit 603.
  • the authentication completion signal output circuit 603 outputs an abnormality detection interrupt 604 and ends the process. Even if the authentication result power is “success”, the authentication completion signal 605 is not output because the authentication number end signal has not been received.
  • the authentication determination circuit 602 When the value power of the first authentication intermediate key 504 is not "0", that is, when the authentication is successful, the authentication determination circuit 602 outputs a count-up signal to the counter 606.
  • the counter 606 displays the count value. Incremented and output as “1” to the comparator 607.
  • the number of required authentications 508 is compared with the count value.
  • the comparator 607 If the required authentication count 508 power '1' and the count value of the counter 606 equals the required authentication count 508, the comparator 607 outputs an enable signal to the second authentication processing circuit 608. Then, the second authentication calculation processing 510 is not executed, and the authentication completion signal output circuit 603 outputs an authentication number end signal.
  • the authentication completion signal output circuit 603 outputs an authentication completion signal 605 when the authentication number end signal is received and succeeds in authentication.
  • the comparator 607 outputs an enable signal to the second authentication calculation processing circuit 608. Then, the second authentication calculation processing circuit 608 is operated.
  • the host device uses the authentication host key 501 and the second authentication slave key 511 read from the target device as an input to the second authentication operation processing circuit 608, and performs the second authentication operation processing. Execute 510 and generate the second authentication intermediate key 512.
  • the generated second authentication intermediate key 512 is input to the authentication determination circuit 602 and is also stored in the second authentication intermediate key storage register 610 one before.
  • the second authentication arithmetic processing circuit 608 outputs an enable signal to the key comparison circuit 609 to operate the key comparison circuit 609.
  • the authentication determination circuit 602 determines whether the second authentication calculation process 510 is successful based on the value of the input second authentication intermediate key 512. Specifically, it is determined whether or not the value of the second authentication intermediate key 512 is “0”. The authentication result is output to the authentication completion signal output circuit 603. If the authentication fails, the authentication completion signal output circuit 603 outputs an abnormality detection interrupt 604.
  • the authentication determination circuit 602 If the value power of the second authentication intermediate key 512 is not "0", that is, if the authentication is successful, the authentication determination circuit 602 outputs a count-up signal to the counter 606. The counter 606 outputs the count value. It is incremented and output as “2” to the comparator 607. The comparator 607 compares the required authentication count 508 with the count value.
  • the comparator 607 When the required authentication count 508 is “2” and the count value of the counter 606 is equal to the required authentication count 508, the comparator 607 outputs an authentication count end signal to the authentication completion signal output circuit 603. Required authentication count 508 is "2" Counter 606 count value is required authentication count If it is not equal to the number 508, the authentication count end signal is not output, and an enable signal is output to the second authentication calculation processing circuit 608 again. Then, the second authentication calculation processing circuit 608 uses the second authentication slave key different from the second authentication slave key used in the first second authentication calculation processing to Perform arithmetic processing. Note that the second authentication intermediate key generated in the second authentication calculation process for the second time is stored in the second authentication intermediate key storage register 610 immediately before. At that time, the second authentication intermediate key stored in the previous second authentication intermediate key storage register 610 and the second authentication intermediate key generated in the second authentication calculation process of the second time are After being compared by the key comparison circuit 609, it is overwritten.
  • the key comparison circuit 609 to which the enable signal is input determines whether the first authentication intermediate key 504 and the second authentication intermediate key 512 are the same when the count value of the counter 606 is “2”. Compare. If the count value of the counter 606 is greater than "2", it is output from the second authentication intermediate key stored in the second authentication intermediate key storage register 610 and the second authentication processing circuit. Compare the key with the second authentication intermediate key. The key comparison result is output to authentication completion signal output circuit 603.
  • the authentication completion signal output circuit 603 outputs an abnormality detection interrupt 604 and terminates the process when the key comparison result strength indicates that the values of the two authentication intermediate keys match and indicate V.
  • the authentication completion signal output circuit 603 has received a key comparison result that is one less than the value indicated by the required authentication count 508 and an authentication count end signal.
  • the authentication completion signal 605 is output.
  • the re-encryption circuit that re-encrypts the encrypted content key with another second authentication intermediate key after successful authentication is the same as in the first embodiment, and thus the description thereof is omitted.
  • the authentication completion signal output circuit 603 ends the authentication on the assumption that the authentication has succeeded when receiving the authentication number end signal.
  • the required authentication count 508 is "2" or more, the authentication is successful when both the authentication count end signal and the required authentication count are received! End authentication.
  • the comparison number abnormality signal described in the first embodiment is not used.
  • the comparator 607 may output a comparison number abnormality signal when the authentication is performed more than that number.
  • the enable signal to the key comparison circuit 609 may be output from the comparator as in the first embodiment.
  • Embodiments 1 and 2 are described as configurations in which the number of authentications is counted and compared with the required number of authentications held in the host device.
  • the host device maintains the number of authentication intermediate keys, not the required number of authentications, and performs authentication. It may be compared with the number of times. Alternatively, the number of authentication intermediate keys themselves may be counted and compared with the required number of authentications.
  • first authentication calculation processing circuit and the second authentication calculation processing circuit are separately provided to perform the authentication calculation, a single authentication calculation processing circuit may be used repeatedly.
  • the viewpoint of security is further preferable.
  • the present invention prevents authentication between a target device having information on a broken authentication host key and a host device having a broken authentication host key from succeeding by unauthorized means. Since it is an authentication method and security is improved, it can be used for electronic distribution or the like.

Landscapes

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

Abstract

【課題】第1の認証演算処理と第2の認証演算処理の、2段の認証演算処理を行う認証方法において、第2の認証演算処理に対して第1の認証演算処理と同一の鍵を与えた場合、不正に認証が成功してしまう。 【解決手段】必要認証回数が何回であるか、および実行中の認証演算処理が何回目の認証演算処理であるかを判定し、実行中の認証演算処理が第1の認証演算処理であるか、あるいは第2の認証演算処理であるかを明確に区別する。また、2段の認証演算処理で用いられた各認証中間鍵の値を比較回路によって比較し、同一である場合は不正な認証処理が実行されたものとして、ホスト機器はターゲット機器との認証の失敗を判定する。

Description

明 細 書
認証方
技術分野
[0001] 本発明は、ターゲット機器内部に記憶される機密情報をホスト機器で扱う際に、ター ゲット機器とホスト機器との間で行われる認証方法に関する。
背景技術
[0002] 著作物や個人情報等、不正なコピーあるいは外部への漏洩を防ぐ必要があるコン テンッを記憶するターゲット機器にぉ 、ては、コンテンツは暗号ィ匕された状態でター ゲット機器に格納される。ターゲット機器に格納された暗号ィ匕コンテンツをホスト機器 が扱う際は、ターゲット機器とホスト機器の間で認証処理を行う。認証が失敗すれば、 暗号化コンテンツを復号化するためのコンテンツ鍵を、ターゲット機器カゝら入手できな いような構成にしている。このように構成することにより、不正なホスト機器による暗号 化コンテンツの復号ィ匕を防いでいる。なお、ターゲット機器とは、例えば、 SDカードの ようなメモリカードのことを示す。ホスト機器とは、メモリカード力 データを読み出す半 導体集積回路、あるいはその半導体集積回路を実装したセット機器、さらにはターゲ ット機器へとコンテンツを配信するコンテンツ配信機器のことを示す。
[0003] 認証方法に関する従来技術として特許文献 1がある。特許文献 1においては、第 1 の認証演算処理と第 2の認証演算処理の 2段の認証によって認証処理を行うという 特徴がある。図 7は、特許文献 1に記載されるターゲット機器とホスト機器との間の認 証方法をフローチャートで示したものである。
[0004] 第 2の認証演算処理は、認証用ホスト鍵が破られて第 1の認証演算処理が不正に 認証 OKとなった場合に、破られた認証用ホスト鍵の情報を持つターゲット機器と破ら れた認証用ホスト鍵を持つホスト機器との間での認証を最終的に失敗させるために、 第 1の認証演算処理の後に実行される拡張処理である。すなわち、第 1の認証演算 処理が不正に認証 OKとなっても、破られた認証用ホスト鍵を持つホスト機器の使用 をこの拡張処理により無効化できるという特徴がある。第 2の認証演算処理に用いら れる第 2の認証用スレーブ鍵は、認証用ホスト鍵が流出して第 1の認証演算処理が 破られたことが発覚した場合に、ネットワーク等を経由した電子配信でターゲット機器 に実装される。すなわち、第 2の認証用スレーブ鍵がターゲット機器内に実装されて V、な 、場合は、第 1の認証演算処理は破られて 、な 、ので第 2の認証演算処理を行 う必要はないことになる。
[0005] 認証方法のフローチャートについて図 7を参照しながら説明を加える。まず、ホスト 機器は、ホスト機器が有する認証用ホスト鍵 701と、ターゲット機器カゝら読み出した第 1の認証用スレーブ鍵 702を入力として、第 1の認証演算処理 703を実行する。第 1 の認証演算処理 703は、一方向関数を含む複数の関数から構成される処理であつ て、認証に成功すれば第 1の認証中間鍵 704が生成され、認証に失敗すれば値" 0" が生成される処理である。第 1の認証演算処理 703が終了すると、生成された第 1の 認証中間鍵 704あるいは値" 0"が、ホスト機器内の認証中間鍵格納エリアへと格納さ れ、認証判定が行われる。認証判定では、第 1の認証演算処理の出力力 ' 0"である か否かが判定される。 "0"である場合は、ホスト機器は、不正なアクセスであるとして 認証を失敗させ、以降の処理を行わない。
[0006] 第 1の認証演算処理 703に成功すると、ホスト機器は、第 2の認証用スレーブ鍵 70 5がターゲット機器内に存在するかどうかの存在判定を行う。第 2の認証用スレーブ鍵 705は、存在する場合は、予めターゲット機器内の所定の領域に格納されている。
[0007] 第 2の認証用スレーブ鍵 705がターゲット機器内に存在しない場合は、第 2の認証 演算処理 706を行う必要はな 、ので認証を完了する。第 2の認証用スレーブ鍵 705 力 Sターゲット機器内に存在する場合は、これをターゲット機器力も読み出し、第 2の認 証演算処理 706を行う。第 2の認証演算処理 706は、一方向関数を含む複数の関数 力も構成される処理であって、認証に成功すれば第 2の認証中間鍵 707が生成され 、認証に失敗すれば値" 0"が生成される処理である。第 2の認証演算処理 706は、 認証用ホスト鍵が破られた場合には、破られた認証用ホスト鍵と新たにターゲット機 器内に配置された第 2の認証用スレーブ鍵との間の認証を失敗させ、破られていな い別の認証用ホスト鍵と第 2の認証用スレーブ鍵との間の認証を成功させる処理でも ある。言い換えれば、認証用ホスト鍵が破られた場合には、上記の条件を満たす第 2 の認証用スレーブ鍵を生成し、ターゲット機器内に格納することとなる。 [0008] 第 2の認証演算処理 706が終了すると、生成された第 2の認証中間鍵、あるいは値 "0"は認証中間鍵格納エリアへと格納され、認証判定が行われる。認証判定では、 第 2の認証演算処理 706の出力が" 0"である力否かが判定される。 "0"である場合は 、ホスト機器は、不正なアクセスであるとして認証を失敗させ、以降の処理を行わない 。第 2の認証用中間鍵 707は、その生成の種となる認証用スレーブ鍵が第 1の認証 用中間鍵 704と異なるので、その値としても第 1の認証用中間鍵 704と異なる鍵とな るべさである。
[0009] 認証用ホスト鍵が破られると、ターゲット機器内に第 2の認証用スレーブ鍵が存在し ない場合は第 2の認証用スレーブ鍵を新規に作成し、ターゲット機器内に第 2の認証 用スレーブ鍵が既に存在する場合はその値を更新する。この第 2の認証用スレーブ 鍵の新規作成あるいは更新は、電子配信等によって行われる。第 2の認証演算処理 によって生成される第 2の認証中間鍵の値を更新し、認証用ホスト鍵が破られたホス ト機器と、認証用スレーブ鍵を新規作成'更新したターゲット機器との間の認証処理 を失敗させる。これにより、破られた認証用ホスト鍵を持つホスト機器の使用を無効化 することができる。
[0010] 既にターゲット機器に存在していた暗号ィ匕コンテンツ鍵は、第 1の認証中間鍵、ま たは更新する前の第 2の認証中間鍵で暗号ィ匕されている。そのため、値を更新した 別の第 2の認証中間鍵でコンテンツ鍵を暗号ィ匕し直される。
[0011] ターゲット機器とホスト機器との間での認証が成功すると、ホスト機器は暗号ィ匕コン テンッ鍵および暗号ィ匕コンテンツをターゲット機器力も読み出し、暗号化コンテンツの 復号を行う。あるいは、ホスト機器はコンテンツおよびコンテンツ鍵を暗号化し、ター ゲット機器への転送を行う。
[0012] 図 8は、特許文献 1に示される暗号ィ匕コンテンツの復号ィ匕方法をフローチャートで 示したものである。図 8において、図 7と同一の構成要素については同一の符号を用 い、説明を省略する。ホスト機器は、第 1の認証中間鍵 704あるいは第 2の認証中間 鍵 707で暗号ィ匕された暗号ィ匕コンテンツ鍵 801を、ターゲット機器力も読み出す。ホ スト機器は、第 2の認証中間鍵 707を生成している場合は第 2の認証中間鍵 707を、 そうでない場合は第 1の認証中間鍵 704を、選択した認証中間鍵 802とする。そして 、読み出した暗号ィ匕コンテンツ鍵 801を、選択した認証中間鍵 802で復号ィ匕すること で、平文のコンテンツ鍵 803を得る。ホスト機器は、コンテンツ鍵 803で暗号化された 暗号ィ匕コンテンツ 804をターゲット機器力も読み出し、コンテンツ鍵 803で復号ィ匕す ることで平文のコンテンツ 805を得る。
[0013] 図 9は、特許文献 1に示されるコンテンツの暗号ィ匕方法をフローチャートで示したも のである。図 9において、図 7および図 8と同一の構成要素については同一の符号を 用い、説明を省略する。ホスト機器は、コンテンツ鍵 803でコンテンツ 805を暗号ィ匕す ることで暗号化コンテンツ 804を生成し、ターゲット機器へ転送する。ホスト機器は、 第 2の認証中間鍵 707を生成している場合は第 2の認証中間鍵 707を、そうでない 場合は第 1の認証中間鍵 704を、選択した認証中間鍵 802とする。そして、選択した 認証中間鍵 802でコンテンツ鍵 803を暗号化することで、暗号化コンテンツ鍵 801を 生成し、ターゲット機器へ転送する。
[0014] 図 10は、ターゲット機器内の領域および各領域に格納されるデータを示したもので ある。図 10において、図 7〜図 9と同一の構成要素については同一の符号を用い、 説明を省略する。
[0015] 認証およびコンテンツの暗号化'復号ィ匕において使用されるターゲット機器側のデ ータについて、ターゲット機器内でそれらのデータを格納する領域には、第 1の領域 1001、第 2の領域 1002、第 3の領域 1003の 3つの領域が存在する。第 1の領域 10 01は、ターゲット機器とホスト機器との間の認証を実行する際にアクセスを行う領域で あり、第 1の認証用スレーブ鍵 702が格納される。第 2の領域 1002は、ホスト機器とタ 一ゲット機器間の認証が成功して初めてアクセスが可能になる領域であり、暗号化コ ンテンッ鍵 801が格納される。第 3の領域 1003は、ユーザが自由にアクセスできる領 域であり、暗号ィ匕コンテンツ 804および第 2の認証用スレーブ鍵 705が格納される。 特許文献 1 :特開 2000— 357126号公報
発明の開示
発明が解決しょうとする課題
[0016] 特許文献 1の認証方法によると、認証用ホスト鍵が破られた場合に、破られた認証 用ホスト鍵の情報を持つターゲット機器と、破られた認証用ホスト鍵を持つホスト機器 との間での認証を失敗させる。そのために、第 1の認証演算処理の後に実行される拡 張処理である第 2の認証演算処理により、破られた認証用ホスト鍵を持つホスト機器 の使用を無効化するという特徴がある。
[0017] し力しながら、第 2の認証演算処理に対して、本来使用すべき第 2の認証用スレー ブ鍵ではなぐ第 1の認証用スレーブ鍵を与えた場合、認証アルゴリズムが第 1の認 証演算処理と同一であるとすると、第 2の認証演算処理は第 1の認証演算処理で生 成される第 1の認証中間鍵と同じ値の鍵を第 2の認証中間鍵として生成してしまう。第 2の認証演算処理は、第 1の認証演算処理における認証が成功した場合にのみ実行 されるため、第 1の認証中間鍵の値は" 0"ではないことになる。従って、第 2の認証中 間鍵の値も" 0"ではなぐホスト機器は第 2の認証演算処理における認証を成功とし て判定する。破られた認証用ホスト鍵を持つホスト機器では、本来であれば第 2の認 証演算処理における認証が失敗すべきであるにも関わらず、認証が成功することに なる。このため、破られた認証用ホスト鍵を持つホスト機器による不正なアクセスを許 すという課題があった。
[0018] また、認証用ホスト鍵が破られた場合、既にターゲット機器に存在して ヽた暗号化コ ンテンッ鍵は、値を更新した別の第 2の認証中間鍵で再暗号ィ匕する必要がある。しか し、第 2の認証演算処理に対して、本来使用すべき第 2の認証用スレーブ鍵ではなく 、第 1の認証用スレーブ鍵を与えた場合、第 2の認証演算処理は第 1の認証演算処 理で生成される第 1の認証中間鍵と同じ値の鍵を第 2の認証中間鍵として生成する。 再暗号ィ匕する前の鍵である選択した認証中間鍵と、再暗号化後の鍵である別の第 2 の認証中間鍵が同一となる可能性がある。このため、暗号ィ匕コンテンツ鍵の再暗号 化を安全に行うことができな 、と 、う課題があった。
[0019] さらに、必要な認証回数を確実に行わせるべき機構が実装されていないとの課題も めつに。
課題を解決するための手段
[0020] 本発明の認証方法は、必要認証回数が何回である力、および実行中の認証演算 処理が何回目の認証演算処理であるかをカウントする手段を設ける。これにより、実 行中の認証演算処理が第 1の認証演算処理であるか、あるいは第 2の認証演算処理 である力を明確に区別する。さらに、第 2の認証演算処理であれば、何回目の第 2の 認証演算処理である力を明確に区別する。
[0021] また、第 2の認証演算処理である場合、新たに生成された第 2の認証中間鍵とそれ 以前の認証演算処理で生成されている認証中間鍵の値を鍵比較回路によって比較 する。比較の結果、同一である場合は、不正な認証処理が実行されたものとして、ホ スト機器はターゲット機器との認証を失敗と判定する。
発明の効果
[0022] 本発明によれば、必要な認証回数を確実に行わせることができ、破られた認証用ホ スト鍵を持つホスト機器による不正なアクセスを防ぐことができる。また、同一の認証 用スレーブ鍵を用いた不正なアクセスを防止することができる。
図面の簡単な説明
[0023] [図 1]本発明における機密情報処理システムの全体構成を示した図
[図 2]本発明の実施の形態 1における認証方法のフローチャート
[図 3]本発明の実施の形態 1における認証方法を実行する回路の一例を示した図 [図 4]本発明の実施の形態 1における鍵を再暗号ィ匕する回路の一例を示した図
[図 5]本発明の実施の形態 2における認証方法のフローチャート
[図 6]本発明の実施の形態 2における認証方法を実行する回路の一例を示した図 [図 7]従来の認証方法のフローチャート
[図 8]暗号化コンテンツの復号化のフローチャート
[図 9]コンテンツの暗号化のフローチャート
[図 10]ターゲット機器に機密情報を格納した状態を示す図
符号の説明
[0024] 101 ターゲット機器
102 ホス卜機器
103 パス
104 ターゲット IZF部
105 機密情報処理部
106 ホスト CPU 107 ホスト IZF部
108 RAM
201, 501 認証用ホスト鍵
202, 502 第 1の認証用スレーブ鍵
204, 504 第 1の認証中間鍵
211, 511 第 2の認証用スレーブ鍵
212, 512 第 2の認証中間鍵
301, 601 第 1の認証演算処理回路
302, 602 認証判定回路
303, 603 認証完了信号出力回路
304, 604 異常検出割り込み
305, 605 Β¾止兀丁 1曰
306, 606 カウンタ
307, 607 比較器
308, 608 第 2の認証演算処理回路
309, 609 鍵比較回路
401 セレクタ
402, 407 暗号化コンテンツ鍵
403 復号回路
404 コンラ :ンッ鍵
405 暗号回路
406 別の第 2の認証中間鍵
1001 第 1の領域
1002 : 第 2の領域
1003 ί 第 3の領域
発明を実施するための最良の形態
(実施の形態 1)
本発明を実施するための最良の形態である実施の形態 1について、図面を参照し ながら説明する。図 1は、ホスト機器とターゲット機器とから構成される機密情報処理 システムの全体構成図を示して 、る。
[0026] ターゲット機器 101は、 SDカードに代表されるメモリカードであり、機密情報を含む データを格納する。格納の詳細については、図 10と同一であるので説明を省略する 。ホスト機器 102は、ターゲット機器 101を接続して、ターゲット機器 101との間で機 密情報の読み出し Z書き込みを行う。
[0027] ホスト機器 102は、内部バス 103と、ターゲット機器 101との間でデータの入出力を 行うターゲット IZF部 104と、所定のシーケンスに従って、ターゲット機器との間で認 証を行い、また機密情報の暗号化'復号化を行う機密情報処理部 105と、機密情報 処理部 105に対して所定のシーケンスを起動するホスト CPU106と、ターゲット機器 101、機密情報処理部 105と、ホスト CPU106との間でデータの入出力を行うホスト I ZF部 107と、ホスト CPU106や機密情報処理部 105が、その動作のためにデータ を一時格納しておくためのワーク領域としての RAM108とを備えている。
[0028] ターゲット機器 101とホスト機器 102との間で機密情報の読み出し/書き込みが行 われる場合には、ターゲット機器 101とホスト機器 102との間で認証を行う必要がある 。そこで、ホスト CPU106によって機密情報処理部 105が起動され、認証処理が行 われる。
[0029] 認証が成功すると、ホスト機器 102は、ターゲット機器 101からターゲット IZF部 10 4を介して機密情報を読み出す。読み出した機密情報は、機密情報処理部 105を用 いて復号化して利用する。
[0030] 機密情報処理部 105の動作の起動は、ホスト CPU106が行う。しかし、機密情報処 理部 105は秘匿されたノヽードウエアであり、起動されると、セキュリティの確保された、 あるいはセキュリティの必要の少ない、所定のシーケンスのみを行う。
[0031] 図 2は、本発明の実施の形態 1における認証方法のフローチャートを示す図である 。認証処理が開始されると、ホスト機器は、ホスト機器が有する認証用ホスト鍵 201と 、ターゲット機器力も読み出した第 1の認証用スレーブ鍵 202を入力として、第 1の認 証演算処理 203を実行する。第 1の認証演算処理 203は、一方向関数を含む複数 の関数力も構成される処理であって、認証に成功すれば第 1の認証中間鍵 204が生 成され、認証に失敗すれば値" 0"が生成される処理である。第 1の認証演算処理 20 3が終了すると、生成された第 1の認証中間鍵 204あるいは値" 0"が、機密情報処理 部 105内の認証中間鍵格納エリアへと格納され、認証判定 205が行われる。認証判 定 205では、第 1の認証演算処理 203の出力が" 0"である力否かが判定される。 "0" である場合は、ホスト機器は、不正なアクセスであるとして認証を失敗させ(206)、以 降の処理を行わない。
[0032] 第 1の認証演算処理 203での認証に成功すると、第 1の認証中間鍵 204が生成さ れた後、カウントアップ 207を実行し、機密情報処理部 105内のカウンタのカウント値 をインクリメントし、カウンタのカウント値を" 1"とする。
[0033] カウンタのカウント値をインクリメントした後、ホスト機器は必要認証回数 208とカウン タのカウント値との比較判定 209を行う。必要認証回数 208が" 1"であれば、現在の カウンタのカウント値が必要認証回数 208と等しくなり、第 2の認証演算処理 210を実 行する必要はな 、として認証を完了する。
[0034] 必要認証回数 208とカウンタのカウント値とが等しくない場合は、第 2の認証演算処 理 210を実行する必要がある。第 2の認証演算処理 210においては、ホスト機器内に おいて、ホスト機器が有する認証用ホスト鍵 201とターゲット機器カゝら読み出される第 2の認証用スレーブ鍵 211を入力として、第 2の認証演算処理 210を実行する。第 2 の認証演算処理 210は、一方向関数を含む複数の関数から構成される処理であつ て、認証に成功すれば第 2の認証中間鍵 212が生成され、認証に失敗すれば値" 0" が生成される処理である。第 2の認証演算処理 210は、認証用ホスト鍵 201が破られ た場合には、破られた認証用ホスト鍵と新たにターゲット機器内に配置された第 2の 認証用スレーブ鍵との間の認証を失敗させ、破られて ヽな ヽ別の認証用ホスト鍵と第 2の認証用スレーブ鍵との間の認証を成功させる処理でもある。
[0035] 第 2の認証演算処理 210が終了すると、生成された第 2の認証中間鍵 212あるいは 値" 0"は、認証中間鍵格納エリアへと格納され、認証判定 213が行われる。認証判 定 213では、第 2の認証演算処理 210の出力が" 0"である力否かが判定される。 "0" である場合は、ホスト機器は、不正なアクセスであるとして認証を失敗させ(214)、以 降の処理を行わない。 [0036] 第 2の認証演算処理での認証に成功すると、第 2の認証中間鍵 212が生成される。 その後、カウントアップ 215を実行し、ホスト機器が保持するカウンタのカウント値をィ ンクリメントし、カウンタのカウント値を" 2"とする。
[0037] カウンタのカウント値をインクリメントした後、ホスト機器は必要認証回数 208とカウン タのカウント値との比較判定 216を行う。必要認証回数 208が" 2"であれば、現在の カウンタのカウント値が必要認証回数 208と等しくなり、次のステップに進む。必要認 証回数 208とカウンタのカウント値とがー致しな 、場合は、本実施の形態で想定され る認証回数は最大で" 2"であるために、異常であるとして処理を終了する(217)。
[0038] 必要認証回数 208と現在のカウンタのカウント値とがー致した場合は、生成された 第 1の認証中間鍵 204の値と第 2の認証中間鍵 212の値の鍵比較を行い(218)、第 1の認証中間鍵 204と第 2の認証中間鍵 212が等しいか否かを判定する(219)。本 来は異なるべきである第 1の認証中間鍵 204の値と第 2の認証中間鍵 212の値が等 しい場合、不正な手段を用いて認証を試みていると考えられるため、異常を検出した として認証フローを終了する(220)。第 1の認証中間鍵 204と第 2の認証中間鍵 212 の値が異なる場合、ホスト機器は認証が成功したとして認証処理を終了する。以上に より、ホスト機器とターゲット機器間の認証フローが終了し、ホスト機器はターゲット機 器に格納された暗号ィ匕コンテンツの復号等を行うことができる。
[0039] 図 3は、上記の認証方法を実装したホスト機器における機密情報処理部 105のうち 、認証を行う回路の回路図である。図 3において、図 1、図 2と同一の構成要素につい ては同一の符号を用いる。図 3に示される構成は、ハードウェアとして半導体集積回 路内に秘匿されている。すなわち、ホスト CPUからのアクセスなどによって、その処理 のシーケンスを変更することができな 、。認証処理の中で生成される認証中間鍵など は、いずれも機密情報処理部 105内の認証中間鍵格納エリア(レジスタ)に格納され るものであるが、図示は省略している。
[0040] ホスト機器は、認証用ホスト鍵 201と、ターゲット機器が持つ第 1の認証用スレーブ 鍵 202とを入力として、第 1の認証演算処理回路 301において第 1の認証演算処理 2 03を実行し、第 1の認証中間鍵 204を生成する。ホスト機器は、第 1の認証中間鍵 2 04を入力として、認証判定回路 302において認証演算処理の成否を判定する。具 体的には、第 1の認証中間鍵 204の値力 '0"である力否かを判定する。認証結果は 、認証完了信号出力回路 303へと出力される。
[0041] 第 1の認証中間鍵 204の値力 '0"であった場合、認証完了信号出力回路 303は異 常検出割り込み 304を出力して処理を終了させる。第 1の認証中間鍵 204の値が" 0 "でな力 たとしても、認証回数終了信号をまだ受信していないので、認証完了信号 305は出力しない。
[0042] 第 1の認証中間鍵 204の値力 '0"でなかった場合、すなわち認証に成功した場合、 認証判定回路 302はカウントアップ信号をカウンタ 306に出力する。カウンタ 306は、 カウント値をインクリメントして" 1"として、比較器 307へと出力する。比較器 307は、 必要認証回数 208とカウント値との比較を行う。
[0043] 必要認証回数 208が" 1"であり、カウンタ 306のカウント値が必要認証回数 208と 等しい場合、比較器 307は、第 2の認証演算処理回路 308へのイネ一ブル信号を出 力せず、第 2の認証演算処理 210は実行されない。また、認証完了信号出力回路 30 3へは認証回数終了信号を出力する。
[0044] 必要認証回数 208は、認証完了信号出力回路 303へも入力される。必要認証回 数 208が" 1"であった場合、認証回数終了信号を受信した認証完了信号出力回路 3 03は認証完了信号 305を出力する。
[0045] 必要認証回数 208が" 1"でなぐカウンタ 306のカウント値と必要認証回数 208が 等しくな 、場合、比較器 307は第 2の認証演算処理回路 308へのイネ一ブル信号を 出力し、第 2の認証演算処理 210を実行する。ホスト機器は、認証用ホスト鍵 201と、 ターゲット機器力も読み出された第 2の認証用スレーブ鍵 211とを、第 2の認証演算 処理回路 308への入力として、第 2の認証演算処理 210を実行し、第 2の認証中間 鍵 212を生成する。ホスト機器は、第 2の認証中間鍵 212を認証判定回路 302に入 力して、第 2の認証演算処理 210の成否を判定する。具体的には、第 2の認証中間 鍵 212の値が" 0"であるか否かを判定する。認証結果は、認証完了信号出力回路 3 03〖こ出力される。認証結果が認証に失敗したことを示す場合は、認証完了信号出力 回路 303は、異常検出割り込み 304を出力する。
[0046] 第 2の認証中間鍵 212の値が" 0"でなかった場合、すなわち認証に成功した場合、 認証判定回路 302はカウントアップ信号をカウンタ 306に出力する。カウンタ 306は、 カウント値をインクリメントして" 2"として、比較器 307へと出力する。比較器 307は必 要認証回数 208と、カウント値との比較を行う。
[0047] 必要認証回数 208が" 2"でな 、場合、本実施の形態にお!、て想定されて!、る最大 の認証回数は" 2"であるために、比較器 307は比較回数異常信号を認証完了信号 出力回路 303へと出力する。認証完了信号出力回路 303は、比較回数異常信号が 入力された場合、異常検出割り込み 304を出力して処理を終了させる。
[0048] 必要認証回数 208が" 2"であり、カウンタ 306のカウント値が必要認証回数 208と 等しい場合、比較器 307は、鍵比較回路 309へとイネ一ブル信号を出力する。また、 認証完了信号出力回路 303へは認証回数終了信号を出力する。
[0049] 必要認証回数 208は、認証完了信号出力回路 303へも出力される。認証完了信 号出力回路 303は、認証回数終了信号を受け取っても、必要認証回数 208が" 2"で ある場合は、鍵比較回路 309が出力する鍵比較結果が入力されるまで認証完了信 号 305を出力しない。
[0050] ィネーブル信号が入力された鍵比較回路 309は、第 1の認証中間鍵 204と第 2の 認証中間鍵 212が同一であるかどうかの比較を行い、その鍵比較結果を認証完了信 号出力回路 303へと出力する。
[0051] 認証完了信号出力回路 303は、鍵比較回路 309から出力される鍵比較結果が、第 1の認証中間鍵 204と第 2の認証中間鍵 212がー致していることを示すとき、異常検 出割り込み 304を出力して処理を終了させる。また、鍵比較回路 309から出力される 鍵比較結果力 第 1の認証中間鍵 204と第 2の認証中間鍵 212が異なることを示すと き、認証完了信号 305を出力して認証を成功させる。
[0052] 以上のように、認証完了信号出力回路 303は、必要認証回数 208が" 1"の場合、 認証回数終了信号を受信すると、認証が成功したとして認証を終了する。また、必要 認証回数 208が" 2"である場合、認証回数終了信号と 2つの鍵が異なることを示す鍵 比較結果の双方を受信すると、認証が成功したとして認証を終了する。
[0053] すなわち、認証回数をカウントし必要認証回数と比較することによって、必要な回数 の認証を行わないと認証が成功しない構成として、セキュリティを高めている。また、 必要認証回数が 2回である場合は、同一の認証用スレーブ鍵を用いて認証が成功さ れることがな!、ように、生成される認証中間鍵を比較して 、る。
[0054] 図 4は、認証に成功した場合に、暗号ィ匕コンテンツ鍵を別の第 2の認証中間鍵で暗 号ィ匕し直す再暗号ィ匕回路の回路図であり、ホスト機器における機密情報処理部 105 内に実装されている。再暗号化は、認証用ホスト鍵が破られて第 2の認証用スレーブ 鍵が更新された場合に行われる処理である。
[0055] 図 4において、図 2と同一の構成要素については、同一の符号を付して説明を省略 する。
[0056] ホスト機器は、第 2の認証中間鍵 212を生成している場合は第 2の認証中間鍵 212 を、そうでない場合は第 1の認証中間鍵 204をセレクタ 401により選択し、選択した認 証中間鍵とする。ホスト機器は、選択した認証中間鍵で予め暗号化され、ターゲット 機器に格納されている、暗号ィ匕コンテンツ鍵 402を読み出し、復号回路 403におい て選択した認証中間鍵で復号ィ匕することで平文のコンテンツ鍵 404を得る。コンテン ッ鍵 404は、暗号回路 405によって、選択した認証中間鍵とは異なる別の第 2の認証 中間鍵 406で再暗号ィ匕される。なお、別の第 2の認証中間鍵 406は、認証用ホスト鍵 が破られて第 2の認証用スレーブ鍵が更新されると、更新された認証用スレーブ鍵を 用いて認証を行う際に生成される。再暗号ィ匕された暗号ィ匕コンテンツ鍵 407は、暗号 化コンテンツ鍵 402を上書きすることでターゲット機器に格納される。
[0057] 実施の形態 1においては、認証回数をカウントすることによって、必要な認証回数の 認証演算処理を行わないと処理が終了しないようにしている。また、第 2の認証演算 処理 210で生成された第 2の認証中間鍵 212と、第 1の認証演算処理 203で生成さ れた第 1の認証中間鍵 204の値を鍵比較回路 309において比較することで、破られ た認証用ホスト鍵 201の情報を持つターゲット機器と破られた認証用ホスト鍵 201を 持つホスト機器との間で不正に認証が成功しないようにすることができる。さらに、認 証用ホスト鍵 201が破られた場合に実施される暗号化コンテンッ鍵の再暗号ィ匕を安 全に行うことができる。
[0058] (実施の形態 2)
本発明の実施の形態 2について図面を参照しながら説明する。実施の形態 2にお いて、機密情報処理システムの全体構成図は、実施の形態 1と同様であるので説明 を省略する。
[0059] 図 5は、実施の形態 2における認証方法のフローチャートを示す図である。実施の 形態 2は、ターゲット機器が複数の第 2の認証用スレーブ鍵を有し、ホスト機器が認証 演算処理を 3回以上実行可能である点で、実施の形態 1と大きく異なっている。
[0060] 認証処理が開始されると、ホスト機器は、ホスト機器が有する認証用ホスト鍵 501と 、ターゲット機器力も読み出した第 1の認証用スレーブ鍵 502を入力として、第 1の認 証演算処理 503を実行する。第 1の認証演算処理 503は、一方向関数を含む複数 の関数力も構成される処理であって、認証に成功すれば第 1の認証中間鍵 504が生 成され、認証に失敗すれば値" 0"が生成される処理である。
[0061] 第 1の認証演算処理 503が終了すると、生成された第 1の認証中間鍵 504あるいは 値" 0"が、ホスト機器内の認証中間鍵格納エリアへと格納され、認証判定 505が行わ れる。認証判定 505では、第 1の認証演算処理 503の出力が" 0"である力否かが判 定される。 "0"である場合は、ホスト機器は、不正なアクセスであるとして認証を失敗さ せ(506)、以降の処理を行わない。
[0062] 第 1の認証演算処理 503での認証に成功すると、カウントアップを実行し(507)、ホ スト機器が保持するカウンタのカウント値をインクリメントし、カウンタのカウント値を" 1" とする。
[0063] カウンタのカウント値をインクリメントした後、ホスト機器は必要認証回数 508とカウン タのカウント値との比較判定 509を行う。必要認証回数 508が" 1"であれば、現在の カウンタのカウント値が必要認証回数 508と等しくなり、第 2の認証演算処理 510を実 行する必要はな 、として認証を完了する。
[0064] 必要認証回数 508とカウンタのカウント値とが等しくない場合は、第 2の認証演算処 理 510を実行する必要がある。第 2の認証演算処理 510においては、ホスト機器が、 ターゲット機器が有する複数の第 2の認証用スレーブ鍵 511のうち 1つを読み出す。 そして、読み出した第 2の認証用スレーブ鍵 511と認証用ホスト鍵 501とを入力として 、第 2の認証演算処理 510を実行する。第 2の認証演算処理 510は、一方向関数を 含む複数の関数力 構成される処理であって、認証に成功すれば第 2の認証中間鍵 512が生成され、認証に失敗すれば値" 0"が生成される処理である。第 2の認証演 算処理 510は、認証用ホスト鍵 501が破られた場合に、破られた認証用ホスト鍵と新 たにターゲット機器内に配置された第 2の認証用スレーブ鍵との間の認証を失敗させ 、破られて 、な 、別の認証用ホスト鍵と第 2の認証用スレーブ鍵との間の認証を成功 させる処理でちある。
[0065] 第 2の認証演算処理 510が終了すると、生成された第 2の認証中間鍵 512あるいは 値" 0"は、認証中間鍵格納エリアへと格納され、認証判定 513が行われる。認証判 定 513では、第 2の認証演算処理 510の出力が" 0"である力否かが判定される。 "0" である場合は、ホスト機器は、不正なアクセスであるとして認証を失敗させ(514)、以 降の処理を行わない。
[0066] 第 2の認証演算処理 510での認証に成功すると、カウントアップを実行し(515)、機 密'青報処理部 105内のカウンタのカウント値をインクリメントし、カウンタのカウント値を "2"とする。
[0067] カウンタのカウント値をインクリメントした後、ホスト機器は鍵比較 516を行う。鍵比較 516にお!/、ては、第 1の認証中間鍵 504ある!/ヽは 1つ前の第 2の認証中間鍵 517の 何れかを選択し(518)、第 2の認証中間鍵 512との比較を行う。カウンタのカウント値 力 S"2"のときは、第 1の認証中間鍵 504を選択して第 2の認証中間鍵と比較する。力 ゥンタのカウント値が" 2"以外のときは、 1つ前の第 2の認証中間鍵 517を選択して第 2の認証中間鍵 512と比較する。
[0068] 鍵比較 516が終わると、比較された 2つの鍵が等しいか否かの比較判定を行う(51 9)。本来は異なるべきである 2つの認証中間鍵の値が等しい場合、不正な手段を用 いて認証を試みていると考えられるため、異常を検出したとして認証フローを終了す る(520)。 2つの認証中間鍵の値が異なる場合、再度、必要認証回数 508とカウンタ のカウント値との比較を行う(521)。
[0069] カウンタの現在の値が必要認証回数 508と等しい場合、ホスト機器は必要な回数の 認証演算処理を実行したとして認証を完了する。そうでない場合、ホスト機器は第 2 の認証演算処理 510に戻り、 1回目の第 2の認証演算処理で用いた第 2の認証用ス レーブ鍵とは異なる第 2の認証用スレーブ鍵を用いて、次の第 2の認証演算処理を 実行する。その際、前回の認証で生成された第 2の認証中間鍵 512を 1つ前の第 2の 認証中間鍵として更新する(522)。その結果、 2回目の第 2の認証演算処理におい ては、最初に生成された第 2の認証中間鍵と、 2回目の第 2の認証演算処理におい て生成された第 2の認証中間鍵とが、鍵比較 516において比較されることになる。
[0070] 必要認証回数 508とカウンタのカウント値が等しくなるまで、第 2の認証用スレーブ 鍵を変えながら上記処理を繰り返すことにより、任意の回数の第 2の認証演算処理を 行い、認証を終了することができる。認証が終了すると、ホスト機器は、ターゲット機器 にある暗号ィ匕コンテンツの復号ィ匕等を行うことができる。
[0071] 図 6は、上記の認証方法を実装したホスト機器における機密情報処理部のうち、認 証を行う回路の回路図である。図 6において、図 5と同一の構成要素については同一 の符号を用いて説明を省略する。また、図 6に示される構成は、ハードウェアとして半 導体集積回路内に秘匿されている。すなわち、ホスト CPUからのアクセスなどによつ てその処理のシーケンスを変更することができない。なお、認証処理の中で生成され る認証中間鍵などは、いずれも機密情報処理部 105内の認証中間鍵格納エリア(レ ジスタ)に格納されるものであるが、図示は省略している。
[0072] ホスト機器は、認証用ホスト鍵 501と、ターゲット機器カゝら読み出した第 1の認証用ス レーブ鍵 502とを入力として、第 1の認証演算処理回路 601において第 1の認証演 算処理 503を実行し、第 1の認証中間鍵 504を生成する。ホスト機器は、第 1の認証 中間鍵 504を入力として、認証判定回路 602において、第 1の認証演算処理 503の 成否を判定する。具体的には、第 1の認証中間鍵 504が値" 0"である力否かを判定 する。認証結果は、認証完了信号出力回路 603へと出力される。
[0073] 第 1の認証中間鍵 504の値力 0"であった場合、認証結果は"失敗"となるため、認 証完了信号出力回路 603は異常検出割り込み 604を出力して処理を終了させる。な お、認証結果力 '成功"であったとしても、認証回数終了信号を受信していないため、 認証完了信号 605は出力しない。
[0074] 第 1の認証中間鍵 504の値力 '0"でなかった場合、すなわち認証に成功した場合、 認証判定回路 602はカウントアップ信号をカウンタ 606に出力する。カウンタ 606は、 カウント値をインクリメントして" 1"として、比較器 607へと出力する。比較器 607は、 必要認証回数 508とカウント値との比較を行う。
[0075] 必要認証回数 508力 ' 1"であり、カウンタ 606のカウント値と必要認証回数 508が 等 、場合、比較器 607は第 2の認証演算処理回路 608へのイネ一ブル信号を出 力せず、第 2の認証演算処理 510を実行しない。また、認証完了信号出力回路 603 へは認証回数終了信号が出力される。
[0076] 認証完了信号出力回路 603は、入力される必要認証回数 508が" 1"である場合、 認証回数終了信号を受信すると認証完了信号 605を出力して認証を成功させる。
[0077] 必要認証回数 508が" 1"でなぐカウンタ 606のカウント値と必要認証回数 508が 等しくない場合、比較器 607は、第 2の認証演算処理回路 608へのイネ一ブル信号 を出力し、第 2の認証演算処理回路 608を動作させる。ホスト機器は、認証用ホスト 鍵 501と、ターゲット機器カゝら読み出された第 2の認証用スレーブ鍵 511とを、第 2の 認証演算処理回路 608への入力として、第 2の認証演算処理 510を実行し、第 2の 認証中間鍵 512を生成する。生成された第 2の認証中間鍵 512は認証判定回路 60 2に入力されると共に、 1つ前の第 2の認証中間鍵格納レジスタ 610にも格納される。 第 2の認証演算処理回路 608は、鍵比較回路 609ヘイネーブル信号を出力し、鍵比 較回路 609を動作させる。
[0078] 認証判定回路 602は、入力された第 2の認証中間鍵 512の値に基づいて、第 2の 認証演算処理 510の成否を判定する。具体的には、第 2の認証中間鍵 512の値が" 0"であるか否かを判定する。認証結果は、認証完了信号出力回路 603に出力される 。認証に失敗した場合は、認証完了信号出力回路 603は、異常検出割り込み 604を 出力する。
[0079] 第 2の認証中間鍵 512の値力 '0"でなかった場合、すなわち認証に成功した場合、 認証判定回路 602はカウントアップ信号をカウンタ 606に出力する。カウンタ 606は、 カウント値をインクリメントして" 2"として、比較器 607へと出力する。比較器 607は必 要認証回数 508と、カウント値との比較を行う。
[0080] 必要認証回数 508が" 2"であり、カウンタ 606のカウント値が必要認証回数 508と 等しい場合、比較器 607は、認証完了信号出力回路 603へと認証回数終了信号を 出力する。必要認証回数 508が" 2"でなぐカウンタ 606のカウント値が必要認証回 数 508と等しくない場合、認証回数終了信号は出力されず、再度第 2の認証演算処 理回路 608へとイネ一ブル信号が出力される。そして、第 2の認証演算処理回路 60 8は、 1回目の第 2の認証演算処理で用いた第 2の認証用スレーブ鍵とは異なる第 2 の認証用スレーブ鍵を用いて、第 2の認証演算処理を行う。なお、 2回目の第 2の認 証演算処理で生成される第 2の認証中間鍵は、 1つ前の第 2の認証中間鍵格納レジ スタ 610に格納される。その際、 1つ前の第 2の認証中間鍵格納レジスタ 610に格納 された第 2の認証中間鍵と、 2回目の第 2の認証演算処理で生成された第 2の認証中 間鍵が、鍵比較回路 609で比較されてから上書きされる。
[0081] また、ィネーブル信号を入力された鍵比較回路 609は、カウンタ 606のカウント値が "2"の場合、第 1の認証中間鍵 504と第 2の認証中間鍵 512が同一であるかどうかの 比較を行う。カウンタ 606のカウント値が" 2"より大きい場合、 1つ前の第 2の認証中間 鍵格納レジスタ 610に格納された第 2の認証中間鍵と、第 2の認証演算処理回路か ら出力された第 2の認証中間鍵との鍵比較を行う。鍵比較結果は、認証完了信号出 力回路 603へと出力される。
[0082] 認証完了信号出力回路 603は、鍵比較結果力 2つの認証中間鍵の値が一致して V、ることを示すとき、異常検出割り込み 604を出力して処理を終了する。
[0083] 認証完了信号出力回路 603は、必要認証回数 508が" 2"以上の場合、必要認証 回数 508が示す値より 1つ少ない回数の鍵比較結果と、認証回数終了信号とを受信 した段階で、認証完了信号 605を出力する。
[0084] なお、認証に成功した後に、暗号ィ匕コンテンツ鍵を別の第 2の認証中間鍵で暗号 化し直す再暗号ィ匕回路については、実施の形態 1と同様であるので説明を省略する
[0085] 実施の形態 2において、認証完了信号出力回路 603は、必要認証回数 508が" 1" の場合、認証回数終了信号を受信すると、認証が成功したとして認証を終了する。ま た、必要認証回数 508が" 2"以上である場合、認証回数終了信号と必要認証回数よ り 1つ少な!/、回数の正常な鍵比較結果との双方を受信すると、認証が成功したとして 認証を終了する。
[0086] すなわち、認証回数をカウントし必要認証回数と比較することによって、必要な回数 の認証を行わないと認証が成功しない構成としてセキュリティを高めている。また、同 一の認証用スレーブ鍵を用いて認証が成功されることがな 、ように、生成される認証 中間鍵を順次比較して 、る。
[0087] なお、本実施の形態においては任意の回数の認証回数を実行するために、実施の 形態 1で説明された比較回数異常信号は用いていない。し力しながら、例えば認証 回数の上限が限られている場合等は、その回数以上の認証が行われた場合に、比 較器 607が比較回数異常信号を出力してもよい。
[0088] また、鍵比較回路 609へのイネ一ブル信号は、実施の形態 1と同様に比較器が出 力するものであってもよ 、。
[0089] (変形例)
実施の形態 1、 2共に、認証回数をカウントし、ホスト機器に保持される必要認証回 数と比較する構成として説明している。し力しながら、認証演算処理が 1回行われると 1個の認証中間鍵が生成される点に鑑みると、ホスト機器は必要認証回数ではなく必 要な認証中間鍵の個数を保持し、認証回数と比較するものであってもよい。あるいは 、認証中間鍵自体の個数をカウントし、必要認証回数と比較するものであってもよい
[0090] また、第 1の認証演算処理回路と第 2の認証演算処理回路を別々に設けて認証演 算を行って 、るが、単一の認証演算処理回路を繰り返し用いてもょ 、。
[0091] また、必要認証回数は、暗号ィ匕されてホスト機器に保持されて ヽると、セキュリティ の観点力もさらに好ましい。
産業上の利用可能性
[0092] 本発明は、破られた認証用ホスト鍵の情報を持つターゲット機器と、破られた認証 用ホスト鍵を持つホスト機器との間での認証が不正な手段によって成功することを防 ぐ認証方法であり、セキュリティが向上するので、電子配信等で利用可能である。

Claims

請求の範囲
[1] ターゲット機器とホスト機器との間で行われる認証方法であって、
前記ホスト機器が有する認証用ホスト鍵と前記ターゲット機器が有する認証用スレ ーブ鍵に基づく認証演算を行って認証中間鍵を生成する第 1のステップと、
前記認証中間鍵の値に応じて認証の成否を判定する第 2のステップと、 前記第 2のステップが終了するごとに、前記第 2のステップが行われた回数をカウン トする第 3のステップとを備え、
前記第 3のステップでカウントされた回数が、所定の値と一致するまで、前記第 1の ステップ力も前記第 3のステップまでを繰り返し行うことを特徴とする認証方法。
[2] 前記所定の値とは、認証が成功するまでに行うべき認証回数に関する情報であるこ とを特徴とする請求項 1記載の認証方法。
[3] 前記所定の値とは、認証が成功するまでに生成されるべき認証中間鍵の個数に関 する情報であることを特徴とする請求項 1記載の認証方法。
[4] 前記第 2のステップの結果、認証が成功したと判定された場合のみ、前記第 3のス テツプを行うことを特徴とする請求項 1記載の認証方法。
[5] 前記所定の値が 2以上である場合、 N (Nは所定の値以下の整数)回目の前記第 1 のステップで生成された前記認証中間鍵と、 N— 1回目の前記第 1のステップで生成 された前記認証中間鍵とを比較する第 4のステップをさらに備え、
前記第 4のステップの結果、 2つの認証中間鍵が等し力つた場合には、以降の認証 処理を実行不可とすることを特徴とする請求項 4記載の認証方法。
[6] 前記所定の値が 1である場合に、前記第 3のステップを 1回終了すると認証を成功 させることを特徴とする請求項 4記載の認証方法。
[7] 請求項 1の認証方法を用い、 2回以上の認証演算処理を行って認証に成功した場 合に、前記ターゲット機器に格納された機密情報を再暗号ィ匕する再暗号ィ匕方法であ つて、
前記ターゲット機器から暗号ィ匕されたコンテンツ鍵を読み出す第 5のステップと、 前記暗号ィ匕されたコンテンツ鍵を所定の認証中間鍵を用いて復号ィ匕し、平文のコ ンテンッ鍵を得る第 6のステップと、 前記平文のコンテンツ鍵を、前記所定の認証中間鍵とは異なる認証中間鍵で再暗 号化する第 7のステップとを備えることを特徴とする再暗号化方法。
[8] ターゲット機器との間で認証処理を行う機密情報処理用ホスト機器であって、 ターゲット機器との間で前記暗号化されたコンテンツを含む機密情報の入出力を行 う第 1のインターフェース部と、
前記第 1のインターフェースを介して入力された暗号ィ匕されたコンテンッに対して、 予め定められた所定のシーケンスで復号化処理を行う機密情報処理部と、
前記機密情報処理部に対して、前記所定のシーケンスの起動を指示する CPUとを 備え、
前記機密情報処理部は、
認証用ホスト鍵と、
前記認証用ホスト鍵と前記ターゲット機器に格納された認証用スレーブ鍵とを用い 認証演算処理を行い、認証中間鍵を生成する認証演算処理回路と、
前記認証中間鍵の値に応じて認証の成否を判定する認証判定回路と、 前記認証判定回路の判定回数をカウントするカウンタとを備え、
前記カウンタの値を所定の値と比較し、一致するまで複数回にわたって前記認証 演算処理回路における認証処理を繰り返すことを特徴とする機密情報処理用ホスト 機器。
[9] 前記認証演算処理回路が複数回の認証演算処理を行った場合に生成される認証 中間鍵の値を比較する鍵比較回路をさらに備えることを特徴とする請求項 8記載の 機密情報処理用ホスト機器。
[10] 前記機密情報処理部が、
前記認証処理に成功した場合に、
前記ターゲット機器から暗号ィ匕されたコンテンツ鍵を読み出し、
前記暗号ィ匕されたコンテンツ鍵を所定の認証中間鍵を用いて復号ィ匕し、平文のコ ンテンッ鍵を取得し、
前記平文のコンテンツ鍵を、前記所定の認証中間鍵とは異なる認証中間鍵で再暗 号化することを特徴とする請求項 8記載の機密情報処理用ホスト機器。
PCT/JP2005/019407 2004-10-25 2005-10-21 認証方法 WO2006046484A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006543100A JPWO2006046484A1 (ja) 2004-10-25 2005-10-21 認証方法
US11/666,142 US20080104396A1 (en) 2004-10-25 2005-10-21 Authentication Method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004309407 2004-10-25
JP2004-309407 2004-10-25

Publications (1)

Publication Number Publication Date
WO2006046484A1 true WO2006046484A1 (ja) 2006-05-04

Family

ID=36227724

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/019407 WO2006046484A1 (ja) 2004-10-25 2005-10-21 認証方法

Country Status (4)

Country Link
US (1) US20080104396A1 (ja)
JP (1) JPWO2006046484A1 (ja)
TW (1) TW200635324A (ja)
WO (1) WO2006046484A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014121076A (ja) * 2012-12-19 2014-06-30 Toshiba Corp 鍵管理装置、通信装置、通信システムおよびプログラム

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5691418B2 (ja) * 2010-11-11 2015-04-01 富士通株式会社 ストレージ装置、記憶装置、制御装置および記憶装置制御方法
JP7185788B2 (ja) 2019-04-29 2022-12-07 テレフオンアクチーボラゲット エルエム エリクソン(パブル) 5gにおける複数の認証手続のハンドリング
US11494481B2 (en) * 2019-05-10 2022-11-08 Canon Kabushiki Kaisha Authentication apparatus for authenticating authentication target device
CN115378657B (zh) * 2022-07-26 2024-02-20 电子科技大学 一种基于集成电路内部温度传感的认证同步方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63101987A (ja) * 1986-07-09 1988-05-06 イエダ リサ−チ アンド デベロツプメント カンパニ− リミテツド 識別及び署名方法及び装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DK0739560T3 (da) * 1994-01-13 2001-10-01 Certco Inc Kryptografisk system og fremgangsmåde med nøgledeponeringsfunktion
JPH10276185A (ja) * 1997-03-31 1998-10-13 Hitachi Software Eng Co Ltd Idベース認証・鍵配送方法
US7373515B2 (en) * 2001-10-09 2008-05-13 Wireless Key Identification Systems, Inc. Multi-factor authentication system
US7412053B1 (en) * 2002-10-10 2008-08-12 Silicon Image, Inc. Cryptographic device with stored key data and method for using stored key data to perform an authentication exchange or self test
US7409544B2 (en) * 2003-03-27 2008-08-05 Microsoft Corporation Methods and systems for authenticating messages
US7644446B2 (en) * 2003-10-23 2010-01-05 Microsoft Corporation Encryption and data-protection for content on portable medium

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63101987A (ja) * 1986-07-09 1988-05-06 イエダ リサ−チ アンド デベロツプメント カンパニ− リミテツド 識別及び署名方法及び装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Content Protection for Recordable Media Specification", SD MEMORY CARD BOOK COMMON PART, REVISION 0.96, 26 November 2001 (2001-11-26), XP002996381, Retrieved from the Internet <URL:http://www.4centity.com/docs/versions.> *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014121076A (ja) * 2012-12-19 2014-06-30 Toshiba Corp 鍵管理装置、通信装置、通信システムおよびプログラム

Also Published As

Publication number Publication date
JPWO2006046484A1 (ja) 2008-05-22
TW200635324A (en) 2006-10-01
US20080104396A1 (en) 2008-05-01

Similar Documents

Publication Publication Date Title
EP1325401B1 (en) System for protecting static and dynamic data against unauthorised manipulation
US9043615B2 (en) Method and apparatus for a trust processor
US5214698A (en) Method and apparatus for validating entry of cryptographic keys
US20090282254A1 (en) Trusted mobile platform architecture
JPH10154976A (ja) タンパーフリー装置
US7841014B2 (en) Confidential information processing method, confidential information processor, and content data playback system
EP2005356A1 (en) Authentication of a request to alter at least one of a bios and a setting associated with the bios
US8774407B2 (en) System and method for executing encrypted binaries in a cryptographic processor
US6839837B1 (en) Cryptosystem key updating system and method for preventing illegal use of software
JP2005157930A (ja) 機密情報処理システムおよびlsi
JP2006107274A (ja) ハッシュ関数演算システム、暗号化システムおよび不正解析・改竄防止システム
US11748521B2 (en) Privacy-enhanced computation via sequestered encryption
CN112385175B (zh) 一种用于数据加密和完整性的设备
CN110046489B (zh) 一种基于国产龙芯处理器的可信访问验证***,计算机及可读存储介质
WO2006046484A1 (ja) 認証方法
JP2002244989A (ja) デバイスドライバ作動方法
JP2003084853A (ja) プログラム可能なゲートアレイのためのコピー防止方法及びシステム
EP0962850A2 (en) A method for protecting embedded system software and embedded system
JPH1139156A (ja) 暗号化データ復号装置
CN113343215A (zh) 嵌入式软件的授权和认证方法及电子设备
CN116451185A (zh) 一种应用程序的保护方法及装置
CN117828580A (zh) 一种应用程序认证方法及装置
JP2004240719A (ja) ソフトウェア実行制御方法

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BW BY BZ CA CH CN CO CR CU CZ DK DM DZ EC EE EG ES FI GB GD GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV LY MD MG MK MN MW MX MZ NA NG NO NZ OM PG PH PL PT RO RU SC SD SG SK SL SM SY TJ TM TN TR TT TZ UG US UZ VC VN YU ZA ZM

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SZ TZ UG ZM ZW AM AZ BY KG MD RU TJ TM AT BE BG CH CY DE DK EE ES FI FR GB GR HU IE IS IT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW MR NE SN TD TG

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

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2006543100

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 05805111

Country of ref document: EP

Kind code of ref document: A1

WWP Wipo information: published in national office

Ref document number: 11666142

Country of ref document: US