JP2009207049A - Communications device - Google Patents

Communications device Download PDF

Info

Publication number
JP2009207049A
JP2009207049A JP2008049354A JP2008049354A JP2009207049A JP 2009207049 A JP2009207049 A JP 2009207049A JP 2008049354 A JP2008049354 A JP 2008049354A JP 2008049354 A JP2008049354 A JP 2008049354A JP 2009207049 A JP2009207049 A JP 2009207049A
Authority
JP
Japan
Prior art keywords
communication
unit
information
encryption
encryption communication
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2008049354A
Other languages
Japanese (ja)
Other versions
JP5094474B2 (en
Inventor
Tatsunori Tsujimura
達徳 辻村
Norimitsu Nagashima
規充 永嶋
Shinobu Atozawa
忍 後沢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2008049354A priority Critical patent/JP5094474B2/en
Publication of JP2009207049A publication Critical patent/JP2009207049A/en
Application granted granted Critical
Publication of JP5094474B2 publication Critical patent/JP5094474B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To materialize the configuration capable of performing a key exchange only by a cipher-communication apparatus. <P>SOLUTION: The cipher-communication apparatus 20 is equipped with a processing systems A 110 and B 120 each comprising a receiver 1, a transmitter 2, a key managing unit 3, and a cipher-communication processor 4. At a key-exchange time when the cipher communication is performed by the cipher-communication processor 4 of the processing system A 110, the key managing unit 3 of the processing system B 120 performs the key exchange with the apparatus of the communication party and also establishes a communication channel. The cipher-communication processor 4 of the processing system A 110 stops carrying out the cipher communication, simultaneously with the initiation of the cipher communication by the cipher-communication processor 4 of the processing system B 120. Thus, the key exchange can be performed only by the cipher-communication apparatus 20, and the cipher communication can be continued while the key is exchanged. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、ネットワーク上で送受信されるパケットを受信して、暗号化または復号を行う暗号通信装置等に関するものである。   The present invention relates to an encryption communication device or the like that receives a packet transmitted and received on a network and performs encryption or decryption.

近年のLAN(Local Area Network)の高速化およびマルチメディアアプリケーションの普及において、暗号通信の性能がボトルネックになる可能性が指摘されている。
暗号の秘密鍵の自動更新プロトコルであるIKE(Internet Key Exchange)の処理を例にすると、まずフェーズ1において、ISAKMP(Internet SA and Key Management Protocol)のSA(Security Association)の内容の折衝とその共有秘密鍵の生成、IDとハッシュから相互認証を行い、フェーズ2では、SAの内容の折衝とその共有秘密鍵の生成の処理を行うため、処理の負荷が大きく、その処理に多大な時間を要することがある。
In recent years, it has been pointed out that the performance of cryptographic communication may become a bottleneck in the speeding up of LAN (Local Area Network) and the spread of multimedia applications.
Taking IKE (Internet Key Exchange), which is a protocol for automatically updating a secret key for encryption, as an example, in phase 1, the ISAKMP (Internet SA and Key Management Protocol) SA (Security Association) contents are negotiated and shared. Generation of a secret key, mutual authentication from ID and hash, and in phase 2, processing of negotiation of the SA contents and generation of the shared secret key is performed, so the processing load is large and the processing takes a lot of time. Sometimes.

特開2003−179592号公報には、鍵交換処理を行うとき、通信装置とは別に鍵交換代理サーバを用意することで、鍵交換処理の負担を軽減するという方法が示されている。   Japanese Patent Application Laid-Open No. 2003-179592 discloses a method of reducing the burden of key exchange processing by preparing a key exchange proxy server separately from a communication device when performing key exchange processing.

また、特開2007−219577号公報には、マルチコアCPU(Central Processing Unit)を使用したデータ処理装置において、処理手段の負荷を測定することによって、スループットを最適とするように処理手段に対するコアの割当を変更するという方法が示されている。
このようにすれば、例えば暗号化処理と復号処理を同時に行う装置に対して、両処理の負荷を測定し、その負荷の比に対してコアの割当を変更することで、スループットを最適にすることができる。
特開2003−179592号公報 特開2007−219577号公報
Japanese Patent Laid-Open No. 2007-219577 discloses that in a data processing apparatus using a multi-core CPU (Central Processing Unit), the cores are allocated to the processing means so as to optimize the throughput by measuring the load of the processing means. The method of changing is shown.
In this way, for example, for an apparatus that performs encryption processing and decryption processing simultaneously, the load of both processes is measured, and the core allocation is changed with respect to the ratio of the loads, thereby optimizing the throughput. be able to.
Japanese Patent Laid-Open No. 2003-179592 JP 2007-21957 A

特開2003−179592号公報に記載の暗号通信装置では、鍵交換処理の負荷が大きくなると処理時間が増大する問題に対して、通信装置とは別に鍵交換代理サーバを用意しているが、そのようにすると装置とサーバ間で暗号通信をする必要があり、暗号通信の負荷が生じるという課題がある。   In the encryption communication device described in Japanese Patent Application Laid-Open No. 2003-179592, a key exchange proxy server is prepared separately from the communication device for the problem that the processing time increases when the load of key exchange processing increases. If it does so, it will be necessary to perform encryption communication between an apparatus and a server, and the subject that the load of encryption communication arises occurs.

また、例えば鍵交換でIKEを用いたときに、SA更新の際、SAが二重に存在することがあるが、その2つのSAをSA1、SA2とする。
このとき、SA2適用パケットが到着したとき、SA1、SA2の順にSAを検索し、SA1に必ず問い合わせるため、SA2適用パケットがSA1適用パケットに比べて多く到着したとき、SA1への問い合わせの時間の分だけ処理時間に無駄が生じるという課題がある。
For example, when IKE is used for key exchange, there may be double SAs in SA update, and these two SAs are designated as SA1 and SA2.
At this time, when the SA2 application packet arrives, the SA is searched in the order of SA1 and SA2, and the SA1 is always inquired. Therefore, when the SA2 application packet arrives more than the SA1 application packet, the time for the inquiry to the SA1 There is a problem that only processing time is wasted.

また、特開2007−219577号公報に記載のコア割当動的更新方法では、処理手段の負荷測定によって、スループットを最適とするように処理手段に対するコアの割当を変更する。
このようにすれば、例えば暗号化処理と復号処理を同時に行う装置に対して、両処理の負荷を測定し、その負荷の比に対してコアの割当を変更することで、スループットを最適にすることができる。
しかし、例えば鍵交換でIKEを用いて、IKE処理手段にコアが割当てられているとき、IKEが起動している間のみコアが割当てられていればよいが、IKEの処理が終了してから、つぎの負荷測定をしてコア割当が変更されるまでの間は、すでに処理が終了したIKE処理手段に対してコアが割当てられているので、その間リソースが無駄となるといった課題がある。
Further, in the core allocation dynamic update method described in Japanese Patent Application Laid-Open No. 2007-219577, the core allocation to the processing unit is changed so as to optimize the throughput by measuring the load of the processing unit.
In this way, for example, for an apparatus that performs encryption processing and decryption processing simultaneously, the load of both processes is measured, and the core allocation is changed with respect to the ratio of the loads, thereby optimizing the throughput. be able to.
However, for example, when IKE is used for key exchange and a core is assigned to the IKE processing means, it is sufficient that the core is assigned only while IKE is activated. Until the next load measurement is performed and the core allocation is changed, the core is allocated to the IKE processing means that has already been processed.

この発明は、上記のような課題を解決することを主な目的とし、暗号通信装置のみで暗号通信に用いられる暗号通信用情報の更新を実施することができ、また、暗号通信用情報の更新時に効率的にリソース配分を行う構成を実現することを主な目的とする。   The main object of the present invention is to solve the above-described problems, and the encryption communication information used for the encryption communication can be updated only by the encryption communication device, and the encryption communication information is updated. The main objective is to realize a configuration that sometimes allocates resources efficiently.

本発明に係る通信装置は、
通信相手装置と暗号通信を行う暗号通信部と、暗号通信に用いられる暗号通信用情報の更新を前記通信相手装置と行う情報更新部とがそれぞれに含まれる二つの処理部を有し、
前記暗号通信用情報の更新タイミングの前は、一方の処理部の暗号通信部が前記通信相手装置と暗号通信を行い、前記暗号通信用情報の更新タイミングにおいて、他方の処理部の情報更新部が前記通信相手装置との間で前記暗号通信用情報の更新を行い、前記他方の処理部の暗号通信部が前記通信相手装置との暗号通信を開始するとともに前記一方の処理部の暗号通信部が暗号通信を終了することを特徴とする。
The communication device according to the present invention is
An encryption communication unit that performs encryption communication with the communication partner device, and an information update unit that performs update of the information for encryption communication used for encryption communication with the communication partner device each include two processing units,
Prior to the update timing of the encryption communication information, the encryption communication unit of one processing unit performs encryption communication with the communication partner device, and at the update timing of the encryption communication information, the information update unit of the other processing unit The encryption communication information is updated with the communication partner device, and the encryption communication unit of the other processing unit starts encryption communication with the communication partner device and the encryption communication unit of the one processing unit The encryption communication is terminated.

本発明によれば、二つの処理部を備え、一方の処理部が暗号通信を行っている場合に、更新タイミングになった際に、他方の処理部が暗号通信用情報の更新を行って他方の処理部が暗号通信を開始するとともに一方の処理部の暗号通信を終了する。
このため、通信装置のみで暗号通信用情報の更新が可能であり、また、暗号通信用情報の更新を行っている間も暗号通信を継続することができる。
According to the present invention, when two processing units are provided and one of the processing units performs cryptographic communication, when the update timing comes, the other processing unit updates the information for cryptographic communication and the other The processing unit starts encryption communication and ends encryption communication of one processing unit.
For this reason, the encryption communication information can be updated only by the communication device, and the encryption communication can be continued while the encryption communication information is being updated.

実施の形態1.
まず、図2を用いて、実施の形態1〜3に係るネットワークのシステム構成例について説明する。
図2は、暗号通信装置が接続されたシステムの構成例を示している。
端末(31、32)がそれぞれ暗号通信装置(20)を介して社内ネットワーク(30)に接続している。
端末(31)から端末(32)へパケットを送信するとき、暗号通信装置(20)(暗号化側)でパケットは暗号化されてから社内ネットワーク(30)に送信され、端末(32)で受信するときは、暗号通信装置(20)(復号側)で暗号化されたパケットを復号してから受信をする。
暗号通信で用いる暗号通信プロトコルとしては、例えばIPsecがあり、これにより社内ネットワーク上のパケットを盗聴や改竄といったネットワーク上の脅威から守ることができる。
Embodiment 1 FIG.
First, a system configuration example of the network according to the first to third embodiments will be described with reference to FIG.
FIG. 2 shows a configuration example of a system to which an encryption communication device is connected.
Terminals (31, 32) are connected to the in-house network (30) via the encryption communication device (20).
When a packet is transmitted from the terminal (31) to the terminal (32), the packet is encrypted by the encryption communication device (20) (encrypting side), then transmitted to the in-house network (30), and received by the terminal (32). When receiving, the encrypted communication device (20) (decryption side) decrypts the encrypted packet and receives it.
As an encryption communication protocol used in the encryption communication, for example, there is IPsec, and this makes it possible to protect packets on the in-house network from network threats such as eavesdropping and tampering.

図1は、実施の形態1に係る暗号通信装置(20)に関する構成例である。
暗号通信装置(20)は、受信部(1)、送信部(2)、鍵管理部(3)(情報更新部)、暗号通信処理部(4)(暗号通信部)、処理系判別部(5)(パケット解析部)、装置制御部(6)により構成され、(1)〜(4)の各処理手段を2つずつ有する。
(1)〜(4)の各処理手段のまとまりをそれぞれ処理系A(110)及び処理系B(120)とする。
処理系A(110)及び処理系B(120)はそれぞれ処理部の例である。
また、暗号通信装置(20)は、マルチコアCPU(Central Processing Unit)を備え、二つの処理系には、各々異なるCPUコアが割当てられている。
FIG. 1 is a configuration example relating to the cryptographic communication device (20) according to the first embodiment.
The encryption communication device (20) includes a reception unit (1), a transmission unit (2), a key management unit (3) (information update unit), an encryption communication processing unit (4) (encryption communication unit), a processing system determination unit ( 5) Consists of a (packet analysis unit) and a device control unit (6), each having two processing means (1) to (4).
A group of the processing means (1) to (4) is defined as a processing system A (110) and a processing system B (120), respectively.
The processing system A (110) and the processing system B (120) are examples of processing units, respectively.
The encryption communication device (20) includes a multi-core CPU (Central Processing Unit), and different CPU cores are assigned to the two processing systems.

本実施の形態では、暗号通信処理と鍵交換処理をそれぞれどちらかの処理系で行い、鍵更新時刻によって処理系A(110)及び処理系B(120)を切り替える。
受信部(1)、送信部(2)では処理系でのパケットの送受信の処理を行う。
また、鍵管理部(3)では鍵交換プロトコルの処理や秘密鍵の管理を行い、暗号通信処理部(4)ではパケットの暗号化と復号の処理を行う。
また、処理系判別部(5)では、暗号通信装置(20)で受信したパケットが暗号通信処理のパケットか鍵交換処理のパケットであるかを判別し、それぞれの処理系へ送信する。
装置制御部(6)は、処理系判別部(5)などで参照する処理系判別データのフラグを制御する。
In this embodiment, encryption communication processing and key exchange processing are performed in either processing system, and processing system A (110) and processing system B (120) are switched according to the key update time.
The receiving unit (1) and the transmitting unit (2) perform packet transmission / reception processing in the processing system.
The key management unit (3) performs key exchange protocol processing and private key management, and the encryption communication processing unit (4) performs packet encryption and decryption processing.
The processing system discrimination unit (5) discriminates whether the packet received by the cryptographic communication device (20) is a packet for cryptographic communication processing or a packet for key exchange processing, and transmits the packet to each processing system.
The device control unit (6) controls a flag of processing system discrimination data referred to by the processing system discrimination unit (5) or the like.

詳細は後述するが、本実施の形態では、暗号通信用情報の更新タイミングの前は、一方の処理系(例えば、処理系A(110)の暗号通信処理部(4)が通信相手装置(通信相手となる暗号通信装置)と暗号通信を行い、暗号通信用情報の更新タイミングにおいて、他方の処理系(例えば、処理系B(120))の鍵管理部(3)が通信相手装置との間で暗号通信用情報の更新を行い、他方の処理系(例えば、処理系B(120))の暗号通信処理部(4)が通信相手装置との暗号通信を開始するとともに一方の処理系(例えば、処理系A(110))の暗号通信処理部(4)が暗号通信を終了する。
ここで、暗号通信用情報とは、暗号通信に用いられる情報であり、鍵や各種制御情報である。以下では、暗号通信用情報の代表例として鍵の更新について説明する。
Although details will be described later, in this embodiment, before the update timing of the encryption communication information, one processing system (for example, the encryption communication processing unit (4) of the processing system A (110) is connected to the communication partner device (communication). The key management unit (3) of the other processing system (for example, processing system B (120)) communicates with the communication partner apparatus at the update timing of the encryption communication information. The encryption communication information is updated by the encryption communication processing unit (4) of the other processing system (for example, processing system B (120)) and the encryption communication processing unit 4 starts encryption communication with the communication partner apparatus. The encryption communication processing unit (4) of the processing system A (110) ends the encryption communication.
Here, the information for encryption communication is information used for encryption communication, and is a key or various control information. In the following, key updating will be described as a representative example of information for encryption communication.

また、各々の処理系において、鍵管理部(3)は、鍵の更新タイミングにおいて、通信相手装置との間で鍵の更新を行い、通信相手装置との間に暗号通信に用いられる論理コネクションであるSAを設定する。   In each processing system, the key management unit (3) updates the key with the communication partner device at the key update timing, and uses a logical connection used for encryption communication with the communication partner device. A certain SA is set.

また、各々の処理系において、暗号通信処理部(4)は、鍵管理部(3)により設定されたSAにて通信相手装置と暗号通信を行い、鍵の更新タイミングの前は、一方の処理系(例えば、処理系A(110))の鍵管理部(3)により設定されたSAにて一方の処理系(例えば、処理系A(110))の暗号通信処理部(4)が通信相手装置と暗号通信を行う。
そして、鍵の更新タイミングでは、他方の処理系(例えば、処理系B(120))の鍵管理部(3)が通信相手装置との間で鍵の更新を行って通信相手装置との間にSAを設定し、他方の処理系(例えば、処理系B(120))の暗号通信処理部(4)が通信相手装置との暗号通信を開始する。
また、これとともに一方の処理系(例えば、処理系A(110))の鍵管理部(3)がそのSAを消去して一方の処理系(例えば、処理系A(110))の暗号通信処理部(4)の暗号通信を終了させる。
In each processing system, the cryptographic communication processing unit (4) performs cryptographic communication with the communication partner device at the SA set by the key management unit (3), and before the key update timing, one processing is performed. In the SA set by the key management unit (3) of the system (for example, processing system A (110)), the encryption communication processing unit (4) of one processing system (for example, processing system A (110)) communicates with the communication partner. Perform cryptographic communication with the device.
Then, at the key update timing, the key management unit (3) of the other processing system (for example, processing system B (120)) updates the key with the communication partner device and communicates with the communication partner device. SA is set, and the cryptographic communication processing unit (4) of the other processing system (for example, processing system B (120)) starts cryptographic communication with the communication partner apparatus.
At the same time, the key management unit (3) of one processing system (for example, processing system A (110)) deletes the SA, and the cryptographic communication processing of one processing system (for example, processing system A (110)). The encryption communication of unit (4) is terminated.

処理系判別部(5)は、他方の処理系(例えば、処理系B(120))の鍵管理部(3)がSAを設定した後一方の処理系(例えば、処理系A(110))の鍵管理部(3)がそのSAを消去するまでの間に、パケットを受信した際に、受信したパケットを解析して、受信したパケットがいずれのSAに属するのかを判断し、受信したパケットが属するSAを設定している処理系に、受信したパケットを出力する。   The processing system discriminating unit (5) is configured such that after the key management unit (3) of the other processing system (for example, processing system B (120)) sets SA, one processing system (for example, processing system A (110)). When the packet is received before the key management unit (3) deletes the SA, the received packet is analyzed to determine which SA the received packet belongs to, and the received packet The received packet is output to the processing system in which the SA to which the message belongs is set.

なお、本実施の形態では、各処理系へのCPUコア割当の方法は問わない。
例えば、処理の負荷が大きい暗号通信処理部に対しては複数個割当てるようにしてもよい。このとき、1つの処理のスレッドを分割して複数個のコアに割当てて処理するようにしてもよいし、コア1個で1つの処理を行うようにしてもよい。
In the present embodiment, the CPU core allocation method to each processing system is not limited.
For example, a plurality of encryption communication processing units having a large processing load may be assigned. At this time, one processing thread may be divided and assigned to a plurality of cores, or one core may perform one process.

次に、暗号通信処理のパケットを受信したときの動作フローについて、処理系A(110)が暗号通信処理を行い、鍵交換時刻(鍵の更新タイミング)に処理系B(120)が鍵交換処理を行うものとして、まず平文側LAN(21)(暗号通信装置(20)と端末との間のLAN)でパケットを受信したときの動作を図3より説明する。
なお、処理系B(120)は、鍵交換時刻(鍵の更新タイミング)になるまでは何も処理は行わない。
Next, with respect to the operation flow when a packet for cryptographic communication processing is received, processing system A (110) performs cryptographic communication processing, and processing system B (120) performs key exchange processing at the key exchange time (key update timing). First, the operation when a packet is received by the plaintext LAN (21) (LAN between the encryption communication device (20) and the terminal) will be described with reference to FIG.
The processing system B (120) does not perform any processing until the key exchange time (key update timing) is reached.

処理系判別部(5)では、パケットを受信すると、受信データが暗号通信処理のパケットであるか鍵交換処理のパケットであるかを判別する(ステップ1)。
鍵交換処理であるときは、処理系判別部(5)は、処理系判別データを参照して、処理系B(120)の受信部(1)を通して鍵管理部(3)へパケットを送信する(ステップ2、3)。
一方、暗号通信処理であるときは、処理系判別部(5)は、処理系判別データを参照して、処理系A(110)の受信部(1)を通して暗号通信処理部(4)へパケットを送信する(ステップ4)。
ここで、処理系判別データとは、現在処理系A(110)、処理系B(120)のいずれが暗号通信処理を行っているかを示すデータ(フラグ等)である。
When receiving the packet, the processing system discrimination unit (5) discriminates whether the received data is a packet for encryption communication processing or a packet for key exchange processing (step 1).
In the case of key exchange processing, the processing system discrimination unit (5) refers to the processing system discrimination data and transmits a packet to the key management unit (3) through the reception unit (1) of the processing system B (120). (Steps 2 and 3).
On the other hand, in the case of cryptographic communication processing, the processing system discrimination unit (5) refers to the processing system discrimination data and sends a packet to the cryptographic communication processing unit (4) through the reception unit (1) of the processing system A (110). Is transmitted (step 4).
Here, the processing system discrimination data is data (a flag or the like) indicating which of the current processing system A (110) or processing system B (120) is performing cryptographic communication processing.

暗号通信処理のパケットである場合は、処理系A(110)の暗号通信処理部(4)が受信部(1)を介してパケットを受信し、SPD(Security Policy Database)を検索し(ステップ5)、暗号文の設定であるとき(パケットにおいて暗号処理をするように指示されている場合)は次のステップで暗号化処理を行う。
また暗号文以外の設定の分岐をフローチャートでは省略しているが、平文の設定のとき(パケットにおいて暗号処理をするように指示されていない場合)はパケットを送信部(2)へと送信し、廃棄の設定のときはパケットを廃棄する。
If the packet is an encryption communication processing packet, the encryption communication processing unit (4) of the processing system A (110) receives the packet via the reception unit (1), and searches for an SPD (Security Policy Database) (step 5). ) When the ciphertext is set (when the packet is instructed to be encrypted), the encryption process is performed in the next step.
In addition, although the branch of the setting other than the ciphertext is omitted in the flowchart, when the plaintext is set (when the packet is not instructed to be encrypted), the packet is transmitted to the transmission unit (2). When discarding is set, the packet is discarded.

次にSPDの検索後の処理では、処理系A(110)の暗号通信処理部(4)は、SAD(Security Association Database)を検索し(ステップ6)、SAの有無を判別する(ステップ7)。
SAがないときは、SAの確立待ちとなり、パケットを廃棄する(ステップ8、9)。
SAがあるときは、処理系A(110)の暗号通信処理部(4)は、暗号化演算、ハッシュ、IPヘッダ処理(ステップ10、11、12)の暗号化処理を行い、パケットを送信部(2)に送信する(ステップ13)。そして、送信部(2)では、暗号文側LAN(22)より暗号化されたパケットを送信する(ステップ14)。
Next, in the processing after the SPD search, the cryptographic communication processing unit (4) of the processing system A (110) searches the SAD (Security Association Database) (step 6) and determines the presence or absence of the SA (step 7). .
When there is no SA, it waits for establishment of SA and discards the packet (steps 8 and 9).
When there is SA, the encryption communication processing unit (4) of the processing system A (110) performs encryption processing of encryption operation, hash, IP header processing (steps 10, 11, and 12), and transmits the packet. (2) is transmitted (step 13). Then, the transmission unit (2) transmits the encrypted packet from the ciphertext side LAN (22) (step 14).

次に、処理系A(110)が暗号通信処理を行い、鍵交換時刻(鍵の更新タイミング)に処理系B(120)が鍵交換処理を行うものとして、暗号文側LAN(22)で暗号通信処理パケットを受信したときの動作フローを図4より説明する。
なお、この場合も、処理系B(120)は、鍵交換時刻(鍵の更新タイミング)になるまでは何も処理は行わない。
Next, it is assumed that the processing system A (110) performs cryptographic communication processing, and the processing system B (120) performs key exchange processing at the key exchange time (key update timing). The operation flow when a communication processing packet is received will be described with reference to FIG.
In this case as well, the processing system B (120) does not perform any processing until the key exchange time (key update timing) is reached.

処理系判別部(5)では、パケットを受信すると、受信パケットが暗号通信処理のパケットであるか鍵交換処理のパケットであるかを判別する(ステップ1)。
鍵交換処理であるときは、処理系判別データを参照して、処理系B(120)の受信部(1)を通して鍵管理部(3)へパケットを送信する(ステップ2、3)。
一方、暗号通信処理であるときは、パケットのSPI(Security Parameters Index)を参照して、処理系A(110)の受信部(1)を通して暗号通信処理部(4)へパケットを送信する(ステップ17、4)。
When receiving the packet, the processing system determination unit (5) determines whether the received packet is a packet for encryption communication processing or a packet for key exchange processing (step 1).
In the case of key exchange processing, the packet is transmitted to the key management unit (3) through the reception unit (1) of the processing system B (120) with reference to the processing system discrimination data (steps 2 and 3).
On the other hand, in the case of encryption communication processing, the packet is transmitted to the encryption communication processing unit (4) through the reception unit (1) of the processing system A (110) with reference to the SPI (Security Parameters Index) of the packet (step) 17, 4).

暗号通信処理のパケットである場合は、処理系A(110)の暗号通信処理部(4)が受信部(1)を介してパケットを受信し、SADを検索し(ステップ6)、SAの有無を判別する(ステップ7)。
SAがないときは、SAの確立待ちとなり、パケットを廃棄する(ステップ8、9)。
SAがあるときは、処理系A(110)の暗号通信処理部(4)は、ハッシュ、復号演算(ステップ11、16)の復号処理を行った後、SPDを検索し(ステップ5)、SP(Security Policy)に反していなければ、パケットを送信部(2)に送信する(ステップ13)。
そして、送信部(2)では、平文側LAN(21)より復号されたパケットを送信する(ステップ17)。
If the packet is an encryption communication processing packet, the encryption communication processing unit (4) of the processing system A (110) receives the packet via the reception unit (1), searches for the SAD (step 6), and whether there is an SA. Is discriminated (step 7).
When there is no SA, it waits for establishment of SA and discards the packet (steps 8 and 9).
When there is SA, the cryptographic communication processing unit (4) of the processing system A (110) performs the decryption processing of the hash and decryption calculation (steps 11 and 16), and then searches for the SPD (step 5), and the SP. If it does not violate (Security Policy), the packet is transmitted to the transmission unit (2) (step 13).
Then, the transmission unit (2) transmits the packet decrypted from the plaintext LAN (21) (step 17).

次に、暗号通信装置の鍵交換時刻(鍵の更新タイミング)における処理系A(110)及び処理系B(120)の切り替えについて、鍵交換プロトコルにIKEを用いた例で、鍵管理部(3)の動作フローチャート(図5)より説明する。
ここでは例として、処理系A(110)が暗号通信処理を行っているときに、処理系B(120)が鍵交換処理を開始して、暗号通信処理を処理系B(120)に切り替える例を説明する。
Next, with regard to switching between processing system A (110) and processing system B (120) at the key exchange time (key update timing) of the cryptographic communication apparatus, an example using IKE as the key exchange protocol is shown. ) Operation flowchart (FIG. 5).
Here, as an example, when processing system A (110) is performing cryptographic communication processing, processing system B (120) starts key exchange processing and switches cryptographic communication processing to processing system B (120). Will be explained.

まず、処理系A(110)の鍵管理部(3)で鍵交換時刻であるかを判別し(ステップ18)、交換時刻でないときは何もしないで終了する。
また交換時刻であるときは、処理系A(110)の鍵管理部(3)は、装置制御部(6)を経由して処理系B(120)の鍵管理部(3)に交換時刻であることを通知する。
処理系B(120)の鍵管理部(3)はIKEを起動し、通信相手装置との間に新しいSAを確立する(ステップ19、20)。
このとき、SAは2種類確立されている(処理系A(110)の鍵管理部(3)が既に確立しているSAと処理系B(120)の鍵管理部(3)が新たに確立したSA)ことになり、それぞれのSAに対して処理系A(110)、処理系B(120)それぞれが暗号通信処理を行うようにするので、装置制御部(6)に暗号通信処理系が2つであることを処理系B(120)の鍵管理部(3)が通知する(ステップ21)。
そして、通知を受けた装置制御部(6)では、処理系A(110)及び処理系B(120)ともに暗号通信処理を行うとして、処理系判別データを更新する(ステップ22)。この時点までに、処理系B(120)の暗号通信処理部(4)も起動されており、処理系B(120)の暗号通信処理部(4)はステップ20で新たに確立されたSAを用いて通信相手装置と暗号通信を行うことができる。
First, the key management unit (3) of the processing system A (110) determines whether it is a key exchange time (step 18).
When it is the exchange time, the key management unit (3) of the processing system A (110) passes the apparatus control unit (6) to the key management unit (3) of the processing system B (120) at the exchange time. Notify that there is.
The key management unit (3) of the processing system B (120) activates IKE and establishes a new SA with the communication partner device (steps 19 and 20).
At this time, two types of SA have been established (the SA already established by the key management unit (3) of the processing system A (110) and the key management unit (3) of the processing system B (120) are newly established). Therefore, the processing system A (110) and the processing system B (120) perform encryption communication processing for each SA, so that the apparatus control unit (6) has an encryption communication processing system. The key management unit (3) of the processing system B (120) notifies that there are two (step 21).
Upon receiving the notification, the device control unit (6) updates the processing system discrimination data on the assumption that both the processing system A (110) and the processing system B (120) perform cryptographic communication processing (step 22). Up to this point, the cryptographic communication processing unit (4) of the processing system B (120) has also been activated, and the cryptographic communication processing unit (4) of the processing system B (120) determines the SA newly established in step 20. It is possible to perform encrypted communication with a communication partner device.

次に、SAの切替時刻になると、処理系A(110)及び処理系B(120)の鍵管理部(3)ではSAの切替処理を開始する(ステップ23)。この時点で、処理系A(110)のSA(旧SA)は期限切れとなり、処理系A(110)の鍵管理部(3)は旧SAを消去する(ステップ24)。
ここで旧SAが消去されると、確立されているSAは1つとなるため、処理系A(110)の鍵管理部(3)が、処理系が切り替わったこと、つまり、処理系B(120)が暗号通信処理を行うことを装置制御部(6)に通知し(ステップ21)、装置制御部(6)では処理系判別データを更新する(ステップ22)。
Next, when the SA switching time comes, the key management unit (3) of the processing system A (110) and the processing system B (120) starts the SA switching processing (step 23). At this time, the SA (old SA) of the processing system A (110) expires, and the key management unit (3) of the processing system A (110) deletes the old SA (step 24).
If the old SA is erased, the number of established SAs is one. Therefore, the key management unit (3) of the processing system A (110) switches the processing system, that is, the processing system B (120 ) Notifies the device controller (6) that encryption communication processing is to be performed (step 21), and the device controller (6) updates the processing system discrimination data (step 22).

以上のように、実施の形態1に係る暗号通信装置では、2つの処理系のうち、1つの処理系では暗号通信処理を、もう一方では鍵交換処理を行っている。
つまり、本実施の形態1に係る暗号通信装置では、鍵更新時刻ごとに暗号通信処理を行う処理系を2つの処理系の間で交互に切り替えている。
このように動作することで、本実施の形態に係る暗号通信装置は、特開2003−179592号公報の暗号通信装置における課題、すなわち、鍵交換処理に対して通信装置とは別に鍵交換代理サーバを用意したときに装置とサーバ間で暗号通信の負荷が生じるという課題を解決している。
つまり、本実施の形態では、暗号通信装置のみで鍵交換が可能であり、また鍵交換を行っている間も暗号通信を継続することができる。
As described above, in the cryptographic communication apparatus according to the first embodiment, out of the two processing systems, one processing system performs cryptographic communication processing and the other performs key exchange processing.
That is, in the cryptographic communication apparatus according to the first embodiment, the processing system that performs the cryptographic communication process at each key update time is alternately switched between the two processing systems.
By operating in this way, the cryptographic communication apparatus according to the present embodiment has a problem with the cryptographic communication apparatus disclosed in Japanese Patent Application Laid-Open No. 2003-17992, that is, a key exchange proxy server separately from the communication apparatus for key exchange processing. This solves the problem that a load of encryption communication is generated between the apparatus and the server when the server is prepared.
In other words, in the present embodiment, key exchange can be performed only with the encryption communication device, and encryption communication can be continued during the key exchange.

また、新SAを確立してから旧SAが消滅するまでのSAが2種類確立されているときの暗号通信処理を考えたとき、まず2種類のSAをそれぞれSA1、SA2とする。
このときSA2適用パケットがSA1適用パケットよりも多く到着したとき、特開2003−179592号公報の暗号通信装置の動作では、SA1に必ず問い合わせるので、その分の処理時間が無駄となるという課題がある。
しかし、実施の形態1の暗号通信装置(20)では、処理系A(110)はSA1、処理系B(120)はSA2を用いて暗号通信処理を行うとしたときに、処理系判別部(5)は、SPIを参照してパケットを振り分け、各処理系でSAに問い合わせる。
従って、SA2適用パケットが多く到着したときであっても、処理系判別部(5)は、SA1に問い合わせる必要がなく、その問い合わせの処理時間の無駄をなくすことができるので、特開2003−179592号公報の暗号通信装置の課題を解決することができる。
Further, when considering cryptographic communication processing when two types of SA from the establishment of a new SA to the disappearance of the old SA are considered, first, the two types of SA are designated as SA1 and SA2, respectively.
At this time, when the SA2-applied packet arrives more than the SA1-applied packet, the operation of the cryptographic communication apparatus disclosed in Japanese Patent Application Laid-Open No. 2003-179592 always makes an inquiry to SA1, so that there is a problem that the processing time is wasted. .
However, in the cryptographic communication apparatus (20) of the first embodiment, when the processing system A (110) performs cryptographic communication processing using SA1 and the processing system B (120) uses SA2, the processing system discrimination unit ( 5) distributes packets with reference to the SPI, and inquires the SA in each processing system.
Therefore, even when a large number of SA2-applied packets arrive, the processing system discriminating unit (5) does not need to make an inquiry to SA1, and it is possible to eliminate waste of processing time for the inquiry. It is possible to solve the problem of the encryption communication device disclosed in Japanese Patent Publication No. Gazette.

以上、本実施の形態では、受信部(1)、送信部(2)、鍵管理部(3)、暗号通信処理部(4)、処理系判別部(5)、装置制御部(6)に対して、暗号通信装置は(1)〜(6)の各処理手段をそれぞれ2つ有し、その2つの処理手段の集合を処理系A(110)及び処理系B(120)とした際に、暗号通信処理と暗号情報交換処理をそれぞれどちらかの処理系で行い、暗号情報更新時刻によって処理系A(110)及び処理系B(120)を切り替える暗号通信装置について説明した。   As described above, in the present embodiment, the reception unit (1), transmission unit (2), key management unit (3), encryption communication processing unit (4), processing system determination unit (5), and device control unit (6) On the other hand, the cryptographic communication apparatus has two processing units (1) to (6), and the set of the two processing units is the processing system A (110) and the processing system B (120). In the above description, the encryption communication apparatus and the encryption information exchange process are performed in one of the processing systems, and the encryption communication apparatus that switches between the processing system A (110) and the processing system B (120) according to the encryption information update time has been described.

実施の形態2.
図6は、本実施の形態に係る暗号通信装置(20)の構成例を示す。
本実施の形態に係る暗号通信装置(20)は、受信部(1)、送信部(2)、鍵管理部(3)(情報更新部)、暗号通信処理部(4)(暗号通信部)、装置制御部(6)、コア割当変更部(7)(コア割当制御部)により構成されている。
Embodiment 2. FIG.
FIG. 6 shows a configuration example of the cryptographic communication device (20) according to the present embodiment.
The encryption communication device (20) according to the present embodiment includes a reception unit (1), a transmission unit (2), a key management unit (3) (information update unit), and an encryption communication processing unit (4) (encryption communication unit). The device control unit (6) and the core allocation change unit (7) (core allocation control unit).

受信部(1)ではパケットを受信して、受信パケットが暗号通信処理であるか鍵交換処理であるかを判別し、暗号通信処理部(4)か鍵管理部(3)へパケットを送る。
また、送信部(2)ではパケットの送信を行う。
鍵管理部(3)では鍵交換プロトコルの処理や秘密鍵の管理を行い、暗号通信処理部(4)ではパケットの暗号化と復号の処理を行う。
また、コア割当変更部(7)は、鍵交換時刻(鍵の更新タイミング)となったときに鍵管理部(3)にコアを割当てる。
装置制御部(6)は、鍵管理部(3)からコア割当変更部(7)へのコア割当変更通知を制御する。
なお、ここでいうコア割当変更とは、コアが実行する処理の内容が、別の処理手段の処理を実行するように変更することをいう。
また、実施の形態2の暗号通信装置(20)におけるマルチコアCPUの用い方は、1つの処理をコア1個で行い、複数コアが割当てられた処理手段において、並列に複数の処理をする。
The receiving unit (1) receives the packet, determines whether the received packet is encryption communication processing or key exchange processing, and sends the packet to the encryption communication processing unit (4) or the key management unit (3).
The transmission unit (2) transmits a packet.
The key management unit (3) performs key exchange protocol processing and secret key management, and the encryption communication processing unit (4) performs packet encryption and decryption processing.
The core assignment changing unit (7) assigns the core to the key management unit (3) when the key exchange time (key update timing) is reached.
The device control unit (6) controls the core assignment change notification from the key management unit (3) to the core assignment change unit (7).
Here, the core allocation change means that the content of the process executed by the core is changed to execute the process of another processing means.
Further, in the method of using the multi-core CPU in the cryptographic communication apparatus (20) of the second embodiment, one process is performed by one core, and a plurality of processes are performed in parallel in a processing unit to which a plurality of cores are assigned.

詳細は後述するが、本実施の形態では、コア割当変更部(7)は、鍵交換時刻(鍵の更新タイミング)の前は、マルチコアのうちの少なくとも一つのCPUコアを暗号通信処理部(4)に割当てて通信相手装置との暗号通信を行わせ、鍵交換時刻(鍵の更新タイミング)において、鍵管理部(3)に少なくとも一つのCPUコアを割当てて通信相手装置との間で鍵の更新を行わせる。   Although details will be described later, in the present embodiment, the core assignment changing unit (7) transmits at least one of the multi-core CPU cores to the cryptographic communication processing unit (4) before the key exchange time (key update timing). And at least one CPU core is assigned to the key management unit (3) at the key exchange time (key update timing) and the key is exchanged with the communication partner device. Let it be updated.

より具体的には、コア割当変更部(7)は、鍵交換時刻(鍵の更新タイミング)の前は、暗号通信処理部(4)に複数のCPUコアを割当てて通信相手装置との暗号通信を行わせ、鍵交換時刻(鍵の更新タイミング)において、暗号通信処理部(4)に割当てている複数のCPUコアのうちの少なくとも一つのCPUコアを鍵管理部(3)に割当てる。   More specifically, before the key exchange time (key update timing), the core allocation changing unit (7) allocates a plurality of CPU cores to the cryptographic communication processing unit (4) and performs cryptographic communication with the communication partner device. And at least one CPU core among the plurality of CPU cores assigned to the cryptographic communication processing unit (4) is assigned to the key management unit (3) at the key exchange time (key update timing).

また、鍵管理部(3)は、鍵交換時刻の前から稼動している鍵管理部(以下、鍵管理部Aという)と、鍵交換時刻から稼動する鍵管理部(以下、鍵管理部Bという)に区分される。鍵管理部Aは第一の情報更新部の例であり、鍵管理部Bは第二の情報更新部の例である。
鍵管理部Aは、鍵交換時刻の前に、コア割当変更部(7)により少なくとも一つのCPUコアが割当てられ、通信相手装置との間に暗号通信に用いられる論理コネクションであるSA(第一の論理コネクション)を設定しており、鍵管理部Bは、鍵交換時刻において、コア割当変更部(7)により少なくとも一つのCPUコアが割当てられ、通信相手装置との間に新たなSA(第二の論理コネクション)を設定する。
鍵管理部Aは、鍵管理部Bにより新たなSAが設定された後に、鍵交換時刻前から設定されていたSAを消去し、コア割当変更部(7)は、鍵管理部AがSAを消去した後、鍵管理部Aに割当てていたCPUコアの少なくとも一部を暗号通信処理部(4)に割当てる。
The key management unit (3) includes a key management unit (hereinafter referred to as a key management unit A) operating before the key exchange time, and a key management unit (hereinafter referred to as key management unit B) operating from the key exchange time. It is classified). Key management unit A is an example of a first information update unit, and key management unit B is an example of a second information update unit.
The key management unit A allocates at least one CPU core by the core allocation change unit (7) before the key exchange time, and is a logical connection SA (first) used for encryption communication with the communication partner device. In the key management unit B, at the key exchange time, at least one CPU core is allocated by the core allocation changing unit (7), and a new SA (No. Second logical connection).
The key management unit A erases the SA set before the key exchange time after the new SA is set by the key management unit B, and the core allocation change unit (7) has the key management unit A set the SA. After erasing, at least a part of the CPU core assigned to the key management unit A is assigned to the encryption communication processing unit (4).

暗号通信処理部(4)は、鍵交換時刻の前は、鍵管理部Aにより設定されたSAにて通信相手装置と暗号通信を行い、鍵交換時刻において、鍵管理部Bにより設定されたSAに切り替えて通信相手装置と暗号通信を行う。   The cryptographic communication processing unit (4) performs cryptographic communication with the communication partner apparatus using the SA set by the key management unit A before the key exchange time, and the SA set by the key management unit B at the key exchange time. To perform encrypted communication with the communication partner device.

次に、実施の形態2の暗号通信装置(20)の動作について説明するが、まず暗号通信処理のパケットを受信したときの動作フローについて、平文側LAN(21)でパケットを受信したときの動作を図7より説明する。   Next, the operation of the cryptographic communication apparatus (20) according to the second embodiment will be described. First, regarding the operation flow when a packet for cryptographic communication processing is received, the operation when the packet is received on the plaintext LAN (21). Will be described with reference to FIG.

まず受信部(1)では、平文側LAN(21)からパケットを受信すると、受信パケットが暗号通信処理のパケットであるか鍵交換処理のパケットであるかを判別する(ステップ1)。
鍵交換処理であるときは、鍵管理部(3)にパケットを送信し(ステップ3)、暗号通信処理であるときは、暗号通信処理部(4)へパケットを送信する(ステップ4)。
First, when receiving a packet from the plaintext LAN (21), the receiving unit (1) determines whether the received packet is a packet for encryption communication processing or a packet for key exchange processing (step 1).
When it is a key exchange process, a packet is transmitted to the key management unit (3) (step 3), and when it is an encryption communication process, the packet is transmitted to the encryption communication processing unit (4) (step 4).

暗号通信処理部(4)でパケットを受信すると、SPDを検索し(ステップ5)、暗号文の設定であるときは次のステップで暗号化処理を行う。
また暗号文以外の設定の分岐をフローチャートでは省略しているが、平文の設定のときはパケットを送信部(2)へと送信し、廃棄の設定のときはパケットを廃棄する。
When the encrypted communication processing unit (4) receives the packet, the SPD is searched (step 5), and if the ciphertext is set, the encryption process is performed in the next step.
Although branching of settings other than ciphertext is omitted in the flowchart, the packet is transmitted to the transmission unit (2) when the plaintext is set, and the packet is discarded when the discard is set.

次にSPDの検索後の処理では、暗号通信処理部(4)は、SADを検索し(ステップ6)、SAの有無を判別する(ステップ7)。
SAがないときは、SAの確立待ちとなり、パケットを廃棄する(ステップ8、9)。
SAがあるときは、暗号通信処理部(4)は、暗号化演算、ハッシュ、IPヘッダ処理(ステップ10、11、12)の暗号化処理を行い、パケットを送信部(2)に送信する(ステップ13)。
そして、送信部(2)では、暗号文側LAN(22)より暗号化されたパケットを送信する(ステップ14)。
Next, in the processing after the SPD search, the cryptographic communication processing unit (4) searches the SAD (step 6) and determines the presence or absence of SA (step 7).
When there is no SA, it waits for establishment of SA and discards the packet (steps 8 and 9).
When there is SA, the cryptographic communication processing unit (4) performs encryption processing, hashing, IP header processing (steps 10, 11, and 12), and transmits the packet to the transmission unit (2) ( Step 13).
Then, the transmission unit (2) transmits the encrypted packet from the ciphertext side LAN (22) (step 14).

次に、暗号文側LAN(22)で暗号通信処理パケットを受信したときの動作フローを図8より説明する。
但し、パケットを受信してからの受信部(1)での処理の流れは、平文側LANでパケットを受信したときと同様であるため説明を省略する。
Next, an operation flow when an encrypted communication processing packet is received by the ciphertext side LAN (22) will be described with reference to FIG.
However, since the flow of processing in the receiving unit (1) after receiving the packet is the same as when the packet is received in the plaintext LAN, description thereof is omitted.

暗号通信処理部(4)でパケットを受信すると、SADを検索し(ステップ6)、SAの有無を判別する(ステップ7)。
SAがないときは、SAの確立待ちとなり、パケットを廃棄する(ステップ8、9)。
SAがあるときは、暗号通信処理部(4)は、ハッシュ、復号演算(ステップ11、16)の復号処理を行った後、SPDを検索し(ステップ5)、SPに反していなければ、パケットを送信部(2)に送信する(ステップ13)。
そして、送信部(2)では、平文側LAN(21)より復号されたパケットを送信する(ステップ17)。
When the encrypted communication processing unit (4) receives the packet, the SAD is searched (step 6), and the presence or absence of SA is determined (step 7).
When there is no SA, it waits for establishment of SA and discards the packet (steps 8 and 9).
When there is SA, the cryptographic communication processing unit (4) searches for the SPD after performing the decryption processing of the hash and decryption operations (steps 11 and 16) (step 5). Is transmitted to the transmission unit (2) (step 13).
Then, the transmission unit (2) transmits the packet decrypted from the plaintext LAN (21) (step 17).

次に、鍵交換時刻(鍵の更新タイミング)における暗号通信装置(20)の鍵管理部(3)へのコア割当切替について、鍵交換プロトコルにIKEを用いた例で、鍵管理部(3)の動作フローチャート(図9)より説明する。
但し、前述したように、コア割当前に元々ある鍵管理部を鍵管理部Aとし、新たにコアを割当てられる鍵管理部を鍵管理部Bとする。
Next, regarding the core assignment switching to the key management unit (3) of the encryption communication device (20) at the key exchange time (key update timing), the key management unit (3) is an example using IKE as the key exchange protocol. The operation flowchart will be described with reference to FIG.
However, as described above, the original key management unit before the core allocation is referred to as a key management unit A, and the key management unit to which a new core is allocated is referred to as a key management unit B.

まず、鍵管理部Aで鍵交換時刻であるかを判別し(ステップ18)、交換時刻でないときは何もしないで終了する。
また、交換時刻であるときは、装置制御部(6)を経由してコア割当変更部(7)に交換時刻である旨の通知を出す(ステップ25)。
通知を受けたコア割当変更部(7)では、暗号通信処理部(4)のコア1個を鍵管理部Bに割当てる処理を行う(ステップ26)。
First, the key management unit A determines whether or not it is a key exchange time (step 18).
If it is the replacement time, a notification that it is the replacement time is sent to the core assignment changing unit (7) via the device control unit (6) (step 25).
Upon receiving the notification, the core assignment changing unit (7) performs a process of assigning one core of the cryptographic communication processing unit (4) to the key management unit B (step 26).

次に、鍵管理部Bにコアが割当てられると、鍵管理部BではIKEを起動し、新しいSAを確立する(ステップ19、20)。
そしてSAの切替時刻になると、鍵管理部A、BではSAの切替処理を開始する(ステップ23)。
この時点で、鍵管理部AのSA(旧SA)は期限切れとなり、鍵管理部Aが旧SAを消去さする(ステップ24)。
ここで旧SAが消去されると、確立されているSAは1つとなるため、鍵管理部Aは装置制御部(6)を経由してコア割当変更部(7)に通知を出し、コア割当変更部(7)は鍵管理部Aに割当てられているコアを暗号通信処理部(4)へ割当てる(ステップ25、26)。
以上のようにして、実施の形態2の暗号通信装置(20)では鍵管理部(3)における動作の切替を行う。
Next, when a core is allocated to the key management unit B, the key management unit B activates IKE and establishes a new SA (steps 19 and 20).
When the SA switching time comes, the key managers A and B start SA switching processing (step 23).
At this point, the SA (old SA) of the key management unit A expires, and the key management unit A erases the old SA (step 24).
When the old SA is deleted, the number of SAs established is one, so the key management unit A notifies the core allocation changing unit (7) via the device control unit (6), and the core allocation. The changing unit (7) assigns the core assigned to the key management unit A to the encryption communication processing unit (4) (steps 25 and 26).
As described above, in the cryptographic communication device (20) of the second embodiment, the operation in the key management unit (3) is switched.

特開2007−219577号公報のコア割当動的更新方法では、処理手段の負荷測定によって、スループットを最適とするように処理手段に対するコアの割当を変更するが、例えば鍵交換プロトコルでIKEを用いて、IKE処理手段にコアが割当てられているとき、IKEが起動している間のみコアが割当てられていればよいが、IKEの処理が終了してから、つぎの負荷測定をしてコア割当が変更されるまでの間は、すでに処理が終了したIKE処理手段に対してコアが割当てられているので、その間リソースが無駄となるといった課題がある。
これに対して、実施の形態2の暗号通信装置では、新SAを確立するためにIKEを起動するときや、旧SAが消去されるときのように、時刻に応じて各処理手段に対してコアの割当を変更できるので、このような課題を解決することができる。
つまり、本実施の形態では、鍵交換時にCPUコアの割当を変更することにより、リソース配分を最適化する。
In the core allocation dynamic update method disclosed in Japanese Patent Laid-Open No. 2007-219577, the core allocation to the processing unit is changed to optimize the throughput by measuring the load of the processing unit. For example, IKE is used in the key exchange protocol. When a core is allocated to the IKE processing means, it is only necessary to allocate a core while the IKE is activated. However, after the IKE processing is completed, the next load measurement is performed and the core allocation is performed. Until the change is made, a core is allocated to the IKE processing means that has already been processed, and there is a problem that resources are wasted during that time.
In contrast, in the cryptographic communication apparatus according to the second embodiment, each processing means is activated according to time, such as when IKE is activated to establish a new SA or when the old SA is deleted. Since assignment of cores can be changed, such a problem can be solved.
That is, in this embodiment, resource allocation is optimized by changing the allocation of CPU cores during key exchange.

以上、本実施の形態では、マルチコアCPUにおいて、複数処理を実行するとき、時刻に応じて、各処理のコアの割当てを動的に変更する暗号通信装置について説明した。   As described above, the present embodiment has described the cryptographic communication apparatus that dynamically changes the allocation of the core of each process according to the time when a multi-core CPU executes a plurality of processes.

実施の形態3.
また、実施の形態2に示した方法は、実施の形態1の暗号通信装置に対しても適用可能である。
このようにすれば、特開2003−179592と特開2007−219577の両方の課題を解決することができる。
Embodiment 3 FIG.
The method shown in the second embodiment can also be applied to the cryptographic communication apparatus of the first embodiment.
In this way, it is possible to solve the problems of both Japanese Patent Application Laid-Open Nos. 2003-179592 and 2007-219577.

図10は、実施の形態2の方法を用いた実施の形態1の暗号通信装置に関する構成例である。
本実施の形態に係る暗号通信装置(20)は、受信部(1)、送信部(2)、鍵管理部(3)(情報更新部)、暗号通信処理部(4)(暗号通信部)、処理系判別部(5)(パケット解析部)、装置制御部(6)、コア割当変更部(7)(コア割当制御部)により構成され、(1)〜(4)の各処理手段を2つずつ有し、(1)〜(4)の各処理手段のまとまりをそれぞれ処理系A(110)及び処理系B(120)とする。
また、本実施の形態におけるマルチコアCPUはコア数を16個とし、各処理手段への割当は、処理系判別部に1個、装置制御部とコア割当変更部に1個、2つの処理系に14個とする。
また、実施の形態3の暗号通信装置(20)の動作で、受信パケットに対する処理については、実施の形態1の暗号通信装置と同様であるので省略する。
FIG. 10 is a configuration example relating to the cryptographic communication apparatus according to the first embodiment using the method according to the second embodiment.
The encryption communication device (20) according to the present embodiment includes a reception unit (1), a transmission unit (2), a key management unit (3) (information update unit), and an encryption communication processing unit (4) (encryption communication unit). , A processing system discrimination unit (5) (packet analysis unit), a device control unit (6), a core allocation change unit (7) (core allocation control unit), and each processing means (1) to (4) A group of processing means (1) to (4) is defined as processing system A (110) and processing system B (120), respectively.
Further, the multi-core CPU in the present embodiment has 16 cores, and the allocation to each processing means is one for the processing system discrimination unit, one for the device control unit and the core allocation change unit, and two processing systems. 14 pieces.
In the operation of the cryptographic communication apparatus (20) of the third embodiment, the processing for the received packet is the same as that of the cryptographic communication apparatus of the first embodiment, and is omitted.

また、詳細は後述するが、本実施の形態では、コア割当変更部(7)は、鍵交換時刻(鍵の更新タイミング)の前は、一方の処理系(例えば、処理系A(110))に複数のCPUコアを割当てて一方の処理系(例えば、処理系A(110))の暗号通信処理部(4)に通信相手装置との暗号通信を行わせ、鍵交換時刻において、一方の処理系(例えば、処理系A(110))に割当てている複数のCPUコアのうちの少なくとも一つのCPUコアを他方の処理系(例えば、処理系B(120))の鍵管理部(3)に割当てて他方の処理系(例えば、処理系B(120))の鍵管理部(3)に通信相手装置との間で鍵交換を行わせる。
また、コア割当変更部(7)は、鍵交換時刻(鍵の更新タイミング)において、一方の処理系(例えば、処理系A(110))に割当てている複数のCPUコアのうちの少なくとも一つのCPUコアを他方の処理系(例えば、処理系B(120))の暗号通信処理部(4)に割当てる。
より具体的には、コア割当変更部(7)は、一方の処理系(例えば、処理系A(110))の暗号通信処理部(4)が暗号通信を終了した後に、一方の処理系(例えば、処理系A(110))に割当てている複数のCPUコアのうちの少なくとも一つのCPUコアを他方の処理系(例えば、処理系B(120))の暗号通信処理部(4)に割当てる。
Although details will be described later, in the present embodiment, the core allocation changing unit (7) has one processing system (for example, processing system A (110)) before the key exchange time (key update timing). A plurality of CPU cores are allocated to the cryptographic communication processing unit (4) of one processing system (for example, processing system A (110)) to perform cryptographic communication with the communication partner device, and one process is performed at the key exchange time. At least one CPU core among a plurality of CPU cores assigned to a system (for example, processing system A (110)) is assigned to the key management unit (3) of the other processing system (for example, processing system B (120)). The key management unit (3) of the other processing system (for example, processing system B (120)) is assigned to exchange keys with the communication partner device.
Further, the core assignment changing unit (7) at least one of a plurality of CPU cores assigned to one processing system (for example, the processing system A (110)) at the key exchange time (key update timing). The CPU core is assigned to the encryption communication processing unit (4) of the other processing system (for example, processing system B (120)).
More specifically, the core allocation changing unit (7) is configured so that after the cryptographic communication processing unit (4) of one processing system (for example, processing system A (110)) ends the cryptographic communication, For example, at least one CPU core among a plurality of CPU cores assigned to the processing system A (110) is assigned to the encryption communication processing unit (4) of the other processing system (for example, the processing system B (120)). .

次に、暗号通信装置の鍵交換時刻による処理系A(110)及び処理系B(120)の切り替えについて、鍵交換プロトコルにIKEを用いた例で、鍵管理部の動作フローチャート(図11)より説明する。
但し、ここでの切り替えの例としては、処理系A(110)が暗号通信処理を行い、鍵交換時刻(鍵の更新タイミング)に処理系B(120)が鍵交換処理を行うものとする。
また、本実施の形態においても、実施の形態1と同様に、処理系B(120)は、鍵交換時刻(鍵の更新タイミング)になるまでは何も処理は行わない。
また、コアの割当を、処理系A(110)では、受信部(1)に1個、送信部(2)に1個、鍵管理部(3)に1個、暗号通信処理部(4)に5個とし、処理系B(120)では、受信部(1)に1個、送信部(2)に1個、鍵管理部(3)に0個、暗号通信処理部(4)に4個として、処理系の切り替えを説明する。
Next, with regard to switching between processing system A (110) and processing system B (120) depending on the key exchange time of the encryption communication device, an example using IKE as the key exchange protocol, from the operation flowchart (FIG. 11) of the key management unit. explain.
However, as an example of switching here, the processing system A (110) performs cryptographic communication processing, and the processing system B (120) performs key exchange processing at the key exchange time (key update timing).
Also in the present embodiment, as in the first embodiment, the processing system B (120) does not perform any processing until the key exchange time (key update timing) is reached.
Further, in the processing system A (110), one core is allocated to the receiving unit (1), one to the transmitting unit (2), one to the key management unit (3), and the cryptographic communication processing unit (4). In the processing system B (120), one in the receiving unit (1), one in the transmitting unit (2), 0 in the key management unit (3), and 4 in the encryption communication processing unit (4). As an example, switching of processing systems will be described.

まず、処理系A(110)の鍵管理部(3)で鍵交換時刻であるかを判別し(ステップ18)、交換時刻でないときは何もしないで終了する。
また交換時刻であるときは、処理系A(110)の鍵管理部(3)は、装置制御部(6)を経由してコア割当変更部(7)に交換時刻であることの通知を出す(ステップ25)。
通知を受けたコア割当変更部(7)では、処理系A(110)の暗号通信処理部(4)のコア1個を処理系B(120)の鍵管理部(3)に割当てる処理を行う(ステップ26)。
これにより、コアの割当は処理系A(110)、処理系B(120)ともに、受信部(1)に1個、送信部(2)に1個、鍵管理部(3)に1個、暗号通信処理部(4)に4個となる。
First, the key management unit (3) of the processing system A (110) determines whether it is a key exchange time (step 18).
When it is the exchange time, the key management unit (3) of the processing system A (110) notifies the core allocation changing unit (7) of the exchange time via the device control unit (6). (Step 25).
Upon receiving the notification, the core assignment changing unit (7) performs a process of assigning one core of the cryptographic communication processing unit (4) of the processing system A (110) to the key management unit (3) of the processing system B (120). (Step 26).
As a result, in the processing system A (110) and the processing system B (120), one core is allocated to the receiving unit (1), one to the transmitting unit (2), one to the key management unit (3), There are four encryption communication processing units (4).

次に、処理系B(120)の鍵管理部(3)にコアが割当てられると、処理系B(120)の鍵管理部(3)ではIKEを起動し、新しいSAを確立する(ステップ19、20)。
このとき、SAは2種類確立されていることになり、それぞれのSAに対して処理系A(110)、処理系B(120)それぞれが暗号通信処理を行うようにするので、装置制御部(6)に暗号通信処理系が2つであることを処理系B(120)の鍵管理部(3)が通知する(ステップ21)。
そして、通知を受けた装置制御部(6)では、処理系A(110)、処理系B(120)ともに暗号通信処理を行うとして、処理系判別データを更新する(ステップ22)。この時点までに、処理系B(120)の暗号通信処理部(4)も起動されており、処理系B(120)の暗号通信処理部(4)はステップ20で新たに確立されたSAを用いて通信相手装置と暗号通信を行うことができる。
Next, when a core is allocated to the key management unit (3) of the processing system B (120), the key management unit (3) of the processing system B (120) activates IKE and establishes a new SA (step 19). 20).
At this time, two types of SAs have been established, and the processing system A (110) and the processing system B (120) perform cryptographic communication processing for each SA. 6) The key management unit (3) of the processing system B (120) notifies that there are two cryptographic communication processing systems (step 21).
Upon receiving the notification, the apparatus control unit (6) updates the processing system discrimination data on the assumption that both the processing system A (110) and the processing system B (120) perform cryptographic communication processing (step 22). Up to this point, the cryptographic communication processing unit (4) of the processing system B (120) has also been activated, and the cryptographic communication processing unit (4) of the processing system B (120) determines the SA newly established in step 20. It is possible to perform encrypted communication with a communication partner device.

次に、SAの切替時刻になると、処理系A(110)及び処理系B(120)の鍵管理部(3)ではSAの切替処理を開始する(ステップ23)。この時点で、処理系A(110)のSA(旧SA)は期限切れとなり、処理系A(110)の鍵管理部(3)は旧SAを消去する(ステップ24)。
ここで旧SAが消去されると、確立されているSAは1つとなるため、処理系A(110)の鍵管理部(3)が、処理系が切り替わったこと、つまり、処理系B(120)が暗号通信処理を行うことを装置制御部(6)に通知し(ステップ21)、装置制御部(6)では処理系判別データを更新する(ステップ22)。
Next, when the SA switching time comes, the key management unit (3) of the processing system A (110) and the processing system B (120) starts the SA switching processing (step 23). At this time, the SA (old SA) of the processing system A (110) expires, and the key management unit (3) of the processing system A (110) deletes the old SA (step 24).
If the old SA is erased, the number of established SAs is one. Therefore, the key management unit (3) of the processing system A (110) switches the processing system, that is, the processing system B (120 ) Notifies the device controller (6) that encryption communication processing is to be performed (step 21), and the device controller (6) updates the processing system discrimination data (step 22).

更に、旧SAが消去されると、処理系A(110)の鍵管理部(3)は処理の必要がないので、コア割当変更部(7)に処理系A(110)の鍵管理部(3)が通知を出し(ステップ25)、コア割当変更部(7)が、処理系A(110)の鍵管理部(3)に割当てられているコアを、処理系B(120)の暗号通信処理部(4)へと割当てる(ステップ28)。
これにより、コアの割当は、処理系A(110)では、受信部(1)に1個、送信部(2)に1個、鍵管理部(3)に0個、暗号通信処理部(4)に4個となり、処理系B(120)では、受信部(1)に1個、送信部(2)に1個、鍵管理部(3)に1個、暗号通信処理部(4)に5個となる。
以上のようにして、実施の形態3の暗号通信装置では処理系の切り替えを行う。
Further, when the old SA is deleted, the key management unit (3) of the processing system A (110) does not need to be processed, so the core allocation changing unit (7) is notified by the key management unit (3) of the processing system A (110). 3) issues a notification (step 25), and the core assignment changing unit (7) sends the core assigned to the key management unit (3) of the processing system A (110) to the cryptographic communication of the processing system B (120). Assigned to the processing unit (4) (step 28).
Thereby, in the processing system A (110), one core is allocated to the receiving unit (1), one is transmitted to the transmitting unit (2), 0 is allocated to the key management unit (3), and the cryptographic communication processing unit (4) is allocated. ) In the processing system B (120), one in the reception unit (1), one in the transmission unit (2), one in the key management unit (3), and one in the encryption communication processing unit (4) There will be five.
As described above, the cryptographic communication apparatus according to Embodiment 3 switches the processing system.

本実施の形態におけるコアの割当方法は、暗号通信処理を行っている処理系により多くのコアを割当て、切替段階(新旧のSAが並存している段階)ではコアを両処理系で均等にし、暗号通信処理を行う処理系が他方に移ったら、他方の処理系により多くのコアを割当てるものであり、コアの割当数は、以上の説明に限定されない。   The core allocation method in the present embodiment allocates more cores to a processing system that performs cryptographic communication processing, and equalizes the cores in both processing systems at the switching stage (stage where old and new SAs coexist) When the processing system that performs the cryptographic communication process moves to the other, more cores are allocated to the other processing system, and the number of cores allocated is not limited to the above description.

また、実施の形態3の暗号通信装置(20)の動作で、処理系A(110)はSA1、処理系B(120)はSA2を用いて暗号通信処理を行うとしたときに、処理系判別部(5)は、SPIを参照してパケットを振り分け、各処理系でSAに問い合わせる。
従って、SA2適用パケットが多く到着したときであっても、処理系判別部(5)は、SA1に問い合わせる必要がなく、その問い合わせの処理時間の無駄をなくすことができるので、特開2003−179592の暗号通信装置の課題を解決する。
Further, in the operation of the cryptographic communication apparatus (20) of the third embodiment, when the processing system A (110) performs cryptographic communication processing using SA1 and the processing system B (120) uses SA2, processing system discrimination The unit (5) distributes the packet with reference to the SPI, and inquires the SA in each processing system.
Therefore, even when a large number of SA2-applied packets arrive, the processing system discriminating unit (5) does not need to make an inquiry to SA1, and it is possible to eliminate waste of processing time for the inquiry. To solve the problems of the encryption communication apparatus of the present invention.

また、実施の形態3の暗号通信装置(200)では、新SAを確立するためにIKEを起動するときや、旧SAが消去されるときのように、時刻に応じて各処理手段に対してコアの割当を変更できるので、特開2007−219577号公報の課題を解決することができる。   Further, in the cryptographic communication apparatus (200) of the third embodiment, each processing means is activated according to the time, such as when IKE is activated to establish a new SA, or when the old SA is deleted. Since the assignment of cores can be changed, the problem of Japanese Patent Application Laid-Open No. 2007-219577 can be solved.

最後に、実施の形態1〜3に示した暗号通信装置(20)のハードウェア構成例について説明する。
図12は、実施の形態1〜3に示す暗号通信装置(20)のハードウェア資源の一例を示す図である。
なお、図12の構成は、あくまでも暗号通信装置(20)のハードウェア構成の一例を示すものであり、暗号通信装置(20)のハードウェア構成は図12に記載の構成に限らず、他の構成であってもよい。
Finally, a hardware configuration example of the cryptographic communication device (20) shown in the first to third embodiments will be described.
FIG. 12 is a diagram illustrating an example of hardware resources of the cryptographic communication device (20) illustrated in the first to third embodiments.
The configuration in FIG. 12 is merely an example of the hardware configuration of the cryptographic communication device (20), and the hardware configuration of the cryptographic communication device (20) is not limited to the configuration described in FIG. It may be a configuration.

図12において、暗号通信装置(20)は、プログラムを実行するCPU911(Central Processing Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。
なお、CPU911は、前述のように、マルチコア構成となっている。
また、CPU911は、バス912を介して、例えば、ROM(Read Only Memory)913、RAM(Random Access Memory)914、通信ボード915、表示装置901、キーボード902、マウス903、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。
更に、CPU911は、FDD904(Flexible Disk Drive)、コンパクトディスク装置905(CDD)、プリンタ装置906、スキャナ装置907と接続していてもよい。また、磁気ディスク装置920の代わりに、光ディスク装置、メモリカード(登録商標)読み書き装置などの記憶装置でもよい。
RAM914は、揮発性メモリの一例である。ROM913、FDD904、CDD905、磁気ディスク装置920の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
通信ボード915、キーボード902、マウス903、スキャナ装置907、FDD904などは、入力装置の一例である。
また、通信ボード915、表示装置901、プリンタ装置906などは、出力装置の一例である。
In FIG. 12, the cryptographic communication device (20) includes a CPU 911 (also referred to as a central processing unit, a central processing unit, a processing unit, an arithmetic unit, a microprocessor, a microcomputer, and a processor) that executes a program.
Note that the CPU 911 has a multi-core configuration as described above.
The CPU 911 is connected to, for example, a ROM (Read Only Memory) 913, a RAM (Random Access Memory) 914, a communication board 915, a display device 901, a keyboard 902, a mouse 903, and a magnetic disk device 920 via a bus 912. Control these hardware devices.
Further, the CPU 911 may be connected to an FDD 904 (Flexible Disk Drive), a compact disk device 905 (CDD), a printer device 906, and a scanner device 907. Further, instead of the magnetic disk device 920, a storage device such as an optical disk device or a memory card (registered trademark) read / write device may be used.
The RAM 914 is an example of a volatile memory. The storage media of the ROM 913, the FDD 904, the CDD 905, and the magnetic disk device 920 are an example of a nonvolatile memory. These are examples of the storage device.
A communication board 915, a keyboard 902, a mouse 903, a scanner device 907, an FDD 904, and the like are examples of input devices.
The communication board 915, the display device 901, the printer device 906, and the like are examples of output devices.

通信ボード915は、図1等に示すように、ネットワークに接続されている。例えば、通信ボード915は、LANのほか、インターネット、WAN(ワイドエリアネットワーク)などに接続されていても構わない。   The communication board 915 is connected to a network as shown in FIG. For example, the communication board 915 may be connected to the Internet, a WAN (wide area network), etc., in addition to the LAN.

磁気ディスク装置920には、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。
プログラム群923のプログラムは、CPU911がオペレーティングシステム921、ウィンドウシステム922を利用しながら実行する。
The magnetic disk device 920 stores an operating system 921 (OS), a window system 922, a program group 923, and a file group 924.
The programs in the program group 923 are executed by the CPU 911 using the operating system 921 and the window system 922.

また、RAM914には、CPU911に実行させるオペレーティングシステム921のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、RAM914には、CPU911による処理に必要な各種データが格納される。
The RAM 914 temporarily stores at least part of the operating system 921 program and application programs to be executed by the CPU 911.
The RAM 914 stores various data necessary for processing by the CPU 911.

また、ROM913には、BIOS(Basic Input Output System)プログラムが格納され、磁気ディスク装置920にはブートプログラムが格納されている。
暗号通信装置(20)の起動時には、ROM913のBIOSプログラム及び磁気ディスク装置920のブートプログラムが実行され、BIOSプログラム及びブートプログラムによりオペレーティングシステム921が起動される。
The ROM 913 stores a BIOS (Basic Input Output System) program, and the magnetic disk device 920 stores a boot program.
When the encryption communication device (20) is activated, the BIOS program in the ROM 913 and the boot program in the magnetic disk device 920 are executed, and the operating system 921 is activated by the BIOS program and the boot program.

上記プログラム群923には、実施の形態1〜3の説明において「〜部」として説明している機能を実行するプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。   The program group 923 stores a program for executing the function described as “˜unit” in the description of the first to third embodiments. The program is read and executed by the CPU 911.

ファイル群924には、実施の形態1〜3の説明において、「〜の判断」、「〜の切替」、「〜の交換」、「〜の検索」、「〜の比較」、「〜の評価」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのCPUの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態1〜3で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、FDD904のフレキシブルディスク、CDD905のコンパクトディスク、磁気ディスク装置920の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
In the file group 924, in the description of the first to third embodiments, “determination of”, “switching of”, “exchange of”, “search of”, “comparison of”, “evaluation of” ”,“ Update of ”,“ setting of ”,“ registration of ”,“ selection of ”, etc. It is stored as each item of "~ file" and "~ database".
The “˜file” and “˜database” are stored in a recording medium such as a disk or a memory. Information, data, signal values, variable values, and parameters stored in a storage medium such as a disk or memory are read out to the main memory or cache memory by the CPU 911 via a read / write circuit, and extracted, searched, referenced, compared, and calculated. Used for CPU operations such as calculation, processing, editing, output, printing, and display.
Information, data, signal values, variable values, and parameters are stored in the main memory, registers, cache memory, and buffers during the CPU operations of extraction, search, reference, comparison, calculation, processing, editing, output, printing, and display. It is temporarily stored in a memory or the like.
In addition, arrows in the flowcharts described in the first to third embodiments mainly indicate input / output of data and signals, and the data and signal values are the memory of the RAM 914, the flexible disk of the FDD904, the compact disk of the CDD905, and the magnetic field. Recording is performed on a recording medium such as a magnetic disk of the disk device 920, other optical disks, mini disks, DVDs, and the like. Data and signals are transmitted online via a bus 912, signal lines, cables, or other transmission media.

また、実施の形態1〜3の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明しているものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、実施の形態1〜3の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態1〜3の「〜部」の手順や方法をコンピュータに実行させるものである。   In addition, what is described as “˜unit” in the description of the first to third embodiments may be “˜circuit”, “˜device”, “˜device”, and “˜step”, It may be “˜procedure” or “˜processing”. That is, what is described as “˜unit” may be realized by firmware stored in the ROM 913. Alternatively, it may be implemented only by software, or only by hardware such as elements, devices, substrates, and wirings, by a combination of software and hardware, or by a combination of firmware. Firmware and software are stored as programs in a recording medium such as a magnetic disk, a flexible disk, an optical disk, a compact disk, a mini disk, and a DVD. The program is read by the CPU 911 and executed by the CPU 911. That is, the program causes the computer to function as “to part” in the first to third embodiments. Alternatively, the computer executes the procedure and method of “to part” in the first to third embodiments.

このように、実施の形態1〜3に示す暗号通信装置(20)は、処理装置たるCPU、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。   As described above, the encryption communication device (20) shown in the first to third embodiments includes a CPU as a processing device, a memory as a storage device, a magnetic disk, a keyboard as an input device, a mouse, a communication board, and a display device as an output device. The computer includes a communication board and the like, and realizes the functions indicated as “˜unit” as described above using these processing devices, storage devices, input devices, and output devices.

実施の形態1に係る暗号通信装置の構成例を示す図。FIG. 3 is a diagram illustrating a configuration example of a cryptographic communication apparatus according to the first embodiment. 実施の形態1〜3に係るネットワークのシステム構成図。1 is a system configuration diagram of a network according to Embodiments 1 to 3. FIG. 実施の形態1に係る暗号通信装置の平文側LANからのパケット受信時の動作例を示すフローチャート図。The flowchart figure which shows the operation example at the time of the packet reception from the plaintext side LAN of the encryption communication apparatus which concerns on Embodiment 1. FIG. 実施の形態1に係る暗号通信装置の暗号文側LANからのパケット受信時の動作例を示すフローチャート図。The flowchart figure which shows the operation example at the time of the packet reception from the ciphertext side LAN of the encryption communication apparatus which concerns on Embodiment 1. FIG. 実施の形態1に係る暗号通信装置の鍵管理部の動作例を示すフローチャート図。FIG. 3 is a flowchart showing an operation example of a key management unit of the cryptographic communication apparatus according to the first embodiment. 実施の形態2に係る暗号通信装置の構成例を示す図。FIG. 4 shows a configuration example of a cryptographic communication apparatus according to a second embodiment. 実施の形態2に係る暗号通信装置の平文側LANからのパケット受信時の動作例を示すフローチャート図。The flowchart figure which shows the operation example at the time of the packet reception from the plaintext LAN of the encryption communication apparatus which concerns on Embodiment 2. FIG. 実施の形態2に係る暗号通信装置の暗号文側LANからのパケット受信時の動作例を示すフローチャート図。The flowchart figure which shows the operation example at the time of the packet reception from the ciphertext side LAN of the encryption communication apparatus which concerns on Embodiment 2. FIG. 実施の形態2に係る暗号通信装置の鍵管理部の動作例を示すフローチャート図。FIG. 9 is a flowchart showing an operation example of a key management unit of the cryptographic communication apparatus according to the second embodiment. 実施の形態3に係る暗号通信装置の構成例を示す図。FIG. 10 is a diagram illustrating a configuration example of a cryptographic communication apparatus according to a third embodiment. 実施の形態3に係る暗号通信装置の鍵管理部の動作例を示すフローチャート図。FIG. 9 is a flowchart showing an operation example of a key management unit of the cryptographic communication apparatus according to the third embodiment. 実施の形態1〜3に係る暗号通信装置のハードウェア構成例を示す図。The figure which shows the hardware structural example of the encryption communication apparatus which concerns on Embodiment 1-3.

符号の説明Explanation of symbols

1 受信部、2 送信部、3 鍵管理部、4 暗号通信処理部、5 処理系判別部、6 装置制御部、7 コア割当変更部、20 暗号通信装置、21 平文側LAN、22 暗号文側LAN、30 社内ネットワーク、31 端末、32 端末、110 処理系A、120 処理系B。   DESCRIPTION OF SYMBOLS 1 Reception part, 2 Transmission part, 3 Key management part, 4 Encryption communication process part, 5 Processing system discrimination | determination part, 6 Apparatus control part, 7 Core allocation change part, 20 Encryption communication apparatus, 21 Plaintext side LAN, 22 Ciphertext side LAN, 30 internal network, 31 terminals, 32 terminals, 110 processing system A, 120 processing system B.

Claims (11)

通信相手装置と暗号通信を行う暗号通信部と、暗号通信に用いられる暗号通信用情報の更新を前記通信相手装置と行う情報更新部とがそれぞれに含まれる二つの処理部を有し、
前記暗号通信用情報の更新タイミングの前は、一方の処理部の暗号通信部が前記通信相手装置と暗号通信を行い、前記暗号通信用情報の更新タイミングにおいて、他方の処理部の情報更新部が前記通信相手装置との間で前記暗号通信用情報の更新を行い、前記他方の処理部の暗号通信部が前記通信相手装置との暗号通信を開始するとともに前記一方の処理部の暗号通信部が暗号通信を終了することを特徴とする通信装置。
An encryption communication unit that performs encryption communication with the communication partner device, and an information update unit that performs update of the information for encryption communication used for encryption communication with the communication partner device each include two processing units,
Prior to the update timing of the encryption communication information, the encryption communication unit of one processing unit performs encryption communication with the communication partner device, and at the update timing of the encryption communication information, the information update unit of the other processing unit The encryption communication information is updated with the communication partner device, and the encryption communication unit of the other processing unit starts encryption communication with the communication partner device and the encryption communication unit of the one processing unit A communication apparatus for terminating encrypted communication.
各々の処理部において、
前記情報更新部は、
前記暗号通信用情報の更新タイミングにおいて、前記通信相手装置との間で前記暗号通信用情報の更新を行い、前記通信相手装置との間に暗号通信に用いられる論理コネクションを設定し、
前記暗号通信部は、
前記情報更新部により設定された論理コネクションにて前記通信相手装置と暗号通信を行い、
前記暗号通信用情報の更新タイミングの前は、前記一方の処理部の情報更新部により設定された論理コネクションにて前記一方の処理部の暗号通信部が前記通信相手装置と暗号通信を行い、前記暗号通信用情報の更新タイミングにおいて、前記他方の処理部の情報更新部が前記通信相手装置との間で前記暗号通信用情報の更新を行って前記通信相手装置との間に論理コネクションを設定し前記他方の処理部の暗号通信部が前記通信相手装置との暗号通信を開始するとともに前記一方の処理部の情報更新部がその論理コネクションを消去して前記一方の処理部の暗号通信部の暗号通信を終了させることを特徴とする請求項1に記載の通信装置。
In each processing unit,
The information update unit
At the update timing of the encryption communication information, update the encryption communication information with the communication counterpart device, set a logical connection used for encryption communication with the communication counterpart device,
The encryption communication unit is
Perform cryptographic communication with the communication partner device in the logical connection set by the information update unit,
Before the update timing of the information for encryption communication, the encryption communication unit of the one processing unit performs encryption communication with the communication partner device in the logical connection set by the information update unit of the one processing unit, At the update timing of the encryption communication information, the information update unit of the other processing unit updates the encryption communication information with the communication partner device and sets a logical connection with the communication partner device. The encryption communication unit of the other processing unit starts encryption communication with the communication partner device, and the information update unit of the one processing unit deletes the logical connection to encrypt the encryption communication unit of the one processing unit. The communication apparatus according to claim 1, wherein communication is terminated.
前記一方の処理部の情報更新部は、
前記他方の処理部の情報更新部が前記通信相手装置との間に論理コネクションを設定し前記他方の処理部の暗号通信部が前記通信相手装置との暗号通信を開始した後に、論理コネクションを消去し、
前記通信装置は、更に、
前記他方の処理部の情報更新部が論理コネクションを設定した後前記一方の処理部の情報更新部がその論理コネクションを消去するまでの間に、パケットを受信した際に、受信したパケットを解析して、受信したパケットがいずれの論理コネクションに属するのかを判断し、受信したパケットが属する論理コネクションを設定している処理部に、受信したパケットを出力するパケット解析部を有することを特徴とする請求項2に記載の通信装置。
The information updating unit of the one processing unit is
After the information update unit of the other processing unit sets up a logical connection with the communication partner device and the encryption communication unit of the other processing unit starts encrypted communication with the communication partner device, the logical connection is deleted. And
The communication device further includes:
When the information update unit of the other processing unit sets a logical connection and before the information update unit of the one processing unit deletes the logical connection, the received packet is analyzed. And determining a logical connection to which the received packet belongs, and having a packet analysis unit for outputting the received packet in the processing unit that sets the logical connection to which the received packet belongs. Item 3. The communication device according to Item 2.
前記通信装置は、
マルチコアCPU(Central Processing Unit)を備え、
前記二つの処理部には、各々異なるCPUコアが割当てられていることを特徴とする請求項1〜3のいずれかに記載の通信装置。
The communication device
Multi-core CPU (Central Processing Unit)
The communication apparatus according to claim 1, wherein different CPU cores are assigned to the two processing units.
前記通信装置は、
マルチコアCPUを備え、
更に、
前記暗号通信用情報の更新タイミングの前は、前記一方の処理部に複数のCPUコアを割当てて前記一方の処理部の暗号通信部に前記通信相手装置との暗号通信を行わせ、前記暗号通信用情報の更新タイミングにおいて、前記一方の処理部に割当てている前記複数のCPUコアのうちの少なくとも一つのCPUコアを前記他方の処理部の情報更新部に割当てて前記他方の処理部の情報更新部に前記通信相手装置との間で前記暗号通信用情報の更新を行わせるコア割当制御部を有することを特徴とする請求項1〜3のいずれかに記載の通信装置。
The communication device
With multi-core CPU,
Furthermore,
Before the update timing of the encryption communication information, a plurality of CPU cores are allocated to the one processing unit, and the encryption communication unit of the one processing unit performs encryption communication with the communication partner device, and the encryption communication Information update timing of the other processing unit by allocating at least one CPU core among the plurality of CPU cores allocated to the one processing unit to the information updating unit of the other processing unit The communication apparatus according to claim 1, further comprising: a core allocation control unit that causes the unit to update the information for encrypted communication with the communication partner apparatus.
前記コア割当制御部は、
前記暗号通信用情報の更新タイミングにおいて、前記一方の処理部に割当てている前記複数のCPUコアのうちの少なくとも一つのCPUコアを前記他方の処理部の暗号通信部に割当てることを特徴とする請求項5に記載の通信装置。
The core allocation control unit
The at least one CPU core among the plurality of CPU cores allocated to the one processing unit is allocated to the cryptographic communication unit of the other processing unit at the update timing of the encryption communication information. Item 6. The communication device according to Item 5.
前記コア割当制御部は、
前記一方の処理部の暗号通信部が暗号通信を終了した後に、前記一方の処理部に割当てている前記複数のCPUコアのうちの少なくとも一つのCPUコアを前記他方の処理部の暗号通信部に割当てることを特徴とする請求項6に記載の通信装置。
The core allocation control unit
After the cryptographic communication unit of the one processing unit finishes the cryptographic communication, at least one CPU core among the plurality of CPU cores assigned to the one processing unit is used as the cryptographic communication unit of the other processing unit. 7. The communication apparatus according to claim 6, wherein the communication apparatus is assigned.
マルチコアCPUを備える通信装置であって、
通信相手装置と暗号通信を行う暗号通信部と、
暗号通信に用いられる暗号通信用情報の更新を前記通信相手装置と行う情報更新部と、
前記暗号通信用情報の更新タイミングの前は、前記暗号通信部に少なくとも一つのCPUコアを割当てて前記通信相手装置との暗号通信を行わせ、前記暗号通信用情報の更新タイミングにおいて、前記情報更新部に少なくとも一つのCPUコアを割当てて前記通信相手装置との間で前記暗号通信用情報の更新を行わせるコア割当制御部とを有することを特徴とする通信装置。
A communication device comprising a multi-core CPU,
An encryption communication unit that performs encrypted communication with a communication partner device;
An information update unit for performing update of information for encryption communication used for encryption communication with the communication partner device;
Prior to the update timing of the encryption communication information, at least one CPU core is allocated to the encryption communication unit to perform encryption communication with the communication partner device, and the information update is performed at the update timing of the encryption communication information. And a core allocation control unit that allocates at least one CPU core to the communication unit and updates the information for encryption communication with the communication partner device.
前記コア割当制御部は、
前記暗号通信用情報の更新タイミングの前は、前記暗号通信部に複数のCPUコアを割当てて前記通信相手装置との暗号通信を行わせ、前記暗号通信用情報の更新タイミングにおいて、前記暗号通信部に割当てている前記複数のCPUコアのうちの少なくとも一つのCPUコアを前記情報更新部に割当てることを特徴とする請求項8に記載の通信装置。
The core allocation control unit
Prior to the update timing of the encryption communication information, a plurality of CPU cores are assigned to the encryption communication unit to perform encryption communication with the communication partner device, and at the update timing of the encryption communication information, the encryption communication unit The communication apparatus according to claim 8, wherein at least one CPU core among the plurality of CPU cores assigned to the information updating unit is assigned to the information updating unit.
前記情報更新部は、
前記暗号通信用情報の更新タイミングの前から稼動している第一の情報更新部と、前記暗号通信用情報の更新タイミングから稼動する第二の情報更新部に区分され、
前記第一の情報更新部は、
前記暗号通信用情報の更新タイミングの前に、前記コア割当制御部により少なくとも一つのCPUコアが割当てられ、前記通信相手装置との間に暗号通信に用いられる論理コネクションを設定しており、
前記第二の情報更新部は、
前記暗号通信用情報の更新タイミングにおいて、前記コア割当制御部により少なくとも一つのCPUコアが割当てられ、前記通信相手装置との間に暗号通信に用いられる論理コネクションを設定し、
前記暗号通信部は、
前記暗号通信用情報の更新タイミングの前は、前記第一の情報更新部により設定された第一の論理コネクションにて前記通信相手装置と暗号通信を行い、前記暗号通信用情報の更新タイミングにおいて、前記第二の情報更新部により設定された第二の論理コネクションに切り替えて前記通信相手装置と暗号通信を行うことを特徴とする請求項8又は9に記載の通信装置。
The information update unit
It is divided into a first information update unit operating from before the update timing of the information for encrypted communication and a second information update unit operating from the update timing of the information for encrypted communication,
The first information updating unit
Prior to the update timing of the information for encryption communication, at least one CPU core is assigned by the core assignment control unit, and a logical connection used for encryption communication is set between the communication partner device,
The second information updating unit
At the update timing of the encryption communication information, at least one CPU core is assigned by the core assignment control unit, and a logical connection used for encryption communication is set between the communication partner device,
The encryption communication unit is
Prior to the update timing of the information for encryption communication, performing the encryption communication with the communication partner device in the first logical connection set by the first information update unit, at the update timing of the information for encryption communication, The communication apparatus according to claim 8 or 9, wherein the communication is performed with the communication partner apparatus by switching to the second logical connection set by the second information update unit.
前記第一の情報更新部は、
前記第二の情報更新部により前記第二の論理コネクションが設定された後に、前記第一の論理コネクションを消去し、
前記コア割当制御部は、
前記第一の情報更新部が前記第一の論理コネクションを消去した後、前記第一の情報更新部に割当てていたCPUコアの少なくとも一部を前記暗号通信部に割当てることを特徴とする請求項10に記載の通信装置。
The first information updating unit
After the second logical connection is set by the second information update unit, the first logical connection is deleted,
The core allocation control unit
The at least part of the CPU core allocated to the first information update unit is allocated to the encryption communication unit after the first information update unit erases the first logical connection. The communication device according to 10.
JP2008049354A 2008-02-29 2008-02-29 Communication device Expired - Fee Related JP5094474B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008049354A JP5094474B2 (en) 2008-02-29 2008-02-29 Communication device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008049354A JP5094474B2 (en) 2008-02-29 2008-02-29 Communication device

Publications (2)

Publication Number Publication Date
JP2009207049A true JP2009207049A (en) 2009-09-10
JP5094474B2 JP5094474B2 (en) 2012-12-12

Family

ID=41148841

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008049354A Expired - Fee Related JP5094474B2 (en) 2008-02-29 2008-02-29 Communication device

Country Status (1)

Country Link
JP (1) JP5094474B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011087249A (en) * 2009-10-19 2011-04-28 Ricoh Co Ltd Communication device and communication control method
JP2022012202A (en) * 2020-07-01 2022-01-17 Necプラットフォームズ株式会社 First communication apparatus, second communication apparatus, system, method and program

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002217896A (en) * 2001-01-23 2002-08-02 Matsushita Electric Ind Co Ltd Method for cipher communication and gateway device
JP2002305533A (en) * 2000-12-25 2002-10-18 Matsushita Electric Ind Co Ltd Database management device, database management method and storage medium therefor
JP2004328298A (en) * 2003-04-24 2004-11-18 Nec Corp Communication system, communication device, and operation control method therefor
JP2006352500A (en) * 2005-06-16 2006-12-28 Matsushita Electric Ind Co Ltd Processor and method for automatic key replacement processing
JP2007219577A (en) * 2006-02-14 2007-08-30 Sony Corp Data processor, data processing method, program for data processing method and recording medium with its program recorded
JP2007267301A (en) * 2006-03-30 2007-10-11 Fujitsu Access Ltd Encrypted communication system, and encryption key updating method
JP2008011176A (en) * 2006-06-29 2008-01-17 Kyocera Corp Radio communication method and system
JP2009065625A (en) * 2007-09-10 2009-03-26 Oki Electric Ind Co Ltd Encryption data communicating method, and encryption data communication system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002305533A (en) * 2000-12-25 2002-10-18 Matsushita Electric Ind Co Ltd Database management device, database management method and storage medium therefor
JP2002217896A (en) * 2001-01-23 2002-08-02 Matsushita Electric Ind Co Ltd Method for cipher communication and gateway device
JP2004328298A (en) * 2003-04-24 2004-11-18 Nec Corp Communication system, communication device, and operation control method therefor
JP2006352500A (en) * 2005-06-16 2006-12-28 Matsushita Electric Ind Co Ltd Processor and method for automatic key replacement processing
JP2007219577A (en) * 2006-02-14 2007-08-30 Sony Corp Data processor, data processing method, program for data processing method and recording medium with its program recorded
JP2007267301A (en) * 2006-03-30 2007-10-11 Fujitsu Access Ltd Encrypted communication system, and encryption key updating method
JP2008011176A (en) * 2006-06-29 2008-01-17 Kyocera Corp Radio communication method and system
JP2009065625A (en) * 2007-09-10 2009-03-26 Oki Electric Ind Co Ltd Encryption data communicating method, and encryption data communication system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011087249A (en) * 2009-10-19 2011-04-28 Ricoh Co Ltd Communication device and communication control method
JP2022012202A (en) * 2020-07-01 2022-01-17 Necプラットフォームズ株式会社 First communication apparatus, second communication apparatus, system, method and program

Also Published As

Publication number Publication date
JP5094474B2 (en) 2012-12-12

Similar Documents

Publication Publication Date Title
US11569986B2 (en) Decryption of secure sockets layer sessions having enabled perfect forward secrecy using a Diffie-Hellman key exchange
CN106713320B (en) Terminal data transmission method and device
US9838434B2 (en) Creating and managing a network security tag
US20210314160A1 (en) Method for securing the rendezvous connection in a cloud service using routing tokens
US12028378B2 (en) Secure communication session resumption in a service function chain preliminary class
WO2012011218A1 (en) Computer system and offloading method in computer system
US11146588B2 (en) Context-based adaptive encryption
JP5270692B2 (en) Method, apparatus, and computer program for selective loading of security association information to a security enforcement point
US11575662B2 (en) Transmitting and storing different types of encrypted information using TCP urgent mechanism
JP2020522164A (en) Method, device and program for TLS inspection
JPWO2013080659A1 (en) Confidential information leakage prevention system, confidential information leakage prevention method, and program
US10158610B2 (en) Secure application communication system
US20240048375A1 (en) Distributed storage system and method of reusing symmetric keys for encrypted message transmissions
CN113992427B (en) Data encryption sending method and device based on adjacent nodes
CN115801442A (en) Encrypted traffic detection method, security system and agent module
US9219712B2 (en) WAN optimization without required user configuration for WAN secured VDI traffic
CN113206815B (en) Method for encryption and decryption, programmable switch and computer readable storage medium
JP5094474B2 (en) Communication device
US20060048217A1 (en) Secure bidirectional cross-system communications framework
JP4933286B2 (en) Encrypted packet communication system
JP2012227829A (en) Image processor and control method therefor
KR20150060050A (en) Network device and method of forming tunnel of network device
US20230239138A1 (en) Enhanced secure cryptographic communication system
Lawrence ROS2 prevalance and security
CN117640289A (en) Gateway architecture and equipment based on user mode WirelGuard protocol

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120710

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120806

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120821

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120918

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150928

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees