US12067152B2ActiveUtilityA1

Verification device, verification system, verification method, and verification program

48
Assignee: NIPPON TELEGRAPH & TELEPHONEPriority: Sep 3, 2019Filed: Sep 3, 2019Granted: Aug 20, 2024
Est. expirySep 3, 2039(~13.2 yrs left)· nominal 20-yr term from priority
G06F 2221/2103G06F 21/78G06F 21/606G06F 21/602H04L 9/3236H04L 9/3271G06F 21/64G06F 21/57
48
PatentIndex Score
0
Cited by
7
References
8
Claims

Abstract

A storage unit stores a size of a free area of storage of target equipment, and software saved in the storage. The generation unit generates a graph including a number of nodes according to the size of the free area of the storage, and transmits the graph to the target equipment. The calculation unit calculates a hash value corresponding to each software block saved in the storage. The verification unit verifies the presence or absence of tampering of the storage of the target equipment using the hash value corresponding to the block calculated, a response calculated using the graph returned to a challenge that specifies a node of the graph, and a hash value corresponding to the block returned as the response to the challenge that specifies the block.

Claims

exact text as granted — not AI-modified
The invention claimed is: 
     
       1. A verification device characterized by comprising:
 a memory; and 
 a processor coupled to the memory and programmed to execute a process comprising: 
 storing a size of a free area of storage of target equipment, and software saved in the storage; 
 generating a graph including a number of nodes according to the size of the free area of the storage of the target equipment, and transmitting the graph to the target equipment; 
 calculating a hash value corresponding to each software block saved in the storage of the target equipment; and 
 verifying presence or absence of tampering of the storage of the target equipment using a hash value corresponding to the software block calculated, a response calculated using the graph returned from the target equipment to a challenge that specifies a node of the graph, and a hash value corresponding to a software block returned from the target equipment as the response to a challenge that specifies the software block calculated. 
 
     
     
       2. The verification device according to  claim 1 , characterized in that the verifying verifies that the response calculated using the graph returned from the target equipment has consistency with all challenges, and whether the hash value corresponding to the software block calculated matches the hash value corresponding to the software block returned from the target equipment. 
     
     
       3. The verification device according to  claim 1 , characterized in that the generating generates the graph such that a product of the number of nodes and a size of the hash value corresponding to each node approximates the size of the free area of the storage of the target equipment within a predetermined range. 
     
     
       4. The verification device according to  claim 1 , characterized in that the verifying further uses a concatenated hash value using a predetermined number of random numbers as the hash value corresponding to the software block calculated. 
     
     
       5. A verification system including a verification device and target equipment, characterized in that:
 the verification device comprises: 
 a memory; and 
 a processor coupled to the memory and programmed to execute a process comprising: 
 storing a size of a free area of storage of the target equipment, and software saved in the storage; 
 generating a graph including a number of nodes according to the size of the free area of the storage of the target equipment, and transmitting the graph to the target equipment; 
 calculating a hash value corresponding to each software block saved in the storage of the target equipment; and 
 verifying presence or absence of tampering of the storage of the target equipment using a hash value corresponding to the software block calculated, a response calculated using the graph returned from the target equipment to a challenge that specifies a node of the graph, and a hash value corresponding to the software block returned from the target equipment as the response to a challenge that specifies the software block calculated; and 
 the target equipment comprises: 
 a memory; and 
 a processor coupled to the memory and programmed to execute a process comprising: 
 saving a hash value calculated corresponding to each node of the graph received from the verification device in the free area of the storage; and 
 responding, when the challenge specifying the node of the graph and the software block of the software saved in the storage is received from the verification device, to the verification device with a response calculated using a hash value corresponding to a node of the graph saved and a hash value calculated corresponding to the software block specified. 
 
     
     
       6. The verification system according to  claim 5 , characterized in that:
 the verifying further specifies a number of random numbers when the verification device transmits the challenge specifying the software block to the target equipment, and the responding by the target equipment returns a concatenated hash value calculated using the further specified number of random numbers as a value corresponding to the block specified. 
 
     
     
       7. A verification method executed by a verification device, the verification device including a memory that stores a size of a free area of storage of target equipment, and software saved in the storage, the verification method characterized by comprising:
 a generation step of generating a graph including a number of nodes according to the size of the free area of the storage of the target equipment, and transmitting the graph to the target equipment; 
 a calculating step of calculating a hash value corresponding to each software block saved in the storage of the target equipment; and 
 a verifying step of verifying presence or absence of tampering of the storage of the target equipment using a hash value corresponding to the software block calculated, a response calculated using the graph returned from the target equipment to a challenge that specifies a node of the graph, and a hash value corresponding to a software block returned from the target equipment as the response to a challenge that specifies the software block calculated. 
 
     
     
       8. A non-transitory computer-readable recording medium having stored therein a verification program for causing a computer to execute:
 by referring to a storage memory that stores a size of a free area of storage of target equipment, and software saved in the storage, 
 a generating step of generating a graph including a number of nodes according to the size of the free area of the storage of the target equipment, and transmitting the graph to the target equipment; 
 a calculating step of calculating a hash value corresponding to each software block saved in the storage of the target equipment; and 
 a verifying step of verifying presence or absence of tampering of the storage of the target equipment using a hash value corresponding to the software block calculated, a response calculated using the graph returned from the target equipment to a challenge that specifies a node of the graph, and a hash value corresponding to a software block returned from the target equipment as the response to a challenge that specifies the software block calculated.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.