WO2023105744A1 - 検知システム、検知装置、検知方法および検知プログラム - Google Patents
検知システム、検知装置、検知方法および検知プログラム Download PDFInfo
- Publication number
- WO2023105744A1 WO2023105744A1 PCT/JP2021/045499 JP2021045499W WO2023105744A1 WO 2023105744 A1 WO2023105744 A1 WO 2023105744A1 JP 2021045499 W JP2021045499 W JP 2021045499W WO 2023105744 A1 WO2023105744 A1 WO 2023105744A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- unit
- response
- hash
- challenge
- Prior art date
Links
- 238000001514 detection method Methods 0.000 title claims description 53
- 230000004044 response Effects 0.000 claims abstract description 101
- 238000000034 method Methods 0.000 claims abstract description 23
- 238000004364 calculation method Methods 0.000 claims abstract description 20
- 238000012795 verification Methods 0.000 claims description 75
- 230000004931 aggregating effect Effects 0.000 claims description 7
- 230000001174 ascending effect Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 description 19
- 238000004891 communication Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 12
- 230000002776 aggregation Effects 0.000 description 9
- 238000004220 aggregation Methods 0.000 description 9
- 238000012790 confirmation Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 5
- 230000010365 information processing Effects 0.000 description 4
- 239000000284 extract Substances 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000010454 slate Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
Definitions
- the present invention relates to a detection system, a detection device, a detection method, and a detection program.
- Attestation technology that detects system tampering is attracting attention.
- digests such as hash values and checksums are periodically acquired at a point in time when the entire storage of the monitored node can be considered normal. Then, by comparing the acquired digest with the digest of the current storage of the node being monitored, the integrity of the node being monitored, that is, checking whether tampering has occurred within the node.
- Software-based attestation technology which performs all of these processes in software, is premised on the ability to safely hold the secret information of each node on a constantly reliable verification server. Therefore, if the verification server is infected, it will not be able to detect tampering correctly, and many models will fail.
- Non-Patent Document 1 a technology has been disclosed that eliminates the need for a verification server by distributing secret information and performing majority voting among nodes.
- the present invention has been made in view of the above, and aims to efficiently verify the integrity of all devices existing in a network.
- the detection system is a detection system having two or more nodes and a base station holding information about each node, the base station , a search unit that searches for a circuit that passes through all nodes in the network only once; a calculation unit that sequentially calculates hash values as many as the number of nodes in the network; and a notifying unit that notifies a hash value corresponding to the order among the calculated hash values, and a node at a later stage in the loop, wherein the node receives the order notified from the notifying unit.
- the sending unit that sends the notified hash value and the challenge to the subsequent node match a hash verification unit for verifying whether the hash value matches, a return unit for returning a response to the sent challenge when the hash values match, and a response verification unit for verifying the returned response.
- FIG. 1 is a diagram for explaining the outline of the detection system.
- FIG. 2 is a diagram for explaining the outline of the detection system.
- FIG. 3 is a diagram for explaining the outline of the detection system.
- FIG. 4 is a schematic diagram illustrating a schematic configuration of the detection system.
- FIG. 5 is a diagram for explaining the processing of the base station.
- FIG. 6 is a sequence diagram showing a detection processing procedure.
- FIG. 7 is a diagram illustrating a computer that executes a detection program.
- FIG. 1 illustrates one-to-one integrity verification of nodes.
- one node functions as a verifier and the other node functions as a provider, and the challenge-response procedure thoroughly discovers that the information on the provider has been tampered with.
- the detection system includes node 1, node 2, and a base station, which are configured to be able to communicate securely with each other using common key cryptography or the like.
- node 1 which is a verifier, sends a random value (nonce) as a challenge to node 2, which is a provider.
- node 1 expects a correct response from node 2 within the time limit.
- Node 2 sets the random value received as the challenge as the seed of its own random number generator.
- node 2 accesses its own storage, performs a random scan using a seed, generates a checksum or hash digest as a response, Send back to 1.
- node 1 verifies the response. If node 2 is infected, node 1 can detect that node 2 is infected because it cannot generate a correct response. Then, the node 1 notifies the base station of the verification result as shown in FIG. 1(5). This enables the base station to confirm the integrity of the node 2 under its control.
- Fig. 2 illustrates integrity confirmation between three or more nodes.
- each node computes multiple sets of challenges sent to itself and responses to the challenges and stores them in memory before deployment.
- FIG. 2(a) when a node is placed in the network, it distributes the challenge/response pair held by itself to neighboring nodes, and distributes the distributed challenge/response pair to itself. Delete from memory.
- secret information is shared, keeping the challenges and corresponding responses that neighboring nodes send to the target node.
- a node that has been elected as a Prover using an appropriate voting algorithm receives challenges from all neighboring nodes, calculates responses for each, and replies.
- the adjacent node compares the returned response with the expected response it holds, and if there is a discrepancy between the two, it notifies the base station that this Prover node is infected.
- each of a plurality of adjacent nodes holds a different set of challenge/response, and the integrity of the Prover node is confirmed, for example, the presence or absence of tampering is determined by majority vote. judge. In this case, as many challenge/response communications and calculations as there are adjacent nodes occur for integrity confirmation of one node that is a Prover.
- the detection system of this embodiment checks whether there is even one infected node in the network instead of performing integrity confirmation of one node as a Prover. Specifically, the detection system 1, as shown in FIG. 3, calculates a Hamilton cycle, which is a circular circuit that passes through all nodes in the network only once, and verifier is the previous node, and verifier is the latter node. is a Prover, and one-to-one integrity confirmation is performed in order.
- a Hamilton cycle which is a circular circuit that passes through all nodes in the network only once, and verifier is the previous node, and verifier is the latter node. is a Prover, and one-to-one integrity confirmation is performed in order.
- the detection system can perform integrity confirmation in one process for the entire node group without performing integrity confirmation N times for each of the N nodes. This makes it possible to significantly reduce communication overhead and the like, suppress the number of communications and calculation costs, and perform integrity confirmation.
- FIG. 4 is a schematic diagram illustrating a schematic configuration of the detection system.
- the detection system 1 includes a base station 10 and two or more nodes 20, and is configured to be able to communicate securely with each other using common key cryptography or the like.
- the base station 10 holds information such as which node's communication range each node 20 in the network is within, which node's secret information is held by each node 20, and other information. control the completeness of the That is, it computes the Hamiltonian cycle for the nodes 20 in the network and directs the nodes 20 to perform one-to-one integrity checks in the order of the Hamiltonian cycle. Each node 20 then performs a one-to-one integrity check with each other as a detector. The base station 10 then aggregates the results of integrity checks between the nodes 20 .
- the base station 10 is implemented by a CPU (Central Processing Unit), NP (Network Processor), FPGA (Field Programmable Gate Array), or the like, and functions as a control unit 11 by executing a processing program stored in memory.
- the base station 10 also has a storage unit 12 implemented by a semiconductor memory device such as (random access memory) or flash memory.
- the base station 10 also includes a communication control unit (not shown), and communicates with the node 20 and other network devices through the communication control unit.
- the storage unit 12 pre-stores processing programs for operating the base station 10, data used during execution of the processing programs, etc., or temporarily stores them each time processing is performed. Note that the storage unit 12 may be configured to communicate with the control unit 11 via the communication control unit.
- the storage unit 12 stores node information 12a used in detection processing, which will be described later.
- the node information 12a includes information such as which node's communication range each node in the network is within, and which node's secret information each node holds.
- the control unit 11 By executing the processing programs stored in the memory, the control unit 11 functions as a search unit 11a, a calculation unit 11b, a notification unit 11c, and an aggregating unit 11d, as illustrated in FIG. It should be noted that these functional units may be implemented in different hardware, respectively or partially. For example, the search unit 11a and the calculation unit 11b, and the notification unit 11c and the aggregation unit 11d may be implemented in separate devices. Also, the control unit 11 may include other functional units.
- the search unit 11a searches for a loop that passes through all nodes in the network only once. Specifically, the search unit 11a calculates the Hamilton cycle for all nodes in the network. The searching unit 11a calculates a Hamilton cycle by referring to the communication status of the node 20 in the node information 12a and the sharing status of challenge/response, which will be described later.
- the detection system 1 performs one-to-one integrity confirmation with the preceding node 20 as the Verifier and the subsequent node 20 as the Prover so as to make one round in the order of the Hamilton cycle.
- the calculation unit 11b sequentially calculates hash values equal to the number N of nodes 20 in the network.
- the notification unit 11c sends to each node 20 the order i in the Hamilton cycle, the (N ⁇ i)-th hash value corresponding to the calculated hash value among the calculated hash values, and the subsequent (i+1) hash value in the Hamilton cycle. )-th node 20.
- the notification unit 11c notifies each node 20 of the Hamilton cycle of the calculated hash values in descending order of calculation in ascending order of the Hamilton cycle. That is, the notification unit 11c notifies the i-th node 20 of the Hamilton cycle of the (N ⁇ i)-th calculated hash value.
- FIG. 5 is a diagram for explaining the processing of the base station.
- the calculation unit 11b applies a hash function to the initial value X to calculate a hash value X'. Also, a hash value X'' is calculated by applying a hash function to the hash value X'. As illustrated in FIG. 5A, the calculation unit 11b repeats this process to generate a hash chain composed of the same number of hash values as the number of nodes 20 in the network.
- the notification unit 11c reverses the hash chain generated by the calculation unit 11b (reverse hash chain), and rearranges the hash values in descending order of calculation. Then, the notification unit 11c sends hash values to each node 20 so that the order of the Hamilton cycle corresponds to the rearranged order as shown in FIG. 5(b), as illustrated in FIG. Notice.
- the hash verification unit 21b of the node 20 uses the hash value sent from the preceding node 20 and the hash value of which the node 20 itself has been notified to verify that the preceding node 20 is the node expected by the base station 10. 20 or not can be verified.
- the hash verification unit 12b applies a hash function to the hash value (for example, X'') sent from the preceding node 20 and the hash value (for example, X') notified to itself, and calculates the hash value ( X'') matches the expected node 20.
- the aggregation unit 11d aggregates verification results of the hash verification unit 21b or the response verification unit 21d of the node 20, which will be described later. As a result, the base station 10 can aggregate verification results, which will be described later, at each node 20 . For example, if even one abnormal result different from the expected value is included in the verification results of each node 20, the aggregating unit 11d assumes that there is an infected node 20 in the network. , to issue an alert.
- the node 20 is implemented by a CPU, NP, FPGA, or the like, and functions as a control unit 21 by executing a processing program stored in memory. Also, the node 20 has a storage unit 22 implemented by a semiconductor memory device such as RAM, flash memory, or the like.
- the node 20 also includes a communication control unit (not shown), and communicates with the base station 10, other network devices, etc. via the communication control unit.
- the storage unit 22 pre-stores the processing program that causes the node 20 to operate, data used during the execution of the processing program, etc., or temporarily stores it each time processing is performed. Note that the storage unit 22 may be configured to communicate with the control unit 21 via the communication control unit.
- the storage unit 22 stores storage content information 22a, challenge/response information 22b, and the like.
- the storage content information 22a is referred to when the returning unit 21c generates a response to the challenge sent from the preceding node 20 in detection processing described later.
- the challenge/response information 22b is a combination of a challenge sent to each node in the network and a normal response to the challenge.
- the node 20 calculates in advance a plurality of challenges to be sent to itself and responses to the challenges before being deployed.
- each neighboring node 20 holds challenge/response information 22b as a response corresponding to the challenge sent to the Prover node. This causes each node in the network to share secret information.
- control unit 21 By executing the processing program stored in the memory, the control unit 21 functions as a sending unit 21a, a hash verification unit 21b, a return unit 21c, and a response verification unit 21d, as illustrated in FIG. Note that the control unit 11 may include other functional units.
- the sending unit 21a sends the notified hash value and challenge to the subsequent node 20 according to the order i notified from the notification unit 11c. Specifically, the sending unit 21a of the i-th node 20 sends the (i+1)-th node 20 the (Ni)-th hash value notified from the notification unit 11c and the (i+1)-th node 20 send a challenge to
- the sending unit 21a refers to the challenge/response information 22b of the storage unit 22 and sends a challenge corresponding to the (i+1)th node in the latter stage as a challenge to the (i+1)th node in the latter stage.
- the hash verification unit 21b verifies whether the hash value sent from the i-th node 20 in the previous stage matches the value calculated by a predetermined method from the notified hash value. Specifically, the hash verification unit 21b verifies whether or not the hash value sent from the i-th node 20 in the previous stage matches the hash value calculated from the notified hash value.
- the hash verification unit 21b of the (i+1)-th node 20 receives the (N ⁇ i)-th hash value sent from the i-th node 20 in the previous stage and the hash value of itself (N ⁇ (i+1)) It verifies whether or not the hash value obtained by applying the hash function to the second hash value matches. If they match, it can be confirmed that the preceding node 20 is the i-th node 20 expected by the base station 10 .
- the hash verification unit 21b shifts the processing to the return unit 12c described below when they match. Further, if the hash verification unit 21b does not match, the hash verification unit 21b may notify the verification result to the aggregation unit 11d of the base station 10, for example.
- the return unit 21c returns a response to the sent challenge when the hash values match in the hash verification unit 21b. Specifically, the return unit 21c extracts the nonce included in the challenge and sets it as a seed. Then, the return unit 12c generates a response by referring to the storage content information 22a, and returns it to the node 20 in the previous stage.
- the response verification unit 21d verifies the returned response. Specifically, the response verification unit 21d refers to the challenge/response information 22b in the storage unit 22 and verifies whether or not the returned response matches a normal response. The response verification unit 21d determines that the subsequent node 20 is normal when they match, and determines that the latter node 20 is infected when they do not match.
- the response verification unit 21d notifies the aggregation unit 11d of the base station 10 of the verification result.
- the base station 10 can aggregate the results of response verification at each node 20 . For example, if even one of the response verification results of each node 20 includes a determination result indicating that the subsequent node 20 is infected, the aggregating unit 11d Issue an alert as it exists.
- the aggregating unit 11d issues an alert assuming that the processing that does not depend on the order of the Hamilton cycle expected by the base station 10 has been executed.
- FIG. 6 is a sequence diagram showing a detection processing procedure.
- the sequence of FIG. 6 is started, for example, when an operation input instructing the start of detection processing is performed.
- the notification unit 11c of the base station 10 sends to each node 20 the order i in the Hamilton cycle, the (Ni)th hash value corresponding to the order among the calculated hash values, and the The (i+1)th node 20 in the latter stage is notified (step S1).
- the sending unit 21a sends the (N-1)th hash value notified from the notifying unit 11c and the challenge to the second node 20 to the second node 20. (Step S10).
- the sending unit 21a refers to the challenge/response information 22b of the storage unit 22 and sends a challenge corresponding to the second node as a challenge to the second node in the latter stage.
- the hash verification unit 21b of the second node 20 hashes the (N-1)-th hash value sent from the first node 20 in the previous stage and the (N-2)-th hash value notified by itself. It is verified whether or not the hash value on which the function is applied matches (step S11).
- the return unit 21c of the second node 20 returns a response to the sent challenge (step S12). Specifically, the return unit 21c extracts the nonce included in the challenge and sets it as a seed. Then, the returning unit 21 c generates a response by referring to the storage content information 22 a and returns it to the first node 20 .
- the response verification unit 21d of the first node 20 verifies the returned response (step S13). Specifically, the response verification unit 21d refers to the challenge/response information 22b in the storage unit 22 and verifies whether or not the returned response matches a normal response. The response verification unit 21d determines that the second node 20 is normal when they match, and determines that the second node 20 is infected when they do not match.
- the response verification unit 21d notifies the verification result to the aggregation unit 11d of the base station 10 (step S14).
- the sending unit 21a sends the (N-2)th hash value notified from the notifying unit 11c and the challenge to the third node 20 to the third node 20. (step S20).
- the hash verification unit 21b of the third node 20 hashes the (N-2)-th hash value sent from the second node 20 in the previous stage and the (N-3)-th hash value notified by itself. It is verified whether or not the hash value on which the function is applied matches (step S21).
- the return unit 21c of the third node 20 returns a response to the sent challenge (step S22).
- the response verification unit 21d of the second node 20 verifies whether the returned response matches a normal response (step S23).
- the response verification unit 21d determines that the third node 20 is normal when they match, and determines that the third node 20 is infected when they do not match.
- the response verification unit 21d notifies the verification result to the aggregation unit 11d of the base station 10 (step S24).
- the sending unit 21a sends the (i+1)-th node 20 the (Ni)-th hash value notified from the notification unit 11c and the (i+1)-th node 20 Send a challenge.
- the sending unit 21a refers to the challenge/response information 22b of the storage unit 22 and sends a challenge corresponding to the (i+1)th node in the latter stage as a challenge to the (i+1)th node in the latter stage. send.
- the hash verification unit 21b of the (i+1)-th node 20 combines the (N ⁇ i)-th hash value sent from the i-th node 20 in the preceding stage with the (N ⁇ (i+1))-th hash value notified by itself. It is verified whether or not the hash value obtained by applying the hash function to the hash value matches.
- the return unit 21c of the (i+1)-th node 20 returns a response to the sent challenge.
- the response verification unit 21d refers to the challenge/response information 22b in the storage unit 22 and verifies whether the returned response matches a normal response.
- the response verification unit 21d determines that the subsequent node 20 is normal when they match, and determines that the latter node 20 is infected when they do not match. Also, the response verification unit 21d notifies the aggregation unit 11d of the base station 10 of the verification result.
- the detection system 1 repeats the same process as above until the process between the Nth node 20 and the first node 20 is reached.
- the aggregating unit 11d determines that the infected node 20 is present in the network. Issue an alert, for example, as it exists. This completes a series of detection processes.
- the searching unit 11a searches for a loop that passes through all the nodes in the network only once.
- the calculation unit 11b sequentially calculates the same number of hash values as the number of nodes in the network.
- the notification unit 11c notifies each node of the order in the loop, the hash value corresponding to the order among the calculated hash values, and the subsequent nodes in the loop.
- the sending unit 21a sends the notified hash value and challenge to subsequent nodes in the order notified from the notification unit 11c.
- the hash verification unit 21b verifies whether or not the hash value sent from the preceding node matches the value calculated from the notified hash value by a predetermined method.
- the return unit 21c returns a response to the sent challenge when the hash values match.
- the response verification unit 21d verifies the returned response.
- the detection system 1 can confirm the integrity of the entire node group with a single process. This makes it possible to significantly reduce communication overhead and the like, suppress the number of communications and calculation costs, and perform integrity confirmation. In this way, it is possible to efficiently check the integrity of all the devices existing in the network without requiring a verification server that can safely hold the secret information of each node.
- the storage unit 22 of the node 20 stores a combination of a challenge sent to each node in the network and a normal response to the challenge.
- the sending unit 21a refers to the storage unit 22 and sends a challenge corresponding to the latter node as a challenge to the latter node.
- the response verification unit 21d refers to the storage unit 22 and verifies whether or not the returned response matches a normal response.
- the notification unit 11c notifies each node of the loop of the calculated hash values in descending order of calculation in ascending order of the loop.
- the hash verification unit 21b verifies whether or not the sent hash value matches the hash value calculated from the notified hash value. As a result, it is possible to efficiently confirm the integrity of the node 20 according to the predetermined circuit.
- the aggregation unit 11d aggregates the verification results of the hash verification unit 21b or the response verification unit 21d. This makes it possible to determine that at least one subsequent node 20 is infected. Therefore, the detection system 1 can easily confirm whether or not there is an infected node 20 in the network.
- the base station 10 and the node 20 can be implemented by installing a detection program that executes the above detection processing as package software or online software on a desired computer.
- the information processing device can function as the base station 10 and the node 20 by causing the information processing device to execute the detection program.
- information processing devices include mobile communication terminals such as smartphones, mobile phones and PHS (Personal Handyphone Systems), and slate terminals such as PDAs (Personal Digital Assistants).
- the functions of the base station 10 and the node 20 may be implemented in a cloud server.
- FIG. 7 is a diagram showing an example of a computer that executes a detection program.
- Computer 1000 includes, for example, memory 1010 , CPU 1020 , hard disk drive interface 1030 , disk drive interface 1040 , serial port interface 1050 , video adapter 1060 and network interface 1070 . These units are connected by a bus 1080 .
- the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM 1012 .
- the ROM 1011 stores a boot program such as BIOS (Basic Input Output System).
- BIOS Basic Input Output System
- Hard disk drive interface 1030 is connected to hard disk drive 1031 .
- Disk drive interface 1040 is connected to disk drive 1041 .
- a removable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 1041, for example.
- a mouse 1051 and a keyboard 1052 are connected to the serial port interface 1050, for example.
- a display 1061 is connected to the video adapter 1060 .
- the hard disk drive 1031 stores an OS 1091, application programs 1092, program modules 1093 and program data 1094, for example. Each piece of information described in the above embodiment is stored in the hard disk drive 1031 or the memory 1010, for example.
- the detection program is stored in the hard disk drive 1031, for example, as a program module 1093 in which commands to be executed by the computer 1000 are described.
- the hard disk drive 1031 stores a program module 1093 that describes each process executed by the base station 10 and the node 20 described in the above embodiment.
- Data used for information processing by the detection program is stored as program data 1094 in the hard disk drive 1031, for example. Then, the CPU 1020 reads out the program module 1093 and the program data 1094 stored in the hard disk drive 1031 to the RAM 1012 as necessary, and executes each procedure described above.
- program module 1093 and program data 1094 related to the detection program are not limited to being stored in the hard disk drive 1031.
- they are stored in a removable storage medium and read by the CPU 1020 via the disk drive 1041 or the like.
- the program module 1093 and program data 1094 related to the detection program are stored in another computer connected via a network such as LAN (Local Area Network) or WAN (Wide Area Network), and via network interface 1070 It may be read by CPU 1020 .
- LAN Local Area Network
- WAN Wide Area Network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
図1~図3は、検知システムの概要を説明するための図である。まず、図1には、ノードの1対1の完全性確認について例示されている。1対1の完全性確認では、一方のノードをVerifier、他方のノードをProverとして機能させて、チャレンジ・レスポンスの手続きでProver上の情報に改ざんが発生したことを漏れなく発見する。
図4は、検知システムの概略構成を例示する模式図である。図4に例示するように、検知システム1は、ベースステーション10および2以上のノード20を含み、相互に共通鍵暗号等により安全に通信可能に構成される。
ベースステーション10は、CPU(Central Processing Unit)やNP(Network Processor)やFPGA(Field Programmable Gate Array)等で実現され、メモリに記憶された処理プログラムを実行して、制御部11として機能する。また、ベースステーション10は、(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子で実現される記憶部12を有する。また、ベースステーション10は、図示しない通信制御部を備え、通信制御部を介してノード20や他のネットワーク装置等と通信する。
ノード20は、CPUやNPやFPGA等で実現され、メモリに記憶された処理プログラムを実行して、制御部21として機能する。また、ノード20は、RAM、フラッシュメモリ等の半導体メモリ素子で実現される記憶部22を有する。また、ノード20は、図示しない通信制御部を備え、通信制御部を介してベースステーション10や他のネットワーク装置等と通信する。
次に、図6を参照して、本実施形態に係る検知システム1による検知処理について説明する。図6は、検知処理手順を示すシーケンス図である。図6のシーケンスは、例えば、検知処理の開始を指示する操作入力があったタイミングで開始される。
以上、説明したように、検知システム1において、ベースステーション10では、探索部11aが、ネットワーク内の全てのノードを1度だけ通る周回路を探索する。算出部11bが、ネットワーク内のノードの数と同数のハッシュ値を順に算出する。また、通知部11cが、各ノードに対し、周回路における順番と、算出されたハッシュ値のうち該順番に応じたハッシュ値と、周回路における後段のノードとを通知する。ノード20では、送付部21aが、通知部11cから通知された順番に従って、後段のノードに、通知されたハッシュ値とチャレンジとを送付する。また、ハッシュ検証部21bが、前段のノードから送付されたハッシュ値と、通知されたハッシュ値から所定の方法で算出した値とが一致するか否かを検証する。また、返送部21cが、ハッシュ値が一致した場合に、送付されたチャレンジに対するレスポンスを返送する。また、レスポンス検証部21dが、返送されたレスポンスを検証する。
上記実施形態に係る検知システム1が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。一実施形態として、ベースステーション10およびノード20は、パッケージソフトウェアやオンラインソフトウェアとして上記の検知処理を実行する検知プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の検知プログラムを情報処理装置に実行させることにより、情報処理装置をベースステーション10およびノード20として機能させることができる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。また、ベースステーション10およびノード20の機能を、クラウドサーバーに実装してもよい。
10 ベースステーション
11、21 制御部
11a 探索部
11b 算出部
11c 通知部
11d 集約部
12、22 記憶部
12a ノード情報
20 ノード(検知装置)
21a 送付部
21b ハッシュ検証部
21c 返送部
21d レスポンス検証部
22a ストレージコンテンツ情報
22b チャレンジ/レスポンス情報
Claims (7)
- 2以上のノードと、各ノードに関する情報を保持するベースステーションとを有する検知システムであって、
前記ベースステーションは、
ネットワーク内の全てのノードを1度だけ通る周回路を探索する探索部と、
ネットワーク内のノードの数と同数のハッシュ値を順に算出する算出部と、
各ノードに対し、前記周回路における順番と、算出された前記ハッシュ値のうち該順番に応じたハッシュ値と、前記周回路における後段のノードとを通知する通知部と、を有し、
前記ノードは、
前記通知部から通知された順番に従って、後段のノードに、通知されたハッシュ値とチャレンジとを送付する送付部と、
送付された前記ハッシュ値と、通知された前記ハッシュ値から所定の方法で算出した値とが一致するか否かを検証するハッシュ検証部と、
前記ハッシュ値が一致した場合に、送付された前記チャレンジに対するレスポンスを返送する返送部と、
返送された前記レスポンスを検証するレスポンス検証部と、
を有することを特徴とする検知システム。 - 前記ノードは、ネットワーク内の各ノードに対して送付するチャレンジと該チャレンジに対する正常なレスポンスとの組み合わせを記憶する記憶部をさらに有し、
前記送付部は、前記後段のノードに、前記チャレンジとして、前記記憶部を参照して該後段のノードに対応するチャレンジを送付し、
前記レスポンス検証部は、前記記憶部を参照し、返送された前記レスポンスが正常なレスポンスと一致するか否かを検証する
ことを特徴とする請求項1に記載の検知システム。 - 前記通知部は、前記周回路の各ノードに、該周回路における順番の昇順に、算出された前記ハッシュ値を算出された順番の降順に通知し、
前記ハッシュ認証部は、送付された前記ハッシュ値と、通知された前記ハッシュ値から算出したハッシュ値とが一致するか否かを検証する
ことを特徴とする請求項1に記載の検知システム。 - 前記ベースステーションが、前記ハッシュ検証部または前記レスポンス検証部の検証の結果を集約する集約部をさらに有することを特徴とする請求項1に記載の検知システム。
- ネットワーク内の各検知装置に対して送付するチャレンジと該チャレンジに対する正常なレスポンスとの組み合わせを記憶する記憶部と、
ネットワーク内の全ての検知装置を1度だけ通る所定の周回路の順番に従って、後段の検知装置に、前記記憶部を参照して該後段の検知装置に対応するチャレンジを送付する送付部と、
送付された前記チャレンジに対するレスポンスを返送する返送部と、
前記記憶部を参照し、返送された前記レスポンスが正常なレスポンスと一致するか否かを検証するレスポンス検証部と、
を有することを特徴とする検知装置。 - 2以上のノードと、各ノードに関する情報を保持するベースステーションとを有する検知システムが実行する検知方法であって、
ネットワーク内の全てのノードを1度だけ通る周回路を探索する探索工程と、
ネットワーク内のノードの数と同数のハッシュ値を順に算出する算出工程と、
各ノードに対し、前記周回路における順番と、算出された前記ハッシュ値のうち該順番に応じたハッシュ値と、前記周回路における後段のノードとを通知する通知工程と、
前記通知工程で通知された順番に従って、後段のノードに、通知されたハッシュ値とチャレンジとを送付する送付工程と、
送付された前記ハッシュ値と、通知された前記ハッシュ値から所定の方法で算出した値とが一致するか否かを検証するハッシュ検証工程と、
前記ハッシュ値が一致した場合に、送付された前記チャレンジに対するレスポンスを返送する返送工程と、
返送された前記レスポンスを検証するレスポンス検証工程と、
を含んだことを特徴とする検知方法。 - ネットワーク内の全てのノードを1度だけ通る周回路を探索する探索ステップと、
ネットワーク内のノードの数と同数のハッシュ値を順に算出する算出ステップと、
各ノードに対し、前記周回路における順番と、算出された前記ハッシュ値のうち該順番に応じたハッシュ値と、前記周回路における後段のノードとを通知する通知ステップと、
前記通知ステップで通知された順番に従って、後段のノードに、通知されたハッシュ値とチャレンジとを送付する送付ステップと、
送付された前記ハッシュ値と、通知された前記ハッシュ値から所定の方法で算出した値とが一致するか否かを検証するハッシュ検証ステップと、
前記ハッシュ値が一致した場合に、送付された前記チャレンジに対するレスポンスを返送する返送ステップと、
返送された前記レスポンスを検証するレスポンス検証ステップと、
をコンピュータに実行させるための検知プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2021/045499 WO2023105744A1 (ja) | 2021-12-10 | 2021-12-10 | 検知システム、検知装置、検知方法および検知プログラム |
AU2021477492A AU2021477492A1 (en) | 2021-12-10 | 2021-12-10 | Detection system, detection device, detection method and detection program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2021/045499 WO2023105744A1 (ja) | 2021-12-10 | 2021-12-10 | 検知システム、検知装置、検知方法および検知プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023105744A1 true WO2023105744A1 (ja) | 2023-06-15 |
Family
ID=86729892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2021/045499 WO2023105744A1 (ja) | 2021-12-10 | 2021-12-10 | 検知システム、検知装置、検知方法および検知プログラム |
Country Status (2)
Country | Link |
---|---|
AU (1) | AU2021477492A1 (ja) |
WO (1) | WO2023105744A1 (ja) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013219710A (ja) * | 2012-04-12 | 2013-10-24 | Toyota Motor Corp | 車載制御装置の認証システム及び車載制御装置の認証方法 |
-
2021
- 2021-12-10 WO PCT/JP2021/045499 patent/WO2023105744A1/ja active Application Filing
- 2021-12-10 AU AU2021477492A patent/AU2021477492A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013219710A (ja) * | 2012-04-12 | 2013-10-24 | Toyota Motor Corp | 車載制御装置の認証システム及び車載制御装置の認証方法 |
Non-Patent Citations (4)
Title |
---|
AMBROSIN, M. ET AL.: "Collective Remote Attestation at the Internet of Things Scale: State-of- the-Art and Future Challenges", IEEE COMMUNICATIONS SURVEYS & TUTOLIALS, vol. 22, no. 4, 2020, pages 2447 - 2461, XP011821400, DOI: 10.1109/COMST.2020.3008879 * |
CONTI, M. DUSHKU ET AL.: "L. V. RADIS: Remote Attestation of Distributed IoT Services", 2019 SIXTH INTERNATIONAL CONFERENCE ON SOFTWARE DEFINED SYSTEMS (SDS, June 2019 (2019-06-01), pages 25 - 32, XP033580001, DOI: 10.1109/SDS.2019.8768670 * |
KUANG, B. ET AL.: "ESDRA: An Efficient and Secure Distributed Remote Attestation Scheme for IoT Swarms", IEEE INTERNET OF THINGS JOURNAL, vol. 6, no. 5, October 2019 (2019-10-01), pages 8372 - 8383, XP011749761, DOI: 10.1109/JIOT.2019.2917223 * |
YI YANGXINRAN WANGSENCUN ZHUGUOHONG CAO: "Distributed Software-based Attestation for Node Compromise Detection in Sensor Networks", IEEE INTERNATIONAL SYMPOSIUM ON RELIABLE DISTRIBUTED SYSTEMS |
Also Published As
Publication number | Publication date |
---|---|
AU2021477492A1 (en) | 2024-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7398000B2 (ja) | ブロックチェーンに基づくデータ検出方法及び装置並びにコンピュータ装置及びプログラム | |
US9747450B2 (en) | Attestation using a combined measurement and its constituent measurements | |
US9444806B2 (en) | Method, apparatus and server for identity authentication | |
US20220027970A1 (en) | Method and apparatus for agreement of block in blockchain network | |
CN109634615B (zh) | 应用安装包的发布方法、验证方法和装置 | |
CN113127569A (zh) | 用于区块链系统的共识方法、装置、电子设备及存储介质 | |
CN112714158A (zh) | 事务处理方法、中继网络、跨链网关、系统、介质和设备 | |
CN106936768B (zh) | 基于可信芯片的白名单网络管控系统及方法 | |
CN110688428A (zh) | 用于发布智能合约的方法和装置 | |
WO2018179293A1 (ja) | 検証情報付与装置、検証装置、情報管理システム、方法およびプログラム | |
US20200401317A1 (en) | Method, device, and computer program product for managing data placement | |
US20220100493A1 (en) | METHOD FOR UPGRADING IoT TERMINAL DEVICE AND ELECTRONIC DEVICE THEREOF | |
WO2023105744A1 (ja) | 検知システム、検知装置、検知方法および検知プログラム | |
CN115964721A (zh) | 一种程序验证方法及电子设备 | |
US11940888B2 (en) | Technology to provide fault tolerance for elliptic curve digital signature algorithm engines | |
US20220200807A1 (en) | Device attestation | |
CN107229860A (zh) | 在集中环境中安全管理桌面应用的方法及系统 | |
Shivraj et al. | A novel multi verifier device attestation scheme for swarm of devices | |
CN113132330A (zh) | 可信状态证明的方法和相关设备 | |
Veronese et al. | Highly-resilient services for critical infrastructures | |
CN115941184B (zh) | 加密模块故障处理方法、装置、电子设备、系统及芯片 | |
CN113872923B (zh) | 基于区块链系统的交易方法、更新方法、装置、设备及存储介质 | |
Mondal et al. | PReFeR: P hysically Re lated F unction bas ed R emote Attestation Protocol | |
AU2019464433B2 (en) | Verification device, verification system, verification method, and verification program | |
KR102205779B1 (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: 21967238 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2023565833 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2021477492 Country of ref document: AU Ref document number: AU2021477492 Country of ref document: AU |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2021967238 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2021477492 Country of ref document: AU Date of ref document: 20211210 Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 2021967238 Country of ref document: EP Effective date: 20240604 |