WO2022091544A1 - 情報検証装置、電子制御装置、及び情報検証方法 - Google Patents

情報検証装置、電子制御装置、及び情報検証方法 Download PDF

Info

Publication number
WO2022091544A1
WO2022091544A1 PCT/JP2021/031236 JP2021031236W WO2022091544A1 WO 2022091544 A1 WO2022091544 A1 WO 2022091544A1 JP 2021031236 W JP2021031236 W JP 2021031236W WO 2022091544 A1 WO2022091544 A1 WO 2022091544A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
verification device
information verification
otp
distribution
Prior art date
Application number
PCT/JP2021/031236
Other languages
English (en)
French (fr)
Inventor
淳司 三宅
Original Assignee
日立Astemo株式会社
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 日立Astemo株式会社 filed Critical 日立Astemo株式会社
Priority to DE112021004459.1T priority Critical patent/DE112021004459T5/de
Priority to JP2022558876A priority patent/JPWO2022091544A1/ja
Publication of WO2022091544A1 publication Critical patent/WO2022091544A1/ja

Links

Images

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
    • H04L9/3226Cryptographic 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 using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • 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/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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
    • 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
    • H04L9/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3242Cryptographic 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 using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC

Definitions

  • the present invention relates to an information verification device, and particularly to a falsification detection technique for information transmitted via a communication path.
  • Digital signatures are generally adopted to verify that the information corrected via the network is not missing or tampered with.
  • public key cryptography is used for digital signatures in order to reduce the vulnerability due to eavesdropping during key distribution, and this is used for computers composed of relatively low-capacity CPUs (Central Processing Units) such as embedded devices.
  • CPUs Central Processing Units
  • the burden of decrypting the signature part is increasing.
  • Japanese Patent Application Laid-Open No. 2002-259344 Patent Document 1
  • Japanese Patent No. 6078686 Patent Document 2
  • Japanese Patent Application Laid-Open No. 2002-259344 Patent Document 1 is a one-time password authentication system including a user authentication server connected to a user terminal and a mobile phone, and the mobile phone stores (1) confidential information.
  • the user authentication server is (4) a user.
  • the user ID / one-time password receiver that receives the ID and one-time password from the user terminal, and (5) the server-side secret information that stores the same secret information as the secret information stored in the mobile phone-side secret information storage unit.
  • a hash value is obtained using the storage unit, (6) the received user ID, the current time information, and the secret information stored in the server-side secret information storage unit, and the obtained hash value is converted into a character string.
  • Patent Document 2 is an authentication system that authenticates an operation terminal used for maintaining and managing an in-vehicle control device that controls the operation of a vehicle, and the authentication system uses a communication line.
  • the in-vehicle control device includes an authentication device that is connected to the operation terminal via the operation terminal and authenticates an operator who operates the operation terminal, and the in-vehicle control device performs an operation in which the operation terminal maintains and manages the in-vehicle control device.
  • the authentication device and the vehicle-mounted control device are configured to determine whether or not to permit the implementation, and the authentication device and the vehicle-mounted control device are a variable code generation source that generates a variable code that changes in synchronization with each other, the authentication device, and the above-mentioned.
  • the authentication device includes a storage unit that stores a common key unique to the vehicle shared with the in-vehicle control device, and an authentication code generator that generates an authentication code using the variable code and the common key.
  • the authentication code is generated and transmitted to the operation terminal, the operation terminal transmits the authentication code received from the authentication device to the vehicle-mounted control device, and the vehicle-mounted control device shares the same with the variation code.
  • the authentication code is generated using the key, and when the generated authentication code and the authentication code received from the operation terminal match, the operation terminal performs an operation for maintaining and managing the in-vehicle control device.
  • An authentication system characterized by permitting is described (see claim 1).
  • Non-Patent Document 1 describes that falsification of information exchanged by MAC authentication is detected and a reproduction attack is detected by the FV counter included in the distribution information.
  • Asymmetric key cryptography such as public key cryptography for processing the signature part of a digital signature requires a large amount of calculation and a large processing capacity, so it is required to change to another method to reduce the processing load. ing.
  • the calculation of the hash function used for MAC authentication can be implemented by logical operation and shift operation, and it is a low-capacity CPU used in in-vehicle ECU (Electric Control Unit) and IoT (Internet of Things) equipment for embedded applications. But it's easy to handle.
  • a time-synchronized one-time password is generated by using MAC authentication, but the information that is the basis of the authentication includes useful information other than the time and device identification information. Not in. That is, it is an invention limited to the exchange of only authentication information, and does not correspond to MAC authentication technology other than authentication such as distribution information.
  • the present invention aims to solve this problem by raising the two problems of using MAC authentication for distribution information having utility value other than authentication and at the same time proposing a method capable of detecting a reproduction attack.
  • the reproduction attack is a method in which an eavesdropper on a communication channel records past information flowing in the communication channel, and later sends the recorded information or sequence to the attack target as it is to try to deceive the attack target.
  • the signature section does not contain time information, so playback attacks cannot be detected.
  • Non-Patent Document 1 Specific of Module Onboard Communication
  • falsification detection of information exchanged by MAC authentication is performed, and a reproduction attack is detected using FV (Freshness Value) which is a counter included in the distribution information.
  • FV Frshness Value
  • the FV is a counter whose value is updated each time the sender sends information, and the receiving side eliminates the reproduction attack by not accepting the information of the same FV value.
  • Non-Patent Document 1 since the common key for MAC authentication is distributed in advance through the in-vehicle LAN, there is a risk that this common key will be eavesdropped. Therefore, although it is practical in Onboard Communication, that is, communication in a limited range such as an in-vehicle LAN, it is not secure enough to distribute the key via the Internet. Further, if the FV value is managed on both the transmitting side and the receiving side, the management of the FV value becomes complicated when the number of delivery destinations increases.
  • a typical example of the invention disclosed in the present application is as follows. That is, it is an information verification device, and stores the common key whose knowledge is shared between the information source and the information verification device in a format that cannot be easily read from the outside.
  • the message authentication codes are input, at least the authenticity determination result of the delivery information is output.
  • FIG. 5 is a timing diagram showing an information transmission process and a man-in-the-middle attack when OTP is not included in the range of MAC values in the first embodiment.
  • FIG. 2 It is a block diagram which shows the detail of the extended OTP collation chip which concerns on Example 2.
  • FIG. It is a flowchart which shows the delivery information verification process of Example 2.
  • FIG. It is a block diagram which shows the detail of the extended OTP collation chip which concerns on Example 3.
  • FIG. It is a flowchart which shows the delivery information verification process of Example 3.
  • FIG. It is a flowchart of the scheduled interrupt processing of Example 3.
  • the expressions related to the information storage such as "xxx register” and “xxx memory” may be used as an example of the information, but the attributes related to the characteristics of the storage, that is, the method of specifying the location and the superiority or inferiority of the access speed. , Volatile or non-volatile for power operation or refresh operation, or read / write or read-only attributes are not classified by the wording.
  • the data structure of the information can be anything. That is, in order to show that the information does not depend on the structure of the storage area, the "xxx register contents" can be referred to as "xxx memory contents”. Further, the "xxx memory contents” may be simply referred to as "xxx contents”.
  • the configuration of each information is an example, and the information may be divided and held, or may be combined and held.
  • FIG. 1 is a diagram showing a use case of the premise OTP verification chip 110.
  • the OTP verification chip 110 mounted inside the locking device 103 is a device having a calculation unit that executes a predetermined process and a storage unit that can be accessed by the calculation unit in order to authenticate the user 102.
  • the arithmetic unit executes arithmetic processing according to a predetermined procedure, and the processor may execute a predetermined program or hardware (FPGA, ASIC, etc.).
  • the locking device 103 has a function of inducing a locking / unlocking operation of the locking device 103 based on the authentication result of the OTP verification chip 110.
  • the user 102 logs on to the user authentication & OTP issuing server 100 through strict user authentication 107, and when the authority is recognized, the time synchronization type OTP 108 is issued from the user authentication & OTP issuing server 100.
  • the user 102 discloses the issued OTP 108 to the locking device 103 within a predetermined time (the issued OTP 108 and the OTP 109 disclosed to the locking device 103 are the same except for the code).
  • the locking device 103 requests the internal OTP verification chip 110 to determine the authenticity of the OTP 109, and if the authentication is successful by the determination (if the authenticity is recognized), the locking device 103 performs a predetermined operation.
  • the OTP verification chip 110 shares a common key of passphrase 106 with the user authentication & OTP issuing server 100 at the manufacturing stage, and can conceal the common key from the manufacturing stage to the operating stage of the product without leaking information. It can be said that it is an extremely physical key distribution that does not allow key information to flow through the communication path.
  • the OTP verification chip 110 has excellent tamperability, it is impossible to physically search for the common key inside from the outside, and only the firmware inside the OTP verification chip can access the common key information. .. Therefore, the OTP verification chip 110 can be regarded as a kind of HSM (Hardware Security Module).
  • HSM Hard Security Module
  • the common key shared with the information distribution server 1300 called the passphrase 106 inside the OTP verification chip 110 can be diverted to MAC authentication, and falsification of the distribution information can be detected using MAC authentication.
  • this common key corresponds to the physical distribution of the key information hidden in the OTP verification chip 110, there is no risk of eavesdropping based on the key distribution on the communication medium as in Non-Patent Document 1. Also, unlike digital signatures, it is not necessary to use public key cryptography.
  • time-synchronized one-time password which is the original function
  • the beginning of the distribution information as a header
  • it is the information transmitted at the corresponding time in association with the global time (information reproduced after being recorded). It can be verified that it is not), and a playback attack can be detected.
  • FIG. 2 is a block diagram showing a mode in which the OTP verification chip 110, which is a premise, and the locking device 103 thereof are stored.
  • the locking device 103 is composed of a host CPU 210 and an OTP verification chip 110.
  • the host CPU 210 and the OTP collation chip 110 are communicably connected to each other.
  • operations related to security may be integrated into a main body chip (the above-mentioned host CPU 210) and a separate security chip (the above-mentioned OTP verification chip 110). This is to prevent information leakage such as a secret key (information referred to in the public key cryptosystem) or a common key (information referred to in the common key cryptosystem) stored in the security chip.
  • the security chip is separated from the main body chip, and a module that is completely independent in terms of hardware is called an HSM (Hardware Security Module).
  • the memory space of the security chip can be completely unobservable from the main body chip, and leakage of confidential information can be prevented. Also, from the viewpoint of tamper resistance, a concealment method such as a silicon process (floating capacitance) in which information disappears when the seal is opened can be adopted only for the security chip.
  • a concealment method such as a silicon process (floating capacitance) in which information disappears when the seal is opened can be adopted only for the security chip.
  • tamper resistance can be ensured by the OTP verification chip 110 itself as described above, and a common key concealed and protected inside the OTP verification chip 110 through the host CPU 210 (for example, It is possible to prevent the information of the passphrase 106) that shares knowledge with the user authentication & OTP issuing server 100 of FIG. 1 from being read out.
  • the one-time password 109 is sent to the OTP verification chip 110 via the host CPU 210 and the communication path 211.
  • the verification result is sent back from the OTP collation chip 110 to the host CPU 210 via the communication path 212, and the host CPU 210 determines the next process to be executed based on this result.
  • the authentication result returned from the OTP verification chip 110 to the host CPU 210 and various status report values are transmitted.
  • the communication paths 211 and 212 between the OTP verification chip 110 and the host CPU 210 may be serial transmission or parallel transmission such as a bus. It may also be a network controlled by an advanced protocol other than serial or parallel.
  • the communication paths 211 and 212 are controlled by the I / O unit 207 inside the OTP collation chip 110.
  • the OTP collation chip 110 includes a control unit 200, a clock unit 201, a passphrase storage 202, a comparison OTP generation unit 203, a reception OTP buffer 204 for temporarily storing received OTP, an OTP comparator 205, and a determination result for output. It is composed of a register 206 and the above-mentioned I / O unit 207.
  • the control unit 200 is a part that controls the entire operation of the OTP collation chip 110, and may be mounted by a PLC (Programmable Logic Controller), or may be mounted by software or firmware by a general CPU.
  • PLC Process Control Circuit
  • the clock unit 201 has a built-in clock that autonomously ticks the time after the initial time value is set from the host CPU 210 via the communication path 211 at the time of the first operation. Even if the entire power supply of the locking device 103 is interrupted, the backup power supply is supplied so that only the clock unit 201 continues to operate.
  • the backup power is cut off and the clock is stopped, or when the clock is initialized by the reset operation of the OTP verification chip 110, the status to that effect is reported to the host CPU 210 via the communication path 212, and the time value is obtained. Request to reset.
  • the passphrase storage 202 is a part that stores the passphrase 106 that shares knowledge with the user authentication & OTP issuing server 100, and has a high degree of tamper resistance. Protects even (protection against destructive reads can prevent the creation of emulation chips). Of course, the host CPU 210 cannot read the contents stored in the passphrase storage 202.
  • the OTP 109 sent from the outside is stored in the reception OTP buffer 204 of the OTP collation chip 110 via the host CPU 210.
  • the host CPU 210 issues an OTP collation request.
  • the comparison OTP generation unit 203 of the OTP collation chip 110 calculates the comparison OTP value from the current time read from the clock unit 201 synchronized with the user authentication & OTP issuing server 100 and the passphrase 106 read from the passphrase storage 202. do.
  • the OTP comparator 205 compares the value calculated by the comparison OTP generation unit 203 with the value stored in the received OTP buffer 204, determines that the authentication is successful if they match, and fails the authentication if they do not match. Is determined.
  • the determination result is sent to the determination result register 206 and notified to the host CPU 210 via the communication path 212. It is assumed that the determination result output from the OTP collation chip 110 is not simply a fixed value such as a flag of 0 or 1, but is output in a format previously agreed with the host CPU 210. This is to protect the authentication system (coordination operation between the host CPU 210 and the OTP verification chip 110) from modifications to replace with a fake OTP verification chip and attacks in which false information is injected into the communication path 212.
  • FIG. 3 is a block diagram showing details of the expanded OTP collation chip 300 according to the first embodiment.
  • the main body device 307 that stores the OTP verification chip 300 is different from the locking device 103 that has only the OTP authentication function.
  • it forms the core of the in-vehicle LAN and relays between each ECU (data relay). , Periodic conversion, protocol conversion, data recombination, etc.), assuming a device that operates as a CGW (Central Gateway: central gateway).
  • CGW Central Gateway: central gateway
  • the components having the same function as the above-mentioned OTP collation chip 110 are designated by the same reference numerals, and the description thereof will be omitted.
  • the distribution information 310 input to the main unit 307 is connected directly under the CGW through an in-vehicle LAN (not shown), and is updated by OTA (Over-the-Air) with ECU (not shown) data (for updating).
  • OTA Over-the-Air
  • ECU not shown
  • Control software, update patches, control parameters, control rules), etc. are assumed.
  • CGW is a device that becomes a hub of a star-type network composed of these dedicated networks, and is wireless (LTE (Long Term Evolution), Wi-Fi (Wireless Fidelity), smartphone) and wired (fault diagnosis tool, charging terminal). It also functions as an interface for communicating with the outside of the vehicle by means of communication such as).
  • LTE Long Term Evolution
  • Wi-Fi Wireless Fidelity
  • smartphone wireless Fidelity
  • wired fault diagnosis tool, charging terminal
  • the CGW uses the present invention to rigorously authenticate the external activity that is the source of the OTA, strictly inspect the falsification of the transmitted distribution information, and distribute the data to each ECU via the in-vehicle LAN.
  • the distribution information DI Delivery Information
  • the received MAC value that temporarily stores the received MAC value (message authentication code: Message Authentication Code).
  • An AND logic 306 that accepts the contents of the determination result register 206 only in the case is added to the example shown in FIG.
  • FIG. 4 is a diagram showing the form of the information distribution program of Example 1 and the generation principle and verification principle of the check code (signature or MAC value) in comparison with the conventional digital signature.
  • the processing 400 in the information distribution server on the sending side, the information form in the transmission line (wired, wireless) 401, and the reception verification processing 402 in the receiving terminal (car, IoT) are shown in order from the left.
  • the horizontal row of the table shows the conventional digital signature 410 at the top and the method 420 of this embodiment at the bottom.
  • Column 411 shows a procedure for generating information to be transmitted from the server side with a digital signature.
  • the unidirectional hash function hereinafter, the name is abbreviated as a hash function and is described as hash () as a mathematical function
  • hash means that data of an arbitrary length is converted into data of a fixed length (about 128 to 512 bits). It is a cryptographic function having the following properties (1) to (3) to be compressed.
  • (1) One-way It is difficult to find the input value from the output value.
  • a one-way hash function is a cryptography that, given an input, can easily calculate the output with reliable reproducibility, but it is difficult to reverse the input from the output (which requires a huge time cost). Function.
  • this hash value is also called a message digest.
  • the server performs public key encryption with the server private key on the hash value (message digest) calculated in this way to create a signature.
  • Column 412 shows the data transmitted on the transmission line of the distribution information in the digital signature. That is, in the transmission line, the distribution information and the signature are transmitted as a pair. Since the signature does not contain a time component, it is powerless against replay attacks. That is, if the pair of the distribution information and the signature is eavesdropped, the pair of the distribution information and the signature recorded by the eavesdropping can be transmitted to the receiving terminal as many times as possible. Since the receiving terminal has the correct signature, it receives the distribution information as legitimate.
  • Column 413 shows the processing on the receiving terminal side.
  • the receiving terminal publicly decrypts the transmitted signature using the server public key, and obtains the hash value of the decrypted transmission distribution information.
  • the receiving terminal independently obtains a hash value from the received delivery information using the same hash function. Comparing these two hash values, if the hash values match, the information is correctly sent on the sending side and the receiving side, so it is judged OK, and if the hash values do not match, information is missing or falsified. Therefore, it is judged as NG.
  • the lower part 420 shows the operation of the server and the receiving terminal of this embodiment.
  • Column 421 shows the operation on the information distribution server side.
  • An OTP one-time password
  • This OTP is a "MAC authentication value of time information”.
  • the entire MAC value is calculated from the OTP, the distribution information, and the passphrase using the hash function.
  • Column 422 shows the data transmitted on the transmission line of the distribution information in this embodiment. That is, in the transmission line, three values of OTP, distribution information, and MAC value are transmitted as a set. Unlike the conventional digital signature, since the OTP contains the time information, there is an advantage that the reproduction attack can be detected.
  • Column 423 shows the processing on the receiving terminal side.
  • the receiving terminal calculates the OTP from the time and passphrase obtained from the clock synchronized with the clock of the server. If the calculated OTP and the received OTP are different, the passphrase is different from the server, and the destination of the distribution information may not be this receiving terminal, or it may have been hit by a playback attack, so do not receive the distribution information. Discard.
  • the above procedure 424 is a function of the OTP collation chip 110, which is a premise of this embodiment.
  • the MAC value is calculated from this OTP, the distribution information, and the passphrase using the hash function. If the calculated MAC value and the received MAC value match, it is judged that the information is transmitted correctly and it is OK. If the calculated MAC value and the received MAC value do not match, the information is missing or falsified. Since it is, it is judged as NG.
  • the hash function used to generate the MAC value the hash function included in step 424 can be used. In this way, the existing computational resources can be diverted and the cost increase can be suppressed.
  • a regeneration attack can always be detected as a basic ability.
  • the amount of calculation on the receiving terminal side is compared by both methods and the magnitude of the amount of calculation is expressed by an inequality sign, it is generally understood.
  • Public key cryptographic decryption processing >> Hash function processing, so Digital signature (public key cryptographic decryption 1 time + hash function 1 time) >> This example (hash function 2 times)
  • the method 420 of this embodiment is overwhelmingly smaller.
  • the OTP collation chip 110 can additionally implement the calculation and collation processing of the MAC authentication value as in this embodiment. Further, it is possible to suppress an increase in manufacturing cost for expanding the OTP collation chip 110.
  • the host CPU 210 of FIG. 3 When the host CPU 210 of FIG. 3 receives the set of values 422 on the transmission path 401 of FIG. 4, that is, the OTP, the distribution information 310, and the MAC value, the host CPU 210 is inside the expanded OTP matching chip 300 via the communication path 211. Each value is stored in the reception OTP buffer 204, the distribution information DI buffer 301, and the reception MAC value buffer 302. After that, the host CPU 210 issues a distribution information verification request (not shown) to the OTP verification chip 300 similarly expanded via the communication path 211.
  • FIG. 5 is a flowchart showing the distribution information verification process S500 of the first embodiment.
  • the OTP verification chip 300 determines whether or not the distribution information verification request has been received from the host CPU 210, proceeds to step S502 if the distribution information verification request has been received, and has not received the distribution information verification request. The process proceeds to step S509 to end the distribution information verification process.
  • the OTP verification chip 300 refers to the built-in clock device.
  • the time when the OTP is started to be received is captured in the specific register Reg (time) of the built-in clock device, and the time is set in the variable time. The necessity of this time capture function will be described later with reference to FIG.
  • step S503 the OTP verification chip 300 calculates the OTP for comparison.
  • the symbol ⁇ in the figure represents the combination of data, and means that the time information time and the passphrase are combined in a data stream manner.
  • the format of the time information and the method of combining with the passphrase (order, etc.) are unified with the information distribution server side.
  • the OTP collation chip 300 compares the received OTP with the internally calculated OTP. As a result of the comparison, if the OTPs match, the process proceeds to the next step S505. If the OTPs do not match, the determination result is NG in step S508, and the process proceeds to step S509 to end the distribution information verification process.
  • step S505 the OTP verification chip 300 independently calculates the MAC value of the received information.
  • the symbol ⁇ in the figure represents the combination of data. It is possible that the three data stream-like combination methods (order, etc.) of the received OTP content (OTP Buff.), The received distribution information content (DI Buff.), And the passphrase are unified with the information distribution server side. Same as step S503 (here, the name of the storage area is enclosed in parentheses () to indicate the contents of the storage area. The same shall apply hereinafter).
  • the OTP collation chip 300 compares the received MAC value with the independently calculated MAC value. As a result of the comparison, if the MAC values match, the determination result is OK in the next step S507, the process proceeds to step S509, and the distribution information verification process is completed. On the other hand, if the MAC values do not match, the determination result is NG in step S508, the process proceeds to step S509, and the distribution information verification process is terminated.
  • the information on the determination result OK in step S507 and the information on the determination result NG in step S508 are sent to the determination result register 206 in FIG. 3 and notified to the host CPU 210 via the communication path 212.
  • the distribution information verification request (not shown) issued by the host CPU 210 may be issued after the transmission of the set of the reception OTP buffer 204, the distribution information DI buffer 301, and the reception MAC value buffer 302 is completed, but in order to improve the throughput.
  • a delivery information verification request may be issued immediately after the data head of the received OTP arrives at the OTP collation chip 300.
  • a wait process until the transfer of the received OTP buffer 204 is completed is added immediately before the OTP comparison (S504), and a wait process until the transfer of the distribution information DI buffer 301 is completed immediately before the comparison MAC value calculation (S505). Is added, and a wait process until the transfer of the received MAC value buffer 302 is completed may be added immediately before the MAC value comparison (S506).
  • FIG. 6 is a timing diagram showing an OTP time reference in information transfer from the server to the receiving terminal.
  • a series of information is sent to the communication path 610 with the OTP at the head, and the head time at which the OTP starts to be sent is set as the reference time for OTP generation. This is to avoid exceeding the switching time of the OTP value when the entire transmission time of a series of information is long.
  • FIG. 6 the processing in the server 600, the communication path 610, and the processing in the OTP chip 620 are shown in parallel time coordinates from the top. In the figure, time flows from left to right.
  • the OTP is calculated based on the scheduled time 630 when a series of information starts to be sent to the communication path 610 (process 601).
  • OTP611 starts to be sent to the communication path 610.
  • the distribution information is configured (process 602), and the configured distribution information 612 is transmitted to the communication path 610.
  • the MAC value is calculated from the OTP and the distribution information (process 603), and the calculated MAC value 613 is sent to the communication path 610.
  • each of the OTP 611, the distribution information 612, and the MAC value 613 transmitted via the communication path 610 is stored in the reception OTP buffer 204 621, stored in the distribution information DI buffer 301, and received.
  • the comparison OTP calculation process 632 can be started.
  • the comparison OTP calculation process 632 captures the time when OTP reception is started to calculate the comparison OTP, but due to the delay of the communication path 610 and the delay of information transmission by the host CPU 210, a slight time delay ⁇ t (631) occurs. Occur. However, since this time delay ⁇ t (631) is sufficiently smaller than the OTP switching time, its influence can be ignored.
  • the OTP verification process 633 can be executed.
  • the comparison MAC value calculation process 634 can be executed.
  • the MAC value verification process 635 verifies the entire distribution information (received MAC value and original). Comparison with the calculated comparison MAC value) becomes feasible.
  • MAC_ref hash ((DI Buff.) ⁇ passphrase) Is equivalent to.
  • the in-server processing 700, the server output 710, the output 720 of a man-in-the-middle attack disguised as a communication path by interrupting between the server and the receiving terminal, and the recognition 730 of the OTP chip are shown in parallel time coordinates. In the figure, time flows from left to right.
  • the OTP (t1) calculation process 701 the configuration of the distribution information X, and the MAC (X) calculation processes 702 and 703 can be executed independently and in parallel.
  • the OTP (t2) calculation process 704 the configuration of the distribution information Y, and the MAC (Y) calculation processes 705 and 706 can also be executed independently and in parallel.
  • the server output 710 is arranged in the order of OTP (t1) (711) -delivery information X (712) -MAC (X) (713) starting from time t1 (740). Further, starting from time t2 (741), OTP (t2) (714) -delivery information Y (715) -MAC (Y) (716) are arranged in this order.
  • OTP (t1) -delivery information X (712) -MAC (X) (713) starting from time t1 (740). Further, starting from time t2 (741), OTP (t2) (714) -delivery information Y (715) -MAC (Y) (716) are arranged in this order.
  • the symbol “ ⁇ ” is a connection symbol representing a sequence of data sequences.
  • the set of the distribution information X (712) and the MAC (X) (713) is stored as the output 720, and the subsequent data at the time of another OTP header OTP (t2) (714) is the distribution information Y. It is possible to execute an attack that sends data such as rewriting (721) with distribution information X (712) instead of (715) and rewriting (722) with MAC (X) (713) instead of MAC (Y) (716). be.
  • Information distribution information Y (715) and MAC (Y) (716) transmitted from the server are lost in the middle of the communication path.
  • the data arranged in the order of OTP (t1) (711) -delivery information X (712) -MAC (X) (713) and OTP (t2) (714) -delivery information X (712).
  • -Data arranged in the order of MAC (X) (713) has arrived from the server, and since the pair of distribution information and MAC value matches, falsification cannot be detected. That is, this man-in-the-middle attack is a reproduction attack of the distribution information X (712) -MAC (X) (713). This is because if the pair of the distribution information and the correct MAC value is attached under the OPT header that is correct in time, the information is accepted without any contradiction.
  • FIG. 8 is a block diagram showing details of the expanded OTP collation chip 300 according to the second embodiment of the present invention.
  • the OTP verification chip is expanded to support the common key encryption of the distribution information. With this extension, it is possible to prevent the content leakage of the distributed information due to eavesdropping.
  • the difference between the configuration of the second embodiment shown in FIG. 8 and the configuration of the first embodiment shown in FIG. 3 is that a decoded data buffer 802 for transmitting the decoded distribution information to the host CPU 210 is added.
  • the host CPU 210 can acquire the decoded distribution information via the communication path 212.
  • the encryption / decryptor 801 When the authenticity of the distribution information is confirmed, that is, when the AND logic 306 is active due to OTP match and MAC value match, the encryption / decryptor 801 becomes active.
  • the encryption / decryptor 801 decodes the contents of the distribution information DI buffer 301 using the passphrase stored in the passphrase storage 202 as a common key, and transfers the contents to the decryption data buffer 802.
  • each of the common key for generating OTP, the common key for generating the MAC value, and the common key for encrypting and decrypting the distribution information may be used as separate keys, and may be composed of a plurality of individual keys.
  • each key is shared with the information distribution server for each purpose, and in the expanded OTP collation chip 300, a passphrase storage with excellent tamper resistance. Needless to say, it is stored in 202.
  • FIG. 9 is a flowchart showing the distribution information verification process S500 of the second embodiment.
  • Step S901 Decryption of distribution data
  • Step S902 Storage of Decrypted Data in Decrypted Data Buffer 802
  • step S507 When the MAC values are compared in the determination S506 and it is determined that the distribution information has not been tampered with, the point that the determination result is OK in step S507 is the same as in the first embodiment, but in the second embodiment, after the determination result is OK. Decrypt the distribution data in step S901.
  • the passphrase is used in the following three steps. There are three steps: “Step S503: Calculation of OTP for comparison”, “Step S506: Calculation of MAC value for comparison”, and “Step S901: Decoding of distribution data”. As described above, the same passphrase may be used, or different passphrases may be used for different purposes.
  • step S902 the decoded data (Dcrpt_Data) is transferred to the decoded data buffer 802, and the process ends in step S509.
  • the distribution information can be easily encrypted by the common key cryptosystem, which requires less calculation than the public key cryptosystem, and eavesdropping can be prevented.
  • FIG. 10 is a block diagram showing details of the expanded OTP collation chip 300 according to the third embodiment of the present invention.
  • the OTP verification chip is further expanded to support the common key encryption of the distribution information.
  • the expanded OTP collation chip of the third embodiment is configured so that the distribution information serves as both the distribution information for the host CPU 210 and the distribution information for the OTP collation chip, and information for different purposes can be integratedly distributed by the same protocol. ..
  • the distribution information for the OTP verification chip requires common key encryption, and it is necessary to protect the distribution content from eavesdropping. Further, disclosing the contents of the decrypted distribution for the OTP collation chip to the host CPU 210 via the decryption data buffer 802 is a risk of information leakage and should be avoided.
  • the command indicating whether the distribution information is for the host CPU 210 or the OTP verification chip 300 is stored in the distribution information.
  • the command interpreting unit 1001 switches the changeover switch 1002 by a command extracted from the decoded distribution information. For example, if the distribution information is for the host CPU 210, the decoded data is sent to the decoded data buffer 802 as in the second embodiment shown in FIG. On the other hand, if the distribution information is for the OTP collation chip 300, the two-way data changeover switch 1002 is switched, and the decoded data is sent directly to the control unit 200 and not sent to the decoded data buffer 802.
  • the data for the OTP collation chip includes, for example, time adjustment information of the clock unit 201, passphrase update information of the passphrase storage 202, and the like.
  • the passphrase is not updated with the initial key set at the time of manufacturing the OTP verification chip saved, but the common key distributed from the information distribution server is temporarily used.
  • the reason for storing the initial key is that if something goes wrong or the OTP verification chip 300 is master reset, it is more robust as a system to return to the initial key.
  • the temporarily updated passphrase is stored in the distribution information data and sent to the OTP verification chip 300, but since the common key is encrypted with the initial key as described above, there is a risk of leakage of the updated passphrase. Is low and secure enough to distribute keys over the Internet.
  • FIG. 11 is a flowchart showing the distribution information verification process S500 of the third embodiment.
  • Example 3 The difference between the processing flow of Example 3 and the processing flow of Example 1 (FIG. 5) is that the processing steps of S901, S902, and S1101 to S1106 are added, and the processing flow of Example 2 (FIG. 9). The difference from the above is that the processing steps of S1101 to S1106 have been added.
  • the determination result is OK in step S507, and the distribution data is decoded in the subsequent step S901, which is the same as in the second embodiment. After that, it is determined whether the distribution information is for the host CPU 210 or the OTP verification chip 300 (S1101).
  • the decrypted distribution information includes a command for the host CPU 210 or the OTP verification chip 300, and the process is switched based on this command.
  • This mechanism is composed of a command interpretation unit 1001 and a changeover switch 1002 in the block diagram (FIG. 10).
  • step S902 When the distribution information is for the host CPU 210, the data (Dcrpt_Data) decoded in step S902 is transferred to the decoding data buffer 802, and the process ends in step S509. This process is the same as in Example 2.
  • the distribution information is a time update command (S1102). If the distribution information is a time update command, the system function timeset () is called with the time update value time_rnw in the distribution information as an argument to change the current time of the clock device (step 1103). After that, the process ends in step 509.
  • the distribution information is not a time update command, it is determined whether the distribution information is a passphrase update command (S1104) and whether the update target device ID (IDentification: identifier) of the distribution information matches (S1105). If the distribution information is not a passphrase update command or the update target device IDs do not match, the process ends in step S509.
  • the distribution information is a passphrase update command and the update target device IDs match, "1" is set in the passphrase update flag, which is an event flag, and the update setting time is extracted from the distribution information and system variables. It is set in time_chg, the update passphrase is extracted from the distribution information, set in the system variable Pp_new, and the process ends in step S509.
  • FIG. 12 is a flowchart of the scheduled interrupt process executed by the expanded OTP collation chip 300.
  • the scheduled interrupt processing is interrupt processing of the control unit 200 that is cyclically activated each time with a predetermined time resolution and performs a housekeeping task.
  • step 1206 it is determined whether the passphrase update flag is set (whether the value is 1) (S1201). If the passphrase update flag is not set, the event has not occurred, and the process ends in step 1206 without performing anything.
  • the passphrase update flag is set (if the value is 1), the passphrase update event is occurring, so refer to the clock device and enter the current time (contents of Reg_now) in the time variable (S1202). .. Subsequently, it is determined whether or not the current time time has passed the update set time time_chg (S1203). As a result, if the current time time has passed the update set time time_chg, the process proceeds to step 1204. If the current time time has not elapsed the update set time time_chg, the process ends in step 1206 without performing anything.
  • step 1204 the update passphrase Pp_new is sent to the passphrase storage 202 and set as the changed value of the passphrase so far. Subsequently, in step S1205, the passphrase update flag is cleared (set to "0"), and the process ends in step S1206.
  • FIG. 13 is a diagram showing a group of receiving devices that dynamically expands or contracts the receiving cluster by using the above-mentioned passphrase changing function.
  • the passphrase has a function of addressing. Therefore, by temporarily assigning the same passphrase to a plurality of receiving terminals, a receiving cluster can be formed by the plurality of receiving terminal groups.
  • the information distribution server 1300 can collectively broadcast distribution information to the receiving cluster at one time, and can efficiently distribute the information.
  • the state 1301 indicates a group of receiving devices composed of the passphrase of the initial key, and the number in ⁇ indicates the individual ID of the receiver, that is, the identification number of the set passphrase.
  • the state 1302 is a state in which time t1 has elapsed from the state 1301.
  • the provisional passphrase 0 is given to the terminals 3, 5 and 6 by using the passphrase update function described above, and the receiving cluster 1310 is formed.
  • the information distribution server 1300 can collectively broadcast distribution information to the terminals of the reception cluster 1310.
  • the state 1303 is a state in which time t2 has elapsed from the state 1302.
  • the provisional passphrase of terminal 0, which was originally terminal 6 in the receiving cluster 1310 is canceled and returned to the initial key 6. Therefore, the receiving cluster 1311 is smaller than the receiving cluster 1310.
  • the receiving cluster can be expanded or contracted by using the passphrase update function, and the information can be efficiently distributed.
  • the distribution information can be verified without using the method of digital signature, which consumes a large amount of resources, and the processing is low. It can be executed inside a powerful and inexpensive OTP verification chip, and a highly reliable information distribution mechanism can be realized.
  • the parameters of the OTP verification chip itself can be distributed and changed from the server as distribution information.
  • a receiving cluster of the same destination can be dynamically and easily formed and eliminated. That is, the same information can be broadcasted simultaneously from the information distribution server to the devices positioned in the same receiving cluster, and a mechanism adapted to OTA (Over-the-Air: wireless information distribution) such as in-vehicle devices and IoT devices is provided. Can be provided.
  • OTA Over-the-Air: wireless information distribution
  • the information verification device (OTP verification chip 300) of this embodiment includes a one-time password transmitted from an information source (information distribution server 1300) and generated by a synchronized time and a common key. Enter at least three of the distribution information sent from the information source and having a utility value other than authentication, and the message authentication code (MAC value) sent from the information source and calculated using the common key from this information. Then, at least the determination result of the authenticity of the distribution information is output, so that the falsification of the distribution information can be detected and the reproduction attack can be detected. In addition, falsification detection of distribution information and reproduction attack detection can be realized by modifying the existing OTP verification chip while maintaining the basic configuration.
  • MAC value message authentication code
  • the cost increase due to the addition of functions can be minimized, and the added value of the OTP verification chip itself can be improved. That is, the cost increase can be minimized in that the newly added MAC authentication function can be realized by diverting the existing computational resources (for example, hash function).
  • the verification process can be executed in the OTP collation chip, the load on the host CPU 210 is not increased, and the original process is squeezed even by the low-capacity host CPU 210 for in-vehicle use and IoT use. You can improve your security response capability without having to.
  • the common key is not transmitted via the communication channel and is physically distributed, the risk of eavesdropping can be reduced, and it is sufficiently secure even when applied to information distribution via the Internet.
  • the one-time password transmitted from the information source and the one-time password calculated in the information verification device match, and the message authentication code transmitted from the information source is used. If the message authentication code calculated in the information verification device matches, it is determined that the delivery information is genuine, and the fact that the delivery information is genuine is output, so that falsification of the delivery information can be detected. , Can detect replay attacks.
  • the one-time password transmitted from the information source is a time-synchronized one-time password generated based on the transmission start time from a series of information transmitted from the information source to the information verification device. , It is not necessary to consider the time break for generating the one-time password, and the degree of freedom in designing the device is improved.
  • the message authentication code transmitted from the information source is calculated using the common key based on the one-time password transmitted from the information source and the distribution information transmitted from the information source. Therefore, high security can be realized.
  • the message authentication code transmitted from the information source is calculated using the common key based on the distribution information transmitted from the information source, the one-time password calculation process and the distribution information
  • the configuration and MAC value calculation processes can be executed independently and in parallel to improve the processing throughput.
  • the distribution information is encrypted by the common key and transmitted from the information source, and the arithmetic unit decodes the distribution information transmitted from the information source to decode the distribution information. Since the authenticity determination result of the distribution information and the decrypted distribution information are output, it is possible to prevent the content leakage of the distribution information due to eavesdropping.
  • the common key for generating the one-time password, the common key for generating the message authentication code, and the common key for encrypting the distribution information are the same key or a plurality of keys. Since it is a separate key, the application process can be freely set when changing the key. Further, when the common key is the same, the distribution information can be encrypted without setting another common key, and the leakage of the distribution information can be prevented.
  • the information source is configured so that the information verification device can deliver distribution information addressed to the host device whose authenticity should be verified and update information addressed to the information verification device. Does not output the decoded distribution information when the distribution information is the update information addressed to the information verification device, and changes the internal value of the information verification device using the update information. Therefore, the host CPU 210 In addition to the distribution information provided to, the information required by the OTP collation chip 300 (for example, the time adjustment information of the internal clock, the update information of the common key) can be integratedly distributed by the same protocol.
  • the update information from the information source to the information verification device includes time data for correcting the clock of the information verification device, and the calculation device is the authenticity of the distribution information transmitted from the information source.
  • the clock of the information verification device is corrected by using the time data, so that the time can be updated with high security.
  • the update information from the information source to the information verification device includes data for updating the common key whose knowledge is shared between the information source and the information verification device, and the above-mentioned common key to be updated.
  • the arithmetic device includes at least three of the identifier of the information verification device and the update timing of the common key, the authenticity determination result of the distribution information transmitted from the information source is authentic, and the identifier is self-information. If it matches that of the verification device, the common key stored in the verification device is updated at the update timing, so that the common key can be updated with high security.
  • a cluster is formed by a plurality of receiving devices for storing the information verification device, and a plurality of groups forming the cluster are formed. Since the information verification device of the above receives the same distribution information at the same time from the information source using the same one-time password and the same message authentication code, the distribution information is collectively distributed to the cluster one-to-many at one time. It can be broadcast and information can be distributed efficiently.
  • the present invention is not limited to the above-mentioned embodiment, but includes various modifications and equivalent configurations within the scope of the attached claims.
  • the above-described examples have been described in detail in order to explain the present invention in an easy-to-understand manner, and the present invention is not necessarily limited to those having all the described configurations.
  • a part of the configuration of one embodiment may be replaced with the configuration of another embodiment.
  • the configuration of another embodiment may be added to the configuration of one embodiment.
  • other configurations may be added / deleted / replaced with respect to a part of the configurations of each embodiment.
  • each configuration, function, processing unit, processing means, etc. described above may be realized by hardware by designing a part or all of them by, for example, an integrated circuit, and the processor realizes each function.
  • the program to be executed it may be realized by software, or it may be realized as a device control language or firmware closely related to an integrated circuit.
  • Information such as programs, tables, and files that realize each function can be stored in a storage device such as a memory, a hard disk, SSD (Solid State Drive), or a recording medium such as an IC card, SD card, or DVD.
  • a storage device such as a memory, a hard disk, SSD (Solid State Drive), or a recording medium such as an IC card, SD card, or DVD.
  • control lines and information lines show what is considered necessary for explanation, and do not necessarily show all the control lines and information lines necessary for implementation. In practice, it can be considered that almost all configurations are interconnected.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

情報検証装置であって、情報発信元と当該情報検証装置で知識共有された共通鍵を外部から容易に読み取れない形式で格納しており、前記情報発信元から送信され、同期した時刻及び前記共通鍵によって生成されたワンタイムパスワードと、前記情報発信元から送信され、認証以外の利用価値を有する配信情報と、前記情報発信元から送信され、これらの情報から当該共通鍵を用いて計算されたメッセージ認証コードの少なくとも三つが入力されると、少なくとも前記配信情報の真正性の判定結果を出力する。

Description

情報検証装置、電子制御装置、及び情報検証方法 参照による取り込み
 本出願は、令和2年(2020年)10月28日に出願された日本出願である特願2020-180515の優先権を主張し、その内容を参照することにより、本出願に取り込む。
 本発明は、情報検証装置に関し、特に通信路を介して送られる情報の改竄検知技術に関する。
 ネットワークを経由して添削される情報が途中で欠落したり、改竄されていないことを検証するため、一般的にデジタル署名が採用されている。
 しかしながら、デジタル署名は鍵配信時の盗聴による脆弱性を低減するために公開鍵暗号が使われており、組み込み機器など比較的低能力のCPU(Central Processing Unit)で構成された計算機には、この署名部を復号化する負担が大きくなっている。
 また、公開鍵暗号の形式にRSA暗号が採用されている場合、量子コンピュータが実現した際には、その素因数分解計算能力によって秘密鍵が容易に発見され、この危殆化により署名部が偽造されるなどの危険性を有している。
 本技術分野の背景技術として、特開2002-259344号公報(特許文献1)及び特許第6078686号公報(特許文献2)がある。
 特開2002-259344号公報(特許文献1)には、ユーザ端末に接続するユーザ認証サーバと、携帯電話とからなるワンタイムパスワード認証システムであって、携帯電話は、(1)秘密情報を格納する携帯電話側秘密情報格納部と、(2)ユーザIDと、現在時刻情報と、携帯電話側秘密情報格納部に格納する秘密情報とを用いて、ハッシュ値を求め、求めたハッシュ値を文字列に変換することによりワンタイムパスワードを生成する携帯電話側ハッシュ生成部と、(3)生成したワンタイムパスワードを表示するワンタイムパスワード表示部とを有し、ユーザ認証サーバは、(4)ユーザIDとワンタイムパスワードとを、ユーザ端末から受信するユーザID/ワンタイムパスワード受信部と、(5)携帯電話側秘密情報格納部で格納する秘密情報と同一の秘密情報を格納するサーバ側秘密情報格納部と、(6)受信したユーザIDと、現在時刻情報と、サーバ側秘密情報格納部に格納する秘密情報とを用いて、ハッシュ値を求め、求めたハッシュ値を文字列に変換することによりワンタイムパスワードを生成するサーバ側ハッシュ生成部と、(7)サーバ側ハッシュ生成部で生成したワンタイムパスワードと、ユーザID/ワンタイムパスワード受信部で受信したワンタイムパスワードとを比較し、一致した場合に認証結果を成功とするワンタイムパスワード検証部と、(8)認証結果を、ユーザ端末に送信する認証結果送信部とを有することを特徴とするワンタイムパスワード認証システムが記載されている(請求項1参照)。
 また、特許第6078686号公報(特許文献2)には、車両の動作を制御する車載制御装置を維持管理するために用いる操作端末を認証する認証システムであって、前記認証システムは、通信回線を介して前記操作端末と接続され前記操作端末を操作する操作者を認証する認証装置、および前記車載制御装置を備え、前記車載制御装置は、前記操作端末が前記車載制御装置を維持管理する操作を実施することを許可するか否かを判定するように構成されており、前記認証装置と前記車載制御装置は、互いに同期して変化する変動符号を生成する変動符号生成源、前記認証装置と前記車載制御装置との間で共有する前記車両に固有の共通鍵を格納する記憶部、前記変動符号と前記共通鍵を用いて認証符号を生成する認証符号生成器、をそれぞれ備え、前記認証装置は、前記操作端末から認証要求を受け取ると前記操作者を認証し、前記操作者の認証が成功すると、前記操作端末から前記共通鍵を特定する情報を取得し、前記変動符号と前記共通鍵を用いて前記認証符号を生成して前記操作端末へ送信し、前記操作端末は、前記認証装置から受け取った前記認証符号を前記車載制御装置へ送信し、前記車載制御装置は、前記変動符号と前記共通鍵を用いて前記認証符号を生成し、生成した前記認証符号と前記操作端末から受け取った前記認証符号とが一致する場合は、前記操作端末が前記車載制御装置を維持管理する操作を実施することを許可することを特徴とする認証システムが記載されている(請求項1参照)。
 また、Specification of Module Secure Onboard Communication(非特許文献1)には、MAC認証でやり取りする情報の改竄検知を行い、配信情報に含ませたFVカウンターで再生攻撃を検知することが記載されている。
特開2002-259344号公報 特許第6078686号公報
"Specification of Module Secure Onboard Communication"、[online]、AUTOSAR、https://www.autosar.org/fileadmin/user_upload/standards/classic/4-2/AUTOSAR_SWS_SecureOnboardCommunication.pdf
 デジタル署名の署名部を処理するための公開鍵暗号等の非対称鍵暗号は計算量が大きく、大きな処理能力が必要とされるので、他の方式に変更して処理負荷を軽減することが求められている。
 例えば、RSAなどの公開鍵暗号では巨大な冪剰余の算術計算が必要である。一方、MAC認証に用いられるハッシュ関数の計算は、論理演算とシフト演算で実装可能であり、組込み用途の車載ECU(Electric Control Unit)やIoT(Internet of Things)機器に使用される低能力のCPUでも簡単に取り扱える。
 特許文献1及び特許文献2では、MAC認証を用いて時刻同期型ワンタイムパスワードを生成しているが、認証の元となる情報が時刻と機器の識別情報以外に利用価値のある情報を含んでいない。すなわち、認証情報だけのやり取りに限定される発明であり、配信情報など認証以外のMAC認証技術には対応していない。
 本発明は、認証以外に利用価値のある配信情報にMAC認証を使用し、同時に再生攻撃も検知可能な方法を提案する、という二つの課題を掲げてこの解決を計っている。ここで再生攻撃とは、通信路の盗聴者が通信路に流れる過去の情報を記録し、後に、記録した情報やシーケンスをそのまま攻撃対象に送信して攻撃対象を騙そうとする方法である。デジタル署名では署名部が時間情報を含まないため、再生攻撃を検出できない。
 非特許文献1(Specification of Module Secure Onboard Communication)では、MAC認証でやり取りする情報の改竄検知を行い、配信情報に含まれるカウンターであるFV(Freshness Value)を用いて再生攻撃を検知している。
 FVは、送信元が情報を送出する都度に値が更新されるカウンターであり、受信側では同一のFV値の情報を受理しないことによって再生攻撃を排除している。
 しかしながら、非特許文献1ではMAC認証を行う共通鍵を予め車載LANを通じて配信するので、この共通鍵が盗聴されるリスクがある。従って、Onboard Communication、すなわち、車載LANなどの限定された範囲における通信では実用性があるが、インターネットを経由して鍵を配信できるほどセキュアではない。また、送信側と受信側の両方でFV値を管理すると、配信先が増えた場合にFV値の管理が煩雑になる。
 本発明では、前述した鍵配信時の漏洩問題を解決して、インターネットを経由して送られる配信情報の改竄を検知することを目的とする。さらに、デジタル署名では不可能な再生攻撃を検知し、しかも配信先が増えた場合でも管理が煩雑にならない方法を提案することを目的とする。
 本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、情報検証装置であって、情報発信元と当該情報検証装置で知識共有された共通鍵を外部から容易に読み取れない形式で格納しており、前記情報発信元から送信され、同期した時刻及び前記共通鍵によって生成されたワンタイムパスワードと、前記情報発信元から送信され、認証以外の利用価値を有する配信情報と、前記情報発信元から送信され、これらの情報から当該共通鍵を用いて計算されたメッセージ認証コードの少なくとも三つが入力されると、少なくとも前記配信情報の真正性の判定結果を出力することを特徴とする。
 本発明の一態様によれば、配信情報の改竄及び再生攻撃を検知できる。前述した以外の課題、構成及び効果は、以下の実施例の説明によって明らかにされる。
前提となるOTP照合チップのユースケースを示す図である。 前提となるOTP照合チップ、及びその施錠装置内に格納される形態を示すブロック図である。 実施例1に係る拡張されたOTP照合チップの詳細を示すブロック図である。 実施例1の方式と従来のデジタル署名と比較して示す図である。 実施例1の配信情報検証処理を示すフローチャートである。 実施例1の情報転送におけるOTPの時刻の基準を示すタイミング図である。 実施例1でMAC値の範囲にOTPを含まない場合の情報送出プロセスと中間者攻撃を示すタイミング図である。 実施例2に係る拡張されたOTP照合チップの詳細を示すブロック図である。 実施例2の配信情報検証処理を示すフローチャートである。 実施例3に係る拡張されたOTP照合チップの詳細を示すブロック図である。 実施例3の配信情報検証処理を示すフローチャートである。 実施例3の定時割込み処理のフローチャートである。 実施例3の受信クラスタを動的に拡大や縮小する受信機器群を示す図である。
 以下、本発明の実施形態について、図面を参照して説明する。なお、以下に説明する実施形態は請求の範囲に係る発明を限定するものではなく、また実施形態の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段として必須であるとは限らない。
 なお、実施例を説明する図において、同一の機能を有する箇所には同一の符号を付し、その繰り返しの説明は省略する。
 また、以下の説明では、情報の一例として「xxxレジスタ」、「xxxメモリ」という情報記憶域に関する表現を用いる場合があるが、記憶域の特性に関する属性、すなわちロケーションの指定方法、アクセス速度に関する優劣、電源操作もしくはリフレッシュ動作に対する揮発性か不揮発性か、もしくは読み書き可か読み出し専用かなどの属性をその文言により分類するものでは無い。加えて、情報のデータ構造はどのようなものでもよい。すなわち、情報が記憶域の構造に依存しないことを示すために、「xxxレジスタ内容」を「xxxメモリ内容」と言うことができる。さらに、「xxxメモリ内容」を単に「xxxの内容」と言うこともある。そして、以下の説明において、各情報の構成は一例であり、情報を分割して保持したり、結合して保持したりしても良い。
 <前提となる構成>
 本願に先行する形でOTP(One Time Password:ワンタイムパスワード)照合チップの内容を以下に簡単に説明する。
 図1は、前提となるOTP照合チップ110のユースケースを示す図である。
 施錠装置103の内部に実装されたOTP照合チップ110は、ユーザ102を認証するために、所定の処理を実行する演算部と演算部がアクセス可能な記憶部とを有するデバイスである。演算部は、所定の手順に従って演算処理を実行するものであり、プロセッサが所定のプログラムを実行するものでも、ハードウェア(FPGA、ASICなど)でもよい。施錠装置103は、OTP照合チップ110の認証結果によって施錠装置103の施錠・開錠動作を引き起こす機能を有する。
 ユーザ102は、厳格なユーザ認証107を経てユーザ認証&OTP発行サーバ100にログオンし、権限が認められるとユーザ認証&OTP発行サーバ100から時刻同期型OTP108が発行される。
 ユーザ102は、発行されたOTP108を、所定時間内に施錠装置103に開示する(発行されたOTP108と施錠装置103に開示されるOTP109は、符号が異なるのみで同じものである)。施錠装置103は、内部のOTP照合チップ110にOTP109の真正性の判定を依頼し、判定によって認証に成功すれば(真正性が認められれば)所定の動作を行う。
 OTP照合チップ110は、製造段階でユーザ認証&OTP発行サーバ100とパスフレーズ106という共通鍵を共有し、情報が漏洩することなく、製品の製造段階から稼働段階まで共通鍵を秘匿できる。鍵情報を通信路に流さない極めて物理的な鍵配信と言える。
 OTP照合チップ110は、タンパー性に優れており、外部より物理的に中の共通鍵を探ることは不可能であり、OTP照合チップ内部のファームウェアのみが共通鍵情報にアクセスできる構造となっている。従って、OTP照合チップ110は一種のHSM(Hardware Security Module)とみなすことができる。
 サーバ100の時計104とOTP照合チップ110内の時計105は同期しており、パスフレーズ106という共通鍵はサーバ100とOTP照合チップ110で共有されているので、サーバ100の時計104の時刻とパスフレーズ106を用いてハッシュ関数(後述)によって計算した値(OTP108、109)と、OTP照合チップ110内の時計105とパスフレーズ106を用いて同一のハッシュ関数によって計算した比較用の値(図示せず)の一致によって認証が成功する。
 ここで、本実施例のために、ユーザ認証&OTP発行サーバ100を情報配信サーバ(図13の1300)に拡張して考える。さらに、ユーザ102の中間関与を排除し、情報配信サーバ1300自体がオンデマンドで配信情報を加えて拡張したOTP(図4の422)を直に施錠装置103、さらにはOTP照合チップ110まで送信する場合を考える。
 この時、OTP照合チップ110内部のパスフレーズ106という情報配信サーバ1300と共有した共通鍵をMAC認証に流用でき、MAC認証を用いて配信情報の改竄を検知できる。
 また、前述のように、この共通鍵はOTP照合チップ110内に隠蔽された鍵情報の物理配布に相当するので、非特許文献1のような通信媒体上の鍵配信に基づく盗聴リスクがなく、またデジタル署名のように公開鍵暗号を使わなくてもよい。
 さらに、配信情報の先頭に、元々の機能である時刻同期型ワンタイムパスワードをヘッダとして付加することによって、グローバル時間と関連付けて該当時刻に発信された情報である(記録された後に再生された情報ではない)ことを検証でき、再生攻撃を検知できる。
 図2は、前提となるOTP照合チップ110、及びその施錠装置103内に格納される形態を示すブロック図である。
 施錠装置103は、ホストCPU210及びOTP照合チップ110から構成される。ホストCPU210とOTP照合チップ110とは通信可能に接続されている。
 従来、セキュリティに関する演算は、本体チップ(前述のホストCPU210)と別体のセキュリティチップ(前述のOTP照合チップ110)に集約されることがある。これはセキュリティチップに格納された秘匿すべき秘密鍵(公開鍵暗号方式で称するところの情報)、又は共通鍵(共通鍵暗号方式で称するところの情報)などの情報漏洩を防ぐためである。セキュリティチップが、本体チップと別体になり、ハードウェア的に完全に独立したモジュールをHSM(Hardware Security Module)と呼ぶことは前述の通りである。
 セキュリティチップと本体チップとを別体とすることによって、セキュリティチップのメモリ空間を本体チップから完全に観測不能にでき、秘匿情報の漏洩を防止できる。また、耐タンパー性の観点からも封止開放で情報が消えるシリコンプロセス(フローティング・キャパシタンス)などの秘匿化方法をセキュリティチップのみに採用できるようになる。
 ホストCPU210とOTP照合チップ110を別体にすることによって、前述の通りOTP照合チップ110そのものにより耐タンパー性を確保でき、ホストCPU210を通じてOTP照合チップ110内部に秘匿され保護された共通鍵(例えば、図1のユーザ認証&OTP発行サーバ100と知識共有したパスフレーズ106)の情報を読み出されることを防止できる。
 ワンタイムパスワード109は、ホストCPU210を介し、通信路211を経由してOTP照合チップ110に送られる。検証結果は、OTP照合チップ110より通信路212を経由してホストCPU210に送り返される、この結果によって、ホストCPU210は次に実行する処理を決定する。
 ホストCPU210からOTP照合チップ110への通信路211では、ホストCPU210からOTP照合チップ110に与えられるコマンド、OTP照合チップ110内の時計の時刻合わせデータ、及び、外部からの被認証OTPデータが伝送される。
 また、OTP照合チップ110からホストCPU210への通信路212では、OTP照合チップ110からホストCPU210に返送される認証結果、及び、種々のステータス報告値が伝送される。
 OTP照合チップ110とホストCPU210との間の通信路211及び212は、シリアル伝送でもよいし、バスのようなパラレル伝送でもよい。また、シリアルやパラレル以外の高度なプロトコルによって制御されたネットワークでもよい。通信路211及び212は、OTP照合チップ110内部のI/O部207によって制御される。
 OTP照合チップ110は、制御部200、時計部201、パスフレーズ保管庫202、比較用OTP生成部203、受信OTPを一時的に記憶する受信OTPバッファ204、OTP比較器205、出力用の判定結果レジスタ206、及び前述したI/O部207で構成される。
 制御部200は、OTP照合チップ110の全体の動作を制御する部分で、PLC(Programmable Logic Controller)によって実装されてもよいし、一般のCPUによるソフトウェア又はファームウェアで実装されてもよい。
 時計部201は、初回動作時にホストCPU210から通信路211を経由して時刻初期値を設定された後、自律的に時を刻む時計を内蔵している。施錠装置103の全体の電源供給が途切れても、時計部201のみが稼働し続けるようなバックアップ電源が供給されている。
 バックアップ電源が断たれて時計が停止した場合や、OTP照合チップ110のリセット操作によって時計が初期化された場合、その旨のステータスを通信路212を経由してホストCPU210に報告して、時刻値の再設定を依頼する。
 パスフレーズ保管庫202は、ユーザ認証&OTP発行サーバ100と知識共有したパスフレーズ106を保管する部分で、高度の耐タンパー性が確保されており、保管された内容をチップ外部からの破壊読出しに対しても保護する(破壊読み出しに対する保護によって、エミュレーションチップの作成を阻止できる)。もちろん、ホストCPU210は、パスフレーズ保管庫202に保管された内容を読み出せない。
 OTP照合チップ110の動作を簡単に説明すると、外部から送られたOTP109は、ホストCPU210を経由してOTP照合チップ110の受信OTPバッファ204に格納される。OTP109と共に、ホストCPU210よりOTP照合依頼が指令される。
 OTP照合チップ110の比較用OTP生成部203は、ユーザ認証&OTP発行サーバ100と同期した時計部201より読み出した現在時刻と、パスフレーズ保管庫202より読み出したパスフレーズ106から比較用OTP値を算出する。
 OTP比較器205は、比較用OTP生成部203が算出した値と、受信OTPバッファ204に格納された値を比較し、両者が一致すれば認証成功と判定し、両者が不一致であれば認証失敗と判定する。判定結果は、判定結果レジスタ206に送られ、通信路212を経由してホストCPU210に通知される。OTP照合チップ110から出力される判定結果は、単に0又は1のフラグなどの固定値ではなく、予めホストCPU210との間で取り決めた形式で出力することが想定されている。これは偽のOTP照合チップに付け替える改造や、通信路212に偽情報を注入される攻撃から認証システム(ホストCPU210とOTP照合チップ110との連係動作)を保護するためである。
 <実施例1>
 図3は、実施例1に係る拡張されたOTP照合チップ300の詳細を示すブロック図である。
 ちなみに、OTP照合チップ300を格納した本体装置307は、OTP認証の機能のみを有する施錠装置103とは異なり、例えば車載用途の場合、車載LANの中核を成し、各ECU間の中継(データ中継、周期変換、プロトコル変換、データ組み替え等)を行うCGW(Central Gateway:セントラルゲートウェイ)として動作する装置を想定している。なお、拡張されたOTP照合チップ300において、前述したOTP照合チップ110と同じ機能の構成要素には同じ符号を付し、それらの説明は省略する。
 本体装置307に入力される配信情報310は、該CGW直下に車載LAN(図示せず)を通じて接続され、OTA(Over-the-Air)により更新されるECU(図示せず)のデータ(更新用制御ソフトウェア、更新パッチ、制御パラメータ、制御ルール)などを想定している。
 ECUは、制御系、安全系、ボディ系、情報系などの系統別の専用ネットワークに分けて複数が接続されている。CGWは、これらの専用ネットワークで構成されるスター型ネットワークのハブとなる装置であり、無線(LTE(Long Term Evolution)、Wi-Fi(Wireless Fidelity)、スマートフォン)や有線(故障診断ツール、充電ターミナル)などの通信手段によって車外と通信するインタフェースとしても機能する。
 CGWは、本発明を利用してOTA送信元たる外部アクティビティを厳格に認証し、送信された配信情報の改竄を厳格に検査し、各ECUに車載LANを通じてデータを配布する形態とする。
 図3に示す実施例では、受信した配信情報を一時的に記憶する配信情報DI(Delivery Information)バッファ301、受信したMAC値(メッセージ認証コード:Message Authentication Code)を一時的に記憶する受信MAC値バッファ302、MAC値にOTPを含めるかを選択するための切り替えスイッチ303(通常は「閉」)、比較用MAC値生成部304、MAC値比較器305、OTPが一致しかつMAC値が一致する場合のみ判定結果レジスタ206内容をOKとするAND論理306が、図2に示す例に追加されている。
 図4は、実施例1の情報配信プログラムの形態及びチェックコード(署名又はMAC値)の生成原理と検証原理を、従来のデジタル署名と比較して示す図である。
 表の縦列では左から順に送り出し側の情報配信サーバにおける処理400、伝送路(有線、無線)401での情報形態、受信端末(車、IoT)での受信検証処理402を示す。表の横行は、上が従来のデジタル署名410、下が本実施例の方法420を示す。
 上部410に示す従来のデジタル署名の動作から説明する。欄411は、サーバ側からデジタル署名を付して送信する情報の生成手順を示す。配信情報を一方向性ハッシュ関数に入力し、ハッシュ値(メッセージダイジェスト)を計算する。ここで、一方向性ハッシュ関数(以下、名称を略してハッシュ関数、数学関数としてhash()と記載する)とは、任意の長さのデータを固定長(128~512ビット程度)のデータに圧縮する、以下の(1)~(3)の性質を有する暗号学的関数である。
(1)一方向性:出力値から入力値の発見が困難である。すなわち、あるハッシュ値hが与えられたとき、h=hash(m)を満たす任意のmを求める逆演算が困難でなければならない。
(2)第2原像計算困難性:ある入力値と同じハッシュ値が得られる別の入力を求めることが困難である。すなわち、mが与えられたとき、hash(m)=hash(m’)となるようなm’(ただし、m≠m’)を求めるのが困難でなければならない。
(3)衝突困難性:同じ出力値を生成する二つの入力値の発見が困難である。すなわち、hash(m)=hash(m’)を満たすmとm’(ただし、m≠m’)を求めることが困難でなければならない。
 すなわち、一方向性ハッシュ関数とは、入力が与えられれば、確かな再現性をもって簡単に出力を計算できるが、出力から入力の逆演算が困難な(膨大な時間コストが必要である)暗号学的関数である。
 また、如何なる大きさのデータも固定長の出力となるハッシュ値に圧縮して纏めることができるので、このハッシュ値はメッセージダイジェストとも呼称される。サーバは、このように計算されたハッシュ値(メッセージダイジェスト)を、サーバ秘密鍵による公開鍵暗号化を施し署名を作成する。
 欄412は、デジタル署名における配信情報の伝送路で送信されるデータを示す。すなわち、伝送路では配信情報と署名とがペアになって伝送される。署名には時刻成分が含まれていないので、再生攻撃に対して無力となる。すなわち、この配信情報と署名とのペアを盗聴すれば、盗聴によって記録された配信情報と署名とのペアを何回でも受信端末に送信できる。受信端末は、正しい署名が付されているので、配信情報を正当なものとして受信する。
 欄413は、受信端末側の処理を示す。受信端末は、送信された署名を、サーバ公開鍵を用いて公開鍵復号化をして、復号化した送信配信情報のハッシュ値を求める。また、受信端末は同一のハッシュ関数を用いて独自に受信配信情報からハッシュ値を求める。これら二つのハッシュ値を比較し、ハッシュ値が一致すれば送信側と受信側とで情報が正しく送られているのでOKと判定し、ハッシュ値が不一致であれば情報の欠落や改竄が発生しているのでNGと判定する。
 下部420に、本実施例のサーバ、及び受信端末の動作を示す。欄421は情報配信サーバ側の動作を示す。受信側と共有した共通鍵であるパスフレーズと時刻情報からOTP(ワンタイムパスワード)を生成する。従って、このOTPは「時刻情報のMAC認証値」であると言える。続いて、OTPと配信情報とパスフレーズからハッシュ関数を用いて全体のMAC値を計算する。
 欄422は、本実施例における配信情報の伝送路で送信されるデータを示す。すなわち、伝送路では、OTP、配信情報、及びMAC値の三つの値が組で伝送される。従来のデジタル署名と異なり、OTPに時刻情報が含まれているので、再生攻撃が検出可能となる利点がある。
 欄423は、受信端末側の処理を示す。まず、受信端末は、サーバの時計と同期した時計から得た時刻とパスフレーズからOTPを計算する。計算されたOTPと受信したOTPが異なれば、サーバとパスフレーズが異なり、配信情報の宛先がこの受信端末ではないか、又は再生攻撃を受けている可能性があるので、配信情報を受信しないで破棄する。以上の手順424は、本実施例の前提となる構成であるOTP照合チップ110の機能である。
 一方、計算されたOTPと受信したOTPが一致していれば、このOTPと配信情報とパスフレーズからハッシュ関数を用いてMAC値を計算する。この計算したMAC値と受信したMAC値が一致すれば、情報が正しく伝送されているのでOKと判定し、計算したMAC値と受信したMAC値が一致しなければ、情報の欠落や改竄が発生しているのでNGと判定する。MAC値の生成に用いるハッシュ関数は、手順424に内包するハッシュ関数を使用できる。このように現有する計算資源を流用でき、コストの上昇を抑制できる。
 以上に述べたように、本実施例の方法420では、基本的な能力として再生攻撃を常に検知できる。また、受信端末側での計算量を両手法で比較し、計算量の大小を不等号で表現すると、一般的に、
公開鍵暗号復号化処理>>ハッシュ関数処理
となるので、
デジタル署名(公開鍵暗号復号化1回+ハッシュ関数1回)>>本実施例(ハッシュ関数2回)
と本実施例の方法420の方が圧倒的に小さくなる。
 従って、計算能力が低い廉価なCPUでも実行でき、本実施例のようにOTP照合チップ110でもMAC認証値の演算と照合処理を追加実装できる。また、それによってOTP照合チップ110を拡張するための製造コストの上昇も抑制できる。
 図3のホストCPU210は、図4の伝送路401上の値の組み422、すなわちOTPと配信情報310とMAC値を受信すると、通信路211を経由して、拡張されたOTP照合チップ300内部の受信OTPバッファ204、配信情報DIバッファ301、受信MAC値バッファ302に、それぞれの値を格納する。その後、ホストCPU210は、同様に通信路211を経由して拡張されたOTP照合チップ300に対して配信情報検証依頼(図示せず)を発行する。
 図5は、実施例1の配信情報検証処理S500を示すフローチャートである。
 判定S501では、OTP照合チップ300は、ホストCPU210より配信情報の検証依頼を受けたかを判定し、配信情報の検証依頼を受けていればステップS502に進み、配信情報の検証依頼を受けていなければステップS509に進んで、配信情報検証処理を終了する。
 ステップS502では、OTP照合チップ300は、内蔵時計デバイスを参照する。内蔵時計デバイスの特定レジスタReg(time)にはOTPを受信し始めた時刻がキャプチャされており、その時刻を変数timeにセットする。この時刻キャプチャ機能の必要性については、図6で後述する。
 ステップS503では、OTP照合チップ300は、比較用のOTPを計算する。図中記号∪はデータの結合を表し、時刻情報timeとパスフレーズをデータストリーム的に結合することを意味する。時刻情報のフォーマット、及びパスフレーズとの結合方式(順番など)は情報配信サーバ側と統一される。
 判定ステップS504では、OTP照合チップ300は、受信したOTPと内部計算したOTPとを比較する。比較の結果、OTPが一致すれば次のステップS505に進み、OTPが一致しなければステップS508で判定結果NGとして、ステップS509に進んで、配信情報検証処理を終了する。
 ステップS505では、OTP照合チップ300は、受信情報のMAC値を独自に計算する。ステップS503と同様に図中記号∪はデータの結合を表している。受信したOTP内容(OTP Buff.)、受信した配信情報内容(D.I.Buff.)、パスフレーズの三つのデータストリーム的な結合方式(順番など)が情報配信サーバ側と統一されることはステップS503と同じである(ここでは、記憶域の名称を括弧()で囲みその記憶域の内容を表している。以下同じ。)。
 判定ステップS506では、OTP照合チップ300は、受信したMAC値と独自に計算されたMAC値とを比較する。比較の結果、MAC値が一致すれば次のステップS507で判定結果OKとして、ステップS509に進んで、配信情報検証処理を終了する。一方、MAC値が一致しなければステップS508で判定結果NGとして、ステップS509に進んで、配信情報検証処理を終了する。
 ステップS507における判定結果OKの情報及びステップS508における判定結果NGの情報は、図3の判定結果レジスタ206に送られ、通信路212を経由してホストCPU210に通知される。
 ホストCPU210が発行する配信情報検証依頼(図示せず)は、受信OTPバッファ204、配信情報DIバッファ301及び受信MAC値バッファ302のセットの送信が完了した後に発行するとよいが、スループットを向上させるために、受信OTPのデータ先頭がOTP照合チップ300に到来した直後に配信情報検証依頼を発行してもよい。その場合、OTPの比較(S504)の直前に受信OTPバッファ204の転送完了までの待機処理を追加し、比較用MAC値計算(S505)の直前に配信情報DIバッファ301の転送完了までの待機処理を追加し、MAC値比較(S506)の直前に受信MAC値バッファ302の転送完了までの待機処理を追加するとよい。
 図6は、サーバから受信端末への情報転送におけるOTPの時刻の基準を示すタイミング図である。
 結論から言えば、一連の情報はOTPを先頭にして通信路610に送出され、OTPが送出され始める先頭時刻をOTP生成の基準時刻とする。これは、一連の情報の全体の伝送時間が長い場合、OTP値の切り替わり時間の超過を避けるためである。
 図6では、上からサーバ内処理600、通信路610、OTPチップ内処理620を並行する時間座標で示す。図中、時間は左から右に流れる。
 サーバ内処理600では、一連の情報を通信路610に送出し始める予定時刻630を基準にして、OTPを計算する(プロセス601)。
 予定時刻630が到来すると、OTP611を通信路610に送出し始める。
 続いて、サーバ内処理600では、配信情報を構成し(プロセス602)、構成された配信情報612を通信路610に送出する。
 続いて、サーバ内処理600では、OTPと配信情報からMAC値を計算し(プロセス603)、計算されたMAC値613を通信路610に送出する。
 OTPチップ内処理620では、通信路610を経由して伝送されたOTP611、配信情報612及びMAC値613の各々を、受信OTPバッファ204へ格納621し、配信情報DIバッファ301へ格納622し、受信MAC値バッファ302へ格納623する。
 OTPチップ内処理620では、OTP611が到着すると、比較用OTP計算プロセス632が起動可能となる。比較用OTP計算プロセス632ではOTPの受信を開始した時刻をキャプチャして比較用OTPを算出するが、通信路610の遅延及びホストCPU210による情報伝達の遅延によって、多少の時間遅延Δt(631)が発生する。しかし、この時間遅延Δt(631)はOTPの切り替わり時間より十分小さいので、その影響を無視できる。
 受信OTPバッファ204へのOTP611の格納621が完了しており、比較用OTP計算プロセス632が終了していれば、OTP検証プロセス633が実行可能となる。
 受信配信情報用DIバッファへの配信情報612の格納622が完了していれば、比較用MAC値計算プロセス634が実行可能となる。
 受信MAC値バッファ302へのMAC値613の格納623が完了しており、比較用MAC値計算プロセス634が終了していれば、MAC値検証プロセス635で配信情報全体の検証(受信MAC値と独自計算した比較用MAC値との比較)が実行可能となる。
 ここまで、MAC認証の範囲をOTPと配信情報を結合したものとして説明したが、特定の用途においてはMAC認証の範囲からOTPを除外して配信情報のみに限定できる。これは、図3のブロック図において切り替えスイッチ303を「開」にすることに相当する。また、図5の処理フロー図では、ステップS505の比較用MAC値計算を、
MAC_ref = hash( (D.I. Buff.)∪パスフレーズ )
とすることに相当する。
 これにより、OTPと配信情報の結合性がMAC値に反映されなくなり、OTP計算とMAC値計算とを独立したプロセスとして扱うことができる。この変更に伴うメリットとデメリットを図7のタイミングチャートに示す。
 図7では、上からサーバ内処理700、サーバ出力710、サーバと受信端末の間に割り込んで通信路を偽装した中間者攻撃の出力720、OTPチップの認識730を並行する時間座標で示す。図中、時間は左から右に流れる。
 サーバ内処理700で、時刻t1(740)を起点とする配信情報Xと時刻t2(741)を起点とする配信情報Yとを送る場合を考える。
 図示するように、OTP(t1)の計算プロセス701と配信情報Xの構成及びMAC(X)の計算プロセス702、703とを独立して並行に実行できる。OTP(t2)の計算プロセス704と配信情報Yの構成及びMAC(Y)の計算プロセス705、706も同様に独立して並行に実行できる。
 従って、この並行プロセスによるスループットの向上は、種々の端末に異なる配信情報を送る配信情報サーバにとってメリットとなる。
 しかし、OTPと配信情報及びMAC値を分離したために、中間者攻撃を受けるリスクがあるというデメリットもある。以下、このデメリットを説明する。
 サーバ出力710は、時刻t1(740)を起点として、OTP(t1)(711)-配信情報X(712)-MAC(X)(713)の順で並んでいる。また、時刻t2(741)を起点として、OTP(t2)(714)-配信情報Y(715)-MAC(Y)(716)の順で並んでいる。図7の説明において、記号「-」はデータ並びのシーケンスを表す接続記号である。
 中間者攻撃では、その出力720として、配信情報X(712)とMAC(X)(713)の組を記憶し、別のOTPヘッダOTP(t2)(714)の時の後続データを配信情報Y(715)の代わりに配信情報X(712)で書き換え(721)、MAC(Y)(716)の代わりにMAC(X)(713)で書き換え(722)というデータを送信する攻撃が実行可能である。サーバから発信された情報配信情報Y(715)とMAC(Y)(716)は通信経路の途中で失われる。
 OTPチップの認識処理では、OTP(t1)(711)-配信情報X(712)-MAC(X)(713)の順に並んだデータと、OTP(t2)(714)-配信情報X(712)-MAC(X)(713)の順に並んだデータがサーバから到達したことになり、配信情報とMAC値の組が合っているので改竄を検出できない。すなわち、この中間者攻撃は、配信情報X(712)-MAC(X)(713)の再生攻撃を行うことになる。これは配信情報と、その正しいMAC値の対が、時刻的に正しいOPTヘッダの下に付いていれば、矛盾なく情報を受け入れるためである。
 以上、MAC認証範囲が異なる別方式も例示したが、前述したメリットとリスクを加味して採否の判断をすることが肝要となる。
 <実施例2>
 図8は、本発明の実施例2に係る拡張されたOTP照合チップ300の詳細を示すブロック図である。実施例2では、配信情報の共通鍵暗号化に対応するように、OTP照合チップが拡張されている。この拡張によって、盗聴による配信情報の内容漏洩を防止できる。
 図8に示す実施例2の構成と図3に示す実施例1の構成との差分は、復号化した配信情報をホストCPU210に送信するための復号データバッファ802が追加された点である。ホストCPU210は、通信路212を経由して、復号化された配信情報を取得できるようになっている。
 配信情報の真正性が確認された場合、すなわちOTP一致かつMAC値一致でAND論理306がアクティブの場合、暗号復号器801がアクティブとなる。暗号復号器801は、パスフレーズ保管庫202に格納されているパスフレーズを共通鍵として配信情報DIバッファ301の内容を復号化し、復号データバッファ802に転送する。
 ここまでの説明で、情報配信サーバと知識共有した共通鍵は、全てパスフレーズという呼称で記述してきたが、同一のものに限定されなくてもよい。すなわち、OTPを生成する共通鍵、MAC値を生成する共通鍵、及び配信情報を暗号復号化する共通鍵の各々を別の鍵として、複数の個別鍵で構成されてもよい。複数の個別鍵で構成される場合、各々の鍵は用途別に情報配信サーバとの間で知識共有されており、拡張されたOTP照合チップ300の中では、耐タンパー性に優れたパスフレーズ保管庫202の中に保管されることは言うまでもない。
 図9は、実施例2の配信情報検証処理S500を示すフローチャートである。
 実施例2の処理フローと、配信情報を共通鍵暗号化しない実施例1の処理フロー(図5)との差分は、ステップ507で判定結果OKの場合の「ステップS901:配信データの復号化」、「ステップS902:復号化されたデータの復号データバッファ802への格納」が追加された点である。
 判定S506でMAC値を比較し配信情報の改竄が無いと判定されると、ステップS507で判定結果OKとする点は実施例1と同じであるが、実施例2では、判定結果OKとした後にステップS901で配信データを復号化する。
 図9の処理フローでは、以下の3ステップでパスフレーズを使用する。「ステップS503:比較用OTP計算」、「ステップS506:比較用MAC値計算」、「ステップS901:配信データの復号化」の3ステップである。これらのパスフレーズは同一のものを用いてもよいし、用途別に別のパスフレーズを用いてもよいことは前述の通りである。
 続くステップS902では、復号化されたデータ(Dcrpt_Data)を復号データバッファ802に転送し、ステップS509で処理を終了する。
 以上に説明したように、実施例2では、配信情報を公開鍵暗号と比べて計算量が少ない共通鍵暗号方式によって容易に暗号化でき、盗聴を防止できる。
 <実施例3>
 図10は、本発明の実施例3に係る拡張されたOTP照合チップ300の詳細を示すブロック図である。実施例3では、配信情報の共通鍵暗号化に対応するように、OTP照合チップがさらに拡張されている。実施例3の拡張されたOTP照合チップによって、配信情報がホストCPU210向けの配信情報とOTP照合チップ向けの配信情報とを兼ねるように構成し、同一プロトコルで別用途の情報を統合的に配信できる。
 OTP照合チップ向けの配信情報は、共通鍵暗号化が必須であり、配信内容を盗聴から守る必要がある。また、復号化したOTP照合チップ向けの配信内容を、復号データバッファ802を経由してホストCPU210に開示することは、情報漏洩リスクとなるので避けるべきである。
 図10に示す実施例3の構成と図8に示す実施例2の構成との差分は、指令解釈部1001と2方向データ切り替えスイッチ1002が追加された点である。
 配信情報がホストCPU210向けかOTP照合チップ300向けかを示すコマンドは、配信情報に格納されている。指令解釈部1001は、復号化された配信情報から抽出されるコマンドによって切り替えスイッチ1002を切り替える。例えば、配信情報がホストCPU210向けであれば、図8に示す実施例2と同様に、復号化されたデータは復号データバッファ802送られる。一方、配信情報がOTP照合チップ300向けであれば、2方向データ切り替えスイッチ1002が切り替わり、復号化されたデータは制御部200に直接送られ、復号データバッファ802には送られない。OTP照合チップ向けのデータとは、例えば、時計部201の時刻合わせ情報、パスフレーズ保管庫202のパスフレーズ更新情報などがある。
 パスフレーズの更新は、OTP照合チップ製造時に設定された初期鍵を保存した状態で使用せず、情報配信サーバから配信された共通鍵を一時的に使用する。初期鍵を保存しておく理由は、何か障害が発生した場合、又はOTP照合チップ300がマスターリセットされた場合、初期鍵に戻る方がシステムとしてロバストだからである。
 一時的に更新されるパスフレーズは、配信情報データ中に格納されてOTP照合チップ300まで送られるが、前述した通り初期鍵で共通鍵暗号化されているため、更新されるパスフレーズの漏洩リスクは低く、インターネットを経由して鍵を配信しても十分にセキュアである。
 図11は、実施例3の配信情報検証処理S500を示すフローチャートである。
 実施例3の処理フローと実施例1の処理フロー(図5)との差分は、S901、S902、S1101~S1106の処理ステップが追加された点であり、実施例2の処理フロー(図9)との差分は、S1101~S1106の処理ステップが追加された点である。
 判定S506でMAC値を比較し配信情報の改竄が無いと判定されると、ステップS507で判定結果OKとし、続くステップS901で配信データを復号化する点は実施例2と同じである。その後、配信情報がホストCPU210向けか、OTP照合チップ300向けかが判定される(S1101)。
 復号化された配信情報の中に、ホストCPU210向けであるかOTP照合チップ300向けであるのかのコマンドが含まれており、このコマンドに基づいて処理が切り替えられる。この仕組みは、ブロック図(図10)において、指令解釈部1001と切り替えスイッチ1002で構成される。
 配信情報がホストCPU210向けである場合、ステップS902で復号化されたデータ(Dcrpt_Data)を復号データバッファ802に転送し、ステップS509で処理を終了する。この処理は実施例2と同じである。
 一方、配信情報がOTP照合チップ向けである場合、S1102~S1106の処理を実行する。
 まず、配信情報が時刻更新指令であるかが判定される(S1102)。配信情報が時刻更新指令であれば、配信情報中の時刻更新値time_rnwを引数にしてシステム関数timeset()を呼び出して、時計デバイスの現在時刻を変更する(ステップ1103)。その後ステップ509で処理を終了する。
 配信情報が時刻更新指令でなければ、配信情報がパスフレーズ更新指令であるか(S1104)、及び配信情報の更新対象機器ID(IDentification:識別子)が一致するか(S1105)を判定する。配信情報がパスフレーズ更新指令でなく又は更新対象機器IDが一致していなければ、ステップS509で処理を終了する。
 配信情報がパスフレーズ更新指令であり、かつ更新対象機器IDが一致していれば、イベントフラグであるパスフレーズ更新フラグに”1”をセットし、更新設定時刻を配信情報から抽出してシステム変数time_chgにセットし、更新用パスフレーズを配信情報から抽出してシステム変数Pp_newにセットして、ステップS509で処理を終了する。
 実際には、パスフレーズの更新は、図12で示す時間更新用の定時割込み処理S1200で実行される。図12は、拡張されたOTP照合チップ300で実行される定時割込み処理のフローチャートである。定時割込み処理は、所定の時間分解能で毎回サイクリックに起動し、ハウスキーピングタスクを行う制御部200の割り込み処理である。
 まず、パスフレーズ更新用フラグが設定されているか(値が1であるか)を判定する(S1201)。パスフレーズ更新用フラグが設定されていなければ、イベントが発生していないので、何も行わずにステップ1206で処理を終了する。
 パスフレーズ更新用フラグが設定されていれば(値が1であれば)パスフレーズ更新イベントが発生中なので、時計デバイスを参照し、現在時刻(Reg_nowの内容)をtime変数に入力する(S1202)。続いて、現在時刻timeが更新設定時刻time_chgを経過しているかを判定する(S1203)。その結果、現在時刻timeが更新設定時刻time_chgを経過していれば、ステップ1204に進む。現在時刻timeが更新設定時刻time_chgを経過していなければ、何も行わずにステップ1206で処理を終了する。
 ステップ1204では、更新用パスフレーズPp_newをパスフレーズ保管庫202に送って、今までのパスフレーズの変更値として設定する。続いてステップS1205では、パスフレーズ更新フラグをクリア(”0”に設定)し、ステップS1206で処理を終了する。
 図13は、前述したパスフレーズ変更機能を利用して受信クラスタを動的に拡大や縮小する受信機器群を示す図である。
 パスフレーズを決定すればグローバル時間における一つの時刻において唯一のOTPが決定するので、情報配信サーバ1300が一つのOTPを選択すれば、唯一の宛先を決定することになる。従って、パスフレーズは宛先選別(アドレッシング)の機能を持っているといえる。よって、複数の受信端末に暫定的に同一パスフレーズを付与することによって、当該複数の受信端末群で受信クラスタを形成できる。情報配信サーバ1300は、この受信クラスタに対して一時期に一括して配信情報をブロードキャストでき、効率的に情報を配信できる。
 状態1301は、初期鍵のパスフレーズで構成された受信機器群を示しており、○の中の数字は受信機の個別ID、すなわち設定されたパスフレーズの識別番号を示す。
 状態1302は、状態1301から時間t1が経過した状態である。前述したパスフレーズ更新機能を利用して、端末3、5、6に暫定パスフレーズ0が付与され、受信クラスタ1310を形成する。情報配信サーバ1300は、この受信クラスタ1310の端末に一括して配信情報のブロードキャストできる。
 状態1303は、状態1302から時間t2が経過した状態である。再び前述したパスフレーズ更新機能を利用して、受信クラスタ1310中の元々は端末6であった端末0の暫定的なパスフレーズを解除し、初期鍵6に戻す。従って受信クラスタ1311は受信クラスタ1310と比べて小さくなる。
 このように、実施例3では、パスフレーズの更新機能を用いて受信クラスタを拡大や縮小でき、効率的に情報を配信できる。
 以上、実施例1、実施例2、実施例3で述べたように、本明細書に開示した手段によれば、デジタル署名というリソース消費が大きい方式を使わずに配信情報を検証でき、低い処理能力で廉価なOTP照合チップの内部で実行でき、高い信頼性の情報配信機構を実現できる。
 また、OTP照合チップ自体のパラメータも配信情報としてサーバから配信して変更できる。この仕組みに基づいて、同一宛先の受信クラスタを動的かつ容易に形成し解消できる。すなわち、同一受信クラスタに位置づけられた機器には、情報配信サーバから同時に同一情報をブロードキャスト配信でき、車載機器、IoT機器などのOTA(Over-the-Air:無線による情報配信)に適応した仕組みを提供できる。
 以上に説明したように、本実施例の情報検証装置(OTP照合チップ300)は、情報発信元(情報配信サーバ1300)から送信され、同期した時刻及び共通鍵によって生成されたワンタイムパスワードと、情報発信元から送信され、認証以外の利用価値を有する配信情報と、情報発信元から送信され、これらの情報から当該共通鍵を用いて計算されたメッセージ認証コード(MAC値)の少なくとも三つが入力されると、少なくとも配信情報の真正性の判定結果を出力するので、配信情報の改竄を検知できると共に、再生攻撃を検知できる。また、既存のOTP照合チップの基本的構成を維持した改造によって、配信情報の改竄検知及び再生攻撃検知を実現できる。しかも、機能追加によるコストアップを最小化でき、OTP照合チップ自体の付加価値を向上できる。すなわち、現有計算資源(例えばハッシュ関数)を流用して、新たに追加されるMAC認証機能を実現できる点でコストアップを最小化できる。
 また、処理負荷が軽いことから、OTP照合チップ内で検証処理を実行でき、ホストCPU210の負担を増大させず、車載用途及びIoT用途の低能力のホストCPU210であっても本来の処理を圧迫せずにセキュリティ対応能力を向上できる。
 また、通信路を経由して共通鍵が送信されず、物理的に配布されるので、盗聴リスクを低減でき、インターネットを経由した情報配信に適用しても、十分にセキュアである。
 また、情報検証装置は、前記情報発信元から送信されたワンタイムパスワードと当該情報検証装置内で計算されたワンタイムパスワードとが一致し、かつ、前記情報発信元から送信されたメッセージ認証コードと当該情報検証装置内で計算されたメッセージ認証コードとが一致する場合、前記配信情報が真正であると判定し、前記配信情報が真正であることを出力するので、配信情報の改竄を検知できると共に、再生攻撃を検知できる。
 また、情報発信元から送信されるワンタイムパスワードは、前記情報発信元から当該情報検証装置へ送信される一連の情報から送信開始時刻に基づいて生成される時刻同期型のワンタイムパスワードとしたので、ワンタイムパスワードを生成するための時刻の切れ目を考慮する必要がなくなり、装置の設計自由度が向上する。
 また、前記情報発信元から送信されるメッセージ認証コードは、前記情報発信元から送信されるワンタイムパスワード及び前記情報発信元から送信される配信情報に基づいて、前記共通鍵を用いて計算されるので、高いセキュリティを実現できる。
 また、前記情報発信元から送信されるメッセージ認証コードは、前記情報発信元から送信される配信情報に基づいて、前記共通鍵を用いて計算されるので、ワンタイムパスワードの計算プロセスと配信情報の構成及びMAC値の計算プロセスを独立して並行に実行し、処理のスループットを向上させることができる。
 また、前記配信情報は、前記共通鍵によって暗号化されて、前記情報発信元から送信されるものであって、前記演算装置は、前記情報発信元から送信された配信情報を復号化して、前記配信情報の真正性判定結果、及び復号化した配信情報を出力するので、盗聴による配信情報の内容漏洩を防止できる。
 また、前記ワンタイムパスワードを生成するための共通鍵と、前記メッセージ認証コードを生成するための共通鍵と、前記配信情報を暗号化するための共通鍵とは、同一の鍵である、又は複数の別個の鍵としたので、鍵を変えるときに適用プロセスを自由に設定できる。また、共通鍵を同一とした場合、別の共通鍵を設定することなく、配信情報を暗号化でき、配信情報の漏洩を防止できる。
 また、前記情報発信元は、当該情報検証装置が真正性を検証すべきホスト装置宛ての配信情報と、当該情報検証装置宛ての更新情報とを配信できるように構成されており、前記情報検証装置は、前記配信情報が当該情報検証装置宛ての更新情報である場合、前記復号化された配信情報を出力せず、前記更新情報を用いて当該情報検証装置の内部値を変更するので、ホストCPU210に提供される配信情報に加えて、OTP照合チップ300が必要とする情報(例えば、内部時計の時刻合わせ情報、共通鍵の更新情報)を同一プロトコルで統合的に配信できる。
 また、前記情報発信元から当該情報検証装置宛ての更新情報は、当該情報検証装置の時計を修正するための時刻データを含み、前記演算装置は、前記情報発信元から送信される配信情報の真正性判定結果が真正である場合、前記時刻データを用いて当該情報検証装置の時計を修正するので、高いセキュリティで時刻を更新できる。
 また、前記情報発信元から当該情報検証装置宛ての更新情報は、前記情報発信元と前記情報検証装置とで知識共有された共通鍵を更新するためのデータと、前記共通鍵を更新すべき前記情報検証装置の識別子と、前記共通鍵の更新タイミングの少なくとも三つを含み、前記演算装置は、前記情報発信元から送信される配信情報の真正性判定結果が真正であり、かつ識別子が自情報検証装置のものと合致する場合、前記更新タイミングに当該検証装置内に格納される共通鍵を更新するので、高いセキュリティで共通鍵を更新できる。
 また、複数の前記情報検証装置が情報発信元とで知識共有した同一の共通鍵への変更によって、当該情報検証装置を格納する複数の受信機器群でクラスタを形成し、前記クラスタを形成する複数の情報検証装置は、前記情報発信元から同一のワンタイムパスワードと同一メッセージ認証コードとを用いて、同一の配信情報を同時に受信するので、クラスタに対して一時期に一括して配信情報を一対多でブロードキャストでき、効率的に情報を配信できる。
 なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加・削除・置換をしてもよい。
 また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよく、集積回路と密接に関連したデバイス制御言語又はファームウェアとして実現してもよい。
 各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記憶装置、又は、ICカード、SDカード、DVD等の記録媒体に格納することができる。
 また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。

Claims (13)

  1.  情報検証装置であって、
     情報発信元と当該情報検証装置で知識共有された共通鍵を外部から容易に読み取れない形式で格納しており、
     前記情報発信元から送信され、同期した時刻及び前記共通鍵によって生成されたワンタイムパスワードと、前記情報発信元から送信され、認証以外の利用価値を有する配信情報と、前記情報発信元から送信され、これらの情報から当該共通鍵を用いて計算されたメッセージ認証コードの少なくとも三つが入力されると、少なくとも前記配信情報の真正性の判定結果を出力することを特徴とする情報検証装置。
  2.  請求項1記載の情報検証装置であって、
     前記情報発信元から送信されたワンタイムパスワードと当該情報検証装置内で計算されたワンタイムパスワードとが一致し、かつ、前記情報発信元から送信されたメッセージ認証コードと当該情報検証装置内で計算されたメッセージ認証コードとが一致する場合、前記配信情報が真正であると判定し、前記配信情報が真正であることを出力することを特徴とする情報検証装置。
  3.  請求項1記載の情報検証装置であって、
     前記情報発信元から送信されるワンタイムパスワードは、前記情報発信元から当該情報検証装置へ送信される一連の情報から送信開始時刻に基づいて生成される時刻同期型のワンタイムパスワードであることを特徴とする情報検証装置。
  4.  請求項1記載の情報検証装置であって、
     前記情報発信元から送信されるメッセージ認証コードは、前記情報発信元から送信されるワンタイムパスワード及び前記情報発信元から送信される配信情報に基づいて、前記共通鍵を用いて計算されることを特徴とする情報検証装置。
  5.  請求項1記載の情報検証装置であって、
     前記情報発信元から送信されるメッセージ認証コードは、前記情報発信元から送信される配信情報に基づいて、前記共通鍵を用いて計算されることを特徴とする情報検証装置。
  6.  請求項1記載の情報検証装置であって、
     前記配信情報は、前記共通鍵によって暗号化されて、前記情報発信元から送信されるものであって、
     前記情報検証装置は、
     前記情報発信元から送信された配信情報を復号化して、
     前記配信情報の真正性判定結果、及び復号化した配信情報を出力することを特徴とする情報検証装置。
  7.  請求項6記載の情報検証装置であって、
     前記ワンタイムパスワードを生成するための共通鍵と、前記メッセージ認証コードを生成するための共通鍵と、前記配信情報を暗号化するための共通鍵とは、同一の鍵である、又は複数の別個の鍵であることを特徴とする情報検証装置。
  8.  請求項1記載の情報検証装置であって、
     前記情報発信元は、当該情報検証装置が真正性を検証すべきホスト装置宛ての配信情報と、当該情報検証装置宛ての更新情報とを配信できるように構成されており、
     前記情報検証装置は、前記配信情報が当該情報検証装置宛ての更新情報である場合、前記復号化された配信情報を出力せず、前記更新情報を用いて当該情報検証装置の内部値を変更することを特徴とする情報検証装置。
  9.  請求項8記載の情報検証装置であって、
     前記情報発信元から当該情報検証装置宛ての更新情報は、当該情報検証装置の時計を修正するための時刻データを含み、
     前記情報検証装置は、前記情報発信元から送信される配信情報の真正性判定結果が真正である場合、前記時刻データを用いて当該情報検証装置の時計を修正することを特徴とする情報検証装置。
  10.  請求項8記載の情報検証装置であって、
     前記情報発信元から当該情報検証装置宛ての更新情報は、前記情報発信元と前記情報検証装置とで知識共有された共通鍵を更新するためのデータと、前記共通鍵を更新すべき前記情報検証装置の識別子と、前記共通鍵の更新タイミングの少なくとも三つを含み、
     前記情報検証装置は、前記情報発信元から送信される配信情報の真正性判定結果が真正であり、かつ識別子が自情報検証装置のものと合致する場合、前記更新タイミングに当該検証装置内に格納される共通鍵を更新することを特徴とする情報検証装置。
  11.  請求項10記載の情報検証装置であって、
     複数の前記情報検証装置が情報発信元とで知識共有した同一の共通鍵への変更によって、当該情報検証装置を格納する複数の受信機器群でクラスタを形成し、
     前記クラスタを形成する複数の情報検証装置は、前記情報発信元から同一のワンタイムパスワードと同一メッセージ認証コードとを用いて、同一の配信情報を同時に受信することを特徴とする情報検証装置。
  12.  請求項1から11のいずれか一つに記載の情報検証装置を含み、自動車に搭載される電子制御装置。
  13.  情報検証装置が実行する情報検証方法であって、
     前記情報検証装置は、所定の処理を実行する演算装置によって構成され、情報発信元と当該情報配信装置で知識共有された共通鍵を外部から容易に読み取れない形式で格納しており、
     前記情報検証方法は、前記情報検証装置が、前記情報発信元から送信され、同期した時刻及び前記共通鍵によって生成されたワンタイムパスワードと、前記情報発信元から送信され、認証以外の利用価値を有する配信情報と、前記情報発信元から送信され、これらの情報から当該共通鍵を用いて計算されたメッセージ認証コードの少なくとも三つが入力されると、少なくとも前記配信情報の真正性の判定結果を出力することを特徴とする情報検証方法。
PCT/JP2021/031236 2020-10-28 2021-08-25 情報検証装置、電子制御装置、及び情報検証方法 WO2022091544A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE112021004459.1T DE112021004459T5 (de) 2020-10-28 2021-08-25 Informationsverifizierungsvorrichtung, elektronische steuervorrichtung und informationsverifizierungsverfahren
JP2022558876A JPWO2022091544A1 (ja) 2020-10-28 2021-08-25

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020180515 2020-10-28
JP2020-180515 2020-10-28

Publications (1)

Publication Number Publication Date
WO2022091544A1 true WO2022091544A1 (ja) 2022-05-05

Family

ID=81382273

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/031236 WO2022091544A1 (ja) 2020-10-28 2021-08-25 情報検証装置、電子制御装置、及び情報検証方法

Country Status (3)

Country Link
JP (1) JPWO2022091544A1 (ja)
DE (1) DE112021004459T5 (ja)
WO (1) WO2022091544A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114826780A (zh) * 2022-06-24 2022-07-29 中铱数字科技有限公司 一种基于区块链的多层次权限管理系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002259344A (ja) * 2001-02-28 2002-09-13 Mitsubishi Electric Corp ワンタイムパスワード認証システム及び携帯電話及びユーザ認証サーバ
EP3101535A1 (en) * 2015-06-01 2016-12-07 OpenSynergy GmbH Method for updating a control unit for an automotive vehicle, control unit for an automotive vehicle, and computer program product
JP2017505048A (ja) * 2013-12-31 2017-02-09 ヴァスコ データ セキュリティ インターナショナル ゲゼルシャフト ミット ベシュレンクテル ハフツング 電子署名方法、システムおよび装置
JP2018107514A (ja) * 2016-12-22 2018-07-05 日本電気株式会社 位置情報保証装置、位置情報保証方法、位置情報保証プログラム、および通信システム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6078686B2 (ja) 2014-02-28 2017-02-08 日立オートモティブシステムズ株式会社 認証システム、車載制御装置
JP2020180515A (ja) 2019-04-26 2020-11-05 立川ブラインド工業株式会社 遮蔽装置の駆動ユニット

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002259344A (ja) * 2001-02-28 2002-09-13 Mitsubishi Electric Corp ワンタイムパスワード認証システム及び携帯電話及びユーザ認証サーバ
JP2017505048A (ja) * 2013-12-31 2017-02-09 ヴァスコ データ セキュリティ インターナショナル ゲゼルシャフト ミット ベシュレンクテル ハフツング 電子署名方法、システムおよび装置
EP3101535A1 (en) * 2015-06-01 2016-12-07 OpenSynergy GmbH Method for updating a control unit for an automotive vehicle, control unit for an automotive vehicle, and computer program product
JP2018107514A (ja) * 2016-12-22 2018-07-05 日本電気株式会社 位置情報保証装置、位置情報保証方法、位置情報保証プログラム、および通信システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114826780A (zh) * 2022-06-24 2022-07-29 中铱数字科技有限公司 一种基于区块链的多层次权限管理系统及方法
CN114826780B (zh) * 2022-06-24 2022-09-20 中铱数字科技有限公司 一种基于区块链的多层次权限管理系统及方法

Also Published As

Publication number Publication date
JPWO2022091544A1 (ja) 2022-05-05
DE112021004459T5 (de) 2023-06-15

Similar Documents

Publication Publication Date Title
US11533297B2 (en) Secure communication channel with token renewal mechanism
US10142107B2 (en) Token binding using trust module protected keys
US9838870B2 (en) Apparatus and method for authenticating network devices
US8327143B2 (en) Techniques to provide access point authentication for wireless network
CN102138300B (zh) 消息认证码预计算在安全存储器中的应用
US9253162B2 (en) Intelligent card secure communication method
KR101608815B1 (ko) 폐쇄형 네트워크에서 암복호화 서비스 제공 시스템 및 방법
CN110868291B (zh) 一种数据加密传输方法、装置、系统及存储介质
KR20040033159A (ko) 무선 데이터의 암호 및 복호 방법과 그 장치
CN101588245A (zh) 一种身份认证的方法、系统及存储设备
US20200195446A1 (en) System and method for ensuring forward & backward secrecy using physically unclonable functions
CN103546289A (zh) 一种基于USBKey的安全传输数据的方法及系统
US20220209944A1 (en) Secure Server Digital Signature Generation For Post-Quantum Cryptography Key Encapsulations
CN111614621A (zh) 物联网通信方法和系统
CN110913390A (zh) 基于身份秘密共享的抗量子计算车联网方法及系统
CN110519222B (zh) 基于一次性非对称密钥对和密钥卡的外网接入身份认证方法和系统
CN114826702A (zh) 数据库访问密码加密方法、装置和计算机设备
WO2022091544A1 (ja) 情報検証装置、電子制御装置、及び情報検証方法
WO2022041151A1 (zh) 设备验证方法、设备和云端
CN111490874B (zh) 一种配网安全防护方法、系统、装置及存储介质
US11240661B2 (en) Secure simultaneous authentication of equals anti-clogging mechanism
CN117041956A (zh) 通信认证方法、装置、计算机设备和存储介质
KR102415628B1 (ko) Dim을 이용한 드론 인증 방법 및 장치
CN114745114B (zh) 基于口令派生的密钥协商方法、装置、设备及介质
KR101929355B1 (ko) 고유 일련번호 및 대칭키를 이용한 암복호화 시스템

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21885663

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022558876

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 21885663

Country of ref document: EP

Kind code of ref document: A1