JP2007173959A - Encryption communication apparatus - Google Patents

Encryption communication apparatus Download PDF

Info

Publication number
JP2007173959A
JP2007173959A JP2005365155A JP2005365155A JP2007173959A JP 2007173959 A JP2007173959 A JP 2007173959A JP 2005365155 A JP2005365155 A JP 2005365155A JP 2005365155 A JP2005365155 A JP 2005365155A JP 2007173959 A JP2007173959 A JP 2007173959A
Authority
JP
Japan
Prior art keywords
message
encrypted
terminal
communication
icmp
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
JP2005365155A
Other languages
Japanese (ja)
Other versions
JP4647481B2 (en
Inventor
Masahide Nishikawa
雅英 西川
Tetsushi Matsuda
哲史 松田
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 JP2005365155A priority Critical patent/JP4647481B2/en
Publication of JP2007173959A publication Critical patent/JP2007173959A/en
Application granted granted Critical
Publication of JP4647481B2 publication Critical patent/JP4647481B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To obtain an encryption communication apparatus transferring an ICMP message to a communication terminal on the outside of a tunnel communication path by utilizing the band efficiently. <P>SOLUTION: The encryption communication apparatus 10A for transferring each user message to a counter apparatus on an encryption communication path while encrypting and encapsulating upon receiving a user message from a communication terminal, and transferring an ICMP message received from a relay on the encryption communication path to a predetermined destination on the outside of the encryption communication path while decrypting and encapsulating comprises an ICMP reproduction data management section 60 for storing address information concerning association of information about the encryption communication path for transferring the user message and the address of the communication terminal, and a section 53 for determining the address of the transfer destination communication terminal of ICMP message based on the encryption communication path information extracted from the ICMP message received from the relay and the stored address information. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、トンネル通信路上の通信制御用メッセージをトンネル通信路外の通信端末に転送する暗号化通信装置に関するものである。   The present invention relates to an encrypted communication apparatus for transferring a communication control message on a tunnel communication path to a communication terminal outside the tunnel communication path.

複数の通信ネットワークを接続してデータ転送する技術として、カプセル化トンネル通信がある。カプセル化トンネル通信は、データ送信元のユーザ端末やデータ受信先のユーザ端末が送受信するIP(Internet Protocol)メッセージを、通信経路上の通信装置がIPを使用した他のプロトコルメッセージに内包(カプセル化)して通信網内をトンネルのように転送させている。このカプセル化トンネル通信では、カプセル化処理を終端する通信装置は、トンネル通信路上で発生したICMP(Internet Control Message Protocol)エラー通知メッセージをユーザ端末に通知するため、特別な中継動作を行う必要があった。   Encapsulated tunnel communication is a technique for transferring data by connecting a plurality of communication networks. In encapsulated tunnel communication, an IP (Internet Protocol) message transmitted / received by a user terminal that is a data transmission source or a user terminal that is a data reception destination is included (encapsulated) in another protocol message using IP by a communication device on a communication path. ) To transfer the communication network like a tunnel. In this encapsulated tunnel communication, the communication device that terminates the encapsulation process needs to perform a special relay operation in order to notify the user terminal of an ICMP (Internet Control Message Protocol) error notification message that has occurred on the tunnel communication path. It was.

例えば、トンネルモードのESP(Encapsulating Security Payload)暗号化を行うIPSEC(IP Security)環境では、IPSECを終端する暗号化通信装置がIPSECメッセージにカプセル化処理を行い、トンネル通信路(IPSEC_SA(以下、SA(Security Association)という場合がある)を使用してカプセル化されたIPSECメッセージの送受信を行う。   For example, in an IPSEC (IP Security) environment that performs ESP (Encapsulating Security Payload) encryption in tunnel mode, an encryption communication device that terminates IPSEC performs an encapsulation process on an IPSEC message, and a tunnel communication path (IPSEC_SA (hereinafter referred to as SA) (Sometimes referred to as “Security Association”).

このようなトンネル通信路においては、暗号化通信装置が送信するIPSECメッセージに対して、トンネル通信路上のルータが元のIPSECメッセージを含んだICMP_MTU(Maximum Transmission Unit)超過メッセージ等を応答通知する場合がある。   In such a tunnel communication path, a router on the tunnel communication path may send a response notification of an ICMP_MTU (Maximum Transmission Unit) excess message including the original IPSEC message in response to the IPSEC message transmitted by the encrypted communication apparatus. is there.

従来の暗号化通信装置は、このICMPエラー通知メッセージを発信側のユーザ端末(発側端末)に送信するため、ICMPエラー通知メッセージに含まれる元のIPSECメッセージの一部分を取り出している。そして、この元のIPSECメッセージの宛先アドレス(対向する暗号化通信装置のアドレス)、IPSECプロトコルの種別、SAを識別するためのSPI(Security Parameters Index)値をキーとして、暗号化通信装置が保持するSAに関するDB(SADB(SA DataBase))を検索し、発側端末のアドレス範囲を絞り込んでいる。   The conventional encrypted communication apparatus extracts a part of the original IPSEC message included in the ICMP error notification message in order to transmit the ICMP error notification message to the user terminal (originating terminal) on the transmission side. The encrypted communication apparatus holds the destination address (address of the opposite encrypted communication apparatus) of this original IPSEC message, the IPSEC protocol type, and the SPI (Security Parameters Index) value for identifying the SA as keys. A DB related to SA (SADB (SA DataBase)) is searched to narrow down the address range of the calling terminal.

暗号化通信装置は、この動作によって発側端末のアドレスを所定の範囲まで絞り込めた場合には、IPSECにより追加されるIPSECヘッダ長を考慮して経路MTU値を計算し所定の発側端末へ送信していた。また、発側端末が複数考えられる場合は、その可能性の有る全ての発側端末(所定のアドレス範囲)にICMPエラー通知メッセージを送信していた。   When the address of the originating terminal is narrowed down to a predetermined range by this operation, the encrypted communication device calculates the path MTU value in consideration of the IPSEC header length added by IPSEC, and sends it to the predetermined originating terminal. I was sending. Further, when a plurality of calling side terminals can be considered, an ICMP error notification message is transmitted to all the calling side terminals (predetermined address ranges) that have the possibility.

一方、発側端末のアドレス範囲を特定できない場合、暗号化通信装置、ICMPエラー通知メッセージの情報(例えば経路MTU値)を自身の保持するSADBに保存しておく。その後、暗号化通信装置に後続の発側端末からのIPメッセージが到着し、そのIPメッセージ長が、該当するSAの経路MTU値より大きい場合には、その発側端末へICMPエラー通知メッセージを送信することでICMP応答を返す方法も提案されている(非特許文献1)。   On the other hand, if the address range of the calling terminal cannot be specified, the information (for example, the route MTU value) of the encrypted communication device and ICMP error notification message is stored in the SADB held by itself. Thereafter, when an IP message from the subsequent calling terminal arrives at the encrypted communication apparatus and the IP message length is larger than the route MTU value of the corresponding SA, an ICMP error notification message is transmitted to the calling terminal. A method of returning an ICMP response by doing so is also proposed (Non-Patent Document 1).

また、トンネルモードESP暗号化を行うIPSEC環境では、ICMPエラー通知メッセージの正当性を確認するため、暗号化通信装置は対向する暗号化通信装置にMTU確認要求メッセージを送信し、対向する暗号化通信装置では確認要求メッセージが経路上で実際にフラグメントされたことを確認するMTU確認応答メッセージを応答する方法がある。この方法では、暗号化通信装置は、使用しているSA上で実際にフラグメントが発生することを確認した上で、発側端末へICMPエラー通知メッセージを送信しICMPエラー通知メッセージに関するセキュリティ的防御を実現している(特許文献1)。   In an IPSEC environment where tunnel mode ESP encryption is performed, in order to confirm the validity of the ICMP error notification message, the encrypted communication device transmits an MTU confirmation request message to the opposite encrypted communication device, and the opposite encrypted communication. In the apparatus, there is a method of responding with an MTU confirmation response message for confirming that the confirmation request message is actually fragmented on the route. In this method, after confirming that a fragment is actually generated on the SA being used, the encrypted communication device transmits an ICMP error notification message to the originating terminal, and performs security protection regarding the ICMP error notification message. (Patent Document 1).

また、IPメッセージを別のIPメッセージでカプセル化するようなIP−in−IP環境でもトンネルモードESP暗号化を行うIPSEC環境と同様な問題は発生する。IP−in−IP環境でのIP−in−IPカプセル化装置は、IP−in−IPトンネル経路上のルータからICMPエラー(MTU超過など)通知メッセージを受信すると、このICMPエラー通知メッセージに含まれる元のIP−in−IPメッセージを取り出し、このIP−in−IPメッセージのフローID(通信路用番号:IPSEC環境に於けるSPI値)とMTU値とを対応付けて記憶しておき、ICMPエラー通知メッセージ自体は廃棄している。   Further, even in an IP-in-IP environment in which an IP message is encapsulated with another IP message, a problem similar to the IPSEC environment in which tunnel mode ESP encryption is performed occurs. When the IP-in-IP encapsulating apparatus in the IP-in-IP environment receives an ICMP error (MTU exceeded, etc.) notification message from a router on the IP-in-IP tunnel path, it is included in the ICMP error notification message. The original IP-in-IP message is extracted, and the flow ID (communication channel number: SPI value in the IPSEC environment) and the MTU value of this IP-in-IP message are stored in association with each other, and an ICMP error occurs. The notification message itself is discarded.

その後、IP−in−IPカプセル化装置は、発側装置から該当するフローIDのIP−in−IP通信路を使用する後続のIPメッセージを受信すると、IPメッセージがMTU超過などにより送信できなければ、IPメッセージの送信端末に向けてICMPエラー(MTU超過)メッセージを送信している(非特許文献2,3)。   After that, when the IP-in-IP encapsulation device receives a subsequent IP message using the IP-in-IP communication path of the corresponding flow ID from the calling side device, the IP message cannot be transmitted due to an MTU excess or the like. An ICMP error (MTU excess) message is transmitted to the IP message transmission terminal (Non-patent Documents 2 and 3).

馬場達也著 「マスタリングIPSEC」オライリー・ジャパン出版、2004年2月13日、P105〜P106Tatsuya Baba "Mastering IPSEC" O'Reilly Japan Publishing, February 13, 2004, P105-P106 マルチメディア通信研究会編「インターネットRFC辞典」、アスキー出版、1998年11月1日Multimedia Communication Study Group “Internet RFC Dictionary”, ASCII Publishing, November 1, 1998 R.Woodburn,D.Mills、RFC1241、「A Scheme for an Internet Encapsulation Protocol:Version 1」、IETF、July 1991、Appendix B.2.R. Woodburn, D. Mills, RFC1241, `` A Scheme for an Internet Encapsulation Protocol: Version 1 '', IETF, July 1991, Appendix B.2. 特開2005−159688号公報 図10Japanese Patent Laid-Open No. 2005-159688 FIG.

このように、発着ユーザ端末が送受信するIPメッセージを、中継路上で同じIPを使用した別のプロトコルでカプセル化し転送するトンネリング通信方式として、例えばIP−in−IPカプセル化、トンネルモードIPSEC_ESPカプセル化、GREカプセル化、モバイルIPカプセル化などがあげられる。   As described above, for example, IP-in-IP encapsulation, tunnel mode IPSEC_ESP encapsulation, or the like as a tunneling communication method for encapsulating and transferring an IP message transmitted and received by an incoming and outgoing user terminal with another protocol using the same IP on a relay path, Examples include GRE encapsulation and mobile IP encapsulation.

しかしながら、上記1つめ〜4つめの従来技術によるトンネリング通信方式ではトンネル中継路上で発生したICMPエラー通知メッセージを、発側端末に通知するのが難しいと言う問題点があった。   However, the first to fourth prior art tunneling communication systems have a problem that it is difficult to notify the originating terminal of the ICMP error notification message generated on the tunnel relay path.

例えば、トンネル経路上で送受信されるトンネリングメッセージ(ICMPエラー通知メッセージ)の発着アドレスは発着トンネル装置(暗号化通信装置)のアドレスとなり、発着端末のアドレスは内側メッセージに隠蔽されてしまう。このため、発側トンネル装置は、ICMPエラー通知メッセージから発着端末のアドレスを直接解析できない場合が生じるといった問題があった。   For example, the arrival / departure address of a tunneling message (ICMP error notification message) transmitted / received on the tunnel route becomes the address of the incoming / outgoing tunnel device (encrypted communication device), and the address of the incoming / outgoing terminal is hidden in the inner message. For this reason, there is a problem in that the originating side tunnel device may not be able to directly analyze the address of the calling terminal from the ICMP error notification message.

また、トンネル経路に収容する発着端末アドレスとしてアドレスの範囲を指定し、複数の発着端末アドレスからのメッセージをまとめてこのトンネルに収容して転送する方法がある。このような収容アドレス範囲が指定されたICMPエラー通知メッセージを暗号化通信装置が受信した場合、このICMPエラー通知メッセージを単に発側端末に戻すだけではエラー通知の効率が悪くなる。すなわち、実際にこのトンネルを使用している発側端末数が、トンネルの発側アドレス範囲の端末数に比べて少ない場合、多くの不要なICMPエラー通知メッセージが端末側に通知されることとなる。これにより、帯域を無駄に消費してしまうという問題がある。   In addition, there is a method in which a range of addresses is designated as a destination terminal address accommodated in a tunnel route, and messages from a plurality of destination terminal addresses are collectively accommodated in this tunnel and transferred. When the encrypted communication apparatus receives an ICMP error notification message in which such an accommodated address range is specified, simply returning this ICMP error notification message to the originating terminal results in poor error notification efficiency. That is, when the number of calling terminals that actually use this tunnel is smaller than the number of terminals in the tunnel calling address range, many unnecessary ICMP error notification messages are notified to the terminal side. . As a result, there is a problem that the bandwidth is wasted.

一方、ICMPエラー通知メッセージの要因となったメッセージを送信した発側端末にだけ、ICMPエラー通知メッセージを送信すると、この発側端末と同じトンネルを使用する他の発側端末にはICMPエラー通知メッセージが送信されない。このため、暗号化通信装置は、同じトンネルを使用する複数の発側端末の夫々に対して、ICMPエラー通知メッセージに関する対応を行なわなければならない。これにより、発側端末へのICMPエラー通知メッセージの遅延、帯域の無駄な消費、発側トンネル装置(暗号化通信装置)の処理負荷の増大といった問題が生じていた。   On the other hand, when an ICMP error notification message is transmitted only to the originating terminal that has transmitted the message that caused the ICMP error notification message, the ICMP error notification message is sent to other originating terminals that use the same tunnel as the originating terminal. Is not sent. For this reason, the encrypted communication apparatus must deal with the ICMP error notification message for each of a plurality of originating terminals that use the same tunnel. As a result, problems such as a delay of an ICMP error notification message to the calling side terminal, wasteful bandwidth consumption, and an increase in processing load on the calling side tunnel device (encrypted communication device) have occurred.

本発明は、上記に鑑みてなされたものであって、トンネル通信路上から通信制御用メッセージを受信した際に、帯域の無駄な消費を抑制しながら効率良くトンネル通信路外の通信端末に通信制御用メッセージを転送する暗号化通信装置を得ることを目的とする。   The present invention has been made in view of the above, and when a communication control message is received from a tunnel communication path, communication control is efficiently performed to a communication terminal outside the tunnel communication path while suppressing wasteful consumption of bandwidth. An object of the present invention is to obtain an encrypted communication device that transfers a message for use.

上述した課題を解決し、目的を達成するために、本発明は、暗号化通信路外の複数の通信端末からユーザメッセージを受信すると、前記各ユーザメッセージを暗号化およびカプセル化して暗号化通信路上の対向装置に転送し、前記暗号化通信路上で前記ユーザメッセージを前記対向装置へ中継する中継装置から前記ユーザメッセージに基づいて送信される暗号化およびカプセル化された前記ユーザメッセージの少なくとも一部を含む通信制御用メッセージを受信すると、前記通信制御用メッセージを復号およびデカプセル化して前記暗号化通信路外の所定の送信先に転送する暗号化通信装置において、前記各通信端末からの各ユーザメッセージを前記対向装置に転送する際に、前記各ユーザメッセージを転送する各暗号化通信路に関する暗号化通信路情報と前記各ユーザメッセージの送信元である各通信端末のアドレスとの対応付けに関するアドレス情報を記憶する記憶部と、暗号化された前記ユーザメッセージに、当該ユーザメッセージに対応する暗号化通信路情報を暗号化せずに付加して前記対向装置に転送する送信部と、前記送信部から送信されたユーザメッセージに暗号化せずに付加された暗号化通信路情報を含む前記通信制御用メッセージを前記中継装置から受信する受信部と、前記受信部が受信した通信制御用メッセージを用いて当該通信制御用メッセージの送信先を判断する送信先判断部と、前記受信部が受信した通信制御用メッセージ内から前記暗号化通信路情報を抽出し、当該抽出した暗号化通信路情報および前記記憶部が記憶するアドレス情報に基づいて、前記送信先判断部が判断した送信先に対応する前記通信制御用メッセージの送信先アドレスを決定する送信アドレス決定部と、を備えることを特徴とする。   In order to solve the above-described problems and achieve the object, the present invention, when receiving a user message from a plurality of communication terminals outside the encrypted communication path, encrypts and encapsulates each user message, and transmits it on the encrypted communication path. At least a part of the encrypted and encapsulated user message transmitted based on the user message from a relay device that forwards the user message to the opposite device on the encrypted communication path. When the communication control message is received, the encrypted communication device decrypts and decapsulates the communication control message and transfers it to a predetermined destination outside the encrypted communication path. Encryption related to each encrypted communication path for transferring each user message when transferring to the opposite device A storage unit that stores address information relating to correspondence between communication path information and the address of each communication terminal that is a transmission source of each user message, and encrypted communication corresponding to the user message in the encrypted user message A transmission unit that adds path information without encryption and forwards it to the opposite device; and for communication control that includes encrypted communication path information added without encryption to a user message transmitted from the transmission unit A reception unit that receives a message from the relay device, a transmission destination determination unit that determines a transmission destination of the communication control message using the communication control message received by the reception unit, and a communication control that is received by the reception unit The encrypted communication path information is extracted from the message for use, and based on the extracted encrypted communication path information and the address information stored in the storage unit, Characterized in that it comprises a transmission address determining unit for determining a destination address of said communication control message corresponding to the destination the destination determination unit has determined.

この発明によれば、トンネル通信路にユーザメッセージを転送する際に、ユーザメッセージの暗号化通信路に関する情報と、ユーザメッセージの送信元アドレスを記憶しておくので、トンネル通信路内で送信された通信制御用メッセージが暗号化されている場合であっても、通信制御用メッセージを受信した際に、帯域の無駄な消費を抑制しながら効率良くトンネル通信路外の通信端末に通信制御用メッセージを転送することが可能になるという効果を奏する。   According to the present invention, when a user message is transferred to the tunnel communication path, information related to the encrypted communication path of the user message and the source address of the user message are stored, so that the user message is transmitted within the tunnel communication path. Even when the communication control message is encrypted, when the communication control message is received, the communication control message is efficiently transmitted to the communication terminal outside the tunnel communication path while suppressing wasteful bandwidth consumption. There is an effect that the data can be transferred.

以下に、本発明にかかる暗号化通信装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。   Embodiments of an encrypted communication apparatus according to the present invention will be described below in detail with reference to the drawings. Note that the present invention is not limited to the embodiments.

実施の形態1.
図1は、本発明に係る暗号化通信装置を含む通信ネットワークの構成を示す図である。通信システム100は、ユーザ側の通信ネットワークであるLAN(Local Area Network)1〜3、LAN1〜3を接続する通信ネットワークであるWAN(Wide Area Network)5、暗号化通信装置10A,10Bを含んで構成されている。
Embodiment 1 FIG.
FIG. 1 is a diagram showing a configuration of a communication network including an encrypted communication device according to the present invention. The communication system 100 includes LANs (Local Area Networks) 1 to 3 which are communication networks on the user side, WAN (Wide Area Network) 5 which is a communication network connecting the LANs 1 to 3 and encrypted communication devices 10A and 10B. It is configured.

LAN1は、ユーザ側の通信端末である通信端末X1〜Xn(nは自然数)を含んで構成されている。また、LAN2は通信端末Y1〜Ym(mは自然数)を含んで構成され、LAN3は通信端末Z1〜Zl(lは自然数)を含んで構成されている。なお、ここでは説明の便宜上、データ送信側の通信端末を発側端末といい、データ受信側の通信端末を着側端末という場合がある。   The LAN 1 includes communication terminals X1 to Xn (n is a natural number) that are communication terminals on the user side. The LAN 2 includes communication terminals Y1 to Ym (m is a natural number), and the LAN 3 includes communication terminals Z1 to Zl (l is a natural number). Here, for convenience of explanation, the data transmission side communication terminal may be referred to as an origination terminal, and the data reception side communication terminal may be referred to as an arrival side terminal.

暗号化通信装置(カプセル型暗号化通信装置)10Aは、LAN1とWAN5を接続し、暗号化通信装置10BはLAN2,3とWAN5を接続している。暗号化通信装置10A,10Bは、発着端末(発側端末、着側端末)が送受信するIPメッセージを、中継路上で同じIPを使用した別のプロトコルでカプセル化し転送する機能(トンネリング通信機能)を有している。   The encrypted communication device (capsule-type encrypted communication device) 10A connects LAN1 and WAN5, and the encrypted communication device 10B connects LAN2, 3 and WAN5. The encrypted communication devices 10A and 10B have a function (tunneling communication function) for encapsulating and transferring an IP message transmitted / received by a calling terminal (calling terminal, called terminal) using another protocol using the same IP on a relay path. Have.

暗号化通信装置10A,10Bは、トンネリング通信として、例えば、IP−in−IPカプセル化、トンネルモードIPSEC_ESPカプセル化、GRE(Generic Routing Encapsulation)カプセル化、モバイルIPカプセル化などを行う。ここでの暗号化通信装置10Aは、LAN1側から送信されたIPメッセージ(ユーザメッセージ)や通信制御用メッセージ(後述のICMPエラー通知メッセージ73)を、暗号化するとともにカプセル化してWAN5内に転送する。また、暗号化通信装置10Bは、LAN2,3から送信されたIPメッセージや通信制御メッセージを、暗号化するとともにカプセル化してWAN5内に転送する。   The encrypted communication devices 10A and 10B perform, for example, IP-in-IP encapsulation, tunnel mode IPSEC_ESP encapsulation, GRE (Generic Routing Encapsulation) encapsulation, mobile IP encapsulation, and the like as tunneling communication. The encrypted communication device 10A here encrypts and encapsulates the IP message (user message) and the communication control message (ICMP error notification message 73 described later) transmitted from the LAN 1 side and transfers them to the WAN 5 . Further, the encrypted communication device 10B encrypts and encapsulates the IP message and communication control message transmitted from the LANs 2 and 3 and transfers them to the WAN 5.

さらに、ここでの暗号化通信装置10Aは、他のルータ(中継装置)R1〜R3を介して受信したIPメッセージをデカプセル化するとともに、復号してLAN1側に転送する。また、暗号化通信装置10Bは、他のルータR1〜R3を介して受信したIPメッセージをデカプセル化するとともに、復号してLAN2,3の何れかに転送する。   Further, the encrypted communication device 10A here decapsulates the IP message received via the other routers (relay devices) R1 to R3, decrypts it, and transfers it to the LAN1 side. Further, the encrypted communication device 10B decapsulates the IP message received via the other routers R1 to R3, decrypts it, and transfers it to one of the LANs 2 and 3.

WAN5は、データの中継装置であるルータR1〜R3を含んで構成されている。ルータR1〜R3は、暗号化通信装置10Aから送信されたIPメッセージを暗号化通信装置10Bに転送するとともに、暗号化通信装置10Bから送信されたIPメッセージを暗号化通信装置10Aに転送する。   The WAN 5 includes routers R1 to R3 that are data relay apparatuses. The routers R1 to R3 transfer the IP message transmitted from the encrypted communication device 10A to the encrypted communication device 10B, and transfer the IP message transmitted from the encrypted communication device 10B to the encrypted communication device 10A.

例えば、発着端末は、IETF(Internet Engineering Task Force)のRFC(Request For Comments)に記述されるIPv(Internet Protocol Version)4あるいはIPv6メッセージを、ユーザメッセージ(後述のIPメッセージ71等)として用いる。   For example, the arrival / departure terminal uses an IPv4 (Internet Protocol Version) 4 or IPv6 message described in RFC (Request For Comments) of IETF (Internet Engineering Task Force) as a user message (IP message 71 described later).

また、暗号化通信装置10A,10Bは、例えばIETFのRFC2401−RFC2412等に記述されるIPSEC処理を実行し、暗号用通信路としてIPSEC_SAを使用する。また、暗号化通信装置10A,10Bは、例えば暗号用通信メッセージとしてRFC2406に記述されるようなIPSECのESP暗号化メッセージを使用してトンネルモードでIPSEC暗号化する手段を備えている。   The encrypted communication devices 10A and 10B execute IPSEC processing described in, for example, IETF RFC2401-RFC2412 and use IPSEC_SA as an encryption communication path. The encrypted communication devices 10A and 10B include means for performing IPSEC encryption in the tunnel mode using, for example, an IPSEC ESP encrypted message described in RFC2406 as an encryption communication message.

また、ルータR1〜R3(暗号化に寄与しない通常の通信装置)が通知する通信制御用メッセージは、例えばRFCに記述されるようなICMPメッセージ(ICMP_Destination_UnreachableメッセージやPacket_Too_BigメッセージなどのMTU超過などの通知メッセージである。   Further, the communication control message notified by the routers R1 to R3 (ordinary communication apparatuses that do not contribute to encryption) is, for example, an ICMP message (ICMP_Destination_Unreachable message or an MTU excess notification message such as a Packet_Too_Big message) described in RFC. It is.

ここで、通信システム100内で送受信されるデータの構成について説明する。図2は、通信ネットワーク内で送受信されるデータの構成を説明するための図である。ここでは、通信端末X1(発側端末)から通信端末Y1(着側端末)へデータ送信する場合であって、ルータR1がMTU超過を検出した場合に通信システム100内で送受信されるデータの構成について説明する。   Here, a configuration of data transmitted and received in the communication system 100 will be described. FIG. 2 is a diagram for explaining a configuration of data transmitted and received in the communication network. Here, a configuration of data transmitted / received in the communication system 100 when data is transmitted from the communication terminal X1 (originating terminal) to the communication terminal Y1 (destination terminal) and the router R1 detects an MTU excess. Will be described.

通信端末X1から暗号化通信装置10Aへ送信されるデータD1(IPメッセージ)は、宛先アドレスである通信端末Y1のアドレス、送信側アドレスである通信端末X1のアドレス、データ部等を含んで構成されている。   Data D1 (IP message) transmitted from the communication terminal X1 to the encrypted communication device 10A includes the address of the communication terminal Y1, which is a destination address, the address of the communication terminal X1, which is a transmission side address, a data portion, and the like. ing.

暗号化通信装置10Aは、通信端末X1からデータD1を受信すると、このデータD1にESPカプセル化処理を行ってデータD2を作成する。そして、暗号化通信装置10Aは、トンネル通信路130を使用してデータD2(IPSECメッセージ)をWAN5内に転送する。   When the encrypted communication device 10A receives the data D1 from the communication terminal X1, the encrypted communication device 10A performs ESP encapsulation processing on the data D1 to create data D2. Then, the encrypted communication device 10A transfers the data D2 (IPSEC message) into the WAN 5 using the tunnel communication path 130.

データD2は、トンネル通信路130内での受信側アドレスとして暗号化通信装置10Bのアドレス(SG2)、送信側アドレスとして暗号化通信装置10Aのアドレス(SG1)、トンネリング用のカプセル化メッセージ(ESPヘッダ、データD1)等を含んで構成されている。   The data D2 includes an address (SG2) of the encrypted communication device 10B as a receiving side address in the tunnel communication path 130, an address (SG1) of the encrypted communication device 10A as a transmitting side address, and an encapsulated message for tunneling (ESP header). , Data D1) and the like.

ルータR1がMTU超過を検出した場合、ルータR1から暗号化通信装置10AにICMPエラー通知(データD3)が送信される。このデータD3(後述するICMPエラーメッセージ73)は、トンネル通信路130内での受信側アドレスとして暗号化通信装置10Aのアドレス(SG1)、送信側アドレスとしてルータR1のアドレス(R1)、ICMPヘッダ(MTU超過)を有しており、これらの部分がICMPエラー通知を行う際のトンネル通信に利用される。   When the router R1 detects an MTU excess, an ICMP error notification (data D3) is transmitted from the router R1 to the encrypted communication device 10A. This data D3 (ICMP error message 73 described later) includes the address (SG1) of the encrypted communication device 10A as the receiving side address in the tunnel communication path 130, the address (R1) of the router R1 as the transmitting side address, and the ICMP header ( These portions are used for tunnel communication when ICMP error notification is performed.

また、データD3は、ICMPエラーの原因となった元のメッセージ(データD2)(トンネル送信側アドレス(SG1)、トンネル受信側アドレス(SG2)、トンネル通信用のIPヘッダ)を有している。これらの部分は、暗号化通信装置10AがIPSECメッセージを送信する際のトンネル通信に利用された情報である。   Further, the data D3 includes the original message (data D2) (tunnel transmission side address (SG1), tunnel reception side address (SG2), IP header for tunnel communication) that caused the ICMP error. These parts are information used for tunnel communication when the encrypted communication device 10A transmits an IPSEC message.

また、データD3は、ESPヘッダ、LAN1内で送受信されたデータに関する情報(着側端末のアドレス(Y1)、発側端末のアドレス(X1))、IPヘッダを有しており、トンネル通信路130内でのデータD3においては、これらの部分がトンネリング用のカプセル化メッセージとして暗号化され隠蔽されている。このため、発着端末のアドレスは内側メッセージに隠蔽されている。   The data D3 includes an ESP header, information on data transmitted / received in the LAN 1 (address (Y1) of the called terminal, address (X1) of the calling terminal), an IP header, and the tunnel communication path 130. In the data D3, these parts are encrypted and concealed as a tunneling encapsulated message. For this reason, the address of the terminal is hidden in the inner message.

つぎに、暗号化通信装置10A,10Bの構成について説明する。なお、暗号化通信装置10A,10Bは同様の構成を有するので、ここでは暗号化通信装置10Aを例にとって説明する。また、以下では通信端末X1が発側端末であり、通信端末Y1が着側端末である場合を例にとって説明する。   Next, the configuration of the encrypted communication devices 10A and 10B will be described. Since the encrypted communication devices 10A and 10B have the same configuration, the encrypted communication device 10A will be described as an example here. In the following, a case where the communication terminal X1 is a caller terminal and the communication terminal Y1 is a callee terminal will be described as an example.

図3は、本発明に係る暗号化通信装置の実施の形態1の構成を示すブロック図である。暗号化通信装置10Aは、発側端末から受信したIPメッセージ71に対応するシーケンス番号などと発側端末アドレスを記憶しておき、発側端末側にICMPエラーを通知する際に発側端末アドレス等を再生する通信装置である。   FIG. 3 is a block diagram showing the configuration of the first embodiment of the encrypted communication apparatus according to the present invention. The encryption communication device 10A stores a sequence number corresponding to the IP message 71 received from the calling terminal and the calling terminal address, and the calling terminal address and the like when notifying the ICMP error to the calling terminal. Is a communication device that reproduces.

暗号化通信装置10Aは、端末側I/F(インタフェース)13、トンネル側I/F(受信部)14、出力側SADB11、入力側SADB12、カプセル化処理部20、デカプセル化処理部30、ICMP受信処理部40、ICMP中継再生処理部50、ICMP再生データ管理部60を備えている。   The encrypted communication device 10A includes a terminal-side I / F (interface) 13, a tunnel-side I / F (receiving unit) 14, an output-side SADB 11, an input-side SADB 12, an encapsulation processing unit 20, a decapsulation processing unit 30, and an ICMP reception. A processing unit 40, an ICMP relay reproduction processing unit 50, and an ICMP reproduction data management unit 60 are provided.

端末側I/F13は、LAN1側の通信インタフェースであり、トンネル側I/F14は、WAN5側(トンネル側)の通信インタフェースである。端末側I/F13は、LAN1〜3側の発側端末(通信端末X1など)からIPメッセージ71を受信するとともに、発側端末へICMPエラー通知メッセージ74やIPメッセージ76を送信する。   The terminal side I / F 13 is a communication interface on the LAN 1 side, and the tunnel side I / F 14 is a communication interface on the WAN 5 side (tunnel side). The terminal side I / F 13 receives the IP message 71 from the originating side terminal (communication terminal X1 or the like) on the LAN 1 to 3 side, and transmits an ICMP error notification message 74 or an IP message 76 to the originating side terminal.

IPメッセージ71,76は、発側端末のアドレス、着側端末のアドレス、IPメッセージ部などを含んで構成されている。ICMPエラー通知メッセージ74は、暗号化通信装置10Aのアドレス、発側端末のアドレス、エラーメッセージなどを含んで構成されている。   The IP messages 71 and 76 are configured to include the address of the calling terminal, the address of the called terminal, the IP message part, and the like. The ICMP error notification message 74 includes the address of the encrypted communication device 10A, the address of the calling terminal, an error message, and the like.

トンネル側I/F14は、トンネル側の対向する暗号化通信装置10BにIPSEC_ESPカプセル化メッセージ(以下、IPSECメッセージ72という)を送信し、トンネル側のルータR1〜R3からICMPエラー通知メッセージ73やIPメッセージ75を受信する。   The tunnel side I / F 14 transmits an IPSEC_ESP encapsulation message (hereinafter referred to as an IPSEC message 72) to the opposite encrypted communication device 10B on the tunnel side, and the ICMP error notification message 73 and the IP message are transmitted from the routers R1 to R3 on the tunnel side. 75 is received.

IPSECメッセージ72,75は、暗号化通信装置10Aのアドレス、暗号化通信装置10Bのアドレス、暗号化されたIPメッセージ部などを含んで構成されている。ICMPエラー通知メッセージ73は、エラー通知を行うルータR1などのアドレス、暗号化通信装置10Aのアドレス、エラーメッセージなどを含んで構成されている。   The IPSEC messages 72 and 75 include an address of the encrypted communication device 10A, an address of the encrypted communication device 10B, an encrypted IP message part, and the like. The ICMP error notification message 73 includes an address such as the router R1 that performs error notification, the address of the encrypted communication device 10A, an error message, and the like.

出力側SADB11は、IPメッセージ71が使用するSAを決定するための情報(後述する出力側SA情報101)を記憶する。入力側SADB12は、IPSECメッセージ75内の暗号化されたIPメッセージ部を復号するためのSA毎の情報(後述する入力側SA情報)を記憶する。   The output side SADB 11 stores information (output side SA information 101 described later) for determining the SA used by the IP message 71. The input side SADB 12 stores information for each SA (input side SA information to be described later) for decrypting the encrypted IP message part in the IPSEC message 75.

カプセル化処理部20は、安全な通信路(SA)を確立するための処理、IPSEC_ESP暗号化処理、カプセル化処理等を行なう。カプセル化処理部20は、SA検索部21、SA使用許諾判定部22、暗号化処理部23、ESPヘッダ処理部(送信部)24、認証値計算部25、IPヘッダ処理部26を備えている。   The encapsulation processing unit 20 performs processing for establishing a secure communication path (SA), IPSEC_ESP encryption processing, encapsulation processing, and the like. The encapsulation processing unit 20 includes an SA search unit 21, an SA usage permission determination unit 22, an encryption processing unit 23, an ESP header processing unit (transmission unit) 24, an authentication value calculation unit 25, and an IP header processing unit 26. .

SA検索部21は、安全な通信路を確立するため、IPメッセージ71内の発着アドレス、プロトコル種別、発着ポート番号などに基づいて、出力側SADB11を検索し、IPメッセージ71が使用するSA(通信路識別情報)を決定する。   The SA search unit 21 searches the output side SADB 11 based on the outgoing / incoming address, protocol type, outgoing / incoming port number, etc. in the IP message 71 in order to establish a safe communication path, and the SA (communication) used by the IP message 71. (Road identification information) is determined.

SA使用許諾判定部22は、SA検索部21によって決定されたSAをIPメッセージ71が使用できるか否かを判定する。SA使用許諾判定部22は、IPメッセージ71がSAを使用可能である場合、使用するSPI値(暗号化通信路情報)をキーとして元のIPメッセージ71の発着端末アドレスをICMP再生データ管理部60(後述のSA使用端末DB61(後述の使用SA情報102))に登録する。   The SA use permission determination unit 22 determines whether the IP message 71 can use the SA determined by the SA search unit 21. When the IP message 71 can use the SA, the SA usage permission determination unit 22 uses the SPI value (encrypted communication path information) to be used as a key to set the originating / arriving terminal address of the original IP message 71 as an ICMP reproduction data management unit 60. (Registered SA use terminal DB 61 (described later, used SA information 102)).

暗号化処理部23は、IPメッセージ71のIPSEC_ESP暗号化処理を行なうため、IPメッセージ71全体を暗号化する。暗号化処理部23は、出力側SADB11がSA毎に持つ情報(出力側SA情報101)を用いて暗号化を行う。   The encryption processing unit 23 encrypts the entire IP message 71 in order to perform IPSEC_ESP encryption processing of the IP message 71. The encryption processing unit 23 performs encryption using information (output-side SA information 101) that the output-side SADB 11 has for each SA.

ESPヘッダ処理部24は、暗号化したIPメッセージ71の前にESPヘッダを付与する。ESPヘッダ処理部24は、ESPヘッダに、SA毎に異なるSPI値と、メッセージ毎にカウントアップされるシーケンス番号(メッセージ識別情報)を付与する。ESPヘッダ処理部24は、ICMP再生データ管理部60(後述のシーケンス使用端末DB62(後述のシーケンス番号情報103)に、SPI値とシーケンス番号をキーとして元のIPメッセージ71の発着端末アドレスを登録する。   The ESP header processing unit 24 adds an ESP header before the encrypted IP message 71. The ESP header processing unit 24 assigns, to the ESP header, a different SPI value for each SA and a sequence number (message identification information) that is counted up for each message. The ESP header processing unit 24 registers the arrival / departure terminal address of the original IP message 71 in the ICMP reproduction data management unit 60 (sequence use terminal DB 62 (described later, sequence number information 103)) using the SPI value and the sequence number as keys. .

認証値計算部25は、ESPヘッダと暗号化したIPメッセージ71に対して、ESP認証値を算出し末尾に付与する。IPヘッダ処理部26は、認証値計算部25が生成したESPカプセル化メッセージがSAのMTUを超えている場合、フラグメント等の処理を行ってIPヘッダを付与する。IPヘッダ処理部26が作成したデータは、IPSEC_ESPカプセル化メッセージ(IPSECメッセージ72)として、トンネル側I/F14から対向する暗号化通信装置10Bへ送信される。   The authentication value calculation unit 25 calculates an ESP authentication value for the ESP header and the encrypted IP message 71 and assigns it to the end. When the ESP encapsulated message generated by the authentication value calculation unit 25 exceeds the MTU of the SA, the IP header processing unit 26 performs processing such as a fragment to add an IP header. The data created by the IP header processing unit 26 is transmitted as an IPSEC_ESP encapsulation message (IPSEC message 72) from the tunnel side I / F 14 to the opposite encrypted communication device 10B.

ICMP再生データ管理部60は、SA使用端末DB61、シーケンス使用端末DB62を有している。SA使用端末DB61は、SPI値に対応する発側端末のアドレス、着側端末のアドレスに関する情報(使用SA情報102)を記憶する。シーケンス使用端末DB62は、SPI値とシーケンス番号に対応する発側端末のアドレス、着側端末のアドレスに関する情報(シーケンス番号情報103)を記憶する。   The ICMP reproduction data management unit 60 has an SA using terminal DB 61 and a sequence using terminal DB 62. The SA using terminal DB 61 stores information on the address of the calling terminal and the address of the called terminal corresponding to the SPI value (use SA information 102). The sequence use terminal DB 62 stores information (sequence number information 103) regarding the address of the calling terminal and the address of the called terminal corresponding to the SPI value and the sequence number.

デカプセル化処理部30は、IPSEC_ESP復号処理、デカプセル化処理等を行なう。デカプセル化処理部30は、使用SA検索部31、シーケンス検証部32、認証値確認処理部33、リプレイ防御処理部34、復号処理部35、出力前SADB監査部36を有している。   The decapsulation processing unit 30 performs IPSEC_ESP decoding processing, decapsulation processing, and the like. The decapsulation processing unit 30 includes a use SA search unit 31, a sequence verification unit 32, an authentication value confirmation processing unit 33, a replay protection processing unit 34, a decryption processing unit 35, and a pre-output SADB audit unit 36.

使用SA検索部31は、受信したIPSECメッセージ75内の暗号化通信装置10BのアドレスとSPI値に基づいて、使用するSAを決定する。シーケンス検証部32は、受信したIPSECメッセージ75内のシーケンス番号を検査してリプレイ攻撃を監査し、IPSECメッセージ75の受け入れの可否を決定する。   The used SA search unit 31 determines the SA to be used based on the address and SPI value of the encrypted communication device 10B in the received IPSEC message 75. The sequence verification unit 32 checks the sequence number in the received IPSEC message 75 to audit the replay attack, and determines whether or not the IPSEC message 75 can be accepted.

認証値確認処理部33は、受信したIPSECメッセージ75のESPヘッダと暗号化されたIPメッセージ部に対してESP認証値を算出する。認証値確認処理部33は、算出したESP認証値と、IPSECメッセージ75の末尾に付加されているESP認証値と比較し、IPSECメッセージ75の改ざんの有無を検出する。   The authentication value confirmation processing unit 33 calculates an ESP authentication value for the ESP header of the received IPSEC message 75 and the encrypted IP message unit. The authentication value confirmation processing unit 33 compares the calculated ESP authentication value with the ESP authentication value added to the end of the IPSEC message 75, and detects whether the IPSEC message 75 has been tampered with.

リプレイ防御処理部34は、受信したIPSECメッセージ75内のシーケンス番号に基づいて、内部で保持するリプレイ防御ウィンドウの操作を行い、リプレイ防御ウィンドウを更新する。   Based on the sequence number in the received IPSEC message 75, the replay protection processing unit 34 operates a replay protection window held therein, and updates the replay protection window.

復号処理部35は、受信したIPSECメッセージ75内の暗号化されたIPメッセージ部を復号する。復号処理部35は、入力側SADB12がSA毎に持つ情報(入力側SA情報)を用いてIPメッセージ部の復号を行なう。   The decryption processing unit 35 decrypts the encrypted IP message part in the received IPSEC message 75. The decryption processing unit 35 decrypts the IP message unit using information (input side SA information) that the input side SADB 12 has for each SA.

出力前SADB監査部36は、復号して得たIPメッセージ76が図示しない入力側SPD(Security Policy Database)の発着アドレス、プロトコル種別、発着ポートなどに基づく条件に合致しているか否かを監査する。出力前SADB監査部36に監査されて、所定の条件に合致したIPメッセージ76は、端末側I/F13からLAN1内に送信される。   The pre-output SADB audit unit 36 audits whether the decrypted IP message 76 meets a condition based on an incoming / outgoing address, protocol type, outgoing / incoming port, etc. of an input side SPD (Security Policy Database) not shown. . An IP message 76 audited by the pre-output SADB audit unit 36 and meeting a predetermined condition is transmitted from the terminal side I / F 13 into the LAN 1.

ICMP受信処理部40は、ICMP種別判定部41、ICMP内部パケット抽出部42、ICMP種別対応処理部43を有している。ICMP種別判定部41は、ICMP73の種別を判定する。   The ICMP reception processing unit 40 includes an ICMP type determination unit 41, an ICMP internal packet extraction unit 42, and an ICMP type correspondence processing unit 43. The ICMP type determination unit 41 determines the type of the ICMP 73.

ICMP内部パケット抽出部42は、ICMPエラー通知メッセージ73のデータ部が内部メッセージを含む場合に、この内部メッセージを抽出する。ICMP内部パケット抽出部42は、必要に応じて内部メッセージ自体を解析し、発着アドレス(暗号化通信装置10A,10Bのアドレス)、プロトコル種別、発着ポート番号など、一般的なIPメッセージから取得可能な情報を抽出する。ICMP内部パケット抽出部42は、内部メッセージがIPSEC_ESPカプセル化メッセージである場合、さらに内部メッセージの内部まで解析し、ESPヘッダ内のSPI値、シーケンス番号などを抽出する。   When the data part of the ICMP error notification message 73 includes an internal message, the ICMP internal packet extraction unit 42 extracts the internal message. The ICMP internal packet extraction unit 42 analyzes the internal message itself as necessary, and can obtain it from a general IP message such as a destination address (address of the encrypted communication devices 10A and 10B), a protocol type, and a destination port number. Extract information. When the internal message is an IPSEC_ESP encapsulated message, the ICMP internal packet extraction unit 42 further analyzes the internal message and extracts the SPI value, sequence number, and the like in the ESP header.

ICMP種別対応処理部43は、ICMP種別に応じてICMP処理(例えば暗号化通信装置10Aのルーティングテーブル更新など)や、出力側SADB11のMTU値(送信MTU値)を更新する。   The ICMP type correspondence processing unit 43 updates the ICMP process (for example, updating the routing table of the encrypted communication device 10A) and the MTU value (transmission MTU value) of the output side SADB 11 according to the ICMP type.

ICMP中継再生処理部50は、ICMP中継処理判定部51、ICMP再生部52、ICMP送信端末決定部(送信先判断部、送信アドレス決定部)53を有している。ICMP中継処理判定部51は、ICMPエラー通知メッセージ73のメッセージ種別(以下、ICMPメッセージ種別という)に基づいて、ICMPエラー通知メッセージ73の通信端末側へのデータ中継処理の要否(ICMPエラー通知メッセージ73を通信端末側へ転送する必要があるか否か)を判定する。   The ICMP relay reproduction processing unit 50 includes an ICMP relay processing determination unit 51, an ICMP reproduction unit 52, and an ICMP transmission terminal determination unit (transmission destination determination unit, transmission address determination unit) 53. Based on the message type of the ICMP error notification message 73 (hereinafter referred to as “ICMP message type”), the ICMP relay processing determination unit 51 determines whether the data relay processing to the communication terminal side of the ICMP error notification message 73 is necessary (ICMP error notification message). 73 is required to be transferred to the communication terminal side.

ICMP再生部52は、受信したICMPエラー通知メッセージ73から、通信端末側に送信すべきICMPエラー通知メッセージ74を再生(作成)する。ICMP再生部52は、使用SA情報102やシーケンス番号情報103内の発側端末アドレス、シーケンス番号等に基づいて、ICMPエラー通知メッセージ74を作成する。   The ICMP reproduction unit 52 reproduces (creates) an ICMP error notification message 74 to be transmitted to the communication terminal from the received ICMP error notification message 73. The ICMP reproduction unit 52 creates an ICMP error notification message 74 based on the use SA information 102, the originating terminal address in the sequence number information 103, the sequence number, and the like.

ICMP送信端末決定部53は、受信したICMPエラー通知メッセージ73のメッセージ種別と通信端末側へ送信する再生されたICMPエラー通知メッセージ74のICMPメッセージ種別に基づいて、通信端末側へ送信するICMPエラー通知メッセージ74の送信先(送信先となる発側端末範囲)と、そのアドレスを決定する。ICMP送信端末決定部53は、ICMPエラー通知メッセージ74を、例えば発側端末だけ又はSA(SPI値)を使用する全ての発側端末に送信することを決定する。   The ICMP transmission terminal determination unit 53 sends an ICMP error notification to be transmitted to the communication terminal based on the message type of the received ICMP error notification message 73 and the ICMP message type of the reproduced ICMP error notification message 74 to be transmitted to the communication terminal. The transmission destination of the message 74 (the originating terminal range as the transmission destination) and its address are determined. The ICMP transmission terminal determination unit 53 determines to transmit the ICMP error notification message 74 to, for example, only the calling terminal or all the calling terminals that use SA (SPI value).

つぎに、実施の形態1に係る暗号化通信装置10Aの動作手順として、データ送信処理(暗号化処理)、復号処理、ICMP受信処理、本実施の形態1の主たる特徴であるICMP再生処理の各動作手順について説明する。   Next, as an operation procedure of the encrypted communication device 10A according to the first embodiment, each of data transmission processing (encryption processing), decryption processing, ICMP reception processing, and ICMP reproduction processing which is the main feature of the first embodiment is described. The operation procedure will be described.

(送信処理)
まず、通信端末X1(発側端末)からトンネル側(WAN5側)へのデータ送信処理(暗号化処理)について説明する。図4は、発側端末からトンネル側へのデータ送信処理の処理手順を示すフローチャートである。
(Transmission process)
First, a data transmission process (encryption process) from the communication terminal X1 (originating terminal) to the tunnel side (WAN5 side) will be described. FIG. 4 is a flowchart showing a processing procedure of data transmission processing from the calling terminal to the tunnel side.

暗号化通信装置10Aは、発側端末から端末側I/F13を介してIPメッセージ71を受信すると、一般的なルータ機能によってIP受信処理、ルーティング処理を行い、IPメッセージ71の出力先I/F(トンネル側I/F14)を決定する(ステップS110)。なお、図3に示す暗号化通信装置10Aでは、IP受信処理、ルーティング処理を行う手段の図示を省略している。   When the encrypted communication device 10A receives the IP message 71 from the originating terminal via the terminal-side I / F 13, the encrypted communication device 10A performs IP reception processing and routing processing by a general router function, and outputs the IP message 71 output destination I / F (Tunnel side I / F 14) is determined (step S110). In the encrypted communication device 10A shown in FIG. 3, illustration of means for performing IP reception processing and routing processing is omitted.

暗号化通信装置10Aは、ルーティング処理によってIPメッセージ71をトンネル側I/F14へ出力することを決定すると、このIPメッセージ71をカプセル化処理部20に渡す。   When the encrypted communication device 10A determines to output the IP message 71 to the tunnel side I / F 14 by the routing process, the encrypted communication device 10A passes the IP message 71 to the encapsulation processing unit 20.

カプセル化処理部20では、安全な通信路(SA)を確立するため、まず使用SA検索部21がIPメッセージ71内の発着アドレス、プロトコル種別、発着ポート番号などに基づいて、出力側SADB11を検索し、IPメッセージ71が使用するSAを決定する。使用SA検索部21は、例えば出力側SADB11が記憶する出力側SA情報101を用いてIPメッセージ71が使用するSAを決定する(ステップS120)。   In the encapsulation processing unit 20, in order to establish a safe communication path (SA), the used SA search unit 21 first searches the output side SADB 11 based on the arrival / departure address, protocol type, and arrival / departure port number in the IP message 71. Then, the SA used by the IP message 71 is determined. The used SA search unit 21 determines the SA used by the IP message 71 using, for example, the output side SA information 101 stored in the output side SADB 11 (step S120).

図5は、出力側SA情報の構成の一例を示す図である。出力側SA情報101は、IPメッセージ71を暗号化してSAを確立するための情報であり、「発側端末」、「着側端末」、「暗号化手段」、「認証手段」、「対向装置」、「SPI値」、「共有秘密鍵」、「現在の初期ベクトル値」、「送信MTU値」、「プロトコル種別」、「発着ポート番号」がそれぞれ対応付けられている。   FIG. 5 is a diagram illustrating an example of the configuration of the output side SA information. The output-side SA information 101 is information for encrypting the IP message 71 to establish the SA, and is “source terminal”, “destination terminal”, “encryption means”, “authentication means”, “opposite device” ”,“ SPI value ”,“ shared secret key ”,“ current initial vector value ”,“ transmission MTU value ”,“ protocol type ”, and“ incoming / outgoing port number ”.

「発側端末」は、通信端末X1等の発側端末(アドレス)を示し、「着側端末」は、通信端末Y1等の着側端末(アドレス)を示している。「暗号化手段」は、「3DES(Data Encryption Standard)」、「DES」等の暗号化を行う手段を示している。   The “calling terminal” indicates a calling terminal (address) such as the communication terminal X1, and the “calling terminal” indicates a called terminal (address) such as the communication terminal Y1. “Encryption means” indicates means for performing encryption such as “3DES (Data Encryption Standard)” and “DES”.

「認証手段」は、「MD(Message Digest)5」や「SHA(Secure Hash Algorithm)1」等の認証に使われるハッシュ関数(認証の手段)を示している。「対向装置」は、対向する暗号化通信装置を示している。なお、ここでのSG(security gateway)2は暗号化通信装置10Bを示し、SG3は暗号化通信装置10A,10B以外の暗号化通信装置を示している。   “Authentication means” indicates a hash function (authentication means) used for authentication such as “MD (Message Digest) 5” and “SHA (Secure Hash Algorithm) 1”. The “opposite device” indicates the opposite encrypted communication device. Here, SG (security gateway) 2 indicates the encrypted communication device 10B, and SG3 indicates an encrypted communication device other than the encrypted communication devices 10A and 10B.

「SPI値」は、SAを一意に識別するための任意の値(32ビット)である。「共有秘密鍵」は、暗号化通信装置10B等の対向装置との間で共有する暗号化/復号のための秘密鍵である。なお厳密にはSG間の「共有秘密鍵」には暗号化に使用する共有暗号化秘密鍵と、認証に使用する共有認証秘密鍵があるが、以下「共有秘密鍵」はSG間で暗号化に使用する共有暗号化秘密鍵を指す(非特許文献1)。   The “SPI value” is an arbitrary value (32 bits) for uniquely identifying the SA. The “shared secret key” is a secret key for encryption / decryption shared with the opposite device such as the encrypted communication device 10B. Strictly speaking, the “shared secret key” between SGs includes a shared encrypted secret key used for encryption and a shared authentication secret key used for authentication. The “shared secret key” is encrypted between SGs below. It points to the shared encryption private key used for (nonpatent literature 1).

「現在の初期ベクトル値」は、IPメッセージ71を暗号化する際に用いる擬似乱数の初期ベクトル値(暗号化パラメータ情報)である。「現在の初期ベクトル値」は、1つ前の送信メッセージから生成しメッセージ毎に異なる値が設定される。「送信MTU値」は、トンネル側へ1回の転送で送信できるデータの最大値を示す値(設定値)である。「プロトコル種別」は、発着通信端末が利用する通信プロトコルの種別を示し、「発着ポート番号」は、発着通信端末が利用するポートの番号を示している。   The “current initial vector value” is an initial vector value (encryption parameter information) of a pseudo random number used when the IP message 71 is encrypted. The “current initial vector value” is generated from the previous transmission message, and a different value is set for each message. The “transmission MTU value” is a value (setting value) indicating the maximum value of data that can be transmitted in one transfer to the tunnel side. “Protocol type” indicates the type of communication protocol used by the incoming / outgoing communication terminal, and “Incoming / outgoing port number” indicates the port number used by the incoming / outgoing communication terminal.

使用SA検索部21が、IPメッセージ71の使用するSAを出力側SA情報101から抽出(発見)できない場合(ステップS130、No)、使用SA検索部21はこのIPメッセージ71を廃棄するか、又は発側端末にICMPエラー通知メッセージ74を送信(応答)する(ステップS140)。   When the used SA search unit 21 cannot extract (discover) the SA used by the IP message 71 from the output-side SA information 101 (step S130, No), the used SA search unit 21 discards the IP message 71, or An ICMP error notification message 74 is transmitted (response) to the originating terminal (step S140).

一方、使用SA検索部21がIPメッセージ71の使用するSAを出力側SA情報101から抽出できた場合(ステップS130、Yes)、SA使用許諾判定部22はIPメッセージ71が前記抽出したSAを使用する条件を満たしているか否かを判定する(ステップS150)。   On the other hand, when the use SA search unit 21 can extract the SA used by the IP message 71 from the output-side SA information 101 (Yes in step S130), the SA use permission determination unit 22 uses the SA extracted by the IP message 71. It is determined whether or not the conditions to be satisfied are satisfied (step S150).

ここでの判定条件には、該当SAは障害により使用不能であるか否か(条件1)、IPメッセージ71にDF(Don't Fragment)フラグが設定されてフラグメント転送不可であるのにSAにはESP処理後の暗号化メッセージ長より小さいMTUが設定され、フラグメントする必要があるか否か(条件2)等の条件がある。例えば、(条件2)の場合、フラグメントする必要があれば、このSAは使用できないと判断される。   The determination condition here is whether or not the corresponding SA is unusable due to a failure (condition 1), and the DF (Don't Fragment) flag is set in the IP message 71 and fragment transfer is not possible. MTU smaller than the encrypted message length after ESP processing is set, and there are conditions such as whether or not to fragment (Condition 2). For example, in the case of (Condition 2), if it is necessary to fragment, it is determined that this SA cannot be used.

SA使用許諾判定部22によってSAの使用不可と判断された場合(ステップS150、No)、暗号化通信装置10Aは発側端末にICMPエラー通知メッセージ74を応答する(ステップS140)。   When the SA usage permission determination unit 22 determines that SA cannot be used (No at Step S150), the encrypted communication device 10A responds with an ICMP error notification message 74 to the calling terminal (Step S140).

一方、SA使用許諾判定部22によってSAが使用可能であると判定された場合(ステップS150、Yes)、本実施の形態1に係るSA使用許諾判定部22は、使用するSPI値をキーとして元のIPメッセージ71の発着端末アドレスをSA使用端末DB61(使用SA情報102)に登録する(ステップS160)。   On the other hand, when the SA use permission determination unit 22 determines that the SA can be used (step S150, Yes), the SA use permission determination unit 22 according to the first embodiment uses the SPI value to be used as a key. Is registered in the SA use terminal DB 61 (use SA information 102) (step S160).

図6は、SA使用端末DBが記憶する使用SA情報の構成の一例を示す図である。ここでの使用SA情報102(アドレス情報)は、現在時刻が例えば123msecである場合を一例として示している。使用SA情報102は、SPI値(SA)に対応する発側端末のアドレス、着側端末のアドレスに関する情報であり、「対向装置」、「SPI値」、「SA使用発アドレス」、「SA使用着アドレス」、「消去予定時刻」がそれぞれ対応付けされている。   FIG. 6 is a diagram illustrating an example of the configuration of usage SA information stored in the SA usage terminal DB. The use SA information 102 (address information) here shows an example in which the current time is 123 msec, for example. The used SA information 102 is information regarding the address of the calling terminal and the address of the called terminal corresponding to the SPI value (SA), and is “opposite device”, “SPI value”, “SA used calling address”, “SA used”. "Destination address" and "Estimated deletion time" are associated with each other.

「SA使用発アドレス」は、SAを使用する発側端末のアドレスを示し、「SA使用着アドレス」はSAを使用する着側端末のアドレスを示す。「消去予定時刻」は、受信タイムアウトによってデータ消去される時刻を示す。   “SA use origination address” indicates the address of the originating terminal that uses SA, and “SA use destination address” indicates the address of the destination terminal that uses SA. “Erase scheduled time” indicates a time at which data is erased due to a reception timeout.

次に、暗号化処理部23は、IPメッセージ71のIPSEC_ESP暗号化処理を行うため、IPメッセージ71全体を暗号化する(ステップS170)。ここでの暗号化には、出力側SADB11がSA毎に持つ情報(図5に示した出力側SA情報101)を用いる。具体的には、出力側SA情報101の「対向装置」、「共有秘密鍵」、「暗号化手段」、1つ前の送信メッセージから生成しメッセージ毎に異なる現在の擬似乱数の初期ベクトル値(「現在の初期値ベクトル値」)を用いて暗号化を行う。   Next, the encryption processing unit 23 encrypts the entire IP message 71 in order to perform IPSEC_ESP encryption processing of the IP message 71 (step S170). For the encryption here, information (output-side SA information 101 shown in FIG. 5) that the output-side SADB 11 has for each SA is used. Specifically, the initial vector value of the current pseudo-random number that is generated from the previous transmission message (“opposite device”, “shared secret key”, “encryption means”) of the output SA information 101 and is different for each message ( Encryption is performed using “current initial value vector value”).

次に、ESPヘッダ処理部24は暗号化したIPメッセージ71の前にESPヘッダを付与する。ここでのESPヘッダには、SA毎に異なるSPI値と、メッセージ毎にカウントアップされるシーケンス番号が付与される(ステップS180)。   Next, the ESP header processing unit 24 adds an ESP header before the encrypted IP message 71. The ESP header here is given a different SPI value for each SA and a sequence number counted up for each message (step S180).

さらに、本実施の形態においては、ESPヘッダ処理部24は、シーケンス使用端末DB62(後述のシーケンス番号情報103)に、SPI値とシーケンス番号をキーとして元のIPメッセージ71の発着端末アドレスを登録する(ステップS190)。   Further, in the present embodiment, the ESP header processing unit 24 registers the arrival / departure terminal address of the original IP message 71 in the sequence use terminal DB 62 (sequence number information 103 described later) using the SPI value and the sequence number as keys. (Step S190).

図7は、シーケンス使用端末DBが記憶するシーケンス番号情報の構成の一例を示す図である。シーケンス番号情報103(アドレス情報)は、SPI値とシーケンス番号に対応する発側端末のアドレス、着側端末のアドレスに関する情報であり、「対向装置」、「SPI値」、「シーケンス番号」、「SA使用発アドレス」、「SA使用着アドレス」がそれぞれ対応付けされている。   FIG. 7 is a diagram illustrating an example of a configuration of sequence number information stored in the sequence using terminal DB. The sequence number information 103 (address information) is information relating to the SPI value and the address of the calling terminal corresponding to the sequence number and the address of the called terminal, and includes “opposite device”, “SPI value”, “sequence number”, “ “SA use origination address” and “SA use destination address” are associated with each other.

シーケンス使用端末DB62は、所定のタイミングでシーケンス番号情報103内の所定の情報(一組の対応付け)を削除し、新たな情報(一組の対応付け)を記憶する。すなわち、シーケンス使用端末DB62は、例えば所定の期間だけシーケンス番号情報103内の情報を記憶し、所定の期間経過後に古くなったシーケンス番号情報103内の情報を削除する。また、シーケンス使用端末DB62は、シーケンス番号情報103内の情報を所定数だけ記憶し、所定数を超えて新たな情報を記憶する際には、古くなったシーケンス番号情報103内の情報を削除してもよい。   The sequence use terminal DB 62 deletes predetermined information (a set of associations) in the sequence number information 103 at a predetermined timing, and stores new information (a set of associations). That is, the sequence use terminal DB 62 stores the information in the sequence number information 103 for a predetermined period, for example, and deletes the information in the sequence number information 103 that has become obsolete after the predetermined period has elapsed. Further, the sequence use terminal DB 62 stores a predetermined number of information in the sequence number information 103, and deletes information in the sequence number information 103 that has become obsolete when storing new information exceeding the predetermined number. May be.

次に、認証値計算部25はESPヘッダと暗号化したIPメッセージ71に対して、ESP認証値を算出し末尾に付与する。IPヘッダ処理部26は、認証値計算部25が生成したESPカプセル化メッセージがSAのMTUを越えている場合、フラグメント等の処理を行ってIPヘッダを付与する。IPヘッダ処理部26が作成したデータは、IPSEC_ESPカプセル化メッセージ(IPSECメッセージ72という)として、トンネル側I/F14から対向する暗号化通信装置10Bへ送信する(ステップS200)。   Next, the authentication value calculation unit 25 calculates an ESP authentication value for the ESP header and the encrypted IP message 71 and assigns it to the end. When the ESP encapsulated message generated by the authentication value calculation unit 25 exceeds the SA MTU, the IP header processing unit 26 performs processing such as a fragment to add an IP header. The data created by the IP header processing unit 26 is transmitted as an IPSEC_ESP encapsulation message (referred to as an IPSEC message 72) from the tunnel side I / F 14 to the opposite encrypted communication device 10B (step S200).

(復号処理)
次に、ルータR1等のトンネル側(WAN5側)から受信したデータの復号処理について説明する。図8は、トンネル側から受信したデータの復号処理の処理手順を示すフローチャートである。
(Decryption process)
Next, the decoding process of data received from the tunnel side (WAN5 side) such as the router R1 will be described. FIG. 8 is a flowchart showing a processing procedure for decrypting data received from the tunnel side.

トンネル側I/F14は、トンネル側からIPSEC_ESPカプセル化メッセージ(以下、IPSECメッセージ75という)を受信すると、一般的なルータ機能によってIP受信処理、ルーティング処理を行う。この結果、IPSECメッセージ75の宛先が自らの暗号化通信装置10Aである場合、IPSECメッセージ75の着ポート番号、上位プロトコル種別を判定し、上位プロトコル種別がIPSEC_ESPメッセージであった場合、IPSECメッセージ75をデカプセル化処理部30に渡す。ここでは、IPSECメッセージ75の上位プロトコル種別がIPSEC_ESPメッセージであるので、このIPSECメッセージ75がデカプセル化処理部30に入力される。   When the tunnel side I / F 14 receives an IPSEC_ESP encapsulation message (hereinafter referred to as an IPSEC message 75) from the tunnel side, the tunnel side I / F 14 performs IP reception processing and routing processing by a general router function. As a result, when the destination of the IPSEC message 75 is its own encrypted communication device 10A, the destination port number and the upper protocol type of the IPSEC message 75 are determined. When the upper protocol type is the IPSEC_ESP message, the IPSEC message 75 is The data is passed to the decapsulation processing unit 30. Here, since the upper protocol type of the IPSEC message 75 is an IPSEC_ESP message, the IPSEC message 75 is input to the decapsulation processing unit 30.

デカプセル化処理部30では、まず使用SA検索部31が、受信したIPSECメッセージ75内の暗号化通信装置10BのアドレスとSPI値に基づいて、使用するSAを検索し決定する(ステップS310)。   In the decapsulation processing unit 30, the used SA search unit 31 first searches for and determines the SA to be used based on the address and SPI value of the encrypted communication device 10B in the received IPSEC message 75 (step S310).

次に、シーケンス検証部32は受信したIPSECメッセージ75内のシーケンス番号を検査してリプレイ攻撃を監査し、IPSECメッセージ75の受け入れの可否を決定する(ステップS320)。シーケンス検証部32がIPSECメッセージ75の受け入れは不可であると決定すると(ステップS320、No)、このIPSECメッセージ75は廃棄される(ステップS330)。   Next, the sequence verification unit 32 checks the sequence number in the received IPSEC message 75, audits the replay attack, and determines whether or not the IPSEC message 75 can be accepted (step S320). If the sequence verification unit 32 determines that the IPSEC message 75 cannot be accepted (step S320, No), the IPSEC message 75 is discarded (step S330).

一方、シーケンス検証部32がIPSECメッセージ75の受け入れが可能であると決定すると(ステップS320、Yes)、認証値確認処理部33は、受信したIPSECメッセージ75のESPヘッダと暗号化されたIPメッセージ部に対してESP認証値を算出する。そして、算出したESP認証値と、IPSECメッセージ75の末尾に付加されているESP認証値と比較し、IPSECメッセージ75の改ざんの有無を検出する(ステップS340)。   On the other hand, if the sequence verification unit 32 determines that the IPSEC message 75 can be accepted (step S320, Yes), the authentication value confirmation processing unit 33 receives the ESP header of the received IPSEC message 75 and the encrypted IP message unit. An ESP authentication value is calculated for. Then, the calculated ESP authentication value is compared with the ESP authentication value added to the end of the IPSEC message 75 to detect whether the IPSEC message 75 has been tampered with (step S340).

次に、リプレイ防御処理部34は、受信したIPSECメッセージ75内のシーケンス番号によって、内部で保持するリプレイ防御ウィンドウの操作を行い、リプレイ防御ウィンドウを更新する(ステップS350)。   Next, the replay defense processing unit 34 operates the replay defense window held therein by the sequence number in the received IPSEC message 75, and updates the replay defense window (step S350).

次に、復号処理部35は、受信したIPSECメッセージ75内の暗号化されたIPメッセージ部を復号する(ステップS360)。ここでの復号には、入力側SADB12がSA毎に持つ情報(入力側SA情報)を用いる。   Next, the decryption processing unit 35 decrypts the encrypted IP message part in the received IPSEC message 75 (step S360). For this decoding, information (input side SA information) that the input side SADB 12 has for each SA is used.

なお、入力側SA情報(図示せず)は、出力側SA情報と同様の構成を有した情報であり、「発側端末」、「着側端末」、「暗号化手段」、「認証手段」、「対向装置」、「SPI値」、「共有秘密鍵」、「現在の初期ベクトル値」、「送信MTU値」がそれぞれ対応付けられている。   The input-side SA information (not shown) is information having the same configuration as the output-side SA information, and “source terminal”, “destination terminal”, “encryption unit”, “authentication unit”. , “Opposite device”, “SPI value”, “shared secret key”, “current initial vector value”, and “transmission MTU value”.

ここでは、入力側SA情報の「対向装置」、「共有秘密鍵」、「暗号化手段」、「現在の初期値ベクトル値」を用いてIPメッセージ部の復号を行う。復号されたIPメッセージ部は、IPメッセージ76として出力前SADB監査部36に入力する。   Here, the IP message part is decrypted using the “opposite device”, “shared secret key”, “encryption means”, and “current initial value vector value” of the SA information on the input side. The decrypted IP message part is input to the pre-output SADB auditing part 36 as an IP message 76.

出力前SADB監査部36は、復号して得たIPメッセージ76が入力側SPDの発着アドレス、プロトコル種別、発着ポートなどに基づく条件に合致しているか否かを監査する(ステップS370)。出力前SADB監査部36に監査されて、所定の条件に合致したIPメッセージ76は、端末側I/F13からLAN1内に送信される(ステップS380)。   The pre-output SADB auditing unit 36 audits whether or not the IP message 76 obtained by decryption meets the conditions based on the incoming / outgoing address, protocol type, outgoing / incoming port, etc. of the input side SPD (step S370). The IP message 76 that is audited by the pre-output SADB auditing unit 36 and meets a predetermined condition is transmitted from the terminal side I / F 13 into the LAN 1 (step S380).

(ICMP受信処理)
つぎに、ICMPの受信処理、再生処理の処理手順について説明する。まず、ICMP受信処理の処理手順について説明する。図9は、ICMP受信処理の処理手順を示すフローチャートである。
(ICMP reception processing)
Next, processing procedures of ICMP reception processing and reproduction processing will be described. First, the processing procedure of the ICMP reception process will be described. FIG. 9 is a flowchart showing a processing procedure of ICMP reception processing.

トンネル側I/F14が、トンネル側からICMPエラー通知メッセージ73を受信すると、通常のルータ機能によってIP受信処理、ルーティング処理を行う。この結果、ICMPエラー通知メッセージ73の宛先が自らの暗号化通信装置10Aである場合、ICMPエラー通知メッセージ73はICMP受信処理部40に渡される。   When the tunnel side I / F 14 receives the ICMP error notification message 73 from the tunnel side, it performs IP reception processing and routing processing by a normal router function. As a result, when the destination of the ICMP error notification message 73 is the encrypted communication device 10 </ b> A, the ICMP error notification message 73 is passed to the ICMP reception processing unit 40.

ICMP受信処理部40は、まずICMP種別判定部41により、ICMP73の種別を判定する(ステップS410)。次に、ICMP内部パケット抽出部42は、ICMPエラー通知メッセージ73のデータ部に内部メッセージを含む場合、この内部メッセージを抽出する。ICMP内部パケット抽出部42は、必要に応じて内部メッセージ自体を解析し、発着アドレス(ここでは暗号化通信装置10A,10Bのアドレス)、プロトコル種別、発着ポート番号など、一般的なIPメッセージから取得可能な情報を抽出する(ステップS420)。   The ICMP reception processing unit 40 first determines the type of the ICMP 73 by the ICMP type determination unit 41 (step S410). Next, when an internal message is included in the data part of the ICMP error notification message 73, the ICMP internal packet extraction unit 42 extracts the internal message. The ICMP internal packet extraction unit 42 analyzes the internal message itself as necessary, and obtains it from a general IP message such as a calling / receiving address (here, addresses of the encrypted communication devices 10A and 10B), a protocol type, and a calling / receiving port number. Possible information is extracted (step S420).

ICMP内部パケット抽出部42は、内部メッセージ自体の解析によって、例えば内部メッセージがIPSEC_ESPカプセル化メッセージであると判定された場合、内部メッセージのさらに内部まで解析し、ESPヘッダ内のSPI値、シーケンス番号などを抽出しておく(ステップS430)。   The ICMP internal packet extraction unit 42 analyzes the internal message itself, for example, when it is determined that the internal message is an IPSEC_ESP encapsulated message, analyzes the internal message further to the inside, and the SPI value in the ESP header, the sequence number, etc. Is extracted (step S430).

次に、ICMP種別対応処理部43は、ICMP種別に応じて暗号化通信装置10Aが取るべき処理を行う。この取るべき処理としては、暗号化通信装置10A自体が対処すべきICMP処理(例えば暗号化通信装置10Aのルーティングテーブル更新など)(処理1)と、出力側SADB11の値を更新する処理(処理2)がある(ステップS440)。   Next, the ICMP type correspondence processing unit 43 performs processing to be taken by the encrypted communication device 10A according to the ICMP type. The processes to be taken include an ICMP process to be dealt with by the encrypted communication apparatus 10A itself (for example, a routing table update of the encrypted communication apparatus 10A) (process 1), and a process for updating the value of the output SADB 11 (process 2). ) (Step S440).

例えば、ICMP種別がICMPリダイレクト通知メッセージである場合、ICMP種別対応処理部43は暗号化通信装置10Aのルーティングテーブルで、該当する宛先アドレスへのネクストホップアドレスを更新(処理1)する。   For example, when the ICMP type is an ICMP redirect notification message, the ICMP type correspondence processing unit 43 updates the next hop address to the corresponding destination address in the routing table of the encrypted communication device 10A (processing 1).

また、ICMP種別がICMP宛先到達不能メッセージである場合、ICMP種別対応処理部43は、まず通知された宛先への転送不能(情報)を暗号化通信装置10Aのルーティングテーブルに登録する(処理1)。さらに、ICMPエラー通知メッセージ73がデータ部にIPSEC_EPSカプセル化メッセージを含む場合、ICMP種別対応処理部43は、抽出したSPI値と着側の暗号化通信装置10Bのアドレスによって決定されるSAに対し、該当SAの使用不可に関する情報を出力側SADB11に登録する(処理2)。   When the ICMP type is an ICMP destination unreachable message, the ICMP type correspondence processing unit 43 first registers the inability to transfer (information) to the notified destination in the routing table of the encrypted communication device 10A (processing 1). . Further, when the ICMP error notification message 73 includes an IPSEC_EPS encapsulation message in the data part, the ICMP type correspondence processing part 43 performs the following on the SA determined by the extracted SPI value and the address of the encryption communication apparatus 10B on the called side. Information related to the unusable SA is registered in the output SADB 11 (Process 2).

また、ICMP種別がICMP_MTU超過通知メッセージの場合、ICMP種別対応処理部43は、まず暗号化通信装置10Aのルーティングテーブルにおいて通知された宛先へのMTU値を更新する(処理1)。さらに、ICMP種別対応処理部43は、ICMPエラー通知メッセージ73がデータ部にIPSEC_EPSカプセル化メッセージを含む場合、抽出したSPI値と着側の暗号化通信装置10Bのアドレスによって決定されるSAに対し、該当SAに通知されたMTU値からIPSEC処理によるオーバヘッド分を差し引いた値を、SAの更新MTU値として出力側SADB11(出力側SA情報101の「送信MTU値」)に登録する(処理2)。   When the ICMP type is an ICMP_MTU excess notification message, the ICMP type correspondence processing unit 43 first updates the MTU value to the destination notified in the routing table of the encrypted communication device 10A (processing 1). Furthermore, when the ICMP error notification message 73 includes an IPSEC_EPS encapsulated message in the data part, the ICMP type correspondence processing unit 43 determines that the SA is determined by the extracted SPI value and the address of the encryption communication device 10B on the called side. A value obtained by subtracting the overhead due to the IPSEC process from the MTU value notified to the relevant SA is registered in the output side SADB 11 (“transmission MTU value” of the output side SA information 101) as the SA update MTU value (processing 2).

(ICMP再生処理)
この後、ICMPエラー通知メッセージ73は、本実施の形態1の特徴的な構成要素の1つであるICMP中継再生処理部50に渡される。つぎに、ICMP中継再生処理部50が行うICMPの再生処理の処理手順について説明する。図10は、実施の形態1に係るICMP再生処理の処理手順を示すフローチャートである。
(ICMP regeneration process)
Thereafter, the ICMP error notification message 73 is delivered to the ICMP relay reproduction processing unit 50 which is one of the characteristic components of the first embodiment. Next, a processing procedure of ICMP regeneration processing performed by the ICMP relay regeneration processing unit 50 will be described. FIG. 10 is a flowchart showing a processing procedure of ICMP reproduction processing according to the first embodiment.

まず、ICMP中継処理判定部51では、ICMPエラー通知メッセージ73のメッセージ種別(ICMPメッセージ種別)に基づいて、このICMPエラー通知メッセージ73の通信端末側へのデータ中継処理の要否を判定する(ステップS510)。   First, the ICMP relay process determination unit 51 determines whether or not the data relay process of the ICMP error notification message 73 to the communication terminal side is necessary based on the message type (ICMP message type) of the ICMP error notification message 73 (step S1). S510).

ICMP中継処理判定部51で通信端末側へのデータ中継が必要であると判断された場合(ステップS510、Yes)、ICMP再生部52は、受信したICMPエラー通知メッセージ73から、通信端末側に送信すべきICMPエラー通知メッセージ74の作成を開始する。このとき、ICMP再生部52は、使用SA情報102やシーケンス番号情報103内の発側端末アドレス、シーケンス番号等に基づいて、ICMPエラー通知メッセージ74を作成する。   When the ICMP relay process determination unit 51 determines that data relay to the communication terminal side is necessary (step S510, Yes), the ICMP playback unit 52 transmits the received ICMP error notification message 73 to the communication terminal side. The creation of the ICMP error notification message 74 to be started is started. At this time, the ICMP reproduction unit 52 creates an ICMP error notification message 74 based on the use SA information 102 and the originating terminal address in the sequence number information 103, the sequence number, and the like.

ICMP再生部52は、ICMPエラー通知メッセージ74を再生する際、例えば受信したICMPメッセージ種別と端末側へ送信するICMPメッセージ種別を同一のものとする。すなわち、ICMP再生部52は、受信したICMPメッセージ種別がMTU超過メッセージなら通信端末側に送信するICMPメッセージ種別もMTU超過メッセージとする。また、ICMP再生部52は、ICMPエラー通知メッセージ74を再生する際、状況によっては暗号化通信装置10Aの解釈に応じて異なるICMPメッセージ種別に設定してもよい。   When playing back the ICMP error notification message 74, the ICMP playback unit 52 makes the received ICMP message type the same as the ICMP message type transmitted to the terminal side, for example. That is, if the received ICMP message type is an MTU excess message, the ICMP playback unit 52 also sets the ICMP message type to be transmitted to the communication terminal side as an MTU excess message. Further, when reproducing the ICMP error notification message 74, the ICMP reproducing unit 52 may set different ICMP message types depending on the interpretation of the encrypted communication device 10A depending on the situation.

再生されたICMPエラー通知メッセージ74は、ICMP送信端末決定部53に渡される。ICMP送信端末決定部53では、受信したICMPエラー通知メッセージ73のメッセージ種別と通信端末側へ送信するICMPエラー通知メッセージ74のメッセージ種別に基づいて、通信端末側へ送信するICMPエラー通知メッセージ74の送信先を決定する(ステップS530)。   The reproduced ICMP error notification message 74 is passed to the ICMP transmission terminal determination unit 53. The ICMP transmission terminal determination unit 53 transmits the ICMP error notification message 74 to be transmitted to the communication terminal based on the message type of the received ICMP error notification message 73 and the message type of the ICMP error notification message 74 to be transmitted to the communication terminal. The destination is determined (step S530).

例えば、ICMPメッセージ種別のタイプが「時間超過」であり、コードが「TTL(Time To Live)超過」の場合、暗号化通信装置10AはIPSECメッセージ72の送信時に、元の通信端末からのメッセージのTTLから1を引いて送信している。このため、このICMPエラー通知メッセージ73は発側端末が設定するTTL値に由来していると考えられる。この場合、ICMP送信端末決定部53は、ICMPエラー通知メッセージ74を発側端末だけに通知すると判断する。   For example, when the ICMP message type is “time exceeded” and the code is “TTL (Time To Live) exceeded”, the encrypted communication device 10A transmits the message from the original communication terminal when the IPSEC message 72 is transmitted. 1 is subtracted from TTL for transmission. For this reason, it is considered that the ICMP error notification message 73 is derived from the TTL value set by the calling terminal. In this case, the ICMP transmission terminal determination unit 53 determines to notify the ICMP error notification message 74 only to the originating terminal.

また、ICMPメッセージ種別のタイプが「宛先到達不能メッセージ」であり、コードが「フラグメント必要でDF設定」の場合、ICMPエラー通知メッセージ74の送信先はさらに暗号化通信装置10AのDF設定ポリシーにも依存する。   Further, when the type of the ICMP message type is “destination unreachable message” and the code is “fragment required and DF setting”, the transmission destination of the ICMP error notification message 74 is further set in the DF setting policy of the encrypted communication device 10A. Dependent.

暗号化通信装置10AのDF設定ポリシーには3種類ある。すなわち、DF設定ポリシーには、送信するIPSECメッセージに必ずDFを設定しない(設定1)、必ずDFを設定する(設定2)、元の通信端末(発側端末)からのDF値をコピーする(設定3)がある。   There are three types of DF setting policies for the encrypted communication device 10A. That is, in the DF setting policy, DF is not necessarily set in the IPSEC message to be transmitted (setting 1), DF is always set (setting 2), and the DF value from the original communication terminal (originating terminal) is copied ( There is setting 3).

例えば、設定1の場合、フラグメントが必要でDF設定というエラー自体が発生しない。また、設定2の場合、SAを使用する全ての発側端末は通知されたMTU値まで、送信MTUを下げる必要があり、ICMP送信端末決定処理部は53は、このSAを使用している全通信端末にICMPエラー通知メッセージ74を通知すると判断する。   For example, in the case of setting 1, a fragment is necessary and an error of DF setting itself does not occur. Also, in the case of setting 2, it is necessary for all calling terminals that use SA to lower the transmission MTU to the notified MTU value, and the ICMP transmission terminal determination processing unit 53 uses all SAs that use this SA. It is determined that an ICMP error notification message 74 is notified to the communication terminal.

また、設定3の場合、SAを使用するDFを設定し送信する通信端末だけが、送信MTUを下げる必要があり、ICMP送信端末決定部53は、DFを設定して送信する通信端末(このICMPエラー通知メッセージ73に関連する発側端末)にだけICMPエラー通知メッセージ74を通知すると判断する。   In the case of setting 3, only the communication terminal that sets and transmits the DF using SA needs to lower the transmission MTU, and the ICMP transmission terminal determination unit 53 sets the DF and transmits the communication terminal (this ICMP) It is determined that the ICMP error notification message 74 is notified only to the originating terminal associated with the error notification message 73.

また、ICMPメッセージ種別のタイプが「宛先到達不能メッセージ」であり、コードが「ネットワーク到達不能」またはコードが「ホスト到達不能」の場合には、該当SA自体が到達不能になっているので、ICMP送信端末決定部53は、このSAを使用している全通信端末にICMPエラー通知メッセージ74を通知すると判断する。   If the ICMP message type is “destination unreachable message” and the code is “network unreachable” or the code is “host unreachable”, the SA itself is unreachable, so ICMP The transmission terminal determination unit 53 determines to send an ICMP error notification message 74 to all communication terminals using this SA.

このようにしてICMP送信端末決定部53は、SAを使用している全通信端末にICMPエラー通知メッセージ74を通知するか、発側端末だけにICMPエラー通知メッセージ74を通知をするかを決定する。さらに、ICMP送信端末決定部53は、再生したICMPエラー通知メッセージ74を送信する発側端末範囲(後述の発側端末範囲301,302)を決定する(ステップS540)。   In this way, the ICMP transmission terminal determining unit 53 determines whether to notify the ICMP error notification message 74 to all communication terminals using the SA, or to notify the ICMP error notification message 74 only to the originating terminal. . Further, the ICMP transmission terminal determining unit 53 determines a source terminal range (source terminal ranges 301 and 302 described later) to which the reproduced ICMP error notification message 74 is transmitted (step S540).

ここで、発側端末範囲について説明する。図11は、発側端末範囲を説明するための図である。ここでは、ICMPエラー通知メッセージ74を発側端末だけに送信する場合の発側端末範囲を発側端末範囲301、ICMPエラー通知メッセージ74を、SAを使用している通信端末に送信する場合の発側端末範囲を発側端末範囲302、ICMPエラー通知メッセージ74をSAの収容範囲全体に送信する場合の発側端末範囲を発側端末範囲303で示している。   Here, the calling terminal range will be described. FIG. 11 is a diagram for explaining the originating terminal range. Here, the originating terminal range when the ICMP error notification message 74 is transmitted only to the originating terminal is set as the originating terminal range 301, and the originating when the ICMP error notification message 74 is transmitted to the communication terminal using the SA. The originating terminal range is shown as the originating terminal range 302 when the originating terminal range 302 is transmitted, and the ICMP error notification message 74 is transmitted to the entire SA accommodation range.

例えば、ICMPメッセージ種別のタイプが「時間超過」であり、コードが「TTL超過」の場合、ICMPエラー通知メッセージ74を発側端末だけに通知すればよいので、ICMPエラー通知メッセージ74は発側端末範囲301に送信する。   For example, when the ICMP message type is “time exceeded” and the code is “TTL exceeded”, the ICMP error notification message 74 only needs to be notified to the originating terminal. Send to range 301.

また、ICMPメッセージ種別のタイプが「宛先到達不能メッセージ」、コードが「フラグメント必要でDF設定」の場合で、DF設定ポリシーが設定2の場合、SAを使用している全通信端末にICMPエラー通知メッセージ74を通知する必要があるので、ICMPエラー通知メッセージ74は発側端末範囲302に送信する。   Further, when the ICMP message type is “Destination Unreachable Message”, the code is “Fragment Required and DF Setting”, and the DF Setting Policy is Setting 2, an ICMP error notification is sent to all communication terminals using the SA. Since it is necessary to notify the message 74, the ICMP error notification message 74 is transmitted to the calling terminal range 302.

また、ICMPメッセージ種別のタイプが「宛先到達不能メッセージ」、コードが「フラグメント必要でDF設定」の場合で、DF設定ポリシーが設定3の場合、DFを設定して送信する通信端末にだけICMPエラー通知メッセージ74を通知すればよいので、ICMPエラー通知メッセージ74は発側端末範囲301に送信する。   Also, when the ICMP message type is “Destination Unreachable Message”, the code is “Fragment Required and DF Setting”, and the DF Setting Policy is Setting 3, the ICMP error only applies to the communication terminal that sets and sends the DF. Since the notification message 74 may be notified, the ICMP error notification message 74 is transmitted to the calling terminal range 301.

また、ICMPメッセージ種別のタイプが「宛先到達不能メッセージ」であり、コードが「ネットワーク到達不能」または「ホスト到達不能」の場合、SAを使用している全通信端末にICMPエラー通知メッセージ74を通知する必要があるので、ICMPエラー通知メッセージ74は発側端末範囲302に送信する。   Further, when the type of the ICMP message type is “destination unreachable message” and the code is “network unreachable” or “host unreachable”, an ICMP error notification message 74 is notified to all communication terminals using the SA. Therefore, the ICMP error notification message 74 is transmitted to the calling terminal range 302.

ICMPエラー通知メッセージ74を所定の発側端末(発側端末範囲301)だけに通知する場合、ICMP送信端末決定部53は、ICMP内部パケット抽出部42で抽出したESPヘッダ内のSPI値とシーケンス番号とをキーとして、シーケンス使用端末DB62(シーケンス番号情報103)から元の発側端末アドレス(例えば通信端末X1のアドレス)を取得する。そして、再生されたICMPエラー通知メッセージ74は、端末側I/F13を介して、この発側端末アドレスだけに送信される。   When notifying the ICMP error notification message 74 only to a predetermined originating terminal (originating terminal range 301), the ICMP transmitting terminal determining unit 53 includes the SPI value and sequence number in the ESP header extracted by the ICMP internal packet extracting unit 42. And the key is used to acquire the original calling terminal address (for example, the address of the communication terminal X1) from the sequence use terminal DB 62 (sequence number information 103). Then, the reproduced ICMP error notification message 74 is transmitted only to this originating terminal address via the terminal side I / F 13.

また、ICMPエラー通知メッセージ74をSAを使用する全通信端末(発側端末範囲302)に通知する場合、ICMP内部パケット抽出部42で抽出したESPヘッダ内のSPI値をキーとしてSA使用端末DB61(使用SA情報102)からSAを使用している全発側端末アドレス(発側端末範囲302内の全通信端末のアドレス)を取得する。そして、再生されたICMPエラー通知メッセージ74は、端末側I/F13を介して、この全発側端末アドレスに送信される。   Further, when notifying the ICMP error notification message 74 to all communication terminals (calling side terminal range 302) using SA, the SA using terminal DB 61 (using the SPI value in the ESP header extracted by the ICMP internal packet extracting unit 42 as a key). All calling terminal addresses using SA (addresses of all communication terminals in the calling terminal range 302) are acquired from the used SA information 102). Then, the reproduced ICMP error notification message 74 is transmitted to this all-terminal terminal address via the terminal-side I / F 13.

ここで、本実施の形態1に係る暗号化通信装置10Aと従来の暗号化通信装置(発側トンネル装置)の差異を明確にするため従来の発側トンネル装置の問題点を説明する。ICMPエラー通知メッセージ74は、種別によって以下の種別1〜3の3つに分けることができる。すなわち、ICMPエラー通知メッセージとしては、まず「Echo_Reply」のように通信端末間又は暗号化通信装置間で直接やり取りされるカプセル化と関係無いICMPメッセージ(種別1)がある。また、ICMPエラー通知メッセージとして、ICMPパラメタ不良・リダイレクト・宛先到達不能・時間超過メッセージのように、暗号化通信装置10Aなどのトンネル装置に返答されるメッセージで、中継路上でカプセル化されていることを知らない送信元ホストがそのまま受信しても意味が無いICMPメッセージ(種別2)がある。さらに、ICMPエラー通知メッセージとして、ICMP発信元送信抑制、ICMPエラー通知メッセージのように発側端末に直接返答されるべきICMPメッセージ(種別3)がある。   Here, in order to clarify the difference between the encrypted communication device 10A according to the first embodiment and the conventional encrypted communication device (originating side tunnel device), problems of the conventional originating side tunnel device will be described. The ICMP error notification message 74 can be divided into the following three types 1 to 3 depending on the type. That is, as an ICMP error notification message, there is an ICMP message (type 1) that is not related to encapsulation directly exchanged between communication terminals or between encrypted communication devices, such as “Echo_Reply”. Also, as an ICMP error notification message, a message returned to a tunnel device such as the encrypted communication device 10A, such as an ICMP parameter failure / redirect / destination unreachable / time exceeded message, and encapsulated on a relay path There is an ICMP message (type 2) that is meaningless even if the source host that does not know the message receives it as it is. Further, as the ICMP error notification message, there is an ICMP message (type 3) that should be directly returned to the originating terminal, such as ICMP source transmission suppression and ICMP error notification message.

ICMPエラー通知メッセージ73には、ICMP発信元送信抑制、ICMP_MTU超過(フラグメントが必要でDF設定あり)、ICMP宛先到達不能、ICMPパラメタ異常、ICMPリダイレクト通知など、ICMPエラー通知メッセージにエラーを検出する原因となった元メッセージの一部をデータとして付与するものがある。このため、元メッセージを内包するICMPエラー通知メッセージ73は、種別3のような発側端末に直接返答されるべきICMPメッセージが多い。なぜなら、これらのICMPメッセージは、発側端末に着側端末への到達不能という障害通知と、その障害の原因を発側端末が解析するために、元メッセージも通知する目的を持っているからである。   The ICMP error notification message 73 includes causes for detecting an error in the ICMP error notification message, such as ICMP source transmission suppression, ICMP_MTU excess (fragment required and DF setting), ICMP destination unreachable, ICMP parameter error, ICMP redirect notification, etc. Some of the original messages are given as data. For this reason, the ICMP error notification message 73 containing the original message includes many ICMP messages that should be directly returned to the calling terminal such as type 3. This is because these ICMP messages have the purpose of notifying the originating terminal of the failure that the destination terminal is unreachable and the original message so that the originating terminal can analyze the cause of the failure. is there.

このため、従来までの発側トンネル装置では、トンネル経路上IPルータから自装置宛てのICMPエラー通知メッセージ73を受信すると、受信したICMPエラー通知メッセージ73の種別を調べ、種別3のようなトンネル経路上IPルータから発側端末へ通知されるべきICMPメッセージで、かつICMPエラー通知メッセージ73が元メッセージの一部をデータとして含んでいる場合、さらにICMPエラー通知メッセージの内側まで深く解析して発着端末アドレスを判定し、所定の発側端末アドレスへICMPエラー通知メッセージ73を中継転送する必要があった。   For this reason, in the conventional tunnel device on the originating side, when the ICMP error notification message 73 addressed to itself is received from the IP router on the tunnel route, the type of the received ICMP error notification message 73 is checked, and the tunnel route like type 3 When the ICMP message is to be notified from the upper IP router to the calling terminal, and the ICMP error notification message 73 includes a part of the original message as a data, it is further analyzed deeply into the ICMP error notification message and the calling / receiving terminal It is necessary to determine the address and to relay and forward the ICMP error notification message 73 to a predetermined originating terminal address.

ところが、発側トンネル装置は、IPSEC環境でのICMPエラー通知メッセージ73から発着端末アドレスを判定しようとすると、このデータ部に付与される元メッセージは発側トンネル装置自体が生成したトンネリング用のカプセル化メッセージになってしまっている。   However, when the originating tunnel device attempts to determine the destination terminal address from the ICMP error notification message 73 in the IPSEC environment, the original message attached to this data part is the tunneling encapsulation generated by the originating tunnel device itself. It has become a message.

なぜなら、発側トンネル装置はIPメッセージの送信時に、発着端末間のIPメッセージを内側に隠蔽し、外側に発着トンネル装置アドレスを設定したトンネリング用の外側のカプセル化メッセージで送信しているからである。すなわち、実際の発側端末アドレスは、発側トンネル装置が受信したICMPエラー通知メッセージ73の、データ領域に付与されたエラーの原因となったカプセル化メッセージの、さらにその内側に存在している。   This is because, when sending an IP message, the originating tunnel device conceals the IP message between the sending and receiving terminals on the inside, and sends it in the outer encapsulated message for tunneling in which the sending and receiving tunnel device address is set on the outside. . That is, the actual calling terminal address is present further inside the encapsulated message that causes the error assigned to the data area of the ICMP error notification message 73 received by the calling tunnel device.

ICMPエラー通知メッセージ内に付与されるデータ領域の最低長は、RFCの規定では、元のメッセージ(この場合はカプセル化メッセージ)のIPヘッダ長+64Byte以上である。   The minimum length of the data area given in the ICMP error notification message is equal to or greater than the IP header length of the original message (in this case, the encapsulated message) +64 bytes, according to RFC specifications.

例えば、発側トンネル装置がIPメッセージをカプセル化して送信する際に、カプセル化に使用するパラメータが多い、あるいは各々のパラメータが使用するバイト数が大きい等の理由で、構成されるカプセル化ヘッダ長が大きくなる場合がある。このような場合、カプセル化ヘッダ長により実際に通信端末が使用する真のメッセージのIPヘッダ部を復元するのに必要な長さが、ICMPエラー通知メッセージ内に付与されるデータ領域の最低長64Byteで収まらない場合がある。このとき、従来の発側トンネル装置では、内側に存在する発着端末アドレスを直接判定できないこととなる。   For example, when the originating tunnel device encapsulates and transmits an IP message, there are many parameters used for encapsulation, or the number of bytes used by each parameter is large. May become larger. In such a case, the length required to restore the IP header part of the true message that is actually used by the communication terminal by the encapsulation header length is the minimum length of 64 bytes of the data area provided in the ICMP error notification message. May not fit in. At this time, the conventional calling side tunnel device cannot directly determine the arrival / departure terminal address existing inside.

また、トンネルモードのIPSEC_ESP処理を実行する場合、内側のメッセージ(実際に通信端末が使用する真のメッセージ部)はトンネル経路上で暗号化+カプセル化して隠蔽される。これにより、発側トンネル装置はICMPエラー通知メッセージ内に含まれる元メッセージ(発着トンネル装置アドレスを持った外側のカプセル化メッセージヘッダ)の内容は解析できるが、内側の通信端末が使用する真のメッセージ部は暗号化され、そのヘッダ部までは直接解析できないこととなる。このため、発側トンネル装置は、ICMPエラー通知メッセージ73を戻すべき発側端末アドレスを直接判定できないこととなる。   In addition, when the tunnel mode IPSEC_ESP process is executed, the inner message (the true message part actually used by the communication terminal) is concealed by encryption + encapsulation on the tunnel path. As a result, the originating tunnel device can analyze the content of the original message (the outer encapsulated message header with the incoming and outgoing tunnel device address) included in the ICMP error notification message, but it is a true message used by the inner communication terminal. The part is encrypted, and the header part cannot be directly analyzed. For this reason, the originating tunnel device cannot directly determine the originating terminal address to which the ICMP error notification message 73 should be returned.

さらに、従来の暗号化通信装置では、トンネル経路に収容する発着端末アドレスとしてアドレスの範囲を指定し、複数の発着端末アドレスからのメッセージをまとめてこのトンネルに収容して転送する場合に、収容アドレス範囲が指定されたICMPエラー通知メッセージ73を発側端末に戻すだけでは不十分な場合がある。これは、トンネル経路上のルータから受信したICMP宛先到達不能などのICMPエラー通知メッセージ73は、その障害を検出する要因となったメッセージを送信した発側端末だけに対処すべき問題があるのではなく、このメッセージが収容されたトンネルの発アドレス範囲内に存在する通信端末全てにとって、対処すべき問題が発生した障害だからである。   Furthermore, in the conventional encrypted communication device, when a range of addresses is specified as a destination terminal address accommodated in a tunnel route, and messages from a plurality of destination terminal addresses are collectively accommodated in this tunnel and transferred, the accommodated address It may not be sufficient to simply return the ICMP error notification message 73 in which the range is specified to the originating terminal. This is because the ICMP error notification message 73 such as ICMP destination unreachable received from the router on the tunnel path has a problem that should be dealt only with the originating terminal that has transmitted the message that caused the failure. In other words, this is a failure in which a problem to be dealt with has occurred for all communication terminals existing within the address range of the tunnel in which this message is accommodated.

つまり、この場合に問題となる障害はトンネルに関係しているので、発側トンネル装置はトンネル経路上ルータから受信したICMPエラー通知メッセージ73を、このトンネルを使用している(使用する可能性のある)発側端末にも通知することが望ましい。   That is, in this case, since the trouble that becomes a problem is related to the tunnel, the originating tunnel device uses the ICMP error notification message 73 received from the router on the tunnel route using this tunnel (possibility of use). It is desirable to notify the originating terminal.

このような場合、ICMPエラーを通知すべき発側端末は、障害が発生したトンネルに収容する発側アドレス範囲(発側端末範囲303)内に存在する。ところが、どの発側端末が現在、そのトンネルを使用している(使用する可能性がある)かを判断する情報がICMPエラー通知メッセージ73には含まれず、さらにカプセル化トンネリング装置自体も判断情報を持たないため、実際にそのトンネルを使用している発側端末範囲302の判定を行うことは難しい。   In such a case, the calling terminal that should notify the ICMP error is present in the calling address range (calling terminal range 303) accommodated in the tunnel in which the failure has occurred. However, the ICMP error notification message 73 does not include information for determining which calling terminal is currently using (possibly using) the tunnel, and the encapsulated tunneling device itself also includes the determination information. Therefore, it is difficult to determine the calling terminal range 302 that actually uses the tunnel.

トンネルの収容発側アドレス範囲の発側端末の全て(発側端末範囲303)にICMPエラー通知メッセージ73すると、実際にはこのトンネルを使用している発側端末数がトンネルの発側アドレス範囲の端末数に比べて小さい場合、多くの不要なICMPエラー通知メッセージ73が通信端末側に通知されることになる。例えば、トンネルの発側アドレス範囲=(192.168.0.0/16)の65535台に対し、実際にこのトンネル使用する端末のアドレスが(192.168.0.1−192.168.0.10)の10台程度である場合、多くの不要なICMPエラー通知メッセージ73が通信端末側に通知されることになる。これにより、通信端末へのICMPエラー通知メッセージ74、あるいはこれに伴うARP送受信などによって帯域の無駄な消費になる。   When the ICMP error notification message 73 is sent to all of the originating terminals (originating terminal range 303) in the accommodated originating address range of the tunnel, the number of originating terminals actually using this tunnel is the number of the originating address range of the tunnel. When the number is smaller than the number of terminals, many unnecessary ICMP error notification messages 73 are notified to the communication terminal side. For example, the address of the terminal that actually uses the tunnel is (192.168.0.1−192.168.8.0) with respect to 65535 units in the tunnel source address range = (192.168.0.0/16). .10), about 10 unnecessary ICMP error notification messages 73 are notified to the communication terminal side. As a result, the bandwidth is wasted due to the ICMP error notification message 74 to the communication terminal or the accompanying ARP transmission / reception.

一方、ICMPエラー通知メッセージ73をその障害を検出する要因となったメッセージの発側端末(発側端末範囲301)のみに通知すると、実際にはこのトンネルを使用している通信端末数が非常に多い場合、トンネルを使用する多くの通信端末へのICMPエラー通知処理が複雑になる。例えば、トンネルの発側アドレス範囲=(192.168.0.0/24)に対し、実際にこのトンネル使用する通信端末のアドレスが(192.168.0.1−192.168.0.250)の250台と多い場合がある。   On the other hand, if the ICMP error notification message 73 is notified only to the originating terminal (originating terminal range 301) of the message that caused the failure detection, the number of communication terminals that actually use this tunnel is very large. In many cases, ICMP error notification processing to many communication terminals using a tunnel becomes complicated. For example, the address of the communication terminal that actually uses the tunnel is (192.168.0.1−192.168.0.250) with respect to the originating address range of the tunnel = (192.168.0.0/24). ) Of 250 units.

このとき、トンネルを使用する多くの通信端末は、各々が通信端末からトンネルを使用するメッセージを送信し、発側トンネル装置はこの各々の通信端末が送信するメッセージを受信する。そして、発側トンネル装置は各々のメッセージに使用するトンネルを判定し、さらにこの障害が発生したトンネルを使用するのでICMPエラー通知メッセージの転送不可と判定した後、ようやくICMPエラー通知メッセージ74をその通信端末だけに応答することとなる。   At this time, many communication terminals using the tunnel each transmit a message using the tunnel from the communication terminal, and the originating tunnel device receives the message transmitted by each communication terminal. The originating tunnel device determines the tunnel to be used for each message, and further determines that the ICMP error notification message cannot be transferred because it uses the tunnel in which this failure has occurred. It will respond only to the terminal.

すなわち、非特許文献1で説明した状況が各々の通信端末に対して大規模に発生し、発側端末は中継路上のトンネル使用不可による障害発生を、各々の通信端末が次のメッセージを送信しICMPエラーが応答されるまで知ることは出来ないというタイムタグが発生する。さらに、各々の発側端末が個別にメッセージを送信し、それに伴い個別にICMPエラー通知されることで、多くの不要な送信メッセージが発側トンネル装置に送信され、帯域の無駄な消費になるだけでなく、発側トンネル装置の処理負荷も増大する。   That is, the situation described in Non-Patent Document 1 occurs on a large scale for each communication terminal, the originating terminal transmits a failure due to the unavailability of the tunnel on the relay path, and each communication terminal transmits the next message. A time tag that cannot be known until an ICMP error is responded occurs. Furthermore, each originating terminal individually sends a message, and accordingly, an ICMP error notification is sent individually, so that many unnecessary sending messages are sent to the originating tunnel device, which only wastes bandwidth. In addition, the processing load on the originating tunnel device also increases.

一方、本実施の形態1に係る暗号通信装置10Aは、SA使用端末DB61(使用SA情報102)とシーケンス使用端末DB62(シーケンス番号情報103)を備え、IPSECメッセージ72の送信時に、SAを使用する発着通信端末と、シーケンス番号毎の発着通信端末アドレスを記憶するようにしている。   On the other hand, the cryptographic communication apparatus 10A according to the first embodiment includes the SA use terminal DB 61 (use SA information 102) and the sequence use terminal DB 62 (sequence number information 103), and uses the SA when transmitting the IPSEC message 72. The incoming / outgoing communication terminal and the incoming / outgoing communication terminal address for each sequence number are stored.

また、暗号通信装置10Aは、ICMP中継処理判定部51、ICMP再生部52、ICMP送信端末決定部53を備え、ICMPエラー通知メッセージ73の受信時には、通知されたICMPエラーの内容を解釈するとともに、ICMPエラー通知メッセージ74を再生している。さらに、受信したICMPエラーの種別に応じて、ICMPエラー通知メッセージ74を通知する発側端末を決定し、使用SA情報102、シーケンス番号情報103に基づいて、ICMPエラー通知メッセージ74を通知する発側端末のアドレスを回復できるようにしている。   The encryption communication device 10A includes an ICMP relay processing determination unit 51, an ICMP reproduction unit 52, and an ICMP transmission terminal determination unit 53. When receiving the ICMP error notification message 73, the encryption communication device 10A interprets the content of the notified ICMP error, An ICMP error notification message 74 is reproduced. Further, the originating terminal that notifies the ICMP error notification message 74 is determined according to the type of the ICMP error received, and the originating side that notifies the ICMP error notification message 74 based on the used SA information 102 and the sequence number information 103 is determined. The terminal address can be recovered.

これにより、ICMPエラー通知メッセージ73を受信した際の発着端末アドレスをICMPエラー通知メッセージ73から直接判定することが可能となる。したがって、暗号化通信装置10Aがトンネリング通信を利用し、トンネル経路上で送受信されるトンネリングメッセージの発着アドレスが発着トンネル装置(暗号化通信装置10A,10B)のアドレスとなり、発着端末のアドレスが内側メッセージに隠蔽されてしまう場合であっても、適切な発側端末にICMPエラー通知メッセージ74を送信することが可能となる。   This makes it possible to directly determine the arrival / departure terminal address when the ICMP error notification message 73 is received from the ICMP error notification message 73. Accordingly, the encrypted communication device 10A uses tunneling communication, and the arrival / departure address of the tunneling message transmitted / received on the tunnel path becomes the address of the arrival / departure tunnel device (encrypted communication devices 10A, 10B), and the address of the arrival / departure terminal is the inner message. Even if it is concealed, the ICMP error notification message 74 can be transmitted to an appropriate originating terminal.

このように実施の形態1によれば、暗号通信装置10Aは、発側端末から送信された元のIPメッセージの部分が暗号化されている場合であっても、暗号化通信路上(トンネル側)から送信IPSECメッセージ72を含むICMPエラー通知メッセージ73を受信した際に、ICMPエラー通知メッセージ73を必要とする発側端末を適切に判断することが可能となる。したがって、容易にICMPエラー通知メッセージ74を適切な発側端末に通知することが可能となる。   As described above, according to the first embodiment, the encryption communication device 10A is on the encrypted communication path (tunnel side) even when the part of the original IP message transmitted from the calling terminal is encrypted. When the ICMP error notification message 73 including the transmission IPSEC message 72 is received, the calling terminal that needs the ICMP error notification message 73 can be appropriately determined. Therefore, the ICMP error notification message 74 can be easily notified to an appropriate originating terminal.

また、暗号通信装置10Aは、ICMPエラー通知メッセージ73の必要な発側端末を絞り込んでICMPエラーを通知するので、暗号通信装置10Aが通信端末に送信する不要なICMPエラーの通知量(データ量)を削減できる。   Further, since the cryptographic communication device 10A narrows down the necessary originating side terminals of the ICMP error notification message 73 and notifies the ICMP error, the notification amount (data amount) of the unnecessary ICMP error transmitted from the cryptographic communication device 10A to the communication terminal. Can be reduced.

また、暗号通信装置10Aは、トンネル経路上のIPルータ(ルータR1〜R3)からICMPエラー通知メッセージ73を受信した際に、発側端末側にICMPエラー通知メッセージ73を行なうので、発側端末が、発側端末から送信したメッセージが暗号化通信路(トンネル経路)上で発生させた障害や状態変化を知るまでのタイムラグを短くさせることが可能となる。したがって、発側端末は、暗号化通信路を使用する不要なメッセージを送信することが無くなり、発側端末が暗号通信装置10Aに送信する不要な送信メッセージ量も削減できる。これにより、帯域の無駄な消費を抑制し、発側端末に効率良くICMPエラー通知メッセージ74を通知することが可能となる。   In addition, when the encryption communication device 10A receives the ICMP error notification message 73 from the IP routers (routers R1 to R3) on the tunnel path, the encryption communication device 10A sends the ICMP error notification message 73 to the calling terminal. It is possible to shorten the time lag until the message transmitted from the originating terminal knows the failure or state change that has occurred on the encrypted communication path (tunnel path). Therefore, the calling terminal does not transmit unnecessary messages using the encrypted communication path, and the amount of unnecessary transmission messages transmitted from the calling terminal to the encryption communication device 10A can be reduced. As a result, wasteful bandwidth consumption can be suppressed, and the ICMP error notification message 74 can be efficiently notified to the calling terminal.

また、暗号通信装置10Aは、SA使用端末DB61(使用SA情報102)で受信タイムアウトとなったデータを削除(忘却)するので、SA使用端末DB61を効率良く利用することができるとともに、メモリ容量を小さく構成することが可能になる。   Further, since the encryption communication device 10A deletes (forgets) data that has received a timeout in the SA use terminal DB 61 (use SA information 102), the SA use terminal DB 61 can be used efficiently and the memory capacity can be increased. It becomes possible to make it small.

また、暗号通信装置10Aは、シーケンス使用端末DB62(シーケンス番号情報103)で、所定時間の経過後等に古くなったデータを削除するので、シーケンス使用端末DB62を効率良く利用することができるとともに、メモリ容量を小さく構成することが可能になる。   Further, since the encryption communication device 10A deletes data that has become obsolete after a predetermined time elapses in the sequence use terminal DB 62 (sequence number information 103), the sequence use terminal DB 62 can be efficiently used. The memory capacity can be reduced.

実施の形態2.
つぎに、図12〜図15を用いてこの発明の実施の形態2について説明する。実施の形態2では、暗号化された元のIPメッセージの一部を復号して、ICMPエラー通知メッセージ74を送信すべき発側端末のアドレスを割り出す。
Embodiment 2. FIG.
Next, a second embodiment of the present invention will be described with reference to FIGS. In the second embodiment, a part of the encrypted original IP message is decrypted, and the address of the originating terminal to which the ICMP error notification message 74 should be transmitted is determined.

図12は、本発明に係る暗号化通信装置の実施の形態2の構成を示すブロック図である。図12の各構成要素のうち図3に示す実施の形態1の暗号化通信装置10Aと同一機能を達成する構成要素については同一番号を付しており、重複する説明は省略する。   FIG. 12 is a block diagram showing the configuration of the second embodiment of the encrypted communication apparatus according to the present invention. Of the constituent elements in FIG. 12, the constituent elements that achieve the same functions as those of the encrypted communication device 10A of the first embodiment shown in FIG.

ここでの暗号化通信装置10Aは、ICMP再生データ管理部60にSA使用端末DB61を備えている。また、暗号化通信装置10Aは、ICMP中継再生処理部50に、ICMP中継処理判定部51、ICMP復号・再生処理部55、ICMP送信端末決定部53を有している。   The encrypted communication device 10 </ b> A here includes an SA using terminal DB 61 in the ICMP reproduction data management unit 60. Further, the encrypted communication device 10A includes an ICMP relay reproduction processing unit 50, an ICMP relay processing determination unit 51, an ICMP decryption / reproduction processing unit 55, and an ICMP transmission terminal determination unit 53.

ICMP復号・再生処理部55は、受信したICMPエラー通知メッセージ73(後述のメッセージM11〜M15)に付与されたIPSECメッセージから、IPSEC_ESPヘッダと初期ベクトル値を得て、元のIPメッセージヘッダを復号する。   The ICMP decoding / reproduction processing unit 55 obtains the IPSEC_ESP header and the initial vector value from the IPSEC message attached to the received ICMP error notification message 73 (messages M11 to M15 described later), and decodes the original IP message header. .

つぎに、実施の形態2に係る暗号化通信装置10Aの動作手順について説明する。なお、実施の形態1の暗号化通信装置10Aと同様の動作を行なう手順についてはその説明を省略する。   Next, an operation procedure of the encrypted communication device 10A according to the second embodiment will be described. In addition, the description about the procedure which performs the same operation | movement as 10 A of encryption communication apparatuses of Embodiment 1 is abbreviate | omitted.

(送信側での暗号化処理)
図13は、送信側の暗号化通信装置の暗号化処理を説明するための図である。暗号化通信装置10Aの暗号化処理部23は、発側端末からのIPメッセージ71を受信して、対向する暗号化通信装置10BへIPSECメッセージ72を送信するため、IPメッセージ71の暗号化処理を行なう。
(Encryption processing on the sending side)
FIG. 13 is a diagram for explaining the encryption processing of the encryption communication device on the transmission side. The encryption processing unit 23 of the encrypted communication device 10A receives the IP message 71 from the originating terminal and transmits the IPSEC message 72 to the opposite encrypted communication device 10B. Do.

このとき、暗号化処理部23は、対抗する暗号化通信装置10Bと共有する共有秘密鍵81、最初の送信メッセージの時は初期ベクトル値の初期値82、あるいは後続の送信メッセージではその1つ前の送信メッセージの暗号化データ(暗号ブロックの最終ブロック)から生成する初期ベクトル値131〜134を用いて、各メッセージM1〜M5(IPメッセージ71)を暗号化する。初期ベクトル値の初期値82、初期ベクトル値131〜135は、メッセージ毎に異なる擬似乱数の初期ベクトルであり、暗号化処理部23は、この初期ベクトル値の初期値82、あるいは初期ベクトル値131〜134を用いて、暗号化に使用する暗号化ブロック長単位でIPメッセージ71を暗号化する。   At this time, the encryption processing unit 23 shares the shared secret key 81 shared with the opposing encrypted communication device 10B, the initial value 82 of the initial vector value for the first transmission message, or the previous one for the subsequent transmission message. Each message M1 to M5 (IP message 71) is encrypted using the initial vector values 131 to 134 generated from the encrypted data (the last block of the encryption block) of the transmission message. The initial vector value 82 and the initial vector values 131 to 135 are pseudo-random initial vectors different for each message, and the encryption processing unit 23 uses the initial vector value initial value 82 or the initial vector value 131 to 134 is used to encrypt the IP message 71 in units of encryption block length used for encryption.

これらの初期ベクトル値は、各パケット(メッセージM1〜M5)毎に、ESPデータ内の最初の部分に付与される。すなわち、初期ベクトル値は、ESPヘッダの直後の部分であって、暗号化するIPメッセージ71の前(暗号化データの前)に付与される。すなわち、初期ベクトル値はESPヘッダと暗号化したIPメッセージの間に入れられている。なお、ここでの初期ベクトル値はESPヘッダには含まれずペイロード部に含まれている。   These initial vector values are assigned to the first part in the ESP data for each packet (messages M1 to M5). That is, the initial vector value is a portion immediately after the ESP header and is given before the IP message 71 to be encrypted (before the encrypted data). That is, the initial vector value is inserted between the ESP header and the encrypted IP message. Note that the initial vector value here is not included in the ESP header but is included in the payload portion.

(送信側でのICMP復号処理)
図14は、送信側の暗号化通信装置のICMP復号処理を説明するための図である。暗号化通信装置10AのICMP復号・再生処理部55は、ルータR1〜R3からICMPエラー通知メッセージ73(メッセージM1〜M5に対応するメッセージM11〜M15)を受信すると、このメッセージM11〜M15の暗号化に使用した初期ベクトル値の再生と、メッセージM11〜M15の復号を行なう。
(ICMP decoding process on the transmission side)
FIG. 14 is a diagram for explaining ICMP decryption processing of the encrypted communication device on the transmission side. When receiving the ICMP error notification message 73 (messages M11 to M15 corresponding to the messages M1 to M5) from the routers R1 to R3, the ICMP decryption / reproduction processing unit 55 of the encrypted communication device 10A encrypts the messages M11 to M15. The initial vector values used in the above are reproduced and the messages M11 to M15 are decoded.

ここでのメッセージM11〜M15の復号には、共有秘密鍵81、初期ベクトル値の初期値82、初期ベクトル値131〜134が必要となる。共有秘密鍵はSAが永続する限り不変であるが、各初期ベクトル値131〜135はメッセージ毎に可変となる。   The decryption of the messages M11 to M15 here requires the shared secret key 81, the initial value 82 of the initial vector value, and the initial vector values 131 to 134. The shared secret key is unchanged as long as the SA persists, but the initial vector values 131 to 135 are variable for each message.

このためICMP復号・再生処理部55は、受信したICMPエラー通知メッセージ73(メッセージM11〜M15)に付与されたIPSECメッセージから、IPSEC_ESPヘッダの初期ベクトル値を得て、元のIPメッセージヘッダ(IPヘッダ)を復号する。   Therefore, the ICMP decoding / reproduction processing unit 55 obtains an initial vector value of the IPSEC_ESP header from the IPSEC message attached to the received ICMP error notification message 73 (messages M11 to M15), and obtains the original IP message header (IP header). ).

この時、受信したICMPエラー通知メッセージ73に付与されるデータ長としては、IPSEC_ESPヘッダ長+各暗号化アルゴリズムが使用する初期ベクトル長+元のIPメッセージのヘッダ長分が必要となる。さらに、元のIPメッセージヘッダはブロック暗号のブロック暗号長単位で復号される。このため、ルータR1〜R3が応答するICMPエラー通知メッセージ73(メッセージM11〜M14)の付与メッセージ長は、暗号化通信装置10Aと暗号化通信装置10Bの間で使用されるIPSECメッセージのIPヘッダ長に加え、以下のヘッダ長を用いて応答する。すなわち、ルータR1〜R3は、IPSECメッセージのIPヘッダ長、IPSEC_ESPヘッダ長と各暗号化アルゴリズムが使用する初期ベクトル長(A)、暗号化された元のオリジナルメッセージのIPヘッダ長(B)の合計値以上のデータ長で、メッセージM11〜M14を暗号化通信装置10Aに応答する。   At this time, as the data length given to the received ICMP error notification message 73, the IPSEC_ESP header length + the initial vector length used by each encryption algorithm + the header length of the original IP message is required. Further, the original IP message header is decrypted in block cipher length units of the block cipher. For this reason, the attached message length of the ICMP error notification message 73 (messages M11 to M14) to which the routers R1 to R3 respond is the IP header length of the IPSEC message used between the encrypted communication device 10A and the encrypted communication device 10B. In addition, it responds with the following header length. That is, the routers R1 to R3 are the sum of the IP header length of the IPSEC message, the IPSEC_ESP header length, the initial vector length (A) used by each encryption algorithm, and the IP header length (B) of the encrypted original message. The messages M11 to M14 are returned to the encrypted communication device 10A with a data length equal to or greater than the value.

なお、(B)のデータの暗号化はDES、3DES等のブロック暗号により行われるとともに、ブロック暗号は64bitや128bit等のブロック単位長毎でないと暗号化通信装置10Aで復号できないため、(B)のデータ長(オリジナルメッセージ長のIPヘッダ長)は、使用するブロック暗号化アルゴリズムの暗号化ブロック単位長で切り上げた長さとする。   The data encryption in (B) is performed by block cipher such as DES and 3DES, and the block cipher cannot be decrypted by the encrypted communication apparatus 10A unless the block unit length is 64 bits or 128 bits. The data length (IP header length of the original message length) is the length rounded up by the encryption block unit length of the block encryption algorithm to be used.

ここでは、メッセージM2,3,5に対応するメッセージM12,13,15がルータR1〜R3の何れかからICMP応答なしの場合を示している。このような場合であっても、ICMP復号・再生処理部55が、例えばメッセージM14を復号する際には、メッセージM14に付与されたIPSECメッセージから、IPSEC_ESPヘッダの直後の初期ベクトル値を得て、元のIPメッセージヘッダ(IPヘッダ)を復号できる。   Here, a case is shown in which the messages M12, 13, and 15 corresponding to the messages M2, 3, and 5 do not have an ICMP response from any of the routers R1 to R3. Even in such a case, when the ICMP decoding / reproduction processing unit 55 decodes the message M14, for example, the initial vector value immediately after the IPSEC_ESP header is obtained from the IPSEC message given to the message M14. The original IP message header (IP header) can be decrypted.

(受信側でのメッセージ復号処理)
図15は、受信側の暗号化通信装置のメッセージ復号処理を説明するための図である。ルータR1〜R3の何れかから暗号化通信装置10BへICMPエラー通知メッセージ73が送られることなく、暗号化通信装置10Aから暗号化通信装置10Bへ、IPSECメッセージ72が送信されると、暗号化通信装置10Bの復号処理部35は受信したIPSECメッセージ72(メッセージM1〜M5に対応するメッセージM21〜M25)の復号を行なう。このとき、暗号化通信装置10Bは、メッセージM21〜M25の暗号化に使用した初期ベクトル値を再生し、メッセージM21〜M25の復号を行なう。
(Message decryption process on the receiving side)
FIG. 15 is a diagram for explaining message decryption processing of the encrypted communication device on the receiving side. When the IPSEC message 72 is transmitted from the encrypted communication device 10A to the encrypted communication device 10B without sending the ICMP error notification message 73 from any of the routers R1 to R3 to the encrypted communication device 10B, the encrypted communication is performed. The decryption processing unit 35 of the device 10B decrypts the received IPSEC message 72 (messages M21 to M25 corresponding to the messages M1 to M5). At this time, the encrypted communication device 10B reproduces the initial vector values used for encrypting the messages M21 to M25, and decrypts the messages M21 to M25.

ここでは、メッセージM2に対応するメッセージM22がルータR1〜R3の何れかによる廃棄処理によって欠落している場合を示している。このような場合であっても、復号処理部35が、例えばメッセージM23を復号する際には、IPSEC_ESPヘッダの直後の初期ベクトル値を得て、メッセージM23に付与されたIPSECメッセージ部を復号する。   Here, a case where the message M22 corresponding to the message M2 is missing due to the discarding process by any of the routers R1 to R3 is shown. Even in such a case, for example, when decoding the message M23, the decoding processing unit 35 obtains an initial vector value immediately after the IPSEC_ESP header and decodes the IPSEC message portion attached to the message M23.

なお、ここでは暗号化通信装置10Aから暗号化通信装置10Bへ送信するメッセージがメッセージM1〜M5の5つである場合について説明したが、メッセージ数は5つに限られず4つ以下でもよいし6つ以上でもよい。   Although the case where the number of messages transmitted from the encrypted communication device 10A to the encrypted communication device 10B is five messages M1 to M5 has been described here, the number of messages is not limited to five and may be four or less. There may be more than one.

このように実施の形態2によれば、ICMPエラー通知メッセージ73に付与するデータ長を、IPSECメッセージのIPヘッダ長、IPSEC_ESPヘッダ長と各暗号化アルゴリズムが使用する初期ベクトル長(A)、暗号化された元のオリジナルメッセージのIPヘッダ長(B)の合計値以上のデータ長(元のオリジナルメッセージ長のIPヘッダを復号できる十分なデータ長)としているので、ICMP復号・再生処理部55は、所望の元のオリジナルメッセージのIPヘッダを復号することが可能となる。これにより、暗号化通信装置10Aは、ICMPエラー通知メッセージ73を送信すべき通信端末のアドレス(端末識別情報)を得ることができ、適切な通信端末にICMPエラー通知メッセージ74を送信することが可能となる。   As described above, according to the second embodiment, the data length to be added to the ICMP error notification message 73 includes the IP header length of the IPSEC message, the IPSEC_ESP header length, the initial vector length (A) used by each encryption algorithm, and the encryption. Since the data length is equal to or greater than the total value of the IP header length (B) of the original original message that is generated (the data length sufficient to decode the IP header of the original original message length), the ICMP decoding / reproduction processing unit 55 It becomes possible to decode the IP header of the desired original message. Thus, the encrypted communication device 10A can obtain the address (terminal identification information) of the communication terminal to which the ICMP error notification message 73 should be transmitted, and can transmit the ICMP error notification message 74 to an appropriate communication terminal. It becomes.

また、暗号化通信装置10Aは、ICMPエラー通知メッセージ73からICMPエラー通知メッセージ73を送信すべき通信端末のアドレスを得ることができるので、シーケンス番号等を記憶しておくシーケンス使用端末DB62を用いることなく、簡易な構成で適切な通信端末にICMPエラー通知メッセージ74を送信することが可能となる。   Further, since the encrypted communication device 10A can obtain the address of the communication terminal to which the ICMP error notification message 73 should be transmitted from the ICMP error notification message 73, the sequence use terminal DB 62 that stores the sequence number and the like is used. The ICMP error notification message 74 can be transmitted to an appropriate communication terminal with a simple configuration.

実施の形態3.
つぎに、図16〜図18を用いてこの発明の実施の形態3について説明する。実施の形態3では、IPSECメッセージ72を送信する際にIPSECメッセージ72を識別するための情報を記憶しておき、ICMPエラー通知メッセージ73を受信した際には、記憶しておいた情報に基づいて、ICMPエラー通知メッセージ73が偽装したものであるか否かを判断する。これにより、偽装されたIPSEC_ESPヘッダ部のシーケンス番号を持ったICMPエラーを通知して通信を妨害するDoS攻撃に耐性を持たせる。
Embodiment 3 FIG.
Next, a third embodiment of the present invention will be described with reference to FIGS. In the third embodiment, information for identifying the IPSEC message 72 is stored when the IPSEC message 72 is transmitted, and when the ICMP error notification message 73 is received, the information is stored based on the stored information. Then, it is determined whether or not the ICMP error notification message 73 is forged. This makes it resistant to a DoS attack that notifies an ICMP error having the sequence number of the spoofed IPSEC_ESP header part and interferes with communication.

図16は、本発明に係る暗号化通信装置の実施の形態3の構成を示すブロック図である。図16の各構成要素のうち図3に示す実施の形態1の暗号化通信装置10Aと同一機能を達成する構成要素については同一番号を付しており、重複する説明は省略する。   FIG. 16 is a block diagram showing the configuration of the third embodiment of the encrypted communication apparatus according to the present invention. Of the constituent elements in FIG. 16, the constituent elements that achieve the same functions as those of the encrypted communication device 10A according to the first embodiment shown in FIG.

ここでの暗号化通信装置10Aは、シーケンス認証値DB(記憶部)91を備えている。また、暗号化通信装置10Aは、ICMP受信処理部40に、ICMP内部パケット抽出・監査処理部45を備えている。   Here, the encrypted communication device 10 </ b> A includes a sequence authentication value DB (storage unit) 91. In addition, the encrypted communication apparatus 10A includes an ICMP internal packet extraction / audit processing unit 45 in the ICMP reception processing unit 40.

シーケンス認証値DB91は、暗号化通信装置10AがIPSECメッセージ72を送信する際に算出される、独自のメッセージダイジェスト認証値(後述の偽装検出用認証値)に関する情報(後述の認証値情報104)を記憶する。   The sequence authentication value DB 91 stores information (authentication value information 104 described later) on an original message digest authentication value (authentication value for impersonation detection described later) calculated when the encrypted communication device 10A transmits the IPSEC message 72. Remember.

ICMP復号・再生処理部55は、暗号化通信装置10AにICMPエラー通知メッセージ73や後述の偽装メッセージが通知された際、元のIPSECメッセージ72のIPヘッダ+64Byteに対して偽装検出用認証値を算出するとともにシーケンス番号を抽出する。ICMP内部パケット抽出・監査処理部45は、抽出したシーケンス番号をキーとして、シーケンス認証値DB91からシーケンス番号に対応する偽装検出用認証値を抽出し、シーケンス認証値DB91から抽出した偽装検出用認証値と算出した偽装検出用認証値を比較して、偽装メッセージを検出する。   The ICMP decryption / reproduction processing unit 55 calculates an impersonation detection authentication value for the IP header +64 bytes of the original IPSEC message 72 when an ICMP error notification message 73 or an impersonation message described later is notified to the encrypted communication device 10A. And the sequence number is extracted. The ICMP internal packet extraction / audit processing unit 45 extracts the authentication value for impersonation detection corresponding to the sequence number from the sequence authentication value DB 91 using the extracted sequence number as a key, and the authentication value for impersonation detection extracted from the sequence authentication value DB 91 And the calculated authentication value for impersonation detection is detected.

つぎに、偽装されたICMPエラー通知メッセージ73の検出方法について説明する。正規のルータであるルータR1等が送信するICMPエラー通知メッセージ73と、偽物のルータ(以下、偽装ルータという)が送信するICMPエラー通知メッセージ(以下、偽装メッセージという)は、ESPヘッダ+データ部が僅かに異なっている。   Next, a method for detecting the camouflaged ICMP error notification message 73 will be described. An ICMP error notification message 73 transmitted by a router R1 or the like which is a regular router and an ICMP error notification message (hereinafter referred to as a forged router) transmitted by a fake router (hereinafter referred to as a forged router) have an ESP header + data portion. Slightly different.

これは、偽装ルータが正規の元のIPSECメッセージ72を知ることが出来ないため、偽装ルータが予測によって偽装メッセージに含める元のIPSECメッセージ72の部分(データ部)を生成するからである。   This is because the camouflaged router cannot know the original IPSEC message 72 that is legitimate, and therefore the camouflaged router generates a part (data part) of the original IPSEC message 72 to be included in the camouflaged message by prediction.

本実施の形態3に係る暗号化通信装置10Aは、通信システム100内で、ルータR1等が送信するICMPエラー通知メッセージ73と、偽装ルータが送信する偽装メッセージとで異なる部分を抽出し、偽装メッセージを検出する。   The encrypted communication apparatus 10A according to the third embodiment extracts different parts in the communication system 100 between the ICMP error notification message 73 transmitted by the router R1 and the like and the forged message transmitted by the forged router, Is detected.

偽装ルータは、発側の暗号化通信装置10Aや着側の暗号化通信装置10Bのアドレス、中継路上にある正規のルータR1〜R3のアドレス、ESPで使用するSPI値などは何らかの手段で入手できる可能性がある。また、ESPで使用するシーケンス番号は1から順に始まることなどを利用して、偽装メッセージを偽造できる場合がある。   The spoofed router can obtain the addresses of the originating encryption communication device 10A and the destination encryption communication device 10B, the addresses of the regular routers R1 to R3 on the relay path, the SPI value used in ESP, etc. by some means. there is a possibility. Further, there are cases where a forged message can be forged by utilizing the fact that the sequence number used in ESP starts from 1 in order.

しかしながら、発側端末が実際に転送するIPメッセージ71をさらに暗号化したIPSECメッセージ72の内部パケットの部分まで偽造することは、実際のIPSECメッセージ72を受信可能な正規の暗号化通信路上のルータR1〜R3以外には不可能である。   However, forging the IP packet 71 actually transferred by the calling terminal up to the internal packet portion of the encrypted IPSEC message 72 means that the router R1 on the regular encrypted communication path that can receive the actual IPSEC message 72 is used. It is impossible except for ~ R3.

正規のICMPエラー通知メッセージ73に含まれる元のIPSEC_ESPメッセージと、偽装メッセージに含まれるIPSEC_ESPメッセージの異なる部分(差異)として各バイト位置の値があげられる。ところが、この差異は全てのバイト位置で必ず発生するという分けではない。特定の1バイト同士でメッセージを比較する場合、例えば攻撃者はその特定のバイトを0x00〜0xffまでの全ての値を持った偽造したICMPエラー通知を生成すれば、簡単に発側の暗号通信装置10Aの偽装検出を回避することができてしまう。   The value of each byte position is given as a different part (difference) between the original IPSEC_ESP message included in the regular ICMP error notification message 73 and the IPSEC_ESP message included in the fake message. However, this difference does not necessarily occur at every byte position. When comparing messages between specific one bytes, for example, if an attacker generates a forged ICMP error notification with all the values from 0x00 to 0xff for the specific bytes, the originating encryption communication device can be easily Detection of impersonation of 10A can be avoided.

一方、送信した真のIPSECメッセージ72の元のIPSEC_ESPメッセージの全バイトと、偽装メッセージが含むIPSEC_ESPメッセージの全バイトについて異なる部分を検査し、1バイトでも違いが発生していれば、それは偽装メッセージであると判断できる。   On the other hand, if all the bytes of the original IPSEC_ESP message of the transmitted true IPSEC message 72 and all the bytes of the IPSEC_ESP message included in the forged message are inspected, if even one byte is different, it is a forged message. It can be judged that there is.

したがって、本実施の形態3においては、発側の暗号通信装置10Aは、送信する全てのIPSECメッセージ72を所定の期間保存し、ICMPエラー通知メッセージ73や偽装メッセージが応答されると、メッセージ内に付与された元のIPSEC_ESPメッセージの一部と保存しておいたIPSECメッセージ72を比較する。そして、両者に差異があれば、この差異を検出してメッセージの受け入れを拒否する。   Therefore, in the third embodiment, the originating encryption communication device 10A stores all the IPSEC messages 72 to be transmitted for a predetermined period, and when an ICMP error notification message 73 or a forged message is responded, A part of the assigned original IPSEC_ESP message is compared with the stored IPSEC message 72. If there is a difference between the two, the difference is detected and the message is rejected.

また、本実施の形態3においては、発側の暗号通信装置10Aは、メッセージダイジェスト認証を用いて正当なメッセージと偽装メッセージの差異比較や差異点の抽出処理を行なう。   Further, in the third embodiment, the originating encryption communication device 10A performs a difference comparison between a legitimate message and a forged message and a difference extraction process using message digest authentication.

元のIPSECメッセージ71には図13に示したように、メッセージダイジェスト認証値が付与され保護されている。しかしながら、このメッセージダイジェスト認証値は、元のIPSEC_ESPメッセージの最後に付与されるので、通知されたICMPエラー通知メッセージ73からは、元のIPSEC_ESPメッセージの正当性は検証できない。   As shown in FIG. 13, the original IPSEC message 71 is protected by being given a message digest authentication value. However, since this message digest authentication value is given at the end of the original IPSEC_ESP message, the correctness of the original IPSEC_ESP message cannot be verified from the notified ICMP error notification message 73.

そこで、ここでの暗号化通信装置10Aの認証値計算部(第1の識別情報算出部)25は、通常のIPSEC_ESPメッセージ全体を保護する標準のメッセージダイジェスト認証値の他に、自身だけが使用する別のメッセージダイジェスト認証値(以下、偽装検出用認証値という)を計算して保持するようにする。   Therefore, the authentication value calculation unit (first identification information calculation unit) 25 of the encrypted communication device 10A here uses only the standard message digest authentication value that protects the entire normal IPSEC_ESP message. Another message digest authentication value (hereinafter referred to as an authentication value for impersonation detection) is calculated and held.

図17は、偽装検出用認証値の算出方法を説明するための図である。同図において上側のパケットは、暗号化通信装置10Aが送信するIPSECメッセージ72(IPSEC_ESPパケット)を示し、下側のパケットは暗号化通信装置10Aが受信するICMPエラー通知メッセージ73を示している。   FIG. 17 is a diagram for explaining a method of calculating an authentication value for impersonation detection. In the figure, the upper packet indicates an IPSEC message 72 (IPSEC_ESP packet) transmitted by the encrypted communication device 10A, and the lower packet indicates an ICMP error notification message 73 received by the encrypted communication device 10A.

暗号化通信装置10AがIPSECメッセージ72を送信する際、認証値計算部25は、元のIPSEC_ESPメッセージに付与される部分(送信するIPSECメッセージ72のIPヘッダ+64Byte(ESPヘッダ+一部のデータ部)に対して独自のメッセージダイジェスト認証である偽装検出用認証値を算出し、シーケンス認証値DB91に記憶させておく。偽装検出用認証値は、後述の認証値情報104としてシーケンス認証値DB91に記憶させておく。   When the encrypted communication device 10A transmits the IPSEC message 72, the authentication value calculation unit 25 adds the part added to the original IPSEC_ESP message (IP header + 64 bytes of the transmitted IPSEC message 72 (ESP header + some data part)) The authentication value for impersonation detection that is unique message digest authentication is calculated and stored in the sequence authentication value DB 91. The authentication value for impersonation detection is stored in the sequence authentication value DB 91 as the authentication value information 104 described later. Keep it.

ここで、シーケンス認証値DB91が記憶する偽装検出用認証値(認証値情報104)について説明する。図18は、認証値情報の構成の一例を示す図である。認証値情報104は、偽装ルータから送信されてきた偽装メッセージを検出するための情報であり、「対向装置」(アドレス)、「SPI値」、「シーケンス番号」、「偽装検出用認証値」がそれぞれ対応付けされている。すなわち、ここでの認証値情報104は、「シーケンス番号」と「偽装検出用認証値」が対応付けされており、IPSECメッセージ72を送信した際に記憶しておいた「偽装検出用認証値」を「シーケンス番号」に基づいて検索できる構成となっている。   Here, the impersonation detection authentication value (authentication value information 104) stored in the sequence authentication value DB 91 will be described. FIG. 18 is a diagram illustrating an example of the configuration of authentication value information. The authentication value information 104 is information for detecting a camouflaged message transmitted from the camouflaged router, and the “counter device” (address), “SPI value”, “sequence number”, and “authentication detection authentication value” are included. Each is associated. That is, in the authentication value information 104 here, “sequence number” and “authentication detection authentication value” are associated with each other, and the “spoof detection authentication value” stored when the IPSEC message 72 is transmitted. Can be searched based on the “sequence number”.

ここでは、暗号化通信装置10AがIPSECメッセージ72を送信する際に、認証値計算部25がICMPエラー通知メッセージ73で応答される可能性のあるIPヘッダ+64Byte分を対象として偽装検出用認証値を算出し、シーケンス番号をキーとしてシーケンス認証値DB91に保存しておく。   Here, when the encrypted communication device 10A transmits the IPSEC message 72, the authentication value calculation unit 25 sets the authentication value for impersonation detection for the IP header +64 bytes that may be responded with the ICMP error notification message 73. Calculated and stored in the sequence authentication value DB 91 using the sequence number as a key.

暗号化通信装置10AにICMPエラー通知メッセージ73や偽装メッセージが通知された際、ICMP内部パケット抽出・監査処理部(第2の識別情報算出部)45は、元のIPSECメッセージ72のIPヘッダ+64Byteに対して偽装検出用認証値を算出するとともにシーケンス番号を抽出する。そして、ICMP内部パケット抽出・監査処理部45は、抽出したシーケンス番号をキーとして、シーケンス認証値DB91からシーケンス番号に対応する偽装検出用認証値を抽出する。さらに、ICMP内部パケット抽出・監査処理部(偽装判断部)45は、シーケンス認証値DB91から抽出した偽装検出用認証値と算出した偽装検出用認証値を比較する。   When the ICMP error notification message 73 or the spoofed message is notified to the encrypted communication device 10A, the ICMP internal packet extraction / audit processing unit (second identification information calculation unit) 45 sets the IP header +64 bytes of the original IPSEC message 72. On the other hand, an authentication value for impersonation detection is calculated and a sequence number is extracted. Then, the ICMP internal packet extraction / audit processing unit 45 extracts the impersonation detection authentication value corresponding to the sequence number from the sequence authentication value DB 91 using the extracted sequence number as a key. Further, the ICMP internal packet extraction / audit processing unit (impersonation determination unit) 45 compares the impersonation detection authentication value extracted from the sequence authentication value DB 91 with the calculated impersonation detection authentication value.

算出した偽装検出用認証値が抽出した偽装検出用認証値と等しい場合、このメッセージは正当なICMPエラー通知メッセージ73であり、等しくない場合は偽装メッセージである。したがって、ICMP内部パケット抽出・監査処理部45は、算出した偽装検出用認証値が抽出した偽装検出用認証値と等しい場合に、メッセージ(ICMPエラー通知メッセージ73)を受け入れる。一方、ICMP内部パケット抽出・監査処理部45は、算出した偽装検出用認証値が抽出した偽装検出用認証値と等しくない場合に、メッセージ(偽装メッセージ)の受け入れを拒否する。   When the calculated authentication value for impersonation detection is equal to the extracted authentication value for impersonation detection, this message is a legitimate ICMP error notification message 73, and when it is not equal, it is a forgery message. Therefore, the ICMP internal packet extraction / audit processing unit 45 accepts the message (ICMP error notification message 73) when the calculated forgery detection authentication value is equal to the extracted forgery detection authentication value. On the other hand, the ICMP internal packet extraction / audit processing unit 45 rejects acceptance of a message (spoofed message) when the calculated authentication value for impersonation detection is not equal to the extracted authentication value for impersonation detection.

なお、偽装検出用認証値の算出は、暗号化通信路上のルーティング処理によって変更される可能のある領域(例えば、IPSECのIPヘッダ部のTOS(Type Of Service)領域、チェックサム領域、DS(Differentiated Services)フィールドなど)を除いて算出してもよい。   It should be noted that the calculation of the authentication value for impersonation detection can be performed by an area that can be changed by routing processing on the encrypted communication path (for example, a TOS (Type Of Service) area in the IP header part of IPSEC, a checksum area, a DS (Differentiated) Service) field, etc.) may be excluded.

これにより、暗号化通信路上の、ICMPエラー通知メッセージ73を応答するルータR1〜R3以外の偽装ルータが、これらの領域(TOS領域やチェックサム領域など)を変更しても、暗号化通信装置10Aは、確実にICMPエラー通知メッセージ73の応答ルータが暗号化通信路上に存在する正規なルータR1〜R3なのか、偽装ルータなのかを判定できる。   As a result, even if a camouflaged router other than the routers R1 to R3 responding to the ICMP error notification message 73 on the encrypted communication path changes these areas (TOS area, checksum area, etc.), the encrypted communication apparatus 10A Can reliably determine whether the response router of the ICMP error notification message 73 is a regular router R1 to R3 existing on the encrypted communication path or a fake router.

ここで、本実施の形態3に係る暗号化通信装置10Aと従来の暗号化通信装置(発側トンネル装置)の差異を明確にするため従来の発側トンネル装置の問題点を説明する。現実のIPネットワークでは、ICMPエラー通知の多くをIPSEC非対応のルータが送信している。このため従来まではICMPエラー通知の正当性を直接確認できなかった。   Here, in order to clarify the difference between the encrypted communication device 10A according to the third embodiment and the conventional encrypted communication device (originating side tunnel device), problems of the conventional originating side tunnel device will be described. In an actual IP network, routers that do not support IPSEC send many ICMP error notifications. For this reason, until now, the validity of ICMP error notification could not be directly confirmed.

したがって、従来までは、通知されたICMPエラー通知あるいは偽装メッセージを全て受け入れるか、全て拒絶するか、あるいはICMPエラー通知に所定のチェックを行なって正当なICMPエラー通知だけを受け入れるかのいずれかである。   Therefore, until now, either all accepted ICMP error notifications or forged messages are accepted, all rejected, or a predetermined check is performed on the ICMP error notification and only a valid ICMP error notification is accepted. .

ところが、ICMPエラー通知を直接的にチェックをして受け入れる技術は従来までなかった。また、全て受け入れる場合には、ICMP_MTU超過やICMP宛先到達不能などネットワーク障害に関する重大な通知を、それが正当であるかとどうかをチェックすることなく受け入れることになり、容易にDoS攻撃が可能になってしまうという問題が発生する。   However, there has been no technology that directly checks and accepts an ICMP error notification. In addition, if all are accepted, a serious notification regarding a network failure such as ICMP_MTU excess or ICMP destination unreachable will be accepted without checking whether it is valid, and a DoS attack can be easily performed. Problem occurs.

また、全て拒絶する場合には、ICMP_MTU超過やICMP宛先到達不能などネットワーク障害に関する重大な通知を全く拒否することになり、重要な障害が検出できないという問題が発生する。   Further, if all are rejected, a serious notification regarding a network failure such as exceeding ICMP_MTU or ICMP destination unreachable will be completely rejected, causing a problem that an important failure cannot be detected.

一方、本実施の形態3に係る暗号通信装置10Aは、IPSECメッセージ72を送信する際にIPSECメッセージ72に基づいて偽装検出用認証値を算出し、IPSECメッセージ72が必ず保持するパケット毎のシーケンス番号と関連付けて記憶している。そして、ICMPエラー通知メッセージ73を受信した際には、このICMPエラー通知メッセージ73に基づいて偽装検出用認証値を算出している。   On the other hand, the encryption communication device 10A according to the third embodiment calculates the authentication value for impersonation detection based on the IPSEC message 72 when transmitting the IPSEC message 72, and the sequence number for each packet that the IPSEC message 72 always holds. It is stored in association with. When the ICMP error notification message 73 is received, an impersonation detection authentication value is calculated based on the ICMP error notification message 73.

そして、IPSECメッセージ72から算出した偽装検出用認証値と、ICMPエラー通知メッセージ73から算出した偽装検出用認証値に基づいて、受信したICMPエラー通知メッセージ73が偽装したものであるか否かを判断している。   Based on the authentication value for impersonation detection calculated from the IPSEC message 72 and the authentication value for impersonation detection calculated from the ICMP error notification message 73, it is determined whether or not the received ICMP error notification message 73 is forged. is doing.

これはシーケンス番号のカウントアップが保証され、それにより各IPSECメッセージを一意に識別できるIPSEC固有の方法であり、シーケンス番号などを持たない既存のIPパケットなどでは、例え独自の認証値を計算してもそれがどの送信パケットに対応する認証値か、ICMPエラー通知メッセージ受信時に比較することができないので、この方法は利用できないのである。   This is an IPSEC-specific method that guarantees the sequence number count-up, thereby uniquely identifying each IPSEC message. For existing IP packets that do not have a sequence number, for example, a unique authentication value is calculated. However, this method cannot be used because it is not possible to compare the authentication value corresponding to which transmission packet when the ICMP error notification message is received.

また、ICMPエラー通知の偽装に注目し、暗号化通信装置10Aは、自身は再生したICMPエラー通知メッセージ74を通信端末側に送信し、通信端末に暗号化通信路上の障害を通知を可能とする機能を持たせるとともに、暗号化通信路上の不正な偽装ルータから受信する偽装メッセージ(偽造したICMPエラー通知)は受け入れないよう構成した。これにより、暗号化通信装置10Aは、IPSEC_ESP環境下において柔軟なICMP制御が可能となる。   Further, paying attention to impersonation of the ICMP error notification, the encrypted communication device 10A itself transmits the reproduced ICMP error notification message 74 to the communication terminal side, thereby enabling the communication terminal to be notified of the failure on the encrypted communication path. In addition to having a function, it is configured not to accept a forged message (forged ICMP error notification) received from an unauthorized forged router on an encrypted communication path. Thus, the encrypted communication device 10A can perform flexible ICMP control under the IPSEC_ESP environment.

このように実施の形態3によれば、発側の暗号化通信装置10Aは、ICMPエラー通知時にこの通知メッセージが暗号経路上に存在する正規のルータR1〜R3からのICMPエラー通知メッセージ73であるか、偽装ルータからの偽装メッセージであるかを容易に判断でき、ICMPエラー通知に起因するDoS攻撃を防御することが可能になる。   As described above, according to the third embodiment, the originating encrypted communication device 10A is the ICMP error notification message 73 from the normal routers R1 to R3 that are present on the encryption path when the ICMP error is notified. It is possible to easily determine whether the message is a forged message from a forged router, and it is possible to protect against a DoS attack caused by ICMP error notification.

また、IPSECメッセージ72の送信時に偽装検出用認証値を保存するので、IPSECメッセージ72全体、やIPSECメッセージ72の必要な部分を保存するのと比べて、必要なメモリ量を大幅に削減できる。したがって、簡易な構成で偽装ルータからの偽装メッセージを検出でき、ICMPエラー通知に起因するDoS攻撃を防御することが可能になる。   Further, since the authentication value for impersonation detection is stored when the IPSEC message 72 is transmitted, the required amount of memory can be greatly reduced as compared to storing the entire IPSEC message 72 or a necessary part of the IPSEC message 72. Therefore, a forged message from a forged router can be detected with a simple configuration, and a DoS attack caused by ICMP error notification can be prevented.

また、偽装検出用認証値をシーケンス番号に対応付けて保存しているので、偽装検出用認証値の比較計算量を削減でき、偽装検出用認証値の比較を容易かつ迅速に行なうことが可能となる。   In addition, since the authentication value for impersonation detection is stored in association with the sequence number, the amount of comparison calculation for the authentication value for impersonation detection can be reduced, and the authentication value for impersonation detection can be easily and quickly compared. Become.

以上説明したように、実施の形態1〜3では、リプレイ攻撃の防御という目的を持つIPSEC_ESPヘッダ内のシーケンス番号が、送信IPSECパケットを一意に識別可能とするインデクッス機能を持つことに注目している。そして、このシーケンス番号を、発着端末アドレスの管理、初期ベクトル値の管理、送信メッセージ認証値(偽装検出用認証値)の管理に用いて実施の形態1〜3を実現している。また、1つのシーケンス番号でリプレイ攻撃の防御と発着端末アドレスの割り出し等を行なえるので、IPSEC_ESP暗号化メッセージヘッダ長を削減することが可能となる。   As described above, in the first to third embodiments, attention is paid to the fact that the sequence number in the IPSEC_ESP header having the purpose of preventing replay attacks has an index function that makes it possible to uniquely identify the transmitted IPSEC packet. . Then, the first to third embodiments are realized by using this sequence number for managing the sending / receiving terminal address, managing the initial vector value, and managing the transmission message authentication value (authentication value for impersonation detection). In addition, since it is possible to prevent replay attacks and determine the destination terminal address with one sequence number, it is possible to reduce the IPSEC_ESP encrypted message header length.

以上のように、本発明にかかる暗号化通信装置は、トンネル通信路上の通信制御用メッセージをトンネル通信路外の通信端末に転送する処理に適している。   As described above, the encrypted communication apparatus according to the present invention is suitable for processing for transferring a communication control message on a tunnel communication path to a communication terminal outside the tunnel communication path.

本発明に係る暗号化通信装置を含む通信ネットワークの構成を示す図である。It is a figure which shows the structure of the communication network containing the encryption communication apparatus which concerns on this invention. 通信ネットワーク内で送受信されるデータの構成を説明するための図である。It is a figure for demonstrating the structure of the data transmitted / received within a communication network. 本発明に係る暗号化通信装置の実施の形態1の構成を示すブロック図である。It is a block diagram which shows the structure of Embodiment 1 of the encryption communication apparatus which concerns on this invention. 発側端末からトンネル側へのデータ送信処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of the data transmission process from a calling side terminal to a tunnel side. 出力側SA情報の構成の一例を示す図である。It is a figure which shows an example of a structure of output side SA information. SA使用端末DBが記憶する使用SA情報の構成の一例を示す図である。It is a figure which shows an example of a structure of use SA information which SA use terminal DB memorize | stores. シーケンス使用端末DBが記憶するシーケンス番号情報の構成の一例を示す図である。It is a figure which shows an example of a structure of the sequence number information which sequence use terminal DB memorize | stores. トンネル側から受信したデータの復号処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of the decoding process of the data received from the tunnel side. ICMP受信処理の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of an ICMP reception process. 実施の形態1に係るICMP再生処理の処理手順を示すフローチャートである。4 is a flowchart showing a processing procedure of ICMP reproduction processing according to the first embodiment. 発側端末範囲を説明するための図である。It is a figure for demonstrating the origin side terminal range. 本発明に係る暗号化通信装置の実施の形態2の構成を示すブロック図である。It is a block diagram which shows the structure of Embodiment 2 of the encryption communication apparatus which concerns on this invention. 送信側の暗号化通信装置の暗号化処理を説明するための図である。It is a figure for demonstrating the encryption process of the encryption communication apparatus of a transmission side. 送信側の暗号化通信装置のICMP復号処理を説明するための図である。It is a figure for demonstrating the ICMP decoding process of the encryption communication apparatus of a transmission side. 受信側の暗号化通信装置のメッセージ復号処理を説明するための図である。It is a figure for demonstrating the message decoding process of the encryption communication apparatus of a receiving side. 本発明に係る暗号化通信装置の実施の形態3の構成を示すブロック図である。It is a block diagram which shows the structure of Embodiment 3 of the encryption communication apparatus which concerns on this invention. 偽装検出用認証値の算出方方法を説明するための図である。It is a figure for demonstrating the calculation method of the authentication value for impersonation detection. 認証値情報の構成の一例を示す図である。It is a figure which shows an example of a structure of authentication value information.

符号の説明Explanation of symbols

1〜3 LAN
5 WAN
10A,10B 暗号化通信装置
11 出力側SADB
12 入力側SADB
13 端末側I/F
14 トンネル側I/F
20 カプセル化処理部
21 SA検索部
22 SA使用許諾判定部
23 暗号化処理部
24 ESPヘッダ処理部
25 認証値計算部
26 IPヘッダ処理部
30 デカプセル化処理部
31 使用SA検索部
32 シーケンス検証部
33 認証値確認処理部
34 リプレイ防御処理部
35 復号処理部
36 出力前SADB監査部36
40 ICMP受信処理部
41 ICMP種別判定部
42 ICMP内部パケット抽出部
43 ICMP種別対応処理部
45 ICMP内部パケット抽出・監査処理部
50 ICMP中継再生処理部
51 ICMP中継処理判定部
52 ICMP再生部
53 ICMP送信端末決定部53
55 ICMP復号・再生処理部
60 ICMP再生データ管理部
61 SA使用端末DB
62 シーケンス使用端末DB
91 シーケンス認証値DB
100 通信システム
101 出力側SA情報
102 使用SA情報
103 シーケンス番号情報
104 認証値情報
301〜303 発側端末範囲
D1〜D3 データ
M1〜M5,M11〜M15,M21〜M25 メッセージ
R1〜R3 ルータ
X1〜Xn,Y1〜Ym,Z1〜Zl 通信端末
1-3 LAN
5 WAN
10A, 10B Encrypted communication device 11 Output side SADB
12 Input side SADB
13 Terminal side I / F
14 Tunnel side I / F
DESCRIPTION OF SYMBOLS 20 Encapsulation process part 21 SA search part 22 SA use permission judgment part 23 Encryption process part 24 ESP header process part 25 Authentication value calculation part 26 IP header process part 30 Decapsulation process part 31 Use SA search part 32 Sequence verification part 33 Authentication value confirmation processing unit 34 Replay protection processing unit 35 Decoding processing unit 36 SADB auditing unit 36 before output
40 ICMP reception processing unit 41 ICMP type determination unit 42 ICMP internal packet extraction unit 43 ICMP type corresponding processing unit 45 ICMP internal packet extraction / audit processing unit 50 ICMP relay reproduction processing unit 51 ICMP relay processing determination unit 52 ICMP reproduction unit 53 ICMP transmission Terminal determination unit 53
55 ICMP Decoding / Reproduction Processing Unit 60 ICMP Reproduction Data Management Unit 61 SA Use Terminal DB
62 Sequence use terminal DB
91 Sequence authentication value DB
DESCRIPTION OF SYMBOLS 100 Communication system 101 Output side SA information 102 Used SA information 103 Sequence number information 104 Authentication value information 301-303 Originating side terminal range D1-D3 Data M1-M5, M11-M15, M21-M25 Message R1-R3 Router X1-Xn , Y1-Ym, Z1-Zl communication terminal

Claims (12)

暗号化通信路外の複数の通信端末からユーザメッセージを受信すると、前記各ユーザメッセージを暗号化およびカプセル化して暗号化通信路上の対向装置に転送し、前記暗号化通信路上で前記ユーザメッセージを前記対向装置へ中継する中継装置から前記ユーザメッセージに基づいて送信される暗号化およびカプセル化された前記ユーザメッセージの少なくとも一部を含む通信制御用メッセージを受信すると、前記通信制御用メッセージを復号およびデカプセル化して前記暗号化通信路外の所定の送信先に転送する暗号化通信装置において、
前記各通信端末からの各ユーザメッセージを前記対向装置に転送する際に、前記各ユーザメッセージを転送する各暗号化通信路に関する暗号化通信路情報と前記各ユーザメッセージの送信元である各通信端末のアドレスとの対応付けに関するアドレス情報を記憶する記憶部と、
暗号化された前記ユーザメッセージに、当該ユーザメッセージに対応する暗号化通信路情報を暗号化せずに付加して前記対向装置に転送する送信部と、
前記送信部から送信されたユーザメッセージに暗号化せずに付加された暗号化通信路情報を含む前記通信制御用メッセージを前記中継装置から受信する受信部と、
前記受信部が受信した通信制御用メッセージを用いて当該通信制御用メッセージの送信先を判断する送信先判断部と、
前記受信部が受信した通信制御用メッセージ内から前記暗号化通信路情報を抽出し、当該抽出した暗号化通信路情報および前記記憶部が記憶するアドレス情報に基づいて、前記送信先判断部が判断した送信先に対応する前記通信制御用メッセージの送信先アドレスを決定する送信アドレス決定部と、
を備えることを特徴とする暗号化通信装置。
When a user message is received from a plurality of communication terminals outside the encrypted communication path, each user message is encrypted and encapsulated, transferred to the opposite device on the encrypted communication path, and the user message is transmitted on the encrypted communication path When a communication control message including at least a part of the encrypted and encapsulated user message transmitted from the relay device that relays to the opposite device is received, the communication control message is decrypted and decapsulated. In an encrypted communication device that transfers to a predetermined destination outside the encrypted communication path,
When each user message from each communication terminal is transferred to the opposite device, the encrypted communication path information regarding each encrypted communication path to which each user message is transferred and each communication terminal which is a transmission source of each user message A storage unit for storing address information related to the association with the address of
A transmission unit that adds the encrypted communication path information corresponding to the user message without encryption to the encrypted user message and transfers the encrypted message to the opposite device;
A receiving unit that receives the communication control message including the encrypted communication path information added without being encrypted to the user message transmitted from the transmitting unit;
A transmission destination determination unit that determines a transmission destination of the communication control message using the communication control message received by the reception unit;
The encrypted communication path information is extracted from the communication control message received by the reception section, and the transmission destination determination section determines based on the extracted encrypted communication path information and the address information stored in the storage section. A transmission address determining unit that determines a transmission destination address of the communication control message corresponding to the transmission destination;
An encrypted communication device comprising:
前記暗号化通信路情報は、前記各暗号化通信路に転送されるユーザメッセージ毎に割り当てられるメッセージ識別情報および前記暗号化通信路を識別する通信路識別情報を含むことを特徴とする請求項1に記載の暗号化通信装置。   2. The encrypted communication path information includes message identification information assigned to each user message transferred to each encrypted communication path and communication path identification information for identifying the encrypted communication path. The encrypted communication device according to 1. 前記送信アドレス決定部は、
前記送信先判断部が前記通信制御用メッセージの送信先は当該通信制御用メッセージに対応するユーザメッセージを送信した通信端末であると判断した場合、前記通信制御用メッセージの送信先アドレスを前記通信路識別情報および前記メッセージ識別情報に対応した通信端末のアドレスに決定し、
前記送信先判断部が前記通信制御用メッセージの送信先は当該通信制御用メッセージに対応するユーザメッセージが転送された暗号化通信経路を用いる通信端末であると判断した場合、前記通信制御用メッセージの送信先アドレスを前記通信路識別情報に対応した暗号化通信経路を用いる通信端末のアドレスに決定することを特徴とする請求項2に記載の暗号化通信装置。
The transmission address determination unit
When the transmission destination determination unit determines that the transmission destination of the communication control message is a communication terminal that has transmitted a user message corresponding to the communication control message, the transmission destination address of the communication control message is set to the communication path. Determine the identification information and the address of the communication terminal corresponding to the message identification information,
When the transmission destination determination unit determines that the transmission destination of the communication control message is a communication terminal using an encrypted communication path to which a user message corresponding to the communication control message is transferred, the communication control message The encrypted communication apparatus according to claim 2, wherein the destination address is determined to be an address of a communication terminal using an encrypted communication path corresponding to the communication path identification information.
前記メッセージ識別情報は、前記各暗号化通信路に転送されるユーザメッセージ毎にカウントアップされて、前記ユーザメッセージを暗号化する際に付加される暗号化ヘッダ内のシーケンス番号であることを特徴とする請求項2または3に記載の暗号化通信装置。   The message identification information is a sequence number in an encryption header that is counted up for each user message transferred to each encrypted communication path and added when the user message is encrypted. The encrypted communication device according to claim 2 or 3. 前記通信路識別情報は、前記各暗号化通信路を識別するSPI値であることを特徴とする請求項2または3に記載の暗号化通信装置。   The encrypted communication apparatus according to claim 2 or 3, wherein the communication path identification information is an SPI value for identifying each of the encrypted communication paths. 前記記憶部は、前記アドレス情報を前記各ユーザメッセージ毎に所定のタイミングで消去することを特徴とする請求項1〜5のいずれか1つに記載の暗号化通信装置。   6. The encrypted communication apparatus according to claim 1, wherein the storage unit erases the address information at a predetermined timing for each user message. 前記送信部は、前記ユーザメッセージを暗号化した際に用いた暗号化のパラメータに関する暗号化パラメータ情報を、当該ユーザメッセージに付加して前記対向装置に送信するとともに、前記中継装置は前記暗号化パラメータ情報が付加された通信制御用メッセージを送信し、
前記受信部が前記暗号化パラメータ情報を付加された通信制御用メッセージを前記中継装置から受信すると、前記暗号化パラメータ情報を用いて前記通信制御用メッセージ内のユーザメッセージを復号する復号部をさらに備えることを特徴とする請求項1に記載の暗号化通信装置。
The transmission unit adds encryption parameter information relating to an encryption parameter used when encrypting the user message to the user message and transmits the encryption parameter information to the opposite device, and the relay device transmits the encryption parameter. Send a communication control message with information added,
When the reception unit receives the communication control message to which the encryption parameter information is added from the relay device, the reception unit further includes a decryption unit that decrypts the user message in the communication control message using the encryption parameter information. The encrypted communication apparatus according to claim 1.
前記送信部は、前記対向装置に送信するユーザメッセージに当該ユーザメッセージの送信元の通信端末を識別する端末識別情報を付加して送信するとともに、前記中継装置は、前記ユーザメッセージに付加された端末識別情報を前記通信制御用メッセージに含めたメッセージサイズで前記通信制御用メッセージを送信し、
前記復号部は、前記ユーザメッセージに付加された端末識別情報を復号し、
前記送信アドレス決定部は、前記復号された端末識別情報および前記記憶部が記憶するアドレス情報に基づいて、前記送信先判断部が判断した送信先に対応する前記通信制御用メッセージの送信先アドレスを決定することを特徴とする請求項7に記載の暗号化通信装置。
The transmission unit adds terminal identification information for identifying a communication terminal that is a transmission source of the user message to the user message transmitted to the opposite device and transmits the user message, and the relay device is a terminal added to the user message. Sending the communication control message in a message size including identification information in the communication control message;
The decoding unit decodes terminal identification information added to the user message,
The transmission address determination unit determines a transmission destination address of the communication control message corresponding to the transmission destination determined by the transmission destination determination unit based on the decoded terminal identification information and the address information stored in the storage unit. 8. The encrypted communication device according to claim 7, wherein the encryption communication device is determined.
前記送信アドレス決定部は、
前記送信先判断部が前記通信制御用メッセージの送信先は当該通信制御用メッセージに対応するユーザメッセージを送信した通信端末であると判断した場合、前記通信制御用メッセージの送信先アドレスを前記端末識別情報に対応した通信端末のアドレスに決定し、
前記送信先判断部が前記通信制御用メッセージの送信先は当該通信制御用メッセージに対応するユーザメッセージが転送された暗号化通信経路を用いる通信端末であると決定した場合、前記通信制御用メッセージの送信先アドレスを前記通信路識別情報に対応した暗号化通信経路を用いる通信端末のアドレスに決定することを特徴とする請求項8に記載の暗号化通信装置。
The transmission address determination unit
When the transmission destination determination unit determines that the transmission destination of the communication control message is a communication terminal that has transmitted a user message corresponding to the communication control message, the transmission destination address of the communication control message is identified as the terminal Determine the address of the communication terminal corresponding to the information,
When the transmission destination determination unit determines that the transmission destination of the communication control message is a communication terminal using an encrypted communication path to which a user message corresponding to the communication control message is transferred, the communication control message 9. The encrypted communication apparatus according to claim 8, wherein the destination address is determined to be an address of a communication terminal that uses an encrypted communication path corresponding to the communication path identification information.
暗号化通信路外の複数の通信端末からユーザメッセージを受信すると、前記各ユーザメッセージを暗号化およびカプセル化して暗号化通信路上の対向装置に転送し、前記暗号化通信路上で前記ユーザメッセージを前記対向装置へ中継する中継装置から前記ユーザメッセージに基づいて送信される暗号化およびカプセル化された前記ユーザメッセージの少なくとも一部を含む通信制御用メッセージを受信すると、前記通信制御用メッセージを復号およびデカプセル化して前記暗号化通信路外の所定の送信先に送信する暗号化通信装置において、
前記中継装置に前記ユーザメッセージを送信した場合に、前記中継装置から送信される前記ユーザメッセージに対応した通信制御用メッセージに含まれる暗号化された前記ユーザメッセージを用いて、前記各ユーザメッセージを識別する第1のメッセージ識別情報を算出する第1の識別情報算出部と、
前記識別情報算出部が算出した第1のメッセージ識別情報を記憶する記憶部と、
前記通信制御用メッセージを受信した際に、前記通信制御用メッセージに含まれる暗号化されたユーザメッセージを用いて、前記各ユーザメッセージを識別する第2のメッセージ識別情報を算出する第2の識別情報算出部と、
前記第1のメッセージ識別情報および前記第2のメッセージ識別情報に基づいて、前記第1のメッセージ識別情報および前記第2のメッセージ識別情報が同一であるか否かを判定し、当該判定結果に基づいて前記第2のメッセージ識別情報が偽装されたものであるか否かを判断する偽装判断部と、
を備えることを特徴とする暗号化通信装置。
When a user message is received from a plurality of communication terminals outside the encrypted communication path, each user message is encrypted and encapsulated, transferred to the opposite device on the encrypted communication path, and the user message is transmitted on the encrypted communication path When a communication control message including at least a part of the encrypted and encapsulated user message transmitted from the relay device that relays to the opposite device is received, the communication control message is decrypted and decapsulated. In the encrypted communication device that transmits to a predetermined destination outside the encrypted communication path,
When the user message is transmitted to the relay device, the user message is identified by using the encrypted user message included in the communication control message corresponding to the user message transmitted from the relay device. A first identification information calculation unit for calculating first message identification information to be
A storage unit for storing the first message identification information calculated by the identification information calculation unit;
Second identification information for calculating second message identification information for identifying each user message by using an encrypted user message included in the communication control message when the communication control message is received. A calculation unit;
Based on the first message identification information and the second message identification information, it is determined whether or not the first message identification information and the second message identification information are the same, and based on the determination result A camouflage determination unit that determines whether the second message identification information is camouflaged;
An encrypted communication device comprising:
前記第1の識別情報算出部および前記第2の識別情報算出部は、前記通信制御用メッセージが送受信される際に変更されない部分を抽出し、当該抽出した部分を用いて前記第1のメッセージ識別情報および前記第2のメッセージ識別情報を算出することを特徴とする請求項10に記載の暗号化通信装置。   The first identification information calculation unit and the second identification information calculation unit extract a portion that is not changed when the communication control message is transmitted and received, and use the extracted portion to identify the first message The encrypted communication device according to claim 10, wherein the information and the second message identification information are calculated. 前記記憶部は、前記各暗号化通信路に転送されるユーザメッセージ毎にカウントアップされて、前記ユーザメッセージを暗号化する際に付加される暗号化ヘッダ内のシーケンス番号と、前記第1のメッセージ識別情報とを対応付けて記憶し、
前記偽装判断部は、前記通信制御用メッセージに含まれる前記シーケンス番号を用いて前記記憶部から前記第1のメッセージ識別情報を抽出し、前記第2のメッセージ識別情報が偽装されたものであるか否かを判断することを特徴とする請求項10または11に記載の暗号化通信装置。
The storage unit counts up for each user message transferred to each encrypted communication path, and adds a sequence number in an encryption header added when the user message is encrypted, and the first message Store the identification information in association with each other,
Whether the impersonation determining unit extracts the first message identification information from the storage unit using the sequence number included in the communication control message, and whether the second message identification information is impersonated. The encrypted communication device according to claim 10 or 11, wherein it is determined whether or not.
JP2005365155A 2005-12-19 2005-12-19 Encrypted communication device Expired - Fee Related JP4647481B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005365155A JP4647481B2 (en) 2005-12-19 2005-12-19 Encrypted communication device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005365155A JP4647481B2 (en) 2005-12-19 2005-12-19 Encrypted communication device

Publications (2)

Publication Number Publication Date
JP2007173959A true JP2007173959A (en) 2007-07-05
JP4647481B2 JP4647481B2 (en) 2011-03-09

Family

ID=38299985

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005365155A Expired - Fee Related JP4647481B2 (en) 2005-12-19 2005-12-19 Encrypted communication device

Country Status (1)

Country Link
JP (1) JP4647481B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012039461A (en) * 2010-08-09 2012-02-23 Nec Corp Communication device, communication method, and communication program
WO2014017532A1 (en) * 2012-07-24 2014-01-30 横河電機株式会社 Packet forwarding device, packet forwarding system, and packet forwarding method
JP2019204989A (en) * 2018-05-21 2019-11-28 ソフトバンク株式会社 Relay system and program
JPWO2021111576A1 (en) * 2019-12-05 2021-06-10

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001352344A (en) * 2000-06-09 2001-12-21 Nippon Telegr & Teleph Corp <Ntt> Network address conversion method and its system, and vpn client multiplex system
JP2005159688A (en) * 2003-11-26 2005-06-16 Nec Corp Network, communication node, security method used for them, and program thereof
JP2005229330A (en) * 2004-02-13 2005-08-25 Fujitsu Access Ltd Communication device and network system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001352344A (en) * 2000-06-09 2001-12-21 Nippon Telegr & Teleph Corp <Ntt> Network address conversion method and its system, and vpn client multiplex system
JP2005159688A (en) * 2003-11-26 2005-06-16 Nec Corp Network, communication node, security method used for them, and program thereof
JP2005229330A (en) * 2004-02-13 2005-08-25 Fujitsu Access Ltd Communication device and network system

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012039461A (en) * 2010-08-09 2012-02-23 Nec Corp Communication device, communication method, and communication program
WO2014017532A1 (en) * 2012-07-24 2014-01-30 横河電機株式会社 Packet forwarding device, packet forwarding system, and packet forwarding method
JP2014027350A (en) * 2012-07-24 2014-02-06 Yokogawa Electric Corp Packet transfer device and method
JP2019204989A (en) * 2018-05-21 2019-11-28 ソフトバンク株式会社 Relay system and program
JPWO2021111576A1 (en) * 2019-12-05 2021-06-10
WO2021111576A1 (en) * 2019-12-05 2021-06-10 日本電信電話株式会社 Communication control system, state switching assistance device, state switching assistance method, and program
JP7318733B2 (en) 2019-12-05 2023-08-01 日本電信電話株式会社 Communication control system, state switching support device, state switching support method and program

Also Published As

Publication number Publication date
JP4647481B2 (en) 2011-03-09

Similar Documents

Publication Publication Date Title
JP3688830B2 (en) Packet transfer method and packet processing apparatus
JP3783142B2 (en) Communication system, communication device, communication method, and communication program for realizing the same
US7353380B2 (en) Method and apparatus for providing secure streaming data transmission facilities using unreliable protocols
US8379638B2 (en) Security encapsulation of ethernet frames
EP1934789B1 (en) Strong anti-replay protection for ip traffic
US20060182103A1 (en) System and method for routing network messages
US8104082B2 (en) Virtual security interface
US20070260879A1 (en) Method of authenticating multicast messages
WO2007103338A2 (en) Technique for processing data packets in a communication network
US7139679B1 (en) Method and apparatus for cryptographic protection from denial of service attacks
CN111988289B (en) EPA industrial control network security test system and method
US8671451B1 (en) Method and apparatus for preventing misuse of a group key in a wireless network
Rothenberg et al. Self-routing denial-of-service resistant capabilities using in-packet Bloom filters
WO2015174100A1 (en) Packet transfer device, packet transfer system, and packet transfer method
WO2017185978A1 (en) Method and device for parsing packet
US8687485B1 (en) Method and apparatus for providing replay protection in systems using group security associations
JP4647481B2 (en) Encrypted communication device
JP4183664B2 (en) Authentication method, server computer, client computer, and program
CN115348118B (en) Network address and port number hiding method based on cryptographic technology
CN114039812A (en) Data transmission channel establishing method and device, computer equipment and storage medium
Haitao et al. The security issues and countermeasures in Mobile IP
US20080059788A1 (en) Secure electronic communications pathway
US7694334B2 (en) Apparatus and method for traversing gateway device using a plurality of batons
US20060075229A1 (en) Method and apparatus for maintaining a communications connection while guarding against bandwidth consuming attacks
Ali et al. Using Unique Node ID TO Control IPv6 ID Spoofing

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080530

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100614

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100622

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100819

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

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

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

Free format text: PAYMENT UNTIL: 20131217

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees