WO2012104977A1 - 鍵設定方法、ノード、サーバおよびネットワークシステム - Google Patents

鍵設定方法、ノード、サーバおよびネットワークシステム Download PDF

Info

Publication number
WO2012104977A1
WO2012104977A1 PCT/JP2011/051964 JP2011051964W WO2012104977A1 WO 2012104977 A1 WO2012104977 A1 WO 2012104977A1 JP 2011051964 W JP2011051964 W JP 2011051964W WO 2012104977 A1 WO2012104977 A1 WO 2012104977A1
Authority
WO
WIPO (PCT)
Prior art keywords
key
gateway
packet
hoc network
encrypted
Prior art date
Application number
PCT/JP2011/051964
Other languages
English (en)
French (fr)
Inventor
和快 古川
伊豆 哲也
尚 兒島
武仲 正彦
Original Assignee
富士通株式会社
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 富士通株式会社 filed Critical 富士通株式会社
Priority to JP2012555601A priority Critical patent/JP5418700B2/ja
Priority to PCT/JP2011/051964 priority patent/WO2012104977A1/ja
Publication of WO2012104977A1 publication Critical patent/WO2012104977A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0827Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving distinctive intermediate devices or communication paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • H04W12/033Protecting confidentiality, e.g. by encryption of the user plane, e.g. user's traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/041Key generation or derivation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Definitions

  • the present invention relates to a key setting method, a node, a server, and a network system for setting a key for encrypting data.
  • An ad hoc network is a type of self-configuring network that is linked by wireless communication.
  • An ad hoc network is composed of a plurality of nodes. Each node in the ad hoc network transmits and receives packets by multi-hop communication.
  • Multi-hop communication is a technology in which nodes that do not exist within the communication range of each other communicate with each other via another node that exists within the communication range of each node.
  • ad hoc network when connecting an ad hoc network and another network such as the Internet, LAN (Local Area Network), WAN (Wide Area Network), etc., communication between networks is transferred using a relay device called a gateway.
  • LAN Local Area Network
  • WAN Wide Area Network
  • a node capable of wireless communication is built into each household power meter, and a worker performs work such as meter confirmation via the ad hoc network without going to the site.
  • a node capable of wireless communication is built into each household power meter, and a worker performs work such as meter confirmation via the ad hoc network without going to the site.
  • an ad hoc network that handles personal information such as the amount of power used in each home, it is required to perform secure communication from the viewpoint of confidentiality and prevention of tampering.
  • the new node when the new node is initially introduced into the system, the new node cannot communicate securely with other nodes in the ad hoc network until the encryption key is set. For this reason, it is difficult to automatically set an encryption key to a new node via an ad hoc network, and a worker goes to the site to set the encryption key.
  • Patent Document 1 there is a technique for managing an encryption key of a network that performs communication by broadcast (for example, see Patent Document 1 below).
  • Patent Document 2 There is also a technique for stably performing key exchange at the start of communication in an ad hoc network (see, for example, Patent Document 2 below).
  • Patent Document 3 There is also a technique for each node in an ad hoc network to select an adaptive gateway (see, for example, Patent Document 3 below).
  • the above-described prior art has a problem that when the encryption key set for each node in the ad hoc network is changed for each gateway, it is difficult to specify the gateway to which the new node belongs at the initial introduction of the new node. It was. For example, even if the candidate gateways can be narrowed down from the address of the installation location of the new node, the communication status changes depending on factors such as the weather and the positional relationship with a nearby building. For this reason, it is necessary for the worker to go to the site to check which gateway is actually communicable, and there is a problem in that the work time and work load required for the work of setting the encryption key of the worker are increased. .
  • a new node when a new node can communicate with a plurality of ad hoc networks, it belongs to one of the ad hoc networks.
  • the communication load varies such as an increase in the communication load, resulting in a lack of communication stability.
  • the present invention provides a key setting method, a node, a server, and a network system that can improve the efficiency of setting work of an encryption key used by a node in an ad hoc network in order to solve the above-described problems caused by the prior art.
  • a node capable of receiving packets from a plurality of ad hoc networks within a communication area in an ad hoc network group includes a plurality of ad hoc networks.
  • a plurality of encrypted packets encrypted using the gateway-specific keys simultaneously notified from the gateways are received from the plurality of ad hoc networks, and the gateway-specific keys in the ad hoc networks of the ad hoc networks And detecting a connection with a portable terminal capable of communicating with a server holding the number of nodes, and detecting a connection with the portable terminal, the plurality of encrypted packets received via the portable terminal are To the server, and through the mobile terminal, the plurality of ad hoc networks
  • a key unique to a gateway in any ad hoc network that does not have the maximum number of nodes in the network is received from the server, and the received key is encrypted in a multi-hop communication in any one of the ad hoc networks. It is possible to provide a key setting method, a node, and a network system that are set in a key to be converted.
  • a node that is communicable with each gateway of an ad hoc network group, an address of each gateway, a key unique to each gateway, and a node existing in each ad hoc network of the ad hoc network group And a plurality of ciphers encrypted by a server having a database storing the number using a key unique to each gateway simultaneously notified from each gateway of the plurality of ad hoc networks within the communication range of the ad hoc network group.
  • Each of the plurality of encrypted packets received from the node that received the encrypted packet via the mobile terminal connected to the node, and included in each of the received encrypted packets Each gateway belongs based on the gateway address The number of nodes existing in the ad hoc network, and among the plurality of ad hoc networks, a gateway-specific key in any one of the ad hoc networks that is not the maximum number of nodes among the specified number of nodes, Provided is a key setting method, a server, and a network system for selecting from the gateway-specific keys in the plurality of ad hoc networks in the database and transmitting the selected selection key to the node via the portable terminal can do.
  • node node, server, and network system, it is possible to improve the efficiency of setting the encryption key used by the nodes in the ad hoc network.
  • communication can be stabilized by averaging the nodes between a plurality of ad hoc networks.
  • FIG. 1 is an explanatory diagram of an example of averaging the number of nodes in the network system according to the embodiment.
  • FIG. 2 is an explanatory diagram of an example of the network system according to the embodiment.
  • FIG. 3 is a block diagram of a hardware configuration example of the management server according to the embodiment.
  • FIG. 4 is a block diagram illustrating a hardware configuration example of a node or the like according to the embodiment.
  • FIG. 5 is an explanatory diagram showing an example of the contents stored in the encryption key DB shown in FIG.
  • FIG. 6 is an explanatory diagram showing an example of introducing a new node into the network system.
  • FIG. 7 is a sequence diagram showing an operation example (first half) of the network system when a new node is introduced.
  • FIG. 1 is an explanatory diagram of an example of averaging the number of nodes in the network system according to the embodiment.
  • FIG. 2 is an explanatory diagram of an example of the network system according to the embodiment.
  • FIG. 3
  • FIG. 8 is a sequence diagram showing an operation example (second half) of the network system when a new node is introduced.
  • FIG. 9 is a block diagram illustrating a functional configuration example of a node.
  • FIG. 10 is an explanatory diagram showing an example of the data structure of the encrypted packet.
  • FIG. 11 is a block diagram illustrating a functional configuration example of the management server.
  • FIG. 12 is an explanatory diagram (part 2) illustrating an example of the data structure of the encrypted packet.
  • FIG. 13 is an explanatory diagram illustrating an example of authentication information of the management server.
  • FIG. 14 is an explanatory diagram illustrating an example of authentication information of the mobile terminal.
  • FIG. 15 is a flowchart illustrating an example of a node key setting processing procedure.
  • FIG. 10 is an explanatory diagram showing an example of the data structure of the encrypted packet.
  • FIG. 11 is a block diagram illustrating a functional configuration example of the management server.
  • FIG. 12 is an explanatory diagram (part 2)
  • FIG. 16 is a flowchart illustrating an example of a key providing process procedure of the management server.
  • FIG. 17 is a flowchart illustrating an example of a specific processing procedure of the key extraction processing (part 1) in step S1602.
  • FIG. 18 is a flowchart illustrating an example of a specific processing procedure of the key extraction processing (part 2) in step S1602.
  • FIG. 1 is an explanatory diagram of an example of averaging the number of nodes in the network system according to the embodiment.
  • NW1 such as the Internet, LAN, and WAN.
  • Averaging is attempted. Specifically, instead of rearranging the nodes that have already been introduced, the new nodes Nx are added to the ad hoc network with a small number of nodes when the new nodes Nx are introduced, thereby averaging in stages.
  • FIG. 1 will be described in detail.
  • the management server 101 is a computer that includes an encryption key DB (database) 110 and manages encryption keys unique to each gateway.
  • the management server 101 holds encryption keys K1 to K4 unique to the gateways G1 to G4 in the encryption key DB 110.
  • the management server 101 holds the number of nodes of the ad hoc networks A1 to A4 to which the gateways G1 to G4 belong in the encryption key DB 110.
  • the number of nodes in the ad hoc network A1 is 10
  • the number of nodes in the ad hoc network A2 is 5
  • the number of nodes in the ad hoc network A3 is 3
  • the number of nodes in the ad hoc network A4 is 7.
  • the nodes in the ad hoc networks A1 to A4 have encryption keys K1 to K4 specific to the respective gateways G1 to G4.
  • the gateways G1 to G4 also have gateway-specific keys K1 to K4, respectively.
  • the gateways G1 to G4 periodically broadcast encrypted packets SP1 to SP4 encrypted with the encryption keys K1 to K4 to the subordinate node groups, respectively.
  • the encrypted packets SP1 to SP4 are distributed for time synchronization of nodes in the respective ad hoc networks A1 to A4, updating of a routing table at the time of multihop communication, and the like. Note that the encrypted packets SP1 to SP4 may be distributed temporarily (irregularly).
  • FIG. 1 when a new node Nx is installed, it is assumed that it is within the communication range of the ad hoc networks A1 to A3 and outside the communication range of the ad hoc network A4. Since the encryption key K1 to K4 is not set for the new node Nx, the encrypted packet cannot be transmitted and the received packet cannot be decrypted, but the packet can be simply received.
  • intercepted packet Receiving a packet even though it cannot be decoded in this way is called “interception”.
  • the intercepted packet cannot be decrypted because the new node Nx does not have any of the encryption keys K1 to K4, but can be transmitted without being discarded.
  • packets that are not encrypted with the respective encryption keys K1 to K4 are discarded even if they are received.
  • encrypted packets SP1 to SP3 distributed to the node N1a of the ad hoc network A1, the node N2b of the ad hoc network A2, and the node N3c of the ad hoc network A3 are intercepted by the new node Nx.
  • the encrypted packet SP4 is not intercepted because the node N4d of the ad hoc network A4 is outside the communication range of the new node Nx.
  • the new node Nx needs to notify which ad hoc networks A1 to A4 can belong by sending the intercepted encrypted packets SP1 to SP3 to the management server 101. However, even if the node Nx sends the encrypted packets SP1 to SP3 to the management server 101 via the ad hoc networks A1 to A3 serving as the transmission source, the management server 101 cannot be identified if the transmission source is the new node Nx.
  • the encrypted packet SP1 is sent to a different ad hoc network such as the ad hoc network A2, a node in the ad hoc network cannot be decrypted. That is, since the encrypted packet SP1 is encrypted with the encryption key K1, it cannot be decrypted with the encryption key K2 possessed by the nodes in the ad hoc network A2. Therefore, the intercepted encrypted packets SP1 to SP3 are transmitted to the management server 101 via a network different from the ad hoc network.
  • the portable terminal MT that can communicate with the management server 101 is connected to the new node Nx. Thereby, the network NW3 is set.
  • communication between the portable terminal MT and the management server 101 is enabled by connecting the portable terminal MT and the management server 101. Thereby, the network NW2 is set.
  • the new node Nx intercepts the encrypted packets SP1 to SP3. Since the encrypted packet SP4 is out of the communication range, it cannot be intercepted.
  • the new node Nx transmits the intercepted encrypted packets SP1 to SP3 to the management server 101 via the mobile terminal MT.
  • the management server 101 Upon receiving the encrypted packets SP1 to SP3 from the new node Nx, the management server 101 analyzes the encrypted packets SP1 to SP3, and addresses the gateways G1 to G3 included in the encrypted packets SP1 to SP3. Is identified.
  • the management server 101 sets an encryption key (hereinafter, “selection key”) to be set in the new node Nx from among the encryption keys K1 to K3 associated with the addresses of the gateways G1 to G3 specified in (3). Select). Specifically, the selection key is determined according to the number of nodes of the ad hoc networks A1 to A3 to which the gateways G1 to G3 belong.
  • the encryption keys K2 and K3 having a number of nodes other than the maximum number of nodes are selected. In this case, if the number of nodes is not the maximum, either of the encryption keys K2 and K3 may be used. Alternatively, the encryption key K3 having the minimum number of nodes may be used. In FIG. 1, it is assumed that the encryption key K3 is selected.
  • the management server 101 transmits the selection key K3 to the new node Nx via the mobile terminal MT.
  • the management server 101 updates the number of nodes associated with the encryption key K3 from “3” to “4”.
  • the new node receives the selection key K3 from the management server 101, and encrypts the packet or sets it as a key for decrypting the encrypted packet.
  • the new node Nx belongs to the ad hoc network A3, and encrypted communication is possible in the ad hoc network A3.
  • the new node Nx can be introduced from an ad hoc network with a small number of nodes, the number of nodes can be averaged among a plurality of ad hoc networks. Therefore, it is possible to reduce the variation in communication load and to distribute the risk when a failure occurs in the gateway, and to improve the stability of communication in the entire ad hoc networks A1 to A4. .
  • FIG. 2 is an explanatory diagram of an example of the network system 100 according to the embodiment.
  • the network system 100 includes a management server 101, gateways G1 to Gn, nodes N1-1 to N1-m1,..., Ni-1 to Ni-mi, ..., Nn-1 to Nn-mn, It is the structure containing.
  • the management server 101 and the gateways G1 to Gn are connected to each other via a network NW1 such as the Internet, LAN, or WAN.
  • NW1 such as the Internet, LAN, or WAN.
  • the gateway Gi and the nodes Ni-1 to Ni-mi are connected via the ad hoc network Ai.
  • the management server 101 is a computer that includes the encryption key DB 110 and manages encryption keys unique to the gateways G1 to Gn.
  • the encryption key unique to the gateway Gi (hereinafter referred to as “encryption key Ki”) is key information for encrypting packets transmitted and received between nodes in the ad hoc network Ai to which the gateway Gi belongs. A detailed description of the encryption key DB 110 will be described later.
  • the gateway Gi is a relay device that connects the ad hoc network Ai and the network NW1.
  • the gateway Gi understands both the protocol of the ad hoc network Ai and the protocol of the network NW1, and transfers communication between the ad hoc network Ai and the network NW1.
  • the gateway Gi knows which node can communicate with which node in the ad hoc network Ai, and the gateway Gi routes autonomously based on this information.
  • a transfer source address and a transfer destination address for multi-hop communication are set by routing of the gateway Gi. This setting is performed by a broadcast packet from the gateway Gi.
  • Nodes Ni-1 to Ni-mi are wireless communication devices that perform multi-hop communication with other nodes within a predetermined communication range.
  • the gateway Gi it is not necessary for all the nodes Ni-1 to Ni-mi to directly communicate with the gateway Gi, and it is sufficient that some nodes can communicate with the gateway Gi.
  • the nodes Ni-1 to Ni-mi hold a routing table that is a combination of the transfer source address and the transfer destination address of the packet by the broadcast packet from the gateway Gi. Note that multi-hop communication is possible even when there is no routing table. In this case, since the maximum number of hops is set in the packet, the packet is not transferred after the maximum number of hops is exceeded.
  • the network system 100 can be applied to, for example, a system that collects the amount of power and gas used in each household. Specifically, for example, by incorporating each node Ni-1 to Ni-mi into a power meter or gas meter in each home, the amount of power or gas used in each home is transmitted and received between nodes in the ad hoc network Ai. Note that the power consumption and gas consumption of each household may be measured by each node Ni-1 to Ni-mi, or each node Ni-1 to Ni-mi may be obtained from a power meter or gas meter. Good.
  • the gateway Gi uses the power and gas usage of each home received from the nodes Ni-1 to Ni-mi in the ad hoc network Ai to the server of the power company or gas company (for example, the management server 101) via the network NW1. Send to. As a result, the amount of power and gas used can be collected without the need for workers to visit the site.
  • the packet is encrypted using the encryption key Ki unique to the gateway Gi for each ad hoc network Ai. This ensures secure communication (data confidentiality, tampering prevention, etc.) of the ad hoc network Ai. Moreover, the risk at the time of key leakage is reduced by changing the encryption key Ki for every ad hoc network Ai.
  • a single gateway Gi is provided in the ad hoc network Ai.
  • a plurality of gateways Gi may be provided in the same ad hoc network Ai.
  • the encryption key Ki for encrypting packets transmitted and received in the ad hoc network Ai is common to a plurality of gateways Gi.
  • FIG. 3 is a block diagram of a hardware configuration example of the management server 101 according to the embodiment.
  • the management server 101 includes a CPU (Central Processing Unit) 301, a ROM (Read Only Memory) 302, a RAM (Random Access Memory) 303, a magnetic disk drive 304, a magnetic disk 305, and an optical disk drive 306.
  • the CPU 301 to the mouse 311 are connected by a bus 300.
  • the CPU 301 controls the entire management server 101.
  • the ROM 302 stores a program such as a boot program.
  • the RAM 303 is used as a work area for the CPU 301.
  • the magnetic disk drive 304 controls the reading / writing of the data with respect to the magnetic disk 305 according to control of CPU301.
  • the magnetic disk 305 stores data written under the control of the magnetic disk drive 304.
  • the optical disc drive 306 controls the reading / writing of the data with respect to the optical disc 307 according to control of CPU301.
  • the optical disk 307 stores data written under the control of the optical disk drive 306, and causes the computer to read data stored on the optical disk 307.
  • the I / F 308 is connected to the networks NW1 and NW2 through communication lines, and is connected to other devices (for example, the gateway Gi and the portable terminal MT) via the networks NW1 and NW2.
  • the I / F 308 controls an internal interface with the networks NW1 and NW2, and controls input / output of data from an external device.
  • a modem or a LAN adapter may be employed as the I / F 308.
  • Display 309 displays data such as a document, an image, and function information as well as a cursor, an icon, or a tool box.
  • a CRT a CRT
  • TFT liquid crystal display a plasma display, or the like can be adopted.
  • the keyboard 310 includes keys for inputting characters, numbers, various instructions, etc., and inputs data. Moreover, a touch panel type input pad or a numeric keypad may be used.
  • the mouse 311 performs cursor movement, range selection, window movement, size change, and the like. A trackball or a joystick may be used as long as they have the same function as a pointing device. Note that the mobile terminal MT can also be realized by the same hardware configuration as the management server 101 shown in FIG.
  • FIG. 4 is a block diagram of a hardware configuration example of the node according to the embodiment. 4, the node includes a CPU 401, a RAM 402, a flash memory 403, an I / F 404, and an encryption circuit 405. The CPU 401 to the encryption circuit 405 are connected by a bus 400.
  • the CPU 401 controls the entire node.
  • the RAM 402 is used as a work area for the CPU 401.
  • the flash memory 403 stores key information such as programs and encryption keys.
  • the I / F 404 transmits and receives packets by multi-hop communication.
  • the gateway Gi I / F 404 is connected to the network NW1 through a communication line, and is connected to the management server 101 via the network NW1.
  • the encryption circuit 405 is a circuit that encrypts data using an encryption key when encrypting data. When encryption is executed by software, the encryption circuit 405 is not required by storing a program corresponding to the encryption circuit 405 in the flash memory 403.
  • FIG. 5 is an explanatory diagram showing an example of the contents stored in the encryption key DB 110 shown in FIG.
  • the encryption key DB 110 has fields of ID, GW address, and encryption key. By setting information in each field, the key information 500-1 to 500-n for each of the gateways G1 to Gn is used as a record. I remember it.
  • the ID is an identifier of each gateway Gi used for explanation in this specification.
  • the GW address is the address of the gateway Gi.
  • a MAC (Media Access Control) address or an IP (Internet Protocol) address of the gateway Gi can be used.
  • the encryption key is an encryption key Ki unique to each gateway Gi, and is specifically binary data of about 128 to 256 bits, for example.
  • the gateway G1's GW address is “xx: xx: xx: xx: 12: 34”, and the encryption key is “K1”.
  • the encryption key DB 110 is realized by a storage device such as the ROM 302, the RAM 303, the magnetic disk 305, and the optical disk 307 of the management server 101 shown in FIG.
  • the content stored in the encryption key DB 110 may be updated when the management server 101 receives the encryption key Ki unique to the gateway Gi from the gateway Gi. Further, the stored contents of the encryption key DB 110 may be updated by a user operation input using the keyboard 310 and the mouse 311 shown in FIG.
  • FIG. 6 is an explanatory diagram showing an example of introducing a new node into the network system 100.
  • a new node Nx is introduced in an arbitrary ad hoc network Ai of the network system 100.
  • nodes Ni-1 to Ni-3 are shown as representatives.
  • the new node Nx inquires the management server 101 about the encryption key Ki to be set as the node Ni-x in the ad hoc network Ai.
  • the management server 101 selects the encryption key Ki
  • the management server 101 acquires the selection key Ki from the management server 101 and automatically sets it to the new node Ni-x.
  • the mobile terminal MT is a mobile communication device used by the worker OP, and is, for example, a mobile phone, a PHS (Personal Handy-phone System) phone, a smartphone, a notebook personal computer, or the like.
  • the mobile terminal MT relays communication between the new node Nx and the management server 101 that cannot communicate directly.
  • FIG. 7 is a sequence diagram showing an operation example (first half) of the network system 100 when the new node Nx is introduced.
  • the sequence in FIG. 7 is an operation example that is performed until the worker OP goes to the site (place where the new node Nx is installed), for example.
  • the gateway Gi transmits the encryption key Ki unique to the gateway Gi to the management server 101.
  • the management server 101 associates and registers the encryption key Ki unique to the gateway Gi and the address of the gateway Gi in the encryption key DB 110.
  • the gateway Gi broadcasts (simultaneously reports) a packet (hereinafter referred to as “encrypted packet SPi”) encrypted using the encryption key Ki unique to the gateway Gi to the ad hoc network Ai.
  • Encrypted packet SPi a packet encrypted using the encryption key Ki unique to the gateway Gi to the ad hoc network Ai.
  • the address of the gateway Gi is included in the encrypted packet SPi.
  • the node Ni-1 transmits the encrypted packet SPi from the gateway Gi to the node Ni-3 in the communication area.
  • the node Ni-3 transmits the encrypted packet SPi from the node Ni-1 to the new node Nx in the communication area.
  • the new node Nx intercepts the encrypted packet SPi.
  • the new node Nx records the encrypted packet SPi from the node Ni-3. However, at this point, the new node Nx cannot decrypt the encrypted packet SPi because the encryption key Ki is not set.
  • the above-described (1) to (6) are executed for each ad hoc network Ai in communication range with the new node Nx. Therefore, when there are a plurality of ad hoc networks Ai within the communication area, the new node Nx intercepts the encrypted packet SPi for each ad hoc network Ai within the communication area.
  • a set of encrypted packets SPi intercepted for each ad hoc network Ai in the communication area is referred to as an “encrypted packet group SP”.
  • FIG. 8 is a sequence diagram showing an operation example (second half) of the network system 100 when the new node Nx is introduced.
  • the sequence in FIG. 8 is an example of an operation performed after the worker OP goes to the site, for example.
  • the mobile terminal MT is connected to the management server 101 via a network NW2 such as a mobile phone network or the Internet.
  • NW2 such as a mobile phone network or the Internet.
  • the mobile terminal MT performs secure communication with the management server 101 using, for example, SSL (Secure Socket Layer).
  • SSL Secure Socket Layer
  • the mobile terminal MT is connected to the new node Nx via the wired or wireless network NW3.
  • NW3 is connected between the mobile terminal MT and the new node N. Is established.
  • the new node Nx transmits the encrypted packet group SP recorded in (6) shown in FIG. 7 to the mobile terminal MT via the network NW3.
  • the mobile terminal MT transmits the encrypted packet group SP from the new node Nx to the management server 101 via the network NW2.
  • the management server 101 analyzes each encrypted packet SPi of the encrypted packet group SP from the mobile terminal MT, and from the address of the gateway Gi included in each encrypted packet SPi, a new node Nx is Each communicable gateway Gi is specified.
  • the management server 101 For each gateway Gi identified in (11), the management server 101 extracts the encryption key Ki associated with the address of the gateway Gi from the encryption key DB 110.
  • the management server 101 selects an encryption key to be set for the new node Nx according to the number of nodes associated with each encryption key Ki extracted in (12).
  • the management server 101 transmits the selection key Ks to the mobile terminal MT via the network NW2.
  • the mobile terminal MT transmits the selection key Ks to the new node Nx via the network NW3.
  • the new node Nx receives the selection key Ks from the management server 101, and encrypts the packet or sets it as a key for decrypting the encrypted packet.
  • the new node Nx belongs to the ad hoc network Ai to which the gateway Gi having the selection key Ks belongs. That is, after setting the selection key Ks, the new node Nx acts as one node in the ad hoc network Ai in the same manner as the ad hoc network Ai.
  • the management server 101 increments (+1) the number of nodes associated with the selection key Ks.
  • the new nodes to be introduced next are also (1) to (17) in FIGS. Similar processing can be performed.
  • node N refers to a node (including a new node Nx) that transmits and receives a packet by multi-hop communication in any one of the ad hoc networks A1 to An of the network system 100.
  • nodes and the like indicate the gateways G1 to Gn and the node N of the network system 100.
  • FIG. 9 is a block diagram illustrating a functional configuration example of a node.
  • the node N is configured to include a packet reception unit 901, a detection unit 902, a packet transmission unit 903, a key reception unit 904, and a setting unit 905.
  • each functional unit (packet receiving unit 901 to setting unit 905), for example, causes the CPU 401 to execute a program stored in a storage device such as the RAM 402 and the flash memory 403 illustrated in FIG.
  • the function is realized by the I / F 404.
  • the processing results of the respective function units (packet receiving unit 901 to setting unit 905) are stored in a storage device such as the RAM 402 and the flash memory 403, unless otherwise specified.
  • the packet receiver 901 receives the encrypted packet SPi from within the ad hoc network Ai.
  • the encrypted packet SPi is a packet encrypted using the encryption key Ki unique to the gateway Gi.
  • the encrypted packet SPi is a broadcast packet from the gateway Gi encrypted with the encryption key Ki unique to the gateway Gi.
  • an example of the data structure of the encrypted packet SPi will be described.
  • FIG. 10 is an explanatory diagram showing an example of the data structure of the encrypted packet SPi.
  • the encrypted packet SP1 broadcast from the gateway Gi of the ad hoc network Ai is taken as an example.
  • the encrypted packet SPi includes a header part 1010 and a payload part 1020.
  • a destination address, a source address, a hop count, and a GW address are described.
  • the payload portion 1020 describes the encrypted data body (hatched portion in FIG. 10).
  • the destination address is the destination address.
  • the broadcast MAC address “00: 00: 00: 00: 00: 00” is described.
  • the source address is a transfer source address.
  • the MAC address of another node N different from the node N in the ad hoc network A1 is described.
  • the MAC address of the node N1a that is the transfer source of the encrypted packet SP1 is described.
  • the number of hops is a remaining transfer count indicating how many times the encrypted packet SPi is transferred. That is, the upper limit number of multi-hops.
  • the maximum number of hops of the encrypted packet SPi broadcast from the gateway Gi is set in advance. The hop number is decremented when the encrypted packet SPi is transferred, and the encrypted packet SPi having the hop number of “0” is discarded.
  • the number of hops “10” of the encrypted packet SP1 is described, when the multi-hop is performed 10 times, the next multi-hop is not performed.
  • the GW address is the address of the gateway Gi that is the transmission source of the encrypted packet SPi.
  • the MAC address “xx: xx: xx: xx: 12: 34” of the gateway G1 is described. Note that although the MAC address is used as an example of the destination address, the sending address, and the GW address here, an IP address or the like may be used.
  • the packet receiving unit 901 receives (intercepts) the encrypted packet SPi from the neighboring node. For example, as shown in FIG. 1, the packet receiver 901 intercepts encrypted packets SP1 to SP3 from the ad hoc networks A1 to A3.
  • the packet receiving unit 901 intercepts the encrypted packet SPi within the communication range. In this case, since the transfer source of the encrypted packet SP is not registered in the routing table of the intercepted node N, the intercepted encrypted packet SPi is discarded at the intercepted node N. If there is no routing table, it is forwarded to other neighboring nodes unless the number of hops is zero.
  • the detection unit 902 detects a connection with the mobile terminal MT that can communicate with the management server 101. Specifically, for example, as a result of the worker OP connecting the portable terminal MT and the new node N using the USB cable, the detection unit 902 detects the connection with the portable terminal MT via the USB cable.
  • the packet transmission unit 903 transmits the received (intercepted) encrypted packet group SP to the management server 101 via the mobile terminal MT. Specifically, for example, the packet transmission unit 903 transmits the encrypted packet group SP to the mobile terminal MT via the network NW3 such as a USB cable. As a result, the mobile terminal MT transmits the encrypted packet group SP from the node N to the management server 101 via the network NW2.
  • NW3 such as a USB cable
  • the same encrypted packet SPi may be received a plurality of times. In this case, only one of the plurality of identical encrypted packets SPi is transmitted. For example, in the case of FIG. 1, even if the encrypted packet SP1 is received six times, the encrypted packet SP2 is received three times, and the encrypted packet SP3 is received once, one encrypted packet SP1 to SP3 is transmitted. Become. Thereby, the communication load of the encrypted packet group SP can be reduced.
  • the packet transmission unit 903 receives a plurality of identical encrypted packets SPi received (intercepted). May be transmitted. For example, in the case of FIG. 1, assuming that the encrypted packet SP1 is received six times, the encrypted packet SP2 is received three times, and the encrypted packet SP3 is received once, the node N receives six encrypted packets SP1 and encrypted packets. Three SP2 and one encrypted packet SP3 are transmitted to the management server 101.
  • the key receiving unit 904 receives from the management server 101 the selection key Ks selected by the management server 101 from the transmitted encrypted packet group SP via the mobile terminal MT.
  • the selection key Ks is, for example, a common key that can encrypt a packet at the node N and can decrypt an encrypted packet SPi encrypted using the encryption key Ki.
  • the setting unit 905 sets the received selection key Ks as a key for encrypting a packet for multi-hop communication within the ad hoc network Ai. Specifically, for example, the setting unit 905 writes the selection key Ks in a specific storage area.
  • the address of the specific storage area is an address designated when encrypting the packet or decrypting the encrypted packet SPi.
  • FIG. 11 is a block diagram illustrating a functional configuration example of the management server 101.
  • the management server 101 is configured to include a reception unit 1101, an extraction unit 1102, and a transmission unit 1103.
  • each functional unit causes the CPU 301 to execute a program stored in a storage device such as the ROM 302, the RAM 303, the magnetic disk 305, and the optical disk 307 illustrated in FIG. Or the I / F 308 realizes the function.
  • the processing results of the respective function units (reception unit 1101 to transmission unit 1103) are stored in a storage device such as the RAM 303, the magnetic disk 305, and the optical disk 307, for example.
  • the receiving unit 1101 receives the encrypted packet SPi from the node N via the mobile terminal MT. Specifically, for example, the reception unit 1101 receives the encrypted packet group SP from the node N from the mobile terminal MT via the network NW2.
  • the extraction unit 1102 extracts the encryption key Ki for decrypting the received encrypted packet SPi from the encryption key DB 110. Specifically, for example, the extraction unit 1102 extracts the encryption key Ki stored in association with the address of the gateway Gi included in the encrypted packet SPi from the encryption key DB 110.
  • the extraction unit 1102 uses, for example, the encryption key K1 stored in association with the GW address “xx: xx: xx: xx: 12: 34” included in the encrypted packet SP1 from the encryption key DB 110. Extract.
  • the extraction unit 1102 will be described in more detail.
  • the extraction unit 1102 includes a specifying unit 1121, a decoding unit 1122, and a selection unit 1123.
  • the identifying unit 1121 identifies the address of each gateway Gi included in each encrypted packet SPi of the encrypted packet group SP received by the receiving unit 1101. Then, the specifying unit 1121 specifies the number of nodes existing in the ad hoc network Ai to which each gateway Gi belongs based on the address of each specified gateway Gi. Specifically, for example, the identification unit 1121 extracts the number of nodes associated with the GW address that matches the GW address of the header part 1010 of the encrypted packet SPi from the encryption key DB 110.
  • the GW address “xx: xx: xx: 12: 34” of the gateway G1 is described in the encrypted packet SP1 in FIG. 10, the GW address “xx: xx: xx: xx: xx” of the gateway G1.
  • the number of nodes “10” associated with “12:34” is extracted from the encryption key DB 110.
  • the GW address is included in the header portion 1010 as in the encrypted packet SP1 shown in FIG. 10, as described above, the number of nodes and the encryption key Ki are stored in the encryption key DB 110 using the GW address as a clue. Can be extracted. On the other hand, the GW address may be included in the payload portion 1020.
  • FIG. 12 is an explanatory diagram (part 2) illustrating an example of the data structure of the encrypted packet SPi.
  • the encrypted packet SP1 broadcast from the gateway Gi of the ad hoc network Ai is taken as an example.
  • the encrypted packet SPi has a configuration including a header portion 1210 and a payload portion 1220.
  • a header portion 1210 a destination address, a source address, and the number of hops are described.
  • the payload portion 1220 describes the encrypted GW address and data body (hatched portion in FIG. 12).
  • the decryption unit 1122 executes decryption processing of the encrypted packet SPi using the encryption key Ki for each encryption key Ki registered in the encryption key DB 110. Accordingly, the extraction unit 1102 can extract the encryption key Ki that has successfully decrypted the encrypted packet SPi.
  • the success or failure of the decryption can be determined based on the format of the decrypted packet obtained by decrypting the encrypted packet SPi. Specifically, for example, the extraction unit 1102 determines that the decryption of the encrypted packet SPi is successful when the decrypted packet decrypted by the decryption unit 1122 is data in a predefined format. Thereby, even if the header part 1210 of the encrypted packet SPi does not include a GW address, an appropriate encryption key Ki to be set for the node N can be extracted from the encryption key DB 110.
  • the selection unit 1123 selects a key unique to the gateway Gi in any one of the ad hoc networks Ai, which is a non-maximum number of nodes among the number of nodes specified by the specifying unit 1121, in the plurality of ad hoc networks in the encryption key DB 110. Select from the unique keys for each gateway. Specifically, for example, since the number of nodes is specified for each gateway Gi by the specifying unit 1121, the selection unit 1123 selects a gateway Gi having a number of nodes other than the maximum number of nodes among them. Then, the selection unit 1123 extracts the encryption key Ki associated with the address of the selected gateway Gi from the encryption key DB 110. The encryption key Ki extracted from the encryption key DB 110 by the selection unit 1123 becomes the selection key Ks.
  • the encryption key K3 associated with the gateway G3 is the encryption key Ks and extracts it from the encryption key DB 110.
  • the selection unit 1123 may select at random when the number of nodes specified by the specification unit 1121 is the same. Similarly, the selection unit 1123 may randomly select the number of remaining nodes other than the maximum number of nodes among the number of nodes specified by the specifying unit 1121.
  • the selection unit 1123 may use, as the selection key Ks, the encryption key Ki unique to the gateway Gi that has delivered the encrypted packet SPi having the maximum number of intercepts. That is, the node N may intercept the same encrypted packet SPi a plurality of times and transmit them all to the management server 101. For example, in the case of FIG. 1, assuming that the encrypted packet SP1 is received six times, the encrypted packet SP2 is received three times, and the encrypted packet SP3 is received once, the node N receives six encrypted packets SP1 and encrypted packets. Three SP2 and one encrypted packet SP3 are transmitted to the management server 101.
  • the selection unit 1123 has an encryption key unique to the gateway G1 of the ad hoc network A1 that is the maximum number of intercepts (six times). K1 is extracted as the selection key Ks.
  • the new node Nx can communicate with the most stable ad hoc network Ai by using the encryption key Ki unique to the gateway Gi of the ad hoc network Ai having the largest number of intercepts as the selection key Ks.
  • the encryption key Ki unique to the gateway Gi of the ad hoc network Ai with a small number of intercepts may be used as the selection key Ks.
  • the selection unit 1123 extracts the encryption key K3 unique to the gateway G3 of the ad hoc network A3, which is the minimum number of intercepts (one time), as the selection key Ks.
  • the number of intercepts is proportional to the number of multi-hop communication paths in the ad hoc network. Therefore, by using the encryption key Ki unique to the gateway Gi of the ad hoc network Ai having the smallest number of intercepts as the selection key Ks, the communication path of the introduction destination ad hoc network Ai can be enhanced when the new node Nx is introduced. Thereby, the stability of communication in the ad hoc network Ai with few communication paths can be improved.
  • the selection unit 1123 displays the maximum number of intercepts (3 times).
  • the encryption key K2 unique to the gateway G2 of the ad hoc network A2 is extracted as the selection key Ks.
  • the number of intercepts is proportional to the number of multi-hop communication paths in the ad hoc network.
  • the number of intercepts is proportional to the number of communication paths for multi-hop communication in the ad hoc network. Therefore, the new node Nx can communicate with the most stable ad hoc network Ai by using the encryption key Ki unique to the gateway Gi of the ad hoc network Ai having the largest number of intercepts as the selection key Ks.
  • the encryption key Ki unique to the gateway Gi of the ad hoc network Ai with a small number of intercepts may be used as the selection key Ks.
  • the selection unit 1123 extracts the encryption key K3 unique to the gateway G3 of the ad hoc network A3, which is the minimum number of intercepts (one time), as the selection key Ks.
  • the number of intercepts is proportional to the number of multi-hop communication paths in the ad hoc network. Therefore, by using the encryption key Ki unique to the gateway Gi of the ad hoc network Ai with a small number of intercepts as the selection key Ks, the communication path of the introduction destination ad hoc network Ai can be enhanced when the new node Nx is introduced. Thereby, the stability of communication in the ad hoc network Ai with few communication paths can be improved.
  • the selection method in the case where the number of nodes is the same is not limited to the same number of nodes, and even if there is a difference in the number of nodes, the selection method can be applied if the difference is within a preset allowable range. is there.
  • the transmission unit 1103 transmits the selection key Ks to the node N via the mobile terminal MT.
  • the mobile terminal MT transmits the selection key Ks from the management server 101 to the node N via the network NW3.
  • the encryption key Ki unique to the gateway Gi is already registered in the encryption key DB 110 when the management server 101 receives the encrypted packet group SP.
  • the management server 101 may acquire the encryption key Ki unique to the gateway Gi selected by the selection unit 1123 by making an inquiry to the gateway Gi after receiving the encrypted packet SPi. This eliminates the need for the management server 101 to hold all the encryption keys K1 to Kn unique to the gateways G1 to Gn in the network system 100 in advance.
  • Communication method between the management server 101 and the portable terminal MT Communication method between the management server 101 and the portable terminal MT
  • server authentication of the management server 101 as viewed from the mobile terminal MT will be described.
  • the mobile terminal MT connects to the management server 101 using a predetermined IP address.
  • the mobile terminal MT receives the SSL server certificate from the management server 101.
  • the received SSL server certificate is stored in a storage device such as the RAM 402 or the flash memory 403 of the portable terminal MT in association with the IP address of the management server 101, for example.
  • FIG. 13 is an explanatory diagram showing an example of authentication information of the management server 101.
  • the authentication information 1300 of the management server 101 has an IP address and an SSL server certificate.
  • the IP address is the IP address of the management server 101.
  • the 509 certificate is an SSL server certificate (public key certificate) of the management server 101.
  • the mobile terminal MT performs server authentication by decrypting the SSL server certificate using a public key that is incorporated in the terminal MT in advance.
  • the public key is issued by, for example, a third-party certification body. If the SSL server certificate can be correctly decrypted using this public key, it can be seen that the SSL server certificate is a correct certificate certified by a third-party certification authority, and that the identity of the management server 101 has been guaranteed. Become.
  • the authentication information 1400 is stored in a storage device such as the ROM 302, RAM 303, magnetic disk 305, and optical disk 307 of the management server 101, for example.
  • FIG. 14 is an explanatory diagram showing an example of authentication information of the mobile terminal MT.
  • the authentication information 1400 of the mobile terminal MT has a user ID and a password.
  • the user ID is an identifier of the mobile terminal MT.
  • the password is for authenticating a user who uses the mobile terminal MT.
  • the mobile terminal MT transmits a user ID and password pair to the management server 101.
  • the user ID and password may be registered in advance in the flash memory 403 of the mobile terminal MT, or may be received by a user operation input using an input device (not shown) of the mobile terminal MT.
  • the management server 101 determines that the user ID and password pair from the portable terminal MT matches the user ID and password pair of the authentication information 1400.
  • the user ID and the password of the authentication information 1400 match, the identity of the user of the mobile terminal MT is guaranteed.
  • the mobile terminal MT communicates with the management server 101 by encrypting the packet using, for example, a public key included in the SSL server certificate of the management server 101. Thereby, secure communication can be performed between the management server 101 and the portable terminal MT.
  • FIG. 15 is a flowchart illustrating an example of a node key setting processing procedure.
  • the node N determines whether the packet reception unit 901 has received the encrypted packet SPi broadcast from the gateway Gi in the ad hoc network Ai (step S1501).
  • step S1501: No After waiting for the reception of the encrypted packet SPi (step S1501: No), if received (step S1501: Yes), the node N uses the detection unit 902 to communicate with the management server 101. It is determined whether or not a connection is detected (step S1502).
  • step S1502 After waiting for the connection with the mobile terminal MT to be detected (step S1502: No), if detected (step S1502: Yes), the node N is transmitted by the packet transmission unit 903 via the mobile terminal MT. Then, the received (intercepted) encrypted packet group SP is transmitted to the management server 101 (step S1503).
  • the encrypted packet group SP may be transmitted in a batch, or may be transmitted individually each time the encrypted packet SPi is received. The period during which transmission is possible is until a certain period elapses after connection detection.
  • a plurality of identical encrypted packets SPi may be included in the encrypted packet group SP and transmitted. For example, when the encrypted packet SP1 is intercepted three times, three encrypted packets SP1 are included in the encrypted packet group SP.
  • the management server 101 does not use the number of intercepts of the same encrypted packet SPi as a selection criterion for the selection key Ks, only one identical encrypted packet SPi may be included in the encrypted packet group SP and transmitted. Good. For example, even when the encrypted packet SP1 is intercepted three times, only one encrypted packet SP1 is included in the encrypted packet group SP. Thereby, the communication load of the encrypted packet group SP can be reduced.
  • the management server 101 can use the number of intercepts of the same encrypted packet SPi as a selection criterion for the selection key Ks. Therefore, by using the encryption key Ki unique to the gateway Gi of the ad hoc network Ai with a small number of intercepts as the selection key Ks, the communication path of the introduction destination ad hoc network Ai can be enhanced when the new node Nx is introduced. Thereby, the stability of communication in the ad hoc network Ai with few communication paths can be improved.
  • the node N determines whether or not the key reception unit 904 has received the selection key Ks from the management server 101 via the portable terminal MT (step S1504).
  • step S1504: No After waiting for the selection key Ks to be received (step S1504: No), if received (step S1504: Yes), the node N encrypts the packet with the selection key Ks received by the setting unit 905. (Step S1505), and a series of processing according to this flowchart is terminated.
  • the new node Nx can perform multi-hop communication in the ad hoc network Ai using the selection key Ks as a common key, and can average the number of nodes between the ad hoc networks.
  • FIG. 16 is a flowchart illustrating an example of a key provision processing procedure of the management server 101.
  • the management server 101 determines whether the reception unit 1101 has received the encrypted packet group SP from the node N via the mobile terminal MT (step S1601).
  • the management server 101 waits for the reception of the encrypted packet group SP (step S1601: No), and if received (step S1601: Yes), the management server 101 uses the extraction unit 1102 to select the selected key from the encryption key DB 110. A key extraction process for extracting Ks is executed (step S1602). Then, the management server 101 transmits the extracted selection key Ks to the node N via the mobile terminal MT by the transmission unit 1103 (step S1603).
  • the management server 101 increments (+1) the number of nodes associated with the encryption key Ki that has become the selection key Ks in the encryption key DB 110 (step S1604), and ends the series of processes according to this flowchart.
  • the management server 101 can make the new node Nx perform multi-hop communication in the ad hoc network Ai using the selection key Ks as a common key, and can average the number of nodes between the ad hoc networks.
  • the key extraction process (part 1) described below is a process when the GW address included in the encrypted packet SPi is not encrypted (see FIG. 10).
  • FIG. 17 is a flowchart showing an example of a specific processing procedure of the key extraction processing (part 1) in step S1602.
  • the management server 101 first identifies the GW address included in the encrypted packet SPi received in step S1601 shown in FIG. 16 by the extraction unit 1102 (step S1701).
  • step S1704 If the GW addresses do not match (step S1704: NO), the management server 101 increments “i” of the gateway Gi by the extraction unit 1102 (step S1705), and “i” is larger than “n”. It is determined whether or not (step S1706). n is the total number of encryption keys Ki (total number of gateways Gi).
  • step S1706 No
  • the process returns to step S1703.
  • step S1706 YES
  • the management server 101 determines whether there is another encrypted packet SPi (not the same encrypted packet SPi) (step S1707). ).
  • step S1707 determines whether there is an encryption key Ki extracted in step S1710 (step S1708). When there is no extracted encryption key Ki (step S1708: No), the management server 101 executes error processing by the extraction unit 1102 (step S1709), and ends a series of processing of the management server 101.
  • step S1708 when there is an extracted encryption key Ki (step S1708: Yes), the management server 101 determines from among the selection candidate encryption keys Ki according to the number of nodes associated with each selection candidate encryption key Ki.
  • the encryption key Ki to be set in the new node Nx is selected as the selection key Ks (step S1712). As described above, the number of intercepts may be used as a selection criterion. If there is another encrypted packet SPi in step S1707 (step S1707: Yes), the process returns to step S1701.
  • step S1704 If the GW addresses match in step S1704 (step S1704: YES), the management server 101 uses the extraction unit 1102 to determine the encryption key Ki and the number of nodes associated with the encryption key Ki from the encryption key DB 110. Extract (step S1710). Then, the management server 101 determines whether there is another encrypted packet SPi (not the same encrypted packet SPi) (step S1711).
  • step S1711 If there is another encrypted packet SPi (step S1711: YES), the process returns to step S1701. Thereby, the management server 101 can extract the encryption key Ki having the same GW address as a selection candidate.
  • the management server 101 selects the selection candidate depending on the number of nodes associated with each encryption key Ki of the selection candidate.
  • the encryption key Ki to be set to the new node Nx is selected as the selection key Ks from among the encryption keys Ki (step S1712).
  • the number of intercepts may be used as a selection criterion.
  • the management server 101 can select an encryption key Ki unique to the gateway Gi of the ad hoc network Ai that is not at least the maximum number of nodes.
  • an error message indicating that the extraction unit 1102 has failed to extract the encryption key Ki for decrypting the encrypted packet SPi via the mobile terminal MT is sent to the node N. You may decide to transmit to.
  • the error processing in step S1709 is executed, for example, when the encrypted packet SPi has been tampered with or when a part of the encrypted packet SPi has been lost. According to this error processing, it is possible to prompt the node N to retransmit the encrypted packet SPi.
  • step S1710 in FIG. 17 the encryption key Ki and the number of nodes are extracted. However, in step S1710, only the number of nodes is extracted, and when the selection key Ks is determined in step S1712, the selection key Ks. It is good also as extracting only. Accordingly, it is not necessary to extract the encryption key Ki that is a selection candidate but is not finally selected, and the speed of the key extraction process (step S1602) can be increased.
  • the key extraction process (part 2) described below is a process when the GW address included in the encrypted packet SPi is encrypted (see FIG. 12).
  • FIG. 18 is a flowchart showing an example of a specific processing procedure of the key extraction processing (part 2) in step S1602.
  • the management server 101 uses the extraction unit 1102 to decrypt the encrypted packet SPi received in step S1601 shown in FIG. 16 using the encryption key Ki unique to the gateway Gi in the encryption key DB 110 (step S1802). ).
  • the management server 101 determines whether or not the encrypted packet SPi has been successfully decrypted by the extraction unit 1102 (step S1803).
  • the management server 101 increments “i” of the gateway Gi by the extraction unit 1102 (step S1804). It is determined whether it is larger than “n” (step S1805).
  • step S1805 NO
  • step S1805 NO
  • step S1805 YES
  • step S1805 YES
  • step S1806 If there is another encrypted packet SPi (step S1806: YES), the process returns to step S1801. On the other hand, when there is no other encrypted packet SPi (step S1806: No), the management server 101 determines whether there is the encryption key Ki extracted in step S1809 (step S1807). If there is no extracted encryption key Ki (step S1807: NO), the management server 101 executes error processing by the extraction unit 1102 (step S1808), and ends a series of processing of the management server 101. A specific example of error processing is the same as that in step S1709 described above.
  • the management server 101 determines from among the encryption keys Ki of the selection candidates according to the number of nodes associated with the encryption keys Ki of the selection candidates.
  • the encryption key Ki to be set in the new node Nx is selected as the selection key Ks (step S1811).
  • the number of intercepts may be used as a selection criterion.
  • step S1803 if the decryption of the encrypted packet SPi is successful in step S1803 (step S1803: Yes), the management server 101 is associated with the encryption key Ki and the encryption key Ki from the encryption key DB 110 by the extraction unit 1102. The number of existing nodes is extracted (step S1809). Then, the management server 101 determines whether there is another encrypted packet SPi (not the same encrypted packet SPi) (step S1810).
  • step S1810 If there is another encrypted packet SPi (step S1810: YES), the process returns to step S1801. Thereby, the management server 101 can extract the encryption key Ki having the same GW address as a selection candidate.
  • the selection candidate is already extracted, and therefore the management server 101 selects the selection candidate according to the number of nodes associated with each encryption key Ki of the selection candidate.
  • the encryption key Ki to be set in the new node Nx is selected as the selection key Ks from among the encryption keys Ki (step S1811).
  • the number of intercepts may be used as a selection criterion.
  • the selection key Ks can be selected from the encryption key DB 110.
  • step S1809 in FIG. 18 the encryption key Ki and the number of nodes are extracted. However, only the number of nodes is extracted in step S1809, and the selection key Ks is selected when the selection key Ks is determined in step S1811. It is good also as extracting only. Accordingly, it is not necessary to extract the encryption key Ki that is a selection candidate but is not finally selected, and the speed of the key extraction process (step S1602) can be increased.
  • the node N in the ad hoc network Ai can transmit the encrypted packet SPi broadcast from the gateway Gi to the management server 101 via the mobile terminal MT. .
  • the node N receives from the management server 101 and sets the selection key Ks selected from the encryption key Ki unique to the gateway Gi for decrypting the encrypted packet SPi via the mobile terminal MT. be able to.
  • the node N requests the management server 101 via the portable terminal MT for a key by using the encrypted packet SPi from the gateway Gi that can be received even if the encryption key Ki for secure communication is not set.
  • the selection key Ks can be acquired.
  • work such as checking the communication status between the candidate gateway and the node N, where the operator OP is narrowed down geographically, is unnecessary, and the encryption for the node N is not necessary.
  • the efficiency of the key Ki setting work can be improved.
  • since it is not necessary to record the encryption key of each gateway used as a candidate for confirmation work in the portable terminal MT etc. the risk of information leakage at the time of carrying can be reduced.
  • the node N when the node N receives (intercepts) the encrypted packet SPi broadcast from the plurality of gateways Gi, the encryption key Ki unique to the gateway Gi of the ad hoc network Ai whose number of nodes is not maximum. Will be set. Therefore, the number of nodes in the ad hoc network Ai having a small number of nodes among the plurality of ad hoc networks can be increased, and the number of nodes between the plurality of ad hoc networks can be averaged.
  • the number of nodes and the number of intercepts of each encrypted packet SPi can be used as selection criteria for the selection key Ks.
  • the number of intercepts is proportional to the number of communication paths of multihop communication in the ad hoc network.
  • the encryption key Ki unique to the gateway Gi of the ad hoc network Ai having a small number of nodes (preferably minimum) and a large number of intercepts (preferably maximum) as the selection key Ks the number of nodes can be averaged.
  • the new node Nx can communicate with the most stable ad hoc network Ai.
  • the new node Nx is introduced by using the encryption key Ki unique to the gateway Gi of the ad hoc network Ai having a small number of nodes (preferably minimum) and a small number of intercepts (preferably minimum) as the selection key Ks.
  • the communication path of the introduction destination ad hoc network Ai can be enhanced. As a result, it is possible to improve the stability of communication in the ad hoc network Ai with a small number of communication paths, while averaging the number of nodes.
  • the node, the server, and the network system it is possible to reduce the work burden on the worker and to reduce the work time for the encryption key setting work for the nodes in the ad hoc network.
  • each encrypted packet is not used without using the number of nodes. Only the SPi interception count may be used.
  • the number of intercepts is proportional to the number of communication paths of multihop communication in the ad hoc network.
  • the new node Nx communicates with the most stable ad hoc network Ai. Can do.
  • the large number of nodes may be used as a selection criterion.
  • the key setting method described in the present embodiment can be realized by executing a program prepared in advance on a computer such as a personal computer or a workstation.
  • the key setting program is recorded on a computer-readable recording medium such as a hard disk, a flexible disk, a CD-ROM, an MO, and a DVD, and is executed by being read from the recording medium by the computer.
  • Management server 110 Encryption key DB 901 packet receiving unit 902 detecting unit 903 packet transmitting unit 904 key receiving unit 905 setting unit 1101 receiving unit 1102 extracting unit 1103 transmitting unit 1121 specifying unit 1122 decoding unit 1123 selecting unit Ks selecting key MT portable terminal N node Nx new node

Abstract

 新規ノード(Nx)は、傍受した暗号化パケット(SP1~SP3)を携帯端末(MT)経由で管理サーバ(101)に送信する。管理サーバ(101)は、新規ノード(Nx)から暗号化パケット(SP1~SP3)を受信すると、それらに含まれているゲートウェイ(G1~G3)のアドレスを特定する。管理サーバ(101)は、ゲートウェイ(G1~G3)のアドレスに関連付けられている暗号鍵(K1~K3)の中から、新規ノード(Nx)に設定させる選択鍵を選択する。具体的には、ゲートウェイ(G1~G3)が所属するアドホックネットワーク(A1~A3)のノード数により、選択鍵を決定する。管理サーバ(101)は、選択鍵(K3)を携帯端末(MT)を介して新規ノード(Nx)に送信する。新規ノード(Nx)は、選択鍵(K3)を受信して、パケットを暗号化、または、暗号化パケットを復号するための鍵に設定する。

Description

鍵設定方法、ノード、サーバおよびネットワークシステム
 本発明は、データを暗号化するための鍵を設定する鍵設定方法、ノード、サーバおよびネットワークシステムに関する。
 アドホックネットワークは、無線通信でリンクする自己構成型のネットワークの一種である。アドホックネットワークは複数のノードにより構成される。また、アドホックネットワーク内の各ノードは、マルチホップ通信によりパケットの送受信をおこなう。マルチホップ通信は、互いの通信圏内に存在しないノード同士が、各ノードの通信圏内に存在する別のノードを介して通信をおこなう技術である。
 また、アドホックネットワークとインターネット、LAN(Local Area Network)、WAN(Wide Area Network)などの他のネットワークとを接続する場合、ゲートウェイと呼ばれる中継機器を用いて、ネットワーク間の通信の転送が行われる。
 アドホックネットワークを利用した技術として、各家庭の電力メータに無線通信可能なノードを組み込んで、作業員が現地に出向くことなく、アドホックネットワーク経由でメータ確認などの業務をおこなうシステムがある。各家庭の電力の使用量などの個人情報を扱うアドホックネットワークでは、秘匿性や改ざん防止の観点からセキュアな通信をおこなうことが要求される。
 そこで、従来のシステムでは、アドホックネットワーク内のノード間で送受信されるパケットを暗号化することで、セキュアな通信を確保することが行われている。この際、システム内の全ノードで共通の暗号鍵を用いた場合、鍵漏洩時のリスクが大きいため、ゲートウェイごとに暗号鍵を変えるシステムがある。
 また、システムへの新規ノードの初期導入時などにおいて、新規ノードは、暗号鍵が設定されるまでの間、アドホックネットワーク内の他のノードとセキュアな通信をおこなうことができない。このため、アドホックネットワーク経由で新規ノードに暗号鍵を自動設定することが難しく、作業員が現地に出向いて暗号鍵の設定作業を行っている。
 また、セキュア通信に関する先行技術として、たとえば、ブロードキャストにより通信をおこなうネットワークの暗号鍵を管理する技術がある(たとえば、下記特許文献1参照。)。また、アドホックネットワークにおいて通信開始時の鍵交換を安定しておこなうための技術がある(たとえば、下記特許文献2参照。)。また、アドホックネットワーク内の各ノードが適応ゲートウェイを選択するための技術がある(たとえば、下記特許文献3参照。)。
特開2003-348072号公報 特開2007-88799号公報 特開2009-81854号公報
 しかしながら、上述した従来技術では、アドホックネットワーク内の各ノードに設定する暗号鍵をゲートウェイごとに変える場合、新規ノードの初期導入時などにおいて、新規ノードが属するゲートウェイを特定することが難しいという問題があった。たとえば、新規ノードの設置場所の住所から候補となるゲートウェイを絞り込むことはできても、天候や近傍の建物との位置関係などの要因により通信状況が変化する。このため、実際にどのゲートウェイと通信可能であるかを作業員が現地に出向いて確認する必要があり、作業員の暗号鍵の設定作業にかかる作業時間および作業負荷の増大を招くという問題がある。
 また、新規ノードが複数のアドホックネットワークと通信可能である場合、いずれかのアドホックネットワークにも所属することになる。しかしながら、各アドホックネットワーク間でノード数に差があると、たとえば、ノード数が多いアドホックネットワークでは、通信負荷が増大するといった通信負荷のばらつきが生じ、通信の安定性を欠くという問題がある。
 また、ノード数が多いアドホックネットワークのゲートウェイに障害が発生すると、ゲートウェイと通信ができなくなるノード数も多くなるため、複数のアドホックネットワーク全体で見た場合、通信の安定性を欠くという問題がある。
 また、上述したように、新規ノードが実際にどのゲートウェイと通信可能であるかを作業員が現地に出向いて確認できたとしても、そのアドホックネットワークのノード数まではわからない。したがって、作業員が、複数のアドホックネットワークのノード数が均等になるように新規ノードを導入するのは非常に困難であり、結局、作業員の暗号鍵の設定作業にかかる作業時間および作業負荷の増大を招くという問題がある。
 本発明は、上述した従来技術による問題点を解消するため、アドホックネットワーク内のノードが用いる暗号鍵の設定作業の効率化を図ることができる鍵設定方法、ノード、サーバ、およびネットワークシステムを提供することを目的とする。また、複数のアドホックネットワーク間のノードの平均化を図ることにより通信の安定化を図ることができる鍵設定方法、ノード、サーバおよびネットワークシステムを提供することを目的とする。
 上述した課題を解決し、目的を達成するため、本願の一観点によれば、アドホックネットワーク群のうち通信圏内にある複数のアドホックネットワークからのパケットを受信可能なノードが、前記複数のアドホックネットワークの各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いて暗号化された複数の暗号化パケットを、前記複数のアドホックネットワークから受信し、前記アドホックネットワーク群の各アドホックネットワーク内のゲートウェイ固有の鍵およびノード数を保持するサーバと通信可能な携帯端末との接続を検知し、前記携帯端末との接続が検知された場合、前記携帯端末を介して、受信された前記複数の暗号化パケットを前記サーバに送信し、前記携帯端末を介して、前記複数のアドホックネットワークの中で前記ノード数が最大ではないいずれかのアドホックネットワーク内のゲートウェイ固有の鍵を前記サーバから受信し、受信された鍵を、前記いずれかのアドホックネットワーク内でマルチホップ通信させるパケットを暗号化するための鍵に設定する鍵設定方法、ノード、およびネットワークシステムを提供することができる。
 また、本願の一観点によれば、アドホックネットワーク群の各ゲートウェイと通信可能であり、前記各ゲートウェイのアドレスと、前記各ゲートウェイ固有の鍵と、前記アドホックネットワーク群の各アドホックネットワーク内に存在するノード数と、を記憶するデータベースを有するサーバが、前記アドホックネットワーク群のうち通信圏内にある複数のアドホックネットワークの各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いて暗号化された複数の暗号化パケットを受信したノードから、当該ノードに接続された携帯端末を介して、前記複数の暗号化パケットを受信し、受信された前記複数の暗号化パケットの各暗号化パケットに含まれている各ゲートウェイのアドレスに基づいて、前記各ゲートウェイが所属するアドホックネットワーク内に存在するノード数を特定し、前記複数のアドホックネットワークのうち、特定されたノード数のうち最大でないいずれかのノード数であるいずれかのアドホックネットワーク内のゲートウェイ固有の鍵を、前記データベースにおいて前記複数のアドホックネットワーク内の各ゲートウェイ固有の鍵の中から選択し、選択された選択鍵を、前記携帯端末を介して、前記ノードに送信する鍵設定方法、サーバおよびネットワークシステムを提供することができる。
 本鍵設定方法、ノード、サーバおよびネットワークシステムによれば、アドホックネットワーク内のノードが用いる暗号鍵の設定作業の効率化を図ることができるという効果を奏する。また、複数のアドホックネットワーク間のノードの平均化を図ることにより通信の安定化を図ることができるという効果を奏する。
図1は、実施の形態にかかるネットワークシステムでのノード数平均化例を示す説明図である。 図2は、実施の形態にかかるネットワークシステムの一実施例を示す説明図である。 図3は、実施の形態にかかる管理サーバのハードウェア構成例を示すブロック図である。 図4は、実施の形態にかかるノード等のハードウェア構成例を示すブロック図である。 図5は、図1に示した暗号鍵DBの記憶内容の一例を示す説明図である。 図6は、ネットワークシステムへの新規ノードの導入例を示す説明図である。 図7は、新規ノードの導入時におけるネットワークシステムの動作例(前半)を示すシーケンス図である。 図8は、新規ノードの導入時におけるネットワークシステムの動作例(後半)を示すシーケンス図である。 図9は、ノードの機能的構成例を示すブロック図である。 図10は、暗号化パケットのデータ構造の一例を示す説明図である。 図11は、管理サーバの機能的構成例を示すブロック図である。 図12は、暗号化パケットのデータ構造の一例を示す説明図(その2)である。 図13は、管理サーバの認証情報の一例を示す説明図である。 図14は、携帯端末の認証情報の一例を示す説明図である。 図15は、ノードの鍵設定処理手順の一例を示すフローチャートである。 図16は、管理サーバの鍵提供処理手順の一例を示すフローチャートである。 図17は、ステップS1602の鍵抽出処理(その1)の具体的な処理手順の一例を示すフローチャートである。 図18は、ステップS1602の鍵抽出処理(その2)の具体的な処理手順の一例を示すフローチャートである。
 以下に添付図面を参照して、この発明にかかる鍵設定方法、ノード、サーバおよびネットワークシステムの実施の形態を詳細に説明する。
(ネットワークシステムでのノード数平均化例)
 図1は、実施の形態にかかるネットワークシステムでのノード数平均化例を示す説明図である。本実施の形態のネットワークシステム100では、管理サーバ101とインターネット、LAN、WANなどのネットワークNW1を介して通信可能な複数のアドホックネットワーク(図1では、A1~A4の4個)の各ノード数の平均化を図る。具体的には、導入済みのノードの配置換えをおこなうのではなく、新規ノードNxの導入時に、ノード数が少ないアドホックネットワークに新規ノードNxを追加することで、段階的に平均化を図る。
 ノード数の平均化を図ることで、通信負荷のばらつきの低減化を図り、また、ゲートウェイに障害が発生したときのリスク分散をおこなうことができるため、アドホックネットワークA1~A4全体での通信の安定性の向上を図ることができる。以下、図1について詳細に説明する。
 管理サーバ101は、暗号鍵DB(データベース)110を備え、各ゲートウェイ固有の暗号鍵を管理するコンピュータである。図1では、管理サーバ101は、ゲートウェイG1~G4に固有の暗号鍵K1~K4を、暗号鍵DB110に保持している。また、管理サーバ101は、ゲートウェイG1~G4が所属するアドホックネットワークA1~A4のノード数を、暗号鍵DB110に保持している。図1では、アドホックネットワークA1のノード数は10個、アドホックネットワークA2のノード数は5個、アドホックネットワークA3のノード数は3個、アドホックネットワークA4のノード数は7個である。
 アドホックネットワークA1~A4内のノードは、それぞれのゲートウェイG1~G4固有の暗号鍵K1~K4を有する。ゲートウェイG1~G4も、それぞれゲートウェイ固有の鍵K1~K4を有する。これにより、各アドホックネットワークA1~A4では、それぞれの暗号鍵K1~K4を用いた暗号化パケット通信や暗号化パケットの復号をおこなうことができ、セキュアに通信をおこなうことができる。
 また、各ゲートウェイG1~G4は、定期的に、配下のノード群に対し、それぞれ暗号鍵K1~K4で暗号化された暗号化パケットSP1~SP4をブロードキャストする。暗号化パケットSP1~SP4は、それぞれのアドホックネットワークA1~A4内のノードの時刻同期や、マルチホップ通信の際のルーティングテーブルの更新などのために配信される。なお、暗号化パケットSP1~SP4は、一時的に(不定期に)配信されてもよい。
 ここで、新規ノードNxを導入する場合について説明する。図1では、新規ノードNxを設置した場合、アドホックネットワークA1~A3の通信圏内にあり、アドホックネットワークA4の通信圏外にあるとする。新規ノードNxは、いずれの暗号鍵K1~K4も未設定であるため、暗号化パケットの送信や受信パケットの復号はできないが、パケットの単なる受信は可能である。
 このように、復号ができないにもかかわらずパケットを受信することを、「傍受」と称す。また、傍受されたパケットについては、新規ノードNxはいずれの暗号鍵K1~K4も持っていないため復号できないが、破棄せずに送信することもできることとする。なお、アドホックネットワークA1~A4では、それぞれの暗号鍵K1~K4で暗号化されていないパケットは、受信しても破棄される。
 図1では、アドホックネットワークA1のノードN1a、アドホックネットワークA2のノードN2b、アドホックネットワークA3のノードN3cにそれぞれ配信された暗号化パケットSP1~SP3が、新規ノードNxに傍受されている。なお、アドホックネットワークA4のノードN4dは新規ノードNxの通信圏外であるため、暗号化パケットSP4は傍受されない。
 新規ノードNxは、傍受した暗号化パケットSP1~SP3を管理サーバ101に送ることで、どのアドホックネットワークA1~A4に所属可能かを通知する必要がある。ただし、ノードNxが、暗号化パケットSP1~SP3を送信元となるアドホックネットワークA1~A3経由で管理サーバ101に送っても、送信元が新規ノードNxであると、管理サーバ101は特定できない。
 また、暗号化パケットSP1をアドホックネットワークA2に送るなど、異なるアドホックネットワークに送るとアドホックネットワーク内のノードが復号できない。すなわち、暗号化パケットSP1は暗号鍵K1で暗号化されているため、アドホックネットワークA2内のノードが持つ暗号鍵K2では復号できない。したがって、アドホックネットワークとは別のネットワーク経由で、傍受した暗号化パケットSP1~SP3を管理サーバ101に送信する。
 具体的には、管理サーバ101と通信可能な携帯端末MTを新規ノードNxに接続する。これにより、ネットワークNW3が設定される。また、携帯端末MTと管理サーバ101とが接続されることで、携帯端末MTと管理サーバ101間で通信が可能となる。これにより、ネットワークNW2が設定される。
 つぎに、ネットワークNW2,NW3経由での暗号鍵設定処理手順について説明する。(1)まず、新規ノードNxは、暗号化パケットSP1~SP3を傍受する。暗号化パケットSP4は通信圏外であるため、傍受できない。
 (2)新規ノードNxは、傍受した暗号化パケットSP1~SP3を携帯端末MT経由で管理サーバ101に送信する。
 (3)管理サーバ101は、新規ノードNxから暗号化パケットSP1~SP3を受信すると、暗号化パケットSP1~SP3を解析して、暗号化パケットSP1~SP3に含まれているゲートウェイG1~G3のアドレスを特定する。
 (4)管理サーバ101は、(3)で特定されたゲートウェイG1~G3のアドレスに関連付けられている暗号鍵K1~K3の中から、新規ノードNxに設定させる暗号鍵(以下、「選択鍵」という)を選択する。具体的には、ゲートウェイG1~G3が所属するアドホックネットワークA1~A3のノード数により、選択鍵を決定する。
 たとえば、候補となる暗号鍵K1~K3のうち、最大ノード数以外のノード数となる暗号鍵K2,K3から選択する。この場合、最大ノード数でなければ、暗号鍵K2,K3のいずれでもよい。また、最小ノード数の暗号鍵K3としてもよい。図1では、暗号鍵K3が選択されたものとする。
 (5)管理サーバ101は、選択鍵K3を、携帯端末MTを介して新規ノードNxに送信する。
 (6)そして、管理サーバ101は、暗号鍵K3に関連付けられているノード数を「3」から「4」に更新する。
 (7)新規ノードは、管理サーバ101からの選択鍵K3を受信して、パケットを暗号化、または、暗号化パケットを復号するための鍵に設定する。
 これにより、新規ノードNxは、アドホックネットワークA3に所属することとなり、アドホックネットワークA3内で暗号化通信が可能となる。このように、ノード数が少ないアドホックネットワークから新規ノードNxを導入することができるため、複数のアドホックネットワーク間でノード数の平均化を図ることができる。したがって、通信負荷のばらつきの低減化を図り、また、ゲートウェイに障害が発生したときのリスク分散をおこなうことができることとなり、アドホックネットワークA1~A4全体での通信の安定性の向上を図ることができる。
 以下、上述した図1に示したネットワークシステム100でのノード数平均化例について具体的に説明する。
(ネットワークシステム100の一実施例)
 図2は、実施の形態にかかるネットワークシステム100の一実施例を示す説明図である。図2において、ネットワークシステム100は、管理サーバ101と、ゲートウェイG1~Gnと、ノードN1-1~N1-m1,…,Ni-1~Ni-mi,…,Nn-1~Nn-mnと、を含む構成である。iはアドホックネットワークAiの数(i=1,2,…,n),miは、アドホックネットワークAi内のノード数である。
 ネットワークシステム100において、管理サーバ101とゲートウェイG1~Gnは、インターネット、LAN、WANなどのネットワークNW1を介して相互に通信可能に接続されている。また、ゲートウェイGiとノードNi-1~Ni-miは、アドホックネットワークAiを介して接続されている。
 ここで、管理サーバ101は、暗号鍵DB110を備え、各ゲートウェイG1~Gn固有の暗号鍵を管理するコンピュータである。ゲートウェイGi固有の暗号鍵(以下、「暗号鍵Ki」という)は、ゲートウェイGiが属するアドホックネットワークAi内のノード間で送受信されるパケットを暗号化するための鍵情報である。なお、暗号鍵DB110についての詳細な説明は後述する。
 ゲートウェイGiは、アドホックネットワークAiとネットワークNW1とを接続する中継機器である。ゲートウェイGiは、アドホックネットワークAiのプロトコルとネットワークNW1のプロトコルの両方を理解し、アドホックネットワークAiとネットワークNW1との間の通信の転送をおこなう。
 また、ゲートウェイGiは、アドホックネットワークAi内においてどのノードがどのノードに対し通信可能かを把握しており、この情報を元に、ゲートウェイGiは自律的にルーティングすることになる。各ノードNi-1~Ni-miでは、ゲートウェイGiのルーティングにより、マルチホップ通信をおこなう際の転送元アドレスと転送先アドレスが設定されることとなる。この設定は、ゲートウェイGiからのブロードキャストパケットでおこなわれる。
 ノードNi-1~Ni-miは、所定の通信圏内の他ノードとマルチホップ通信をおこなう無線通信装置である。アドホックネットワークAiでは、すべてのノードNi-1~Ni-miがゲートウェイGiと直接通信できる必要はなく、一部のノードがゲートウェイGiと通信可能であればよい。
 そして、ノードNi-1~Ni-miは、ゲートウェイGiからのブロードキャストパケットにより、パケットの転送元アドレスと転送先アドレスの組み合わせとなるルーティングテーブルを保持することとなる。なお、ルーティングテーブルがない場合でもマルチホップ通信が可能である。この場合、パケットには最大ホップ数が設定されているため、最大ホップ数を超えた以降は、転送されなくなる。
 ネットワークシステム100は、たとえば、各家庭の電力やガスの使用量を収集するシステムに適用することができる。具体的には、たとえば、各家庭の電力メータやガスメータに各ノードNi-1~Ni-miを組み込むことで、アドホックネットワークAi内のノード間で各家庭の電力やガスの使用量を送受信する。なお、各家庭の電力やガスの使用量は、各ノードNi-1~Ni-miが計測してもよく、また、各ノードNi-1~Ni-miが電力メータやガスメータから取得してもよい。
 ゲートウェイGiは、アドホックネットワークAi内のノードNi-1~Ni-miから受信した各家庭の電力やガスの使用量を、ネットワークNW1を介して電力会社やガス会社のサーバ(たとえば、管理サーバ101)に送信する。これにより、作業員が現地に出向くことなく電力やガスの使用量を収集することができる。
 また、ネットワークシステム100では、アドホックネットワークAiごとにゲートウェイGi固有の暗号鍵Kiを用いてパケットを暗号化する。これにより、アドホックネットワークAiのセキュア通信(データ秘匿性、改ざん防止など)を確保する。また、アドホックネットワークAiごとに暗号鍵Kiを変えることで、鍵漏洩時のリスクを低減させる。
 なお、図2の例では、アドホックネットワークAi内に1台のゲートウェイGiを設ける構成としたが、同一のアドホックネットワークAi内に複数台のゲートウェイGiを設ける構成としてもよい。この場合、アドホックネットワークAi内で送受信されるパケットを暗号化するための暗号鍵Kiは、複数台のゲートウェイGiで共通である。
(管理サーバ101のハードウェア構成例)
 図3は、実施の形態にかかる管理サーバ101のハードウェア構成例を示すブロック図である。図3において、管理サーバ101は、CPU(Central Processing Unit)301と、ROM(Read Only Memory)302と、RAM(Random Access Memory)303と、磁気ディスクドライブ304と、磁気ディスク305と、光ディスクドライブ306と、光ディスク307と、I/F(Interface)308と、ディスプレイ309と、キーボード310と、マウス311と、を備えている。また、CPU301~マウス311はバス300によってそれぞれ接続されている。
 ここで、CPU301は、管理サーバ101の全体の制御を司る。ROM302は、ブートプログラムなどのプログラムを記憶している。RAM303は、CPU301のワークエリアとして使用される。磁気ディスクドライブ304は、CPU301の制御に従って磁気ディスク305に対するデータのリード/ライトを制御する。磁気ディスク305は、磁気ディスクドライブ304の制御で書き込まれたデータを記憶する。
 光ディスクドライブ306は、CPU301の制御に従って光ディスク307に対するデータのリード/ライトを制御する。光ディスク307は、光ディスクドライブ306の制御で書き込まれたデータを記憶したり、光ディスク307に記憶されたデータをコンピュータに読み取らせたりする。
 I/F308は、通信回線を通じてネットワークNW1,NW2に接続され、このネットワークNW1,NW2を介して他の装置(たとえば、ゲートウェイGi、携帯端末MT)に接続される。I/F308は、ネットワークNW1,NW2と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F308には、たとえば、モデムやLANアダプタなどを採用することができる。
 ディスプレイ309は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ309は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
 キーボード310は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス311は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。なお、携帯端末MTについても、図3に示した管理サーバ101と同様のハードウェア構成により実現できる。
(ノード等のハードウェア構成例)
 図4は、実施の形態にかかるノードのハードウェア構成例を示すブロック図である。図4において、ノードは、CPU401と、RAM402と、フラッシュメモリ403と、I/F404と、暗号化回路405と、を備えている。CPU401~暗号化回路405は、バス400によってそれぞれ接続されている。
 ここで、CPU401は、ノードの全体の制御を司る。RAM402は、CPU401のワークエリアとして使用される。フラッシュメモリ403は、プログラムや暗号鍵などの鍵情報を記憶している。I/F404は、マルチホップ通信によりパケットを送受信する。また、ゲートウェイGiのI/F404は、通信回線を通じてネットワークNW1に接続され、このネットワークNW1を介して管理サーバ101に接続される。
 暗号化回路405は、データを暗号化する場合に暗号鍵によりデータを暗号化する回路である。暗号化をソフトウェア的に実行する場合は、暗号化回路405に相当するプログラムをフラッシュメモリ403に記憶させておくことで、暗号化回路405は不要となる。
(暗号鍵DB110の記憶内容)
 図5は、図1に示した暗号鍵DB110の記憶内容の一例を示す説明図である。図5において、暗号鍵DB110は、ID、GWアドレスおよび暗号鍵のフィールドを有し、各フィールドに情報を設定することで、ゲートウェイG1~Gnごとの鍵情報500-1~500-nをレコードとして記憶している。
 ここで、IDは、本明細書において説明上用いる各ゲートウェイGiの識別子である。GWアドレスは、ゲートウェイGiのアドレスである。GWアドレスとしては、たとえば、ゲートウェイGiのMAC(Media Access Control)アドレスやIP(Internet Protocol)アドレスを用いることができる。暗号鍵は、各ゲートウェイGi固有の暗号鍵Kiであり、具体的には、たとえば、128~256ビット程度のバイナリデータである。
 鍵情報500-1を例に挙げると、ゲートウェイG1のGWアドレスは『xx:xx:xx:xx:12:34』、暗号鍵は『K1』である。なお、暗号鍵DB110は、たとえば、図3に示した管理サーバ101のROM302、RAM303、磁気ディスク305、光ディスク307などの記憶装置により実現される。
 暗号鍵DB110の記憶内容は、管理サーバ101がゲートウェイGi固有の暗号鍵KiをゲートウェイGiから受信することで更新してもよい。また、図3に示したキーボード310やマウス311を用いたユーザの操作入力により、暗号鍵DB110の記憶内容を更新することにしてもよい。
(新規ノードNの導入時における暗号鍵Kiの設定例)
 つぎに、ネットワークシステム100への新規ノードの導入時における暗号鍵Kiの設定例について説明する。
 図6は、ネットワークシステム100への新規ノードの導入例を示す説明図である。図6において、ネットワークシステム100の任意のアドホックネットワークAi内に新規ノードNxが導入されている。なお、図6では、アドホックネットワークAi内のノードNi-1~Ni-miのうち、代表としてノードNi-1~Ni-3を示している。
 新規ノードNxの導入時は、作業員OPは新規ノードNxがどのアドホックネットワークAiに属しているのかわからない。そこで、本実施の形態では、作業員OPが使用する携帯端末MTを利用して、新規ノードNxがアドホックネットワークAi内のノードNi-xとして設定すべき暗号鍵Kiを管理サーバ101に問い合わせる。そして、管理サーバ101が、暗号鍵Kiを選択した場合、選択鍵Kiを管理サーバ101から取得して新規ノードNi-xに自動設定する。
 ここで、携帯端末MTは、作業員OPが使用する携帯型の通信装置であり、たとえば、携帯電話機、PHS(Personal Handy-phone System)電話機、スマートフォン、ノート型のパーソナル・コンピュータなどである。携帯端末MTは、直接通信できない新規ノードNxと管理サーバ101との間の通信を中継する。
 図7は、新規ノードNxの導入時におけるネットワークシステム100の動作例(前半)を示すシーケンス図である。図7のシーケンスは、たとえば、作業員OPが現地(新規ノードNxの設置場所)に出向くまでに行われる動作例である。
 図7のシーケンスにおいて、(1)ゲートウェイGiは、ゲートウェイGi固有の暗号鍵Kiを管理サーバ101に送信する。(2)管理サーバ101は、ゲートウェイGi固有の暗号鍵KiとゲートウェイGiのアドレスとを関連付けて暗号鍵DB110に登録する。
 (3)ゲートウェイGiは、ゲートウェイGi固有の暗号鍵Kiを用いて暗号化されたパケット(以下、「暗号化パケットSPi」という)をアドホックネットワークAiにブロードキャスト(同時通報)する。暗号化パケットSPiには、たとえば、ゲートウェイGiのアドレスが含まれている。
 (4)ノードNi-1は、ゲートウェイGiからの暗号化パケットSPiを通信圏内のノードNi-3に送信する。(5)ノードNi-3は、ノードNi-1からの暗号化パケットSPiを通信圏内の新規ノードNxに送信する。これにより、新規ノードNxは、暗号化パケットSPiを傍受する。(6)新規ノードNxは、ノードNi-3からの暗号化パケットSPiを記録する。ただし、この時点では、新規ノードNxは、暗号鍵Kiが未設定のため、暗号化パケットSPiを復号することはできない。
 なお、上述した(1)~(6)は、新規ノードNxと通信圏内にあるアドホックネットワークAiごとに実行される。したがって、通信圏内のアドホックネットワークAiが複数ある場合、新規ノードNxは暗号化パケットSPiを通信圏内のアドホックネットワークAiごとに傍受することとなる。通信圏内のアドホックネットワークAiごとに傍受された暗号化パケットSPiの集合を「暗号化パケット群SP」と称す。
 図8は、新規ノードNxの導入時におけるネットワークシステム100の動作例(後半)を示すシーケンス図である。図8のシーケンスは、たとえば、作業員OPが現地に出向いたあとに行われる動作例である。
 図8のシーケンスにおいて、(7)携帯端末MTは、携帯電話網やインターネットなどのネットワークNW2を介して管理サーバ101に接続する。この際、携帯端末MTは、たとえば、SSL(Secure Socket Layer)を用いて、管理サーバ101とセキュアな通信をおこなう。なお、管理サーバ101と携帯端末MTとの間でセキュア通信を実現するための通信方式については、図13および図14を用いて後述する。
 (8)携帯端末MTは、有線または無線のネットワークNW3を介して新規ノードNxに接続する。具体的には、たとえば、作業員OPが、USB(Universal Serial Bus)ケーブルを用いて、携帯端末MTと新規ノードNとを接続することで、携帯端末MTと新規ノードNとの間にネットワークNW3が確立される。
 (9)新規ノードNxは、ネットワークNW3を介して、図7に示した(6)において記録した暗号化パケット群SPを携帯端末MTに送信する。
 (10)携帯端末MTは、ネットワークNW2を介して、新規ノードNxからの暗号化パケット群SPを管理サーバ101に送信する。
 (11)管理サーバ101は、携帯端末MTからの暗号化パケット群SPの各々の暗号化パケットSPiを解析して、各暗号化パケットSPiに含まれているゲートウェイGiのアドレスから、新規ノードNxが通信可能なゲートウェイGiをそれぞれ特定する。
 (12)管理サーバ101は、(11)で特定されたゲートウェイGiごとに、当該ゲートウェイGiのアドレスに関連付けられている暗号鍵Kiを、暗号鍵DB110の中から抽出する。
 (13)管理サーバ101は、(12)で抽出された各暗号鍵Kiに関連付けられているノード数に応じて、新規ノードNxの設定対象となる暗号鍵を選択する。
 (14)管理サーバ101は、ネットワークNW2を介して、選択鍵Ksを携帯端末MTに送信する。
 (15)携帯端末MTは、ネットワークNW3を介して、選択鍵Ksを新規ノードNxに送信する。
 (16)新規ノードNxは、管理サーバ101からの選択鍵Ksを受信して、パケットを暗号化、または、暗号化パケットを復号するための鍵に設定する。これにより、新規ノードNxは、選択鍵Ksを有するゲートウェイGiが所属するアドホックネットワークAiに所属することとなる。すなわち、選択鍵Ks設定以降は、新規ノードNxは、アドホックネットワークAi内の一ノードとしてアドホックネットワークAiと同様にふるまうこととなる。
 (17)管理サーバ101は、選択鍵Ksに関連付けられているノード数をインクリメント(+1)する。これにより、新規ノードNxへの選択鍵Ks設定後におけるアドホックネットワークAiのノード数を参照することで、つぎに導入される新規ノードについても、図7および図8の(1)~(17)と同様の処理を実行することができる。
 なお、以下の説明において、「ノードN」とは、ネットワークシステム100のアドホックネットワークA1~AnのいずれかのアドホックネットワークAi内でマルチホップ通信によりパケットを送受信するノード(新規ノードNx含む。)を示す。また、「ノード等」とは、ネットワークシステム100のゲートウェイG1~GnおよびノードNを示す。
(ノードNの機能的構成例)
 図9は、ノードの機能的構成例を示すブロック図である。図9において、ノードNは、パケット受信部901と、検知部902と、パケット送信部903と、鍵受信部904と、設定部905と、を含む構成である。
 各機能部(パケット受信部901~設定部905)は、具体的には、たとえば、図4に示したRAM402、フラッシュメモリ403などの記憶装置に記憶されたプログラムをCPU401に実行させることにより、または、I/F404により、その機能を実現する。また、各機能部(パケット受信部901~設定部905)の処理結果は、特に指定する場合を除いて、RAM402、フラッシュメモリ403などの記憶装置に記憶される。
 パケット受信部901は、アドホックネットワークAi内からの暗号化パケットSPiを受信する。暗号化パケットSPiは、ゲートウェイGi固有の暗号鍵Kiを用いて暗号化されたパケットである。たとえば、暗号化パケットSPiは、ゲートウェイGi固有の暗号鍵Kiで暗号化されたゲートウェイGiからのブロードキャストパケットである。ここで、暗号化パケットSPiのデータ構造の一例について説明する。
 図10は、暗号化パケットSPiのデータ構造の一例を示す説明図である。図10では、アドホックネットワークAiのゲートウェイGiからブロードキャストされた暗号化パケットSP1を例に挙げている。図10において、暗号化パケットSPiは、ヘッダ部1010とペイロード部1020とを含む構成である。ヘッダ部1010には、宛先アドレス、差出アドレス、ホップ数およびGWアドレスが記述されている。ペイロード部1020には、暗号化されたデータ本体が記述されている(図10中ハッチ部分)。
 ここで、宛先アドレスは、送信先のアドレスである。ここでは、ブロードキャスト用のMACアドレス『00:00:00:00:00:00』が記述されている。差出アドレスは、転送元のアドレスである。ここでは、アドホックネットワークA1内のノードNとは異なる他のノードNのMACアドレスが記述されている。図1の例でいうと、暗号化パケットSP1の転送元となるノードN1aのMACアドレスが記述されることとなる。
 ホップ数は、暗号化パケットSPiを残り何回転送するのかを示す残余の転送回数である。すなわち、マルチホップの上限回数である。ゲートウェイGiからブロードキャストされる暗号化パケットSPiのホップ数の最大値は予め設定されている。このホップ数は暗号化パケットSPiの転送時にデクリメントされ、ホップ数が『0』となった暗号化パケットSPiは棄却される。ここでは、暗号化パケットSP1のホップ数『10』が記述されているため、10回マルチホップされると、その次はマルチホップされない。
 GWアドレスは、暗号化パケットSPiの送信元となるゲートウェイGiのアドレスである。ここでは、ゲートウェイG1のMACアドレス『xx:xx:xx:xx:12:34』が記述されている。なお、ここでは宛先アドレス、差出アドレスおよびGWアドレスの一例として、MACアドレスを用いて説明したが、IPアドレスなどのアドレスを用いることにしてもよい。
 また、ノードNが暗号鍵Ki未設定の新規ノードNxである場合、パケット受信部901は、近隣ノードからの暗号化パケットSPiを受信(傍受)する。たとえば、パケット受信部901は、図1に示したように、アドホックネットワークA1~A3からの暗号化パケットSP1~SP3を傍受する。
 また、パケット受信部901は、ノードNに暗号鍵Kiが設定されている場合であっても、通信圏内であれば暗号化パケットSPiを傍受する。この場合、傍受したノードNのルーティングテーブルでは、暗号化パケットSPの転送元が登録されていないため、傍受した暗号化パケットSPiは、傍受したノードNで破棄されることとなる。ルーティングテーブルがない場合は、ホップ数が0でない限り、他の近隣ノードに転送することになる。
 検知部902は、管理サーバ101と通信可能な携帯端末MTとの接続を検知する。具体的には、たとえば、作業員OPがUSBケーブルを用いて携帯端末MTと新規ノードNとを接続した結果、検知部902が、USBケーブルを介した携帯端末MTとの接続を検知する。
 パケット送信部903は、携帯端末MTとの接続が検知された場合、携帯端末MTを介して、受信(傍受)された暗号化パケット群SPを管理サーバ101に送信する。具体的には、たとえば、パケット送信部903が、USBケーブルなどのネットワークNW3を介して、暗号化パケット群SPを携帯端末MTに送信する。この結果、携帯端末MTが、ネットワークNW2を介して、ノードNからの暗号化パケット群SPを管理サーバ101に送信する。
 なお、暗号化パケットSPiは同一のアドホックネットワークAi内で複数の経路をたどって傍受されるため、同一の暗号化パケットSPiは複数回受信される場合がある。この場合、複数個の同一暗号化パケットSPiについては、1個だけ送信する。たとえば、図1の場合、暗号化パケットSP1が6回、暗号化パケットSP2が3回、暗号化パケットSP3が1回受信されたとしても、暗号化パケットSP1~SP3をそれぞれ1個送信することになる。これにより、暗号化パケット群SPの通信負荷の低減化を図ることができる。
 また、同一アドホックネットワークAiからの暗号化パケット数を、管理サーバ101での暗号鍵Kiの選択基準とする場合は、パケット送信部903は、受信(傍受)された複数個の同一暗号化パケットSPiを送信することとしてもよい。たとえば、図1の場合、暗号化パケットSP1が6回、暗号化パケットSP2が3回、暗号化パケットSP3が1回受信されたとすると、ノードNは、暗号化パケットSP1を6個、暗号化パケットSP2を3個、暗号化パケットSP3を1個、管理サーバ101に送信することになる。
 鍵受信部904は、携帯端末MTを介して、送信された暗号化パケット群SPの中から管理サーバ101によって選択された選択鍵Ksを、管理サーバ101から受信する。この選択鍵Ksは、たとえば、ノードNにおいてパケットを暗号化するとともに、暗号鍵Kiを用いて暗号化された暗号化パケットSPiを復号することができる共通鍵である。
 設定部905は、受信された選択鍵Ksを、アドホックネットワークAi内でマルチホップ通信させるパケットを暗号化するための鍵に設定する。具体的には、たとえば、設定部905は、特定の記憶領域に選択鍵Ksを書き込む。特定の記憶領域のアドレスは、パケットを暗号化する際、または暗号化パケットSPiを復号する際に指定されるアドレスである。これにより、以降においてノードNが送信対象となるパケットを暗号化、および暗号化パケットSPiを復号することが可能となり、アドホックネットワークAi内のノード間でセキュア通信をおこなうことができる。
(管理サーバ101の機能的構成)
 図11は、管理サーバ101の機能的構成例を示すブロック図である。図11において、管理サーバ101は、受信部1101と、抽出部1102と、送信部1103と、を含む構成である。各機能部(受信部1101~送信部1103)は、具体的には、たとえば、図3に示したROM302、RAM303、磁気ディスク305、光ディスク307などの記憶装置に記憶されたプログラムをCPU301に実行させることにより、または、I/F308により、その機能を実現する。また、各機能部(受信部1101~送信部1103)の処理結果は、たとえば、RAM303、磁気ディスク305、光ディスク307などの記憶装置に記憶される。
 受信部1101は、携帯端末MTを介して、暗号化パケットSPiをノードNから受信する。具体的には、たとえば、受信部1101が、ネットワークNW2を介して、ノードNからの暗号化パケット群SPを携帯端末MTから受信する。
 抽出部1102は、暗号鍵DB110の中から、受信された暗号化パケットSPiを復号するための暗号鍵Kiを抽出する。具体的には、たとえば、抽出部1102が、暗号鍵DB110の中から、暗号化パケットSPiに含まれるゲートウェイGiのアドレスと関連付けて記憶されている暗号鍵Kiを抽出する。
 たとえば、受信部1101によって図10に示した暗号化パケットSP1が受信されたとする。この場合、抽出部1102が、たとえば、暗号鍵DB110の中から、暗号化パケットSP1に含まれるGWアドレス『xx:xx:xx:xx:12:34』と関連付けて記憶されている暗号鍵K1を抽出する。ここで、抽出部1102についてより詳細に説明する。抽出部1102は、特定部1121と、復号部1122と、選択部1123と、を有する。
 特定部1121は、受信部1101によって受信された暗号化パケット群SPの各暗号化パケットSPiに含まれている各ゲートウェイGiのアドレスを特定する。そして、特定部1121は、特定された各ゲートウェイGiのアドレスに基づいて、各ゲートウェイGiが所属するアドホックネットワークAi内に存在するノード数を特定する。具体的には、たとえば、特定部1121は、暗号化パケットSPiのヘッダ部1010のGWアドレスに一致するGWアドレスと関連付けられているノード数を、暗号鍵DB110から抽出する。
 たとえば、図10の暗号化パケットSP1では、ゲートウェイG1のGWアドレス『xx:xx:xx:xx:12:34』が記述されているため、ゲートウェイG1のGWアドレス『xx:xx:xx:xx:12:34』に関連付けられているノード数「10」を、暗号鍵DB110から抽出する。
 また、図10に示した暗号化パケットSP1のようにGWアドレスがヘッダ部1010に含まれていれば、上述したように、GWアドレスを手掛かりに暗号鍵DB110の中からノード数や暗号鍵Kiを抽出することができる。これに対して、GWアドレスがペイロード部1020に含まれる場合がある。
 図12は、暗号化パケットSPiのデータ構造の一例を示す説明図(その2)である。図12においても、図10と同様、アドホックネットワークAiのゲートウェイGiからブロードキャストされた暗号化パケットSP1を例に挙げる。
 図12において、暗号化パケットSPiは、ヘッダ部1210とペイロード部1220とを含む構成である。ヘッダ部1210には、宛先アドレス、差出アドレスおよびホップ数が記述されている。ペイロード部1220には、暗号化されたGWアドレスおよびデータ本体が記述されている(図12中ハッチ部分)。
 この場合、GWアドレスを手掛かりに暗号鍵DB110の中からノード数や暗号鍵Kiを抽出することはできない。そこで、復号部1122は、暗号鍵DB110に登録されている暗号鍵Kiごとに、暗号鍵Kiを用いて暗号化パケットSPiの復号処理を実行する。これにより、抽出部1102は、暗号化パケットSPiの復号に成功した暗号鍵Kiを抽出することができる。
 復号の成否は、暗号化パケットSPiを復号した復号後のパケットのフォーマットに基づいて判断することができる。具体的には、たとえば、抽出部1102は、復号部1122によって復号された復号後のパケットが、予め規定されたフォーマットのデータの場合、暗号化パケットSPiの復号が成功したと判断する。これにより、暗号化パケットSPiのヘッダ部1210にGWアドレスが含まれていない場合であっても、暗号鍵DB110の中からノードNに設定すべき適切な暗号鍵Kiを抽出することができる。
 選択部1123は、特定部1121によって特定されたノード数のうち最大でないいずれかのノード数であるいずれかのアドホックネットワークAi内のゲートウェイGi固有の鍵を、暗号鍵DB110において複数のアドホックネットワーク内の各ゲートウェイ固有の鍵の中から選択する。具体的には、たとえば、特定部1121によりゲートウェイGiごとにノード数が特定されるため、選択部1123は、その中で最大ノード数以外のノード数のゲートウェイGiを選択する。そして、選択部1123は、選択されたゲートウェイGiのアドレスに関連付けられている暗号鍵Kiを、暗号鍵DB110から抽出する。選択部1123によって暗号鍵DB110から抽出された暗号鍵Kiが選択鍵Ksとなる。
 たとえば、図1に示したように、暗号化パケット群SPが暗号化パケットSP1~SP3である場合、ゲートウェイG1~G3に関連付けられているノード数10個、5個、3個がそれぞれ特定される。選択部1123は、これらのノード数のうち最大ノード数である10個以外の5個、3個に関連付けられているゲートウェイG2,G3を選択する。この場合、特定されたノード数のうち最小ノード数となる3個を選択するのが好ましい。ここでは、3個、すなわちゲートウェイG3が選択されたこととする。そして、選択部1123は、ゲートウェイG3に関連付けられている暗号鍵K3を選択鍵Ksとして選択して、暗号鍵DB110から抽出する。
 なお、選択部1123は、特定部1121によって特定されたノード数がいずれも同数である場合は、ランダムに選択してもよい。同様に、選択部1123は、特定部1121によって特定されたノード数のうち、最大ノード数以外の残余のノード数がいずれも同数である場合も、ランダムに選択してもよい。
 また、同数の場合には、選択部1123は、傍受回数が最大の暗号化パケットSPiを配信したゲートウェイGi固有の暗号鍵Kiを選択鍵Ksとしてもよい。すなわち、ノードNは、同一暗号化パケットSPiを複数回傍受し、それらをすべて管理サーバ101に送信する場合がある。たとえば、図1の場合、暗号化パケットSP1が6回、暗号化パケットSP2が3回、暗号化パケットSP3が1回受信されたとすると、ノードNは、暗号化パケットSP1を6個、暗号化パケットSP2を3個、暗号化パケットSP3を1個、管理サーバ101に送信することになる。
 ここで、アドホックネットワークA1~A3のノード数がそれぞれ10個である場合、同一ノード数となるため、選択部1123は、最大傍受回数(6回)であるアドホックネットワークA1のゲートウェイG1固有の暗号鍵K1を選択鍵Ksとして抽出する。
 外乱によって無線通信の状態が変化しやすいアドホックネットワークAiでは、傍受回数の多さは、アドホックネットワーク内のマルチホップ通信の通信経路の多さに比例する。したがって、傍受回数が最大のアドホックネットワークAiのゲートウェイGi固有の暗号鍵Kiを選択鍵Ksとすることで、新規ノードNxは、最も安定性の高いアドホックネットワークAiで通信をおこなうことができる。
 一方、これとは逆に、傍受回数の少ないアドホックネットワークAiのゲートウェイGi固有の暗号鍵Kiを選択鍵Ksとすることとしてもよい。たとえば、上述の例では、選択部1123は、最小傍受回数(1回)であるアドホックネットワークA3のゲートウェイG3固有の暗号鍵K3を選択鍵Ksとして抽出する。
 外乱によって無線通信の状態が変化しやすいアドホックネットワークAiでは、傍受回数の多さは、アドホックネットワーク内のマルチホップ通信の通信経路の多さに比例する。したがって、傍受回数が最小のアドホックネットワークAiのゲートウェイGi固有の暗号鍵Kiを選択鍵Ksとすることで、新規ノードNx導入の際、導入先のアドホックネットワークAiの通信経路を増強することができる。これにより、通信経路が少ないアドホックネットワークAiでの通信の安定性の向上を図ることができる。
 また、アドホックネットワークA2,A3のノード数が、アドホックネットワークA1のノード数「10個」よりも少ないが同数(たとえば、それぞれ4個)である場合、選択部1123は、最大傍受回数(3回)であるアドホックネットワークA2のゲートウェイG2固有の暗号鍵K2を選択鍵Ksとして抽出する。
 外乱によって無線通信の状態が変化しやすいアドホックネットワークAiでは、傍受回数の多さは、アドホックネットワーク内のマルチホップ通信の通信経路の多さに比例する。傍受回数の多さは、アドホックネットワーク内のマルチホップ通信の通信経路の多さに比例する。したがって、傍受回数が最大のアドホックネットワークAiのゲートウェイGi固有の暗号鍵Kiを選択鍵Ksとすることで、新規ノードNxは、最も安定性の高いアドホックネットワークAiで通信をおこなうことができる。
 一方、これとは逆に、傍受回数の少ないアドホックネットワークAiのゲートウェイGi固有の暗号鍵Kiを選択鍵Ksとすることとしてもよい。たとえば、上述の例では、選択部1123は、最小傍受回数(1回)であるアドホックネットワークA3のゲートウェイG3固有の暗号鍵K3を選択鍵Ksとして抽出する。
 外乱によって無線通信の状態が変化しやすいアドホックネットワークAiでは、傍受回数の多さは、アドホックネットワーク内のマルチホップ通信の通信経路の多さに比例する。したがって、傍受回数が少ないアドホックネットワークAiのゲートウェイGi固有の暗号鍵Kiを選択鍵Ksとすることで、新規ノードNx導入の際、導入先のアドホックネットワークAiの通信経路を増強することができる。これにより、通信経路が少ないアドホックネットワークAiでの通信の安定性の向上を図ることができる。
 なお、上述したノード数が同数の場合の選択方法は、ノード数が同数に限らず、ノード数に差があっても、その差があらかじめ設定しておいた許容範囲内であれば適用可能である。
 送信部1103は、携帯端末MTを介して、選択鍵KsをノードNに送信する。この結果、携帯端末MTが、ネットワークNW3を介して、管理サーバ101からの選択鍵KsをノードNに送信する。
 なお、上述した説明では、管理サーバ101が暗号化パケット群SPを受信した時点において、暗号鍵DB110にゲートウェイGi固有の暗号鍵Kiが登録済みの場合を想定したが、これに限らない。たとえば、管理サーバ101が、暗号化パケットSPiを受信したあとゲートウェイGiに問い合わせることで、選択部1123によって選択されたゲートウェイGi固有の暗号鍵Kiを取得することにしてもよい。これにより、ネットワークシステム100内のすべてのゲートウェイG1~Gn固有の暗号鍵K1~Knを管理サーバ101が予め保持しておく必要がなくなる。
(管理サーバ101と携帯端末MTとの間の通信方式)
 ここで、管理サーバ101と携帯端末MTとの間の通信方式の一実施例について説明する。まず、携帯端末MTからみた管理サーバ101のサーバ認証について説明する。具体的には、たとえば、まず、携帯端末MTが、予め決められたIPアドレスを用いて管理サーバ101に接続する。
 そして、携帯端末MTが、管理サーバ101からSSLサーバ証明書を受信する。受信されたSSLサーバ証明書は、たとえば、管理サーバ101のIPアドレスと関連付けて携帯端末MTのRAM402やフラッシュメモリ403などの記憶装置に記憶される。
 図13は、管理サーバ101の認証情報の一例を示す説明図である。図13において、管理サーバ101の認証情報1300は、IPアドレスおよびSSLサーバ証明書を有する。IPアドレスは、管理サーバ101のIPアドレスである。X.509証明書は、管理サーバ101のSSLサーバ証明書(公開鍵証明書)である。
 携帯端末MTは、予め自端末MTに組み込まれている公開鍵を用いて、SSLサーバ証明書を復号することでサーバ認証をおこなう。公開鍵は、たとえば、第三者認証機関によって発行されたものである。この公開鍵を用いてSSLサーバ証明書を正しく復号できれば、SSLサーバ証明書が第三者認証機関によって証明された正しい証明書であることがわかり、ひいては管理サーバ101の身元が保証されたことになる。
 つぎに、管理サーバ101からみた携帯端末MTのユーザ認証について説明する。ここでは、図14に示すような携帯端末MTの認証情報1400を用いて、携帯端末MTのユーザ認証をおこなう場合を例に挙げて説明する。認証情報1400は、たとえば、管理サーバ101のROM302、RAM303、磁気ディスク305、光ディスク307などの記憶装置に記憶されている。
 図14は、携帯端末MTの認証情報の一例を示す説明図である。図14において、携帯端末MTの認証情報1400は、ユーザIDおよびパスワードを有する。ユーザIDは、携帯端末MTの識別子である。パスワードは、携帯端末MTを使用するユーザを認証するためのものである。
 具体的には、たとえば、まず、携帯端末MTが、ユーザIDおよびパスワードのペアを管理サーバ101に送信する。このユーザIDおよびパスワードは、携帯端末MTのフラッシュメモリ403に予め登録されていてもよく、また、携帯端末MTの入力装置(不図示)を用いたユーザの操作入力により受け付けてもよい。
 このあと、管理サーバ101は、携帯端末MTからのユーザIDおよびパスワードのペアを、認証情報1400のユーザIDおよびパスワードのペアと一致判定する。ここで、認証情報1400のユーザIDおよびパスワードと一致すれば、携帯端末MTのユーザの身元が保証されたことになる。
 なお、認証後において、携帯端末MTは、たとえば、管理サーバ101のSSLサーバ証明書に含まれる公開鍵を用いてパケットを暗号化して管理サーバ101との通信をおこなう。これにより、管理サーバ101と携帯端末MTとの間でセキュアな通信をおこなうことができる。
(ノードNの鍵設定処理手順)
 図15は、ノードの鍵設定処理手順の一例を示すフローチャートである。図15のフローチャートにおいて、まず、ノードNは、パケット受信部901により、アドホックネットワークAi内のゲートウェイGiからブロードキャストされた暗号化パケットSPiを受信したか否かを判断する(ステップS1501)。
 ここで、暗号化パケットSPiを受信するのを待って(ステップS1501:No)、受信した場合(ステップS1501:Yes)、ノードNは、検知部902により、管理サーバ101と通信可能な携帯端末MTとの接続を検知したか否かを判断する(ステップS1502)。
 ここで、携帯端末MTとの接続が検知されるのを待って(ステップS1502:No)、検知された場合(ステップS1502:Yes)、ノードNは、パケット送信部903により、携帯端末MTを介して、受信(傍受)された暗号化パケット群SPを管理サーバ101に送信する(ステップS1503)。なお、暗号化パケット群SPの送信は、一括しておこなってもよく、暗号化パケットSPiが受信される都度、個別に送信してもよい。なお、送信可能な期間は、接続検知後、一定期間経過するまでとする。
 なお、管理サーバ101が同一暗号化パケットSPiの傍受回数を選択鍵Ksの選択基準に利用する場合には、複数の同一暗号化パケットSPiを暗号化パケット群SPに含めて送信してもよい。たとえば、暗号化パケットSP1について3回傍受した場合は、3個の暗号化パケットSP1を暗号化パケット群SPに含めることとなる。
 また、管理サーバ101が同一暗号化パケットSPiの傍受回数を選択鍵Ksの選択基準に利用しない場合には、同一暗号化パケットSPiについては1個のみ暗号化パケット群SPに含めて送信してもよい。たとえば、暗号化パケットSP1について3回傍受した場合でも、暗号化パケットSP1については1個のみ暗号化パケット群SPに含めることとなる。これにより、暗号化パケット群SPの通信負荷の低減化を図ることができる。
 これにより、同一暗号化パケットSPiの傍受回数を、選択鍵Ksの選択基準として管理サーバ101は利用することができる。したがって、傍受回数が少ないアドホックネットワークAiのゲートウェイGi固有の暗号鍵Kiを選択鍵Ksとすることで、新規ノードNx導入の際、導入先のアドホックネットワークAiの通信経路を増強することができる。これにより、通信経路が少ないアドホックネットワークAiでの通信の安定性の向上を図ることができる。
 このあと、ノードNは、鍵受信部904により、携帯端末MTを介して、選択鍵Ksを管理サーバ101から受信したか否かを判断する(ステップS1504)。
 ここで、選択鍵Ksを受信するのを待って(ステップS1504:No)、受信した場合(ステップS1504:Yes)、ノードNは、設定部905により、受信された選択鍵Ksを、パケットを暗号化するための鍵に設定して(ステップS1505)、本フローチャートによる一連の処理を終了する。
 これにより、新規ノードNxは、選択鍵Ksを共通鍵とするアドホックネットワークAiにおいてマルチホップ通信が可能となり、アドホックネットワーク間でノード数の平均化を図ることができる。
(管理サーバ101の鍵提供処理手順)
 図16は、管理サーバ101の鍵提供処理手順の一例を示すフローチャートである。図16のフローチャートにおいて、まず、管理サーバ101は、受信部1101により、携帯端末MTを介して、暗号化パケット群SPをノードNから受信したか否かを判断する(ステップS1601)。
 ここで、暗号化パケット群SPを受信するのを待って(ステップS1601:No)、受信した場合(ステップS1601:Yes)、管理サーバ101は、抽出部1102により、暗号鍵DB110の中から選択鍵Ksを抽出する鍵抽出処理を実行する(ステップS1602)。そして、管理サーバ101は、送信部1103により、携帯端末MTを介して、抽出された選択鍵KsをノードNに送信する(ステップS1603)。
 また、管理サーバ101は、暗号鍵DB110において、選択鍵Ksとなった暗号鍵Kiに関連付けられているノード数をインクリメント(+1)して(ステップS1604)、本フローチャートによる一連の処理を終了する。
 これにより、管理サーバ101は、新規ノードNxに、選択鍵Ksを共通鍵とするアドホックネットワークAiにおいてマルチホップ通信をさせることが可能となり、アドホックネットワーク間でノード数の平均化を図ることができる。
<鍵抽出処理(その1)手順>
 つぎに、図16に示したステップS1602の鍵抽出処理(その1)の具体的な処理手順について説明する。以下に説明する鍵抽出処理(その1)は、暗号化パケットSPiに含まれるGWアドレスが暗号化されていない場合(図10を参照)の処理である。
 図17は、ステップS1602の鍵抽出処理(その1)の具体的な処理手順の一例を示すフローチャートである。図17のフローチャートにおいて、まず、管理サーバ101は、抽出部1102により、図16に示したステップS1601において受信された暗号化パケットSPiに含まれるGWアドレスを特定する(ステップS1701)。
 つぎに、管理サーバ101は、抽出部1102により、ゲートウェイGiの「i」を「i=1」で初期化する(ステップS1702)。このあと、管理サーバ101は、抽出部1102により、暗号鍵DB110を参照して、ゲートウェイGiのGWアドレスを特定する(ステップS1703)。そして、管理サーバ101は、抽出部1102により、ステップS1701において特定されたGWアドレスと、ステップS1703において特定されたGWアドレスとが一致するか否かを判断する(ステップS1704)。
 ここで、GWアドレスが不一致の場合(ステップS1704:No)、管理サーバ101は、抽出部1102により、ゲートウェイGiの「i」をインクリメントして(ステップS1705)、「i」が「n」より大きいか否かを判断する(ステップS1706)。nは、暗号鍵Kiの総数(ゲートウェイGiの総数)である。
 ここで、「i」が「n」以下の場合(ステップS1706:No)、ステップS1703に戻る。一方、「i」が「n」より大きい場合(ステップS1706:Yes)、管理サーバ101は、別の暗号化パケットSPi(同一暗号化パケットSPiではない)があるか否かを判断する(ステップS1707)。
 別の暗号化パケットSPiがない場合(ステップS1707:No)、管理サーバ101は、ステップS1710で抽出済みの暗号鍵Kiがあるか否かを判断する(ステップS1708)。抽出済みの暗号鍵Kiがない場合(ステップS1708:No)、管理サーバ101は、抽出部1102により、エラー処理を実行して(ステップS1709)、管理サーバ101の一連の処理を終了する。
 一方、抽出済みの暗号鍵Kiがある場合(ステップS1708:Yes)、管理サーバ101は、選択候補の各暗号鍵Kiに関連付けられているノード数により、選択候補の各暗号鍵Kiの中から、新規ノードNxに設定させる暗号鍵Kiを選択鍵Ksとして選択する(ステップS1712)。なお、上述したように、さらに、傍受回数を選択基準として用いてもよい。また、ステップS1707において、別の暗号化パケットSPiがある場合(ステップS1707:Yes)、ステップS1701に戻る。
 また、ステップS1704において、GWアドレスが一致する場合(ステップS1704:Yes)、管理サーバ101は、抽出部1102により、暗号鍵DB110の中から暗号鍵Kiおよび暗号鍵Kiに関連付けられているノード数を抽出する(ステップS1710)。そして、管理サーバ101は、別の暗号化パケットSPi(同一暗号化パケットSPiではない)があるか否かを判断する(ステップS1711)。
 別の暗号化パケットSPiがある場合(ステップS1711:Yes)、ステップS1701に戻る。これにより、管理サーバ101は、GWアドレスが一致する暗号鍵Kiを選択候補として抽出することができる。
 一方、別の暗号化パケットSPiがない場合(ステップS1711:No)、選択候補が抽出済みとなるため、管理サーバ101は、選択候補の各暗号鍵Kiに関連付けられているノード数により、選択候補の各暗号鍵Kiの中から、新規ノードNxに設定させる暗号鍵Kiを選択鍵Ksとして選択する(ステップS1712)。なお、上述したように、さらに、傍受回数を選択基準として用いてもよい。
 これにより、管理サーバ101は、少なくとも最大ノード数ではないアドホックネットワークAiのゲートウェイGi固有の暗号鍵Kiを選択することができる。なお、ステップS1709のエラー処理の具体例として、たとえば、抽出部1102が、携帯端末MTを介して、暗号化パケットSPiを復号するための暗号鍵Kiを抽出できなかった旨のエラーメッセージをノードNに送信することにしてもよい。
 ステップS1709のエラー処理は、たとえば、暗号化パケットSPiが改ざんされた場合や暗号化パケットSPiの一部が欠落した場合などに実行される。このエラー処理によれば、ノードNによる暗号化パケットSPiの再送信を促すことができる。
 また、図17のステップS1710では、暗号鍵Kiとノード数とを抽出することとしているが、ステップS1710ではノード数のみを抽出し、ステップS1712において、選択鍵Ksが決定されたときに選択鍵Ksのみを抽出することとしてもよい。これにより、選択候補ではあるが最終的に選択されなかった暗号鍵Kiの抽出をおこなう必要がなく、鍵抽出処理(ステップS1602)の高速化を図ることができる。
<鍵抽出処理(その2)手順>
 つぎに、図16に示したステップS1602の鍵抽出処理(その2)の具体的な処理手順について説明する。以下に説明する鍵抽出処理(その2)は、暗号化パケットSPiに含まれるGWアドレスが暗号化されている場合(図12を参照)の処理である。
 図18は、ステップS1602の鍵抽出処理(その2)の具体的な処理手順の一例を示すフローチャートである。図18のフローチャートにおいて、まず、管理サーバ101は、抽出部1102により、ゲートウェイGiの「i」を「i=1」で初期化する(ステップS1801)。そして、管理サーバ101は、抽出部1102により、暗号鍵DB110の中のゲートウェイGi固有の暗号鍵Kiを用いて、図16に示したステップS1601において受信された暗号化パケットSPiを復号する(ステップS1802)。
 このあと、管理サーバ101は、抽出部1102により、暗号化パケットSPiの復号に成功したか否かを判断する(ステップS1803)。ここで、暗号化パケットSPiの復号に失敗した場合(ステップS1803:No)、管理サーバ101は、抽出部1102により、ゲートウェイGiの「i」をインクリメントして(ステップS1804)、「i」が「n」より大きいか否かを判断する(ステップS1805)。
 ここで、「i」が「n」以下の場合(ステップS1805:No)、ステップS1802に戻る。一方、「i」が「n」より大きい場合(ステップS1805:Yes)、管理サーバ101は、別の暗号化パケットSPi(同一暗号化パケットSPiではない)があるか否かを判断する(ステップS1806)。
 別の暗号化パケットSPiがある場合(ステップS1806:Yes)、ステップS1801に戻る。一方、別の暗号化パケットSPiがない場合(ステップS1806:No)、管理サーバ101は、ステップS1809で抽出済みの暗号鍵Kiがあるか否かを判断する(ステップS1807)。抽出済みの暗号鍵Kiがない場合(ステップS1807:No)、管理サーバ101は、抽出部1102により、エラー処理を実行して(ステップS1808)、管理サーバ101の一連の処理を終了する。エラー処理の具体例は、上述したステップS1709と同様である。
 一方、抽出済みの暗号鍵Kiがある場合(ステップS1807:Yes)、管理サーバ101は、選択候補の各暗号鍵Kiに関連付けられているノード数により、選択候補の各暗号鍵Kiの中から、新規ノードNxに設定させる暗号鍵Kiを選択鍵Ksとして選択する(ステップS1811)。なお、上述したように、さらに、傍受回数を選択基準として用いてもよい。
 一方、ステップS1803において、暗号化パケットSPiの復号に成功した場合(ステップS1803:Yes)、管理サーバ101は、抽出部1102により、暗号鍵DB110の中から暗号鍵Kiおよび暗号鍵Kiに関連付けられているノード数を抽出する(ステップS1809)。そして、管理サーバ101は、別の暗号化パケットSPi(同一暗号化パケットSPiではない)があるか否かを判断する(ステップS1810)。
 別の暗号化パケットSPiがある場合(ステップS1810:Yes)、ステップS1801に戻る。これにより、管理サーバ101は、GWアドレスが一致する暗号鍵Kiを選択候補として抽出することができる。
 一方、別の暗号化パケットSPiがない場合(ステップS1810:No)、選択候補が抽出済みとなるため、管理サーバ101は、選択候補の各暗号鍵Kiに関連付けられているノード数により、選択候補の各暗号鍵Kiの中から、新規ノードNxに設定させる暗号鍵Kiを選択鍵Ksとして選択する(ステップS1811)。なお、上述したように傍受回数を選択基準として用いてもよい。
 これにより、暗号化パケットSPiのヘッダ部1210にGWアドレスが含まれていない場合であっても、暗号鍵DB110の中から、選択鍵Ksを選択することができる。
 また、図18のステップS1809では、暗号鍵Kiとノード数とを抽出することとしているが、ステップS1809ではノード数のみを抽出し、ステップS1811において、選択鍵Ksが決定されたときに選択鍵Ksのみを抽出することとしてもよい。これにより、選択候補ではあるが最終的に選択されなかった暗号鍵Kiの抽出をおこなう必要がなく、鍵抽出処理(ステップS1602)の高速化を図ることができる。
 以上説明したように、本実施の形態によれば、アドホックネットワークAi内のノードNは、携帯端末MTを介して、ゲートウェイGiからブロードキャストされた暗号化パケットSPiを管理サーバ101に送信することができる。この結果、ノードNは、携帯端末MTを介して、暗号化パケットSPiを復号するためのゲートウェイGi固有の暗号鍵Kiの中から選択された選択鍵Ksを、管理サーバ101から受信して設定することができる。
 このように、ノードNが、セキュア通信のための暗号鍵Kiが未設定でも受信できるゲートウェイGiからの暗号化パケットSPiを手掛かりに、携帯端末MTを介して、管理サーバ101に鍵要求することで、選択鍵Ksを取得することができる。これにより、ノードNの初期導入時などにおいて、作業員OPが地理的に絞り込まれた候補となるゲートウェイとノードNとの通信状況をしらみつぶしに確認するなどの作業が不要となり、ノードNに対する暗号鍵Kiの設定作業の効率化を図ることができる。また、確認作業のために候補となる各ゲートウェイの暗号鍵を携帯端末MTなどに記録しておく必要がないため、持ち運びの際の情報漏洩のリスクを低減させることができる。
 また、本実施の形態によれば、ノードNは、複数のゲートウェイGiからブロードキャストされた暗号化パケットSPiを受信(傍受)した場合、ノード数が最大でないアドホックネットワークAiのゲートウェイGi固有の暗号鍵Kiが、設定されることとなる。したがって、複数のアドホックネットワークのうちノード数が少ないアドホックネットワークAiのノード数を増加させることができ、複数のアドホックネットワーク間のノード数の平均化を図ることができる。
 このようにノード数の平均化を図ることで、複数のアドホックネットワーク間での通信負荷のばらつきの低減化を図り、また、ゲートウェイに障害が発生したときのリスク分散をおこなうことができる。したがって、複数のアドホックネットワーク全体での通信の安定性の向上を図ることができる。
 さらに、選択鍵Ksの選択基準としてノード数および各暗号化パケットSPiの傍受回数を利用することができる。外乱によって無線通信の状態が変化しやすいアドホックネットワークAiでは、傍受回数の多さは、アドホックネットワーク内のマルチホップ通信の通信経路の多さに比例する。
 したがって、ノード数が少なく(好ましくは最小)、かつ、傍受回数が多い(好ましくは最大の)アドホックネットワークAiのゲートウェイGi固有の暗号鍵Kiを選択鍵Ksとすることで、ノード数の平均化を図りつつ、新規ノードNxは、最も安定性の高いアドホックネットワークAiで通信をおこなうことができる。
 一方、ノード数が少なく(好ましくは最小)、かつ、傍受回数が少ない(好ましくは最小の)アドホックネットワークAiのゲートウェイGi固有の暗号鍵Kiを選択鍵Ksとすることで、新規ノードNx導入の際、導入先のアドホックネットワークAiの通信経路を増強することができる。これにより、ノード数の平均化を図りつつ、通信経路が少ないアドホックネットワークAiでの通信の安定性の向上を図ることができる。
 以上のことから、本実施の形態にかかる鍵設定方法、ノード、サーバおよびネットワークシステムによれば、アドホックネットワーク内のノードに対する暗号鍵の設定作業にかかる作業員の作業負担の軽減化および作業時間の短縮化を図ることができるという効果を奏する。また、複数のアドホックネットワーク間のノードの平均化を図ることにより通信の安定化を図ることができるという効果を奏する。
 なお、上述した実施の形態では、選択基準としてノード数を利用したり、ノード数および各暗号化パケットSPiの傍受回数を利用した例について説明したが、ノード数を利用せずに各暗号化パケットSPiの傍受回数のみを利用することとしてもよい。外乱によって無線通信の状態が変化しやすいアドホックネットワークAiでは、傍受回数の多さは、アドホックネットワーク内のマルチホップ通信の通信経路の多さに比例する。
 したがって、傍受回数が多い(好ましくは最大の)アドホックネットワークAiのゲートウェイGi固有の暗号鍵Kiを選択鍵Ksとすることで、新規ノードNxは、最も安定性の高いアドホックネットワークAiで通信をおこなうことができる。
 これとは逆に、傍受回数が少ない(好ましくは最小の)アドホックネットワークAiのゲートウェイGi固有の暗号鍵Kiを選択鍵Ksとすることで、新規ノードNx導入の際、導入先のアドホックネットワークAiの通信経路を増強することができる。これにより、通信経路が少ないアドホックネットワークAiでの通信の安定性の向上を図ることができる。
 また、傍受回数のみ利用する場合であっても、傍受回数が同数になった場合には、ノード数の多さを選択基準として利用してもよい。
 なお、本実施の形態で説明した鍵設定方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本鍵設定プログラムは、ハードディスク、フレキシブルディスク、CD-ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。
100 ネットワークシステム
101 管理サーバ
110 暗号鍵DB
901 パケット受信部
902 検知部
903 パケット送信部
904 鍵受信部
905 設定部
1101 受信部
1102 抽出部
1103 送信部
1121 特定部
1122 復号部
1123 選択部
Ks 選択鍵
MT 携帯端末
N ノード
Nx 新規ノード

Claims (15)

  1.  アドホックネットワーク群のうち通信圏内にある複数のアドホックネットワークからのパケットを受信可能なノードが実行する鍵設定方法であって、
     前記複数のアドホックネットワークの各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いて暗号化された複数の暗号化パケットを、前記複数のアドホックネットワークから受信するパケット受信工程と、
     前記アドホックネットワーク群の各アドホックネットワーク内のゲートウェイ固有の鍵およびノード数を保持するサーバと通信可能な携帯端末との接続を検知する検知工程と、
     前記検知工程によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信工程によって受信された前記複数の暗号化パケットを前記サーバに送信するパケット送信工程と、
     前記携帯端末を介して、前記複数のアドホックネットワークの中で前記ノード数が最大ではないいずれかのアドホックネットワーク内のゲートウェイ固有の鍵を前記サーバから受信する鍵受信工程と、
     前記鍵受信工程によって受信された鍵を、前記いずれかのアドホックネットワーク内でマルチホップ通信させるパケットを暗号化するための鍵に設定する設定工程と、
     を含むことを特徴とする鍵設定方法。
  2.  前記パケット送信工程は、
     前記パケット受信工程によって同一暗号化パケットが複数回受信された場合、前記同一暗号化パケットを1回のみ、前記サーバに送信することを特徴とする請求項1に記載の鍵設定方法。
  3.  前記パケット送信工程は、
     前記パケット受信工程によって同一暗号化パケットが複数回受信された場合、前記同一暗号化パケットを前記複数回、前記サーバに送信することを特徴とする請求項1に記載の鍵設定方法。
  4.  アドホックネットワーク群の各ゲートウェイと通信可能であり、前記各ゲートウェイのアドレスと、前記各ゲートウェイ固有の鍵と、前記アドホックネットワーク群の各アドホックネットワーク内に存在するノード数と、を記憶するデータベースを有するサーバが、
     前記アドホックネットワーク群のうち通信圏内にある複数のアドホックネットワークの各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いて暗号化された複数の暗号化パケットを受信したノードから、当該ノードに接続された携帯端末を介して、前記複数の暗号化パケットを受信する受信工程と、
     前記受信工程によって受信された前記複数の暗号化パケットの各暗号化パケットに含まれている各ゲートウェイのアドレスに基づいて、前記各ゲートウェイが所属するアドホックネットワーク内に存在するノード数を特定する特定工程と、
     前記複数のアドホックネットワークのうち、前記特定工程によって特定されたノード数のうち最大でないいずれかのノード数であるいずれかのアドホックネットワーク内のゲートウェイ固有の鍵を、前記データベースにおいて前記複数のアドホックネットワーク内の各ゲートウェイ固有の鍵の中から選択する選択工程と、
     前記選択工程によって選択された選択鍵を、前記携帯端末を介して、前記ノードに送信する送信工程と、
     を含むことを特徴とする鍵設定方法。
  5.  前記各暗号化パケットを前記データベース内の鍵を用いて復号する復号工程を含み、
     前記特定工程は、
     前記復号工程によって復号された各パケットに含まれている各ゲートウェイのアドレスに基づいて、前記各ゲートウェイが所属するアドホックネットワーク内に存在するノード数を特定することを特徴とする請求項4に記載の鍵設定方法。
  6.  前記選択工程は、
     前記ノード数が最小であるアドホックネットワーク内のゲートウェイ固有の鍵を、前記データベースにおいて前記複数のアドホックネットワーク内の各ゲートウェイ固有の鍵の中から選択することを特徴とする請求項5に記載の鍵設定方法。
  7.  前記選択工程は、
     前記各暗号化パケットの受信回数に基づいて、前記データベースにおいて前記複数のアドホックネットワーク内の各ゲートウェイ固有の鍵の中から選択する請求項5に記載の鍵設定方法。
  8.  アドホックネットワーク群のうち通信圏内にある複数のアドホックネットワークからのパケットを受信可能なノードであって、
     前記複数のアドホックネットワークの各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いて暗号化された複数の暗号化パケットを、前記複数のアドホックネットワークから受信するパケット受信手段と、
     前記アドホックネットワーク群の各アドホックネットワーク内のゲートウェイ固有の鍵およびノード数を保持するサーバと通信可能な携帯端末との接続を検知する検知手段と、
     前記検知手段によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信手段によって受信された前記複数の暗号化パケットを前記サーバに送信するパケット送信手段と、
     前記携帯端末を介して、前記複数のアドホックネットワークの中で前記ノード数が最大ではないいずれかのアドホックネットワーク内のゲートウェイ固有の鍵を前記サーバから受信する鍵受信手段と、
     前記鍵受信手段によって受信された鍵を、前記いずれかのアドホックネットワーク内でマルチホップ通信させるパケットを暗号化するための鍵に設定する設定手段と、
     を備えることを特徴とするノード。
  9.  前記パケット送信手段は、
     前記パケット受信手段によって同一暗号化パケットが複数回受信された場合、前記同一暗号化パケットを1回のみ、前記サーバに送信することを特徴とする請求項8に記載のノード。
  10.  前記パケット送信手段は、
     前記パケット受信手段によって同一暗号化パケットが複数回受信された場合、前記同一暗号化パケットを前記複数回、前記サーバに送信することを特徴とする請求項8に記載のノード。
  11.  アドホックネットワーク群の各ゲートウェイと通信可能なサーバであって、
     前記各ゲートウェイのアドレスと、前記各ゲートウェイ固有の鍵と、前記アドホックネットワーク群の各アドホックネットワーク内に存在するノード数と、を記憶する記憶手段と、
     前記アドホックネットワーク群のうち通信圏内にある複数のアドホックネットワークの各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いて暗号化された複数の暗号化パケットを受信したノードから、当該ノードに接続された携帯端末を介して、前記複数の暗号化パケットを受信する受信手段と、
     前記受信手段によって受信された前記複数の暗号化パケットの各暗号化パケットに含まれている各ゲートウェイのアドレスに基づいて、前記各ゲートウェイが所属するアドホックネットワーク内に存在するノード数を特定する特定手段と、
     前記複数のアドホックネットワークのうち、前記特定手段によって特定されたノード数のうち最大でないいずれかのノード数であるいずれかのアドホックネットワーク内のゲートウェイ固有の鍵を、前記記憶手段において前記複数のアドホックネットワーク内の各ゲートウェイ固有の鍵の中から選択する選択手段と、
     前記選択手段によって選択された選択鍵を、前記携帯端末を介して、前記ノードに送信する送信手段と、
     を備えることを特徴とするサーバ。
  12.  前記各暗号化パケットを前記データベース内の鍵を用いて復号する復号手段を備え、
     前記特定手段は、
     前記復号手段によって復号された各パケットに含まれている各ゲートウェイのアドレスに基づいて、前記各ゲートウェイが所属するアドホックネットワーク内に存在するノード数を特定することを特徴とする請求項11に記載のサーバ。
  13.  前記選択手段は、
     前記ノード数が最小であるアドホックネットワーク内のゲートウェイ固有の鍵を、前記記憶手段において前記複数のアドホックネットワーク内の各ゲートウェイ固有の鍵の中から選択することを特徴とする請求項11に記載のサーバ。
  14.  前記選択手段は、
     前記各暗号化パケットの受信回数に基づいて、前記データベースにおいて前記複数のアドホックネットワーク内の各ゲートウェイ固有の鍵の中から選択する請求項11に記載のサーバ。
  15.  アドホックネットワーク群のうち通信圏内にある複数のアドホックネットワークからのパケットを受信可能なノードと、前記アドホックネットワーク群の各ゲートウェイと通信可能なサーバと、を備えるネットワークシステムであって、
     前記サーバは、
     前記アドホックネットワーク群の各ゲートウェイのアドレスと、前記各ゲートウェイ固有の鍵と、前記アドホックネットワーク群の各アドホックネットワーク内に存在するノード数と、を記憶する記憶手段と、
     前記複数のアドホックネットワークの各ゲートウェイから同時通報された当該各ゲートウェイ固有の鍵を用いて暗号化された複数の暗号化パケットを、前記ノードに接続された携帯端末を介して、前記ノードから受信する受信手段と、
     前記受信手段によって受信された前記複数の暗号化パケットの各暗号化パケットに含まれている各ゲートウェイのアドレスに基づいて、前記各ゲートウェイが所属するアドホックネットワーク内に存在するノード数を特定する特定手段と、
     前記複数のアドホックネットワークのうち、前記特定手段によって特定されたノード数のうち最大でないいずれかのノード数であるいずれかのアドホックネットワーク内のゲートウェイ固有の鍵を、前記記憶手段において前記複数のアドホックネットワーク内の各ゲートウェイ固有の鍵の中から選択する選択手段と、
     前記選択手段によって選択された選択鍵を、前記携帯端末を介して、前記ノードに送信する送信手段と、を備え、
     前記ノードは、
     前記複数の暗号化パケットを前記複数のアドホックネットワークから受信するパケット受信手段と、
     前記サーバと通信可能な前記携帯端末との接続を検知する検知手段と、
     前記検知手段によって前記携帯端末との接続が検知された場合、前記携帯端末を介して、前記パケット受信手段によって受信された前記複数の暗号化パケットを前記サーバに送信するパケット送信手段と、
     前記送信手段によって送信された前記選択鍵を、前記携帯端末を介して、前記サーバから受信する鍵受信手段と、
     前記鍵受信手段によって受信された前記選択鍵を、前記いずれかのアドホックネットワーク内でマルチホップ通信させるパケットを暗号化するための鍵に設定する設定手段と、
     を備えることを特徴とするネットワークシステム。
PCT/JP2011/051964 2011-01-31 2011-01-31 鍵設定方法、ノード、サーバおよびネットワークシステム WO2012104977A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012555601A JP5418700B2 (ja) 2011-01-31 2011-01-31 鍵設定方法、ノード、サーバおよびネットワークシステム
PCT/JP2011/051964 WO2012104977A1 (ja) 2011-01-31 2011-01-31 鍵設定方法、ノード、サーバおよびネットワークシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/051964 WO2012104977A1 (ja) 2011-01-31 2011-01-31 鍵設定方法、ノード、サーバおよびネットワークシステム

Publications (1)

Publication Number Publication Date
WO2012104977A1 true WO2012104977A1 (ja) 2012-08-09

Family

ID=46602222

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/051964 WO2012104977A1 (ja) 2011-01-31 2011-01-31 鍵設定方法、ノード、サーバおよびネットワークシステム

Country Status (2)

Country Link
JP (1) JP5418700B2 (ja)
WO (1) WO2012104977A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007067745A (ja) * 2005-08-30 2007-03-15 Fujitsu Ltd 無線端末、管理装置、無線lanの制御方法、無線lanシステム
JP2007074393A (ja) * 2005-09-07 2007-03-22 Ntt Docomo Inc 安全なアドホックネットワークを構築するシステム
JP2007116319A (ja) * 2005-10-19 2007-05-10 Saxa Inc 通信システム、網管理サーバ、無線端末、およびプログラム
JP2009071707A (ja) * 2007-09-14 2009-04-02 Oki Electric Ind Co Ltd 鍵共有方法、鍵配信システム
JP2009535921A (ja) * 2006-04-28 2009-10-01 モトローラ・インコーポレイテッド 複数のアドホック・デバイスによるセルラー支援型セキュア通信を行う方法およびシステム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007067745A (ja) * 2005-08-30 2007-03-15 Fujitsu Ltd 無線端末、管理装置、無線lanの制御方法、無線lanシステム
JP2007074393A (ja) * 2005-09-07 2007-03-22 Ntt Docomo Inc 安全なアドホックネットワークを構築するシステム
JP2007116319A (ja) * 2005-10-19 2007-05-10 Saxa Inc 通信システム、網管理サーバ、無線端末、およびプログラム
JP2009535921A (ja) * 2006-04-28 2009-10-01 モトローラ・インコーポレイテッド 複数のアドホック・デバイスによるセルラー支援型セキュア通信を行う方法およびシステム
JP2009071707A (ja) * 2007-09-14 2009-04-02 Oki Electric Ind Co Ltd 鍵共有方法、鍵配信システム

Also Published As

Publication number Publication date
JP5418700B2 (ja) 2014-02-19
JPWO2012104977A1 (ja) 2014-07-03

Similar Documents

Publication Publication Date Title
CN109995510B (zh) 一种量子密钥中继服务方法
JP5423907B2 (ja) 鍵設定方法、ノード、サーバ、およびネットワークシステム
CN109995515B (zh) 一种量子密钥中继方法
US7596368B2 (en) Wireless access point apparatus and method of establishing secure wireless links
WO2019128753A1 (zh) 一种低延迟的量子密钥移动服务方法
JP5293284B2 (ja) 通信方法、メッシュ型ネットワークシステム及び通信端末
JP5408354B2 (ja) 鍵設定方法、ノード、およびネットワークシステム
JP5397547B2 (ja) 鍵設定方法、ノード、およびネットワークシステム
JP5488716B2 (ja) 鍵更新方法、ノード、ゲートウェイ、サーバ、およびネットワークシステム
JP5488715B2 (ja) 鍵更新方法、ノード、サーバ、およびネットワークシステム
WO2014016864A1 (ja) ノードおよび通信方法
JP5418700B2 (ja) 鍵設定方法、ノード、サーバおよびネットワークシステム
JP5494828B2 (ja) 鍵設定方法、ノード、サーバ、およびネットワークシステム
JP5418699B2 (ja) 鍵設定方法、ノード、サーバおよびネットワークシステム
JP5621905B2 (ja) 鍵設定方法、ノード、サーバおよびネットワークシステム
Zhou et al. Scalable and deterministic key agreement for large scale networks
JP5839124B2 (ja) ノードおよび通信方法
JP5107823B2 (ja) 認証メッセージ交換システムおよび認証メッセージ交換方法
JP5494829B2 (ja) 鍵設定方法、ノード、およびネットワークシステム

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2012555601

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11857862

Country of ref document: EP

Kind code of ref document: A1