WO2013179551A1 - 送信装置、受信装置、通信システム、送信方法、及び受信方法 - Google Patents

送信装置、受信装置、通信システム、送信方法、及び受信方法 Download PDF

Info

Publication number
WO2013179551A1
WO2013179551A1 PCT/JP2013/002548 JP2013002548W WO2013179551A1 WO 2013179551 A1 WO2013179551 A1 WO 2013179551A1 JP 2013002548 W JP2013002548 W JP 2013002548W WO 2013179551 A1 WO2013179551 A1 WO 2013179551A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
data
encryption
unit
header
Prior art date
Application number
PCT/JP2013/002548
Other languages
English (en)
French (fr)
Inventor
哲郎 佐藤
Original Assignee
パナソニック株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by パナソニック株式会社 filed Critical パナソニック株式会社
Priority to JP2013558256A priority Critical patent/JPWO2013179551A1/ja
Priority to US14/131,959 priority patent/US9185130B2/en
Priority to EP13797957.1A priority patent/EP2858300A4/en
Publication of WO2013179551A1 publication Critical patent/WO2013179551A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/162Implementing security features at a particular protocol layer at the data link layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/164Implementing security features at a particular protocol layer at the network layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/36Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols with means for detecting characters not meant for transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving video stream encryption
    • H04N21/23476Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving video stream encryption by partially encrypting, e.g. encrypting the ending portion of a movie

Definitions

  • the present disclosure relates to a transmission device, a reception device, a communication system, a transmission method, and a reception method.
  • IPsec Security Architecture for Internet Protocol
  • Non-Patent Document 1 describes an ESP (Encapsulating Security Payload) method.
  • SRTP Secure Real-time Transport Protocol
  • RTP Real-Time Transport Protocol
  • Patent Document 1 describes a method in which the encryption processing range is adjusted in advance on the transmission side and the reception side, and only a specified partial area in the packet is subjected to encryption processing.
  • IP Encapsulating Security Payload IETF
  • RFC4303 The e Secure Real-time Transport Protocol (STRP)”
  • IETF RFC3711
  • the present disclosure has been made in view of the above circumstances, and provides a transmission device, a reception device, a communication system, a transmission method, and a reception method that can avoid unnecessary decoding processing and can counter a denial of service attack.
  • a transmission device is a transmission device that establishes a security association with a reception device, and includes a packet creation unit that creates a packet, a ratio of redundant packets in the packet created by the packet creation unit, or a reception device An encryption range in the packet created by the packet creation unit based on an instruction from the encryption processing unit that performs encryption processing on the data in the encryption range, and through the security association, the encryption processing unit And a transmission unit for transmitting the packet subjected to encryption processing.
  • FIG. 1 is a block diagram showing a configuration example of a data communication system including a data transmission device and a data reception device in the first to third embodiments.
  • the flowchart which shows the operation example of the data transmitter in 1st Embodiment.
  • the flowchart which shows the operation example of the data receiver in each embodiment.
  • the figure which shows an example of the packet format of the transport mode in 1st Embodiment The figure which shows an example of the packet encryption process in the transport mode in 1st Embodiment Diagram showing ESP packet format
  • the figure which shows an example of the data part encryption process in the transport mode in 1st Embodiment Diagram showing RTP header format Diagram showing the relationship between protocols and protocol numbers
  • the figure which shows an example of the data part decoding process in the transport mode in 1st Embodiment The figure which shows an example of the packet format of the tunnel mode in 1st Embodiment
  • the figure which shows an example of the packet format of the transport mode in 2nd Embodiment The figure which shows an example of the data part encryption process in the transport mode in 2nd Embodiment
  • the figure which shows an example of the extended ESP packet format in 2nd Embodiment The figure which shows an example of the data part decoding process in the transport mode in 2nd Embodiment
  • the figure which shows an example of the packet format of the tunnel mode in 2nd Embodiment The figure which shows an example of the data part encryption process in the tunnel mode in 2nd Embodiment
  • the figure which shows an example of the data part decoding process in the tunnel mode in 2nd Embodiment The flowchart which shows the operation example of the data transmitter in 3rd Embodiment.
  • the figure which shows an example of the data part encryption process in 3rd Embodiment The figure which shows an example of the data part decoding process in 3rd Embodiment
  • the figure which shows the example of a switching of the encryption processing system in 1st-3rd embodiment The flowchart which shows the outline
  • IPsec encryption processing is performed from the UDP header or TCP header to application data, and the encryption processing range is fixed.
  • SRTP encrypts application data and does not encrypt UDP header or RTP header.
  • the DoS attack includes, for example, a TCP SYN Flooding attack, a UDP Flooding attack, an ICMP Flooding attack, or a TCP Connection Flooding attack.
  • a TCP SYN Flooding attack a UDP Flooding attack
  • ICMP Flooding attack a TCP Connection Flooding attack.
  • IPsec it is possible to perform a filtering setting for receiving only ESP with respect to a DoS attack, and damage caused by the DoS attack can be reduced.
  • each header (including UDP header or TCP header) is not cryptographically processed, there is a high possibility of being damaged by a DoS attack. That is, if the header is not encrypted, the port number of the packet flowing through the internetwork can be seen, and there is a risk of a DoS attack specifying the port number from the attacker.
  • a DoS attack for example, CPU or memory resources are consumed. Accordingly, the processing operation of the receiving device is delayed or the receiving device is stopped, which hinders service provision.
  • each header is encrypted, it is necessary to decrypt the received packet on the receiving side. In this case, unnecessary decryption processing may be executed.
  • unnecessary decryption processing may be executed.
  • video / audio data is transmitted / received, in preparation for packet loss occurring in the network, data is transmitted in duplicate and triple, or redundant packets are transmitted together so that the lost packet can be recovered.
  • the redundant packet for restoring the lost packet is, for example, FEC (Forward Error Correction).
  • Transmission of a redundant packet for increasing the redundancy includes transmission of a test packet such as FEC and transmission of a duplicate packet that repeatedly transmits the same data a plurality of times. In such a case, the receiving side may receive unnecessary data or the same data many times.
  • the decryption process is a process with a high CPU load similar to the encryption process, and affects, for example, power consumption or battery life. Therefore, it is desirable that unnecessary decoding processing can be avoided in advance.
  • Unnecessary decryption processing occurs because, for example, each header (for example, a UDP header, a TCP header, or an application header of an upper layer thereof) is encrypted. If each header is not subjected to encryption processing, it is possible to confirm whether the packet is a redundant packet by a simple check processing, and for example, it is possible to omit the ESP decryption processing that burdens the CPU.
  • the data transmission device 100 and the data reception device 200 are connected via a network 300.
  • the data transmission device 100 performs packet encryption processing and data portion encryption processing.
  • the data receiving apparatus 200 performs packet decoding processing and data portion decoding processing.
  • the packet decryption process decrypts the data subjected to the packet encryption process.
  • the data part decryption process decrypts the data subjected to the data part encryption process.
  • Packet encryption processing is an example of first encryption processing for performing encryption processing on substantially the entire created packet.
  • IPsec is used for packet encryption processing.
  • processing is performed from the header at the head of the packet, the ESP header is processed, and data (for example, video data or audio data) is decrypted.
  • the data part encryption process is an example of a second encryption process for performing an encryption process on a data part (for example, including application data) included in a created packet.
  • the data transmission device 100 and the data reception device 200 establish a secure communication path between each other before starting data communication.
  • the secure communication path includes a security association (SA).
  • SAs may be established individually for packet encryption processing and data portion encryption processing, or one SA may be established in common.
  • the security association is a set of information including, for example, an encryption method, an encryption key length, an authentication method, an authentication key length, or key data.
  • the encryption key length and the authentication key length are indicated by a bit length, for example.
  • the encryption method includes, for example, DES (Data Encryption Standard), 3DES, or AES (Advanced Encryption Standard).
  • the authentication method includes, for example, MD (Message Digest) 5, SHA (Secure Hash Algorithm) -1, SHA-2, or MAC (Message Authentication Code).
  • the data transmitting device 100 and the data receiving device 200 share the SA in advance for packet encryption processing or data portion encryption processing.
  • the data receiving device 200 can correctly perform the decryption processing regardless of whether the data transmitting device 100 performs data portion encryption processing or packet encryption processing. Further, the data receiving apparatus 200 can correctly perform the decryption processing even if the data portion encryption processing packet and the packet encryption processing packet are mixed.
  • the data receiving device 200 instructs to switch to the data part encryption processing or the packet encryption processing, even if a packet subjected to the encryption processing before the switching arrives until the data transmitting device 100 switches, the decryption is correctly performed. It can be processed.
  • the data receiving apparatus 200 can correctly perform the decoding process.
  • the data reception device 200 When the DoS attack is started, the data reception device 200 increases the number of packet discard detections in a state where the data transmission device 100 performs data portion encryption processing (state A ⁇ state B). When the packet discard exceeds a predetermined value, the data receiving apparatus 200 determines that the packet is a DoS attack, and instructs the data transmitting apparatus 100 to switch to packet encryption processing (state B ⁇ state C).
  • the discarded packet includes, for example, a TCP, UDP, or ICMP packet.
  • the data receiving apparatus 200 can identify, for example, a TCP or UDP providing service by a port number. When receiving a packet addressed to the port number of the provided service, the data receiving apparatus 200 processes the received data by executing an application program on the receiving side.
  • the data receiving apparatus 200 When the data receiving apparatus 200 receives a DoS attack specifying a specific port number, the data receiving apparatus 200 executes reception processing of a very large number of packets, which increases the CPU processing load.
  • the data receiving apparatus 200 processes the UDP header or the TCP header before the received packet decryption process, and confirms the authentication data added by the data part encryption process. Since correct authentication data cannot be added to a DoS attack packet, the data receiving apparatus 200 can determine whether the packet is a DoS attack packet by the authentication data confirmation process.
  • the data receiving apparatus 200 determines that the DoS attack is targeted at the port number that provides the service, and sends the packet to the data transmitting apparatus.
  • An instruction is given to switch to encryption processing (state B ⁇ state C).
  • the CPU processing load caused by the DoS attack can be reduced, and the CPU load can be relatively reduced and the power consumption can be reduced as compared with reducing the CPU processing load caused by the redundant packet.
  • the data reception device 200 instructs the data transmission device 100 to switch to the packet encryption processing when detecting that the number of discarded packets of redundant packets is equal to or less than a predetermined value ( State B ⁇ State C).
  • the data receiving device 200 adds a reason for switching when instructing switching from data portion encryption processing to packet encryption processing.
  • the data transmission device 100 does not recognize whether or not the data reception device 200 has been subjected to a DoS attack. Therefore, the data reception device 200 notifies the data transmission device 100 that the DoS attack has been received.
  • the data transmitting apparatus 100 can grasp whether or not there are many redundant packets before transmitting the packets. Therefore, the data transmitting apparatus 100 can determine whether to perform data portion encryption processing or packet encryption processing based on a unique determination.
  • the CPU processing load caused by the DoS attack can be reduced, and the CPU load can be relatively reduced and the power consumption can be reduced as compared with reducing the CPU processing load caused by the redundant packet.
  • the data receiving apparatus 200 decreases the number of discards of each packet (including, for example, TCP, UDP, or ICMP packets) (state C ⁇ state D). When the number of discarded packets is smaller than the predetermined value, the data reception device 200 determines that the DoS attack has not been received.
  • the data receiving apparatus 200 determines whether or not a DoS attack has been received by checking the authentication data added by the packet encryption process. If the number of discarded packets by the authentication data confirmation process (authentication error) is smaller than the predetermined value, the data receiving apparatus 200 determines that the DoS attack has not been received.
  • the data receiving apparatus 200 If the data receiving apparatus 200 has not been subjected to a DoS attack, the data receiving apparatus 200 performs a packet decoding process and confirms a redundant packet. When the number of discarded packets of redundant packets exceeds a predetermined value, the data reception device 200 instructs the data transmission device 100 to switch to data portion encryption processing (state D ⁇ state A).
  • the data reception device 200 may transmit information regarding whether or not a DoS attack has occurred to the data transmission device 100.
  • the data transmission device 100 uses the information on whether there are many redundant packets and the information on whether the data reception device 200 has been subjected to a DoS attack, or performs data portion encryption processing or packet encryption processing. May be determined.
  • FIG. 1 is a block diagram illustrating a configuration example of a data communication system 1000 including a data transmission device 100 and a data reception device 200 in each embodiment.
  • the data transmission device 100 and the data reception device 200 are connected by a network 300.
  • FIG. 32 is a block diagram showing an internal configuration of the data transmitting apparatus 100.
  • the data transmission apparatus 100 includes a transmission-side application management unit 110, an application data encryption processing unit 120, a transmission data creation unit 130, a duplicate information confirmation unit 140, a switching instruction reception unit 150, and an encryption area determination unit 160.
  • the data transmission device 100 includes an IPsec encryption processing unit 170 and a packet transmission unit 180.
  • the IPsec encryption processor 170 includes a data encryption processor 171, a packet encryption processor 172, and an authentication data confirmation processor 173.
  • the IPsec encryption processing unit 170 includes a security association database (SAD) 174 and a security policy database (SPD) 175.
  • SAD security association database
  • SPD security policy database
  • the SAD 174 is a database that records SA information with the communication partner.
  • the SPD 175 is a database that records information on a security policy (SP) with a communication partner.
  • SP security policy
  • the transmission side application management unit 110 manages transmission side applications.
  • Each component for example, the transmission-side application management unit 110, the application data encryption processing unit 120, and the IPsec encryption processing unit 170) of the data transmission device 100 realizes various functions by executing the transmission-side application.
  • the transmission side application is one of software programs.
  • the transmission-side application management unit 110 creates video data or audio data by shooting with a video camera, or records recorded video data or audio data. Read from media.
  • the transmission side application is an application for file transfer, the transmission side application management unit 110 reads the recorded file data.
  • the transmission data creation unit 130 creates transmission data (for example, an IP packet).
  • the created transmission data includes, for example, RTP data, RTP header, UDP header or TCP header, and IP header (see, for example, the uppermost packet in FIG. 5).
  • the RTP data is an example of application data
  • the RTP header is an example of an application header including application-specific information.
  • the packet created by the transmission data creation unit 130 includes an RTP packet, an FEC packet, a TCP packet, or an application packet.
  • the IPsec encryption processing unit 170 performs encryption processing on the IP packet created by the transmission data creation unit 130 using a predetermined encryption method.
  • the data part encryption processing unit 171 executes data part encryption processing.
  • the packet encryption processing unit 172 performs packet encryption processing.
  • the authentication data confirmation processing unit 173 performs authentication processing by a predetermined authentication method, and adds authentication data to the transmitted IP packet.
  • the IPsec encryption processing unit 170 searches the SPD 175 when starting communication and confirms the SP with the communication partner.
  • the SP includes, for example, information indicating that communication is performed with encryption processing, communication is performed with authentication data added, or communication is performed without encryption processing.
  • the SP can be determined by specifying a protocol and a port number. Different SPs may be set for each application even with the same communication partner.
  • the IPsec encryption processing unit 170 searches the SAD 174 and checks the SA. If the SA does not exist, the IPsec encryption processing unit 170 executes IKE (Internet Key Exchange) and establishes the SA with the data receiving apparatus 200.
  • IKE Internet Key Exchange
  • the packet transmission unit 180 transmits the packet created by the application data encryption processing unit 120, the transmission data creation unit 130, or the IPsec encryption processing unit 170.
  • the duplication information confirmation unit 140 confirms whether or not to create a redundant packet (for example, an inspection packet or a duplicate packet), or the creation ratio of the redundant packet, and notifies the encryption area determination unit 160 of it.
  • the duplication information confirmation unit 140 confirms information including the number of repetitions of transmission of the same data (duplication number), the necessity of FEC inspection packet generation, or the inspection packet generation ratio.
  • the switching instruction receiving unit 150 receives information from the data receiving apparatus 200 and notifies the encryption area determining unit 160 of the information.
  • the information from the data receiving device 200 includes, for example, information indicating whether a data part encryption process switching instruction, a packet encryption process switching instruction, or a DoS attack has been received.
  • the encryption area determination unit 160 executes the data part encryption process or the packet encryption process by using the redundant packet information from the duplication information confirmation unit 140 and the information from the data reception device 200 And instructs the IPsec encryption processing unit 170.
  • the application data encryption processing unit 120 receives application data (for example, video data or audio data) from the transmission side application management unit 110.
  • the application data encryption processing unit 120 encrypts the received data using an application-specific encryption method, and outputs the encrypted data to the transmission data creation unit 130.
  • the application data encryption processing unit 120 is mainly used in the third embodiment.
  • FIG. 33 is a block diagram showing an internal configuration of the data receiving apparatus 200.
  • the data receiving apparatus 200 includes a packet receiving unit 210, an IPsec decoding processing unit 220, a UDP / TCP header processing unit 231, and an application header processing unit 232. Further, the data receiving apparatus 200 includes a reception error packet number measurement unit 241, an authentication error packet number measurement unit 242, and a duplicate packet number measurement unit 243. The data receiving apparatus 200 includes an encryption area switching determination unit 250, a switching instruction transmission unit 260, a receiving-side application management unit 270, and an application data decryption processing unit 280.
  • the IPsec decryption processing unit 220 includes a data part decryption processing unit 221, a packet decryption processing unit 222, an authentication data confirmation processing unit 223, a SAD 224, and an SPD 225.
  • the reception side application management unit 270 manages the reception side application.
  • Each component for example, the IPsec decryption processing unit 220, the reception side application management unit 270, and the application data decryption processing unit 280
  • the receiving side application is one of software programs.
  • the receiving-side application management unit 270 reproduces video data or audio data.
  • the receiving application management unit 270 creates and saves a file using the received data.
  • Application data decryption processing unit 280 decrypts application data (for example, RTP data) by a decryption method unique to the application, and decrypts the application data.
  • the application data decryption processing unit 280 is mainly used in the third embodiment.
  • the packet receiving unit 210 receives a packet transmitted from the data transmitting apparatus 100.
  • the packet reception unit 210 passes the received packet to the IPsec decryption processing unit 220 when the received packet is subjected to encryption processing. If the UDP header or TCP header is added to the received packet and the UDP header or TCP header is not cryptographically processed, the packet is passed to the UDP / TCP header processing unit 231.
  • the packet receiving unit 210 when the packet receiving unit 210 receives an invalid packet and discards the packet, the packet receiving unit 210 notifies the reception error packet number measuring unit 241 of the packet discard information. For example, when a predetermined packet is received in a state where filtering is set so as to receive only a packet encrypted by ESP, the packet receiving unit 210 discards the packet and notifies the information.
  • This predetermined packet includes, for example, a UDP packet, a TCP packet, or an ICMP packet.
  • the IPsec decoding processing unit 220 executes a decoding process on the received packet by a predetermined decoding method.
  • the data part decryption processing part 221 decrypts the data part encrypted data (data part decryption process).
  • the packet decryption processing unit 222 decrypts the packet that has been subjected to the packet encryption process (packet decryption process).
  • the authentication data confirmation processing unit 223 executes authentication data confirmation processing.
  • SAD 224 is similar to SAD 174.
  • SPD 225 is similar to SPD 175.
  • the IPsec decryption processing unit 220 executes decryption processing using the SA information held by the SAD 224.
  • UDP / TCP header processing unit 231 executes UDP header processing or TCP header processing of the received packet.
  • header processing necessary information is extracted from the information included in the header. If the received packet has been subjected to data portion encryption processing, the UDP header or TCP header is processed, and then the data portion decryption processing is performed. When the received packet is subjected to packet encryption processing, the packet decryption processing is performed first, and the decrypted UDP header or TCP header is processed.
  • the UDP / TCP header processing unit 231 discards unnecessary headers among the UDP header or the TCP header included in the redundant packet. For example, the UDP / TCP header processing unit 231 confirms the discard status of TCP duplicate packets. For example, the UDP / TCP header processing unit 231 refers to “Sequence Number” included in the header, and determines that it is duplicate data if it is within a predetermined value or a predetermined range.
  • the application header processing unit 232 performs different header processing for each application. When the received packet is subjected to the data part encryption process, the application header is processed, and then the data part encryption process is performed. If the received packet is subjected to packet encryption processing, the data portion encryption processing is performed, and the decrypted application header is processed. The application header processing unit 232 discards unnecessary headers among the application headers included in the redundant packet.
  • the application header processing unit 232 confirms whether or not the same packet (duplicate packet) is repeatedly transmitted in the application. For example, the application header processing unit 232 refers to “Sequence Number” included in the header, and determines that it is a duplicate packet if it is within a predetermined value or a predetermined range.
  • the application header processing unit 232 confirms the discard status of the inspection packet by FEC. For example, the application header processing unit 232 discards FEC packets that are not necessary for data restoration when the network condition is good.
  • the reception error packet number measurement unit 241 receives information on a packet in which a reception error has occurred from the packet reception unit 210, and measures (counts) the number of reception error packets. Further, the reception error packet number measurement unit 241 determines whether or not a DoS attack has been received. For example, when the number of reception error packets is equal to or greater than a predetermined value, the reception error packet number measurement unit 241 determines that a DoS attack has occurred. The reception error packet number measurement unit 241 notifies the encryption area switching determination unit 250 of information on the presence / absence of a DoS attack. Instead of the number of received error packets, for example, the presence or absence of a DoS attack may be determined according to the ratio of the number of received error packets to the total number of received packets.
  • the authentication error packet number measuring unit 242 receives information on a packet in which an authentication error has occurred from the IPsec decryption processing unit 220, and measures (counts) the number of authentication error packets. Also, the authentication error packet number measurement unit 242 determines whether or not a DoS attack has been received. For example, when the number of authentication error packets is equal to or greater than a predetermined number, the authentication error packet number measurement unit 242 determines that a DoS attack has occurred. The authentication error packet number measurement unit 242 notifies the encryption area switching determination unit 250 of information on the presence / absence of a DoS attack. Instead of the number of authentication error packets, for example, the presence or absence of a DoS attack may be determined according to the ratio of the number of authentication error packets to the total number of received packets.
  • the duplicate packet number measuring unit 243 receives redundant packet discard information from the UDP / TCP header processing unit 231 or the application header processing unit 232, and measures (counts) the number of redundant packet discards (redundant packet number). Information about whether or not redundant packets are discarded is sent to the encryption area switching determination unit 250.
  • the encryption area switching determination unit 250 acquires information on presence / absence of a DoS attack or redundant packet discard information from the reception error packet number measurement unit 241, the authentication error packet number measurement unit 242, and the duplicate packet number measurement unit 243.
  • the encryption area switching determination unit 250 selects packet encryption processing. Thereby, it is possible to perform data communication more safely without changing the network load and the CPU processing load so much.
  • the encryption area switching determination unit 250 selects the data part encryption process. Thereby, the network load and CPU processing load by a redundant packet can be reduced.
  • the encryption area switching determination unit 250 notifies the switching instruction transmission unit 260 of decision information (encryption processing selection information) on whether to select packet encryption processing or data portion encryption processing.
  • the switching instruction transmission unit 260 notifies the data transmission apparatus 100 of selection information for encryption processing.
  • the selection information for encryption processing includes, for example, switching information for executing packet encryption processing or switching information for executing data portion encryption processing.
  • a secure communication path is established between the data transmission device 100 and the data reception device 200.
  • the packet creation unit creates a packet (for example, an IP packet) (step S11).
  • the packet creation unit is, for example, the transmission data creation unit 130.
  • the encryption processing unit determines the encryption range (encryption area) of the created packet based on the ratio of redundant packets in the packet created by the packet creation unit or an instruction from the receiving device (step S12), Encryption processing is performed on data in the encryption range (step S13).
  • the encryption processing unit is, for example, the encryption area determination unit 160 and the IPsec encryption processing unit 170.
  • the transmission unit transmits the packet encrypted by the encryption processing unit via the secure communication path (step S14).
  • the transmission unit is, for example, the packet transmission unit 180.
  • a secure communication path is established between the data transmission device 100 and the data reception device 200.
  • the receiving unit receives a packet via a secure communication path (step S21).
  • the receiving unit is, for example, the packet receiving unit 210.
  • the encryption processing instruction unit determines an encryption range in which the packet created by the data transmission device 100 is subjected to encryption processing according to whether or not the packet received by the reception unit satisfies a predetermined criterion (step S22). ). Further, the encryption processing instruction unit instructs the data transmission apparatus 100 to perform encryption processing on the data in the encryption range (step S23).
  • the encryption processing instruction unit is, for example, the IPsec decryption processing unit 220.
  • the packet includes RTP as an application.
  • the packet mainly includes a UDP packet.
  • the packet is mainly exemplified as including redundant packets as redundant packets.
  • the ESP header is placed immediately before the ESP data. Further, the UDP header and the RTP header are arranged before the ESP header without being encrypted (for example, see FIG. 4).
  • the data receiving apparatus 200 performs processing from the header at the beginning of the packet in the data part decoding process. Therefore, the data receiving apparatus 200 processes the UDP header, the RTP header, and the ESP header in this order, and decrypts the data.
  • the SA IPsec SA
  • the data receiving apparatus 200 uniquely identifies the SA using an SPI (Security Parameter Index) included in the ESP header and a “Destination Address” included in the IP header.
  • SPI Security Parameter Index
  • the SPI value may be the same value in packet encryption processing and data portion encryption processing.
  • the transmission data creation unit 130 creates transmission data (IP packet) (step S101).
  • the encryption area determination unit 160 determines which encryption processing (packet encryption processing or data portion encryption processing) is to be executed (step S102).
  • the packet encryption processing unit 172 When performing packet encryption processing, the packet encryption processing unit 172 performs padding so that the transmission data is a multiple of the block size. The packet encryption processing unit 172 sets the padding length information in the padding and the protocol information following the ESP header in the ESP trailer, and adds the ESP trailer to the packet (step S103).
  • the packet encryption processing unit 172 performs encryption processing (packet encryption processing) on the packet with the ESP trailer added (step S104).
  • the packet encryption processing unit 172 adds an ESP header to the encrypted packet (step S105).
  • the packet encryption processing unit 172 creates authentication data in an area (authentication area) including the ESP header (step S106).
  • the packet encryption processing unit 172 adds authentication data (ESP authentication data) to the packet created in step S105 (step S107).
  • ESP authentication data authentication data
  • the packet encryption processing unit 172 adds an IP header to the packet created in step S107 (step S108). Thereby, the transmitted packet is completed.
  • step S102 if it is determined in step S102 that the data portion encryption processing is performed, the data portion encryption processing unit 171 performs padding so that the transmission data is a multiple of the block size.
  • the data unit encryption processing unit 171 sets the pad length information in the padding and the protocol information following the ESP header in the ESP trailer, and adds the ESP trailer to the packet (step S109).
  • the data portion encryption processing unit 171 performs encryption processing (data portion encryption processing) on the packet to which the ESP trailer is added (step S110).
  • the data part encryption processing unit 171 adds an ESP header to the encrypted packet (step S111).
  • the data unit encryption processing unit 171 creates authentication data of an area (authentication area) including the ESP header (step S112).
  • the data unit encryption processing unit 171 adds authentication data (ESP authentication data) to the packet created in step S111 (step S113).
  • the data unit encryption processing unit 171 adds the RTP header, UDP header, and IP header created in step S113 (step S114). Thereby, the transmitted packet is completed.
  • the packet transmitter 180 transmits the completed packet (step S115).
  • the packet receiving unit 210 receives a packet (step S201).
  • the packet receiving unit 210 checks the status of the received packet error (reception error) (step S202). For example, it is checked whether a DoS attack of “TCP SYN Flooding”, “UDP Flooding”, “ICMP Flooding”, or “TCP Connection Flooding” has occurred. If “Sequence Number” included in the IP header of the received packet is inappropriate, it is determined that a reception error has occurred.
  • the packet receiving unit 210 discards the packet (for example, TCP, UDP, or ICMP packet) (step S223).
  • the reception error packet number measuring unit 241 measures the number of discarded packets.
  • the encryption area switching determination unit 250 determines whether or not the number of discarded packets measured by the reception error packet number measurement unit 241 is greater than or equal to a predetermined value (step S224).
  • the encryption area switching determination unit 250 determines to notify the data transmission apparatus 100 of the encryption area switching instruction, and notifies the switching instruction transmission unit 260 of the instruction.
  • the switching instruction transmission unit 260 notifies the data transmission apparatus 100 of an encryption area switching instruction (switching instruction to packet encryption processing).
  • the encryption area switching determination unit 250 determines the encryption area of the encrypted packet (step S203). In determining the encryption area, the encryption area switching determination unit 250 processes the packet in order from the header (IP header) at the head of the packet, and distinguishes whether the packet encryption process or the data part encryption process is performed. The encryption area switching determination unit 250 makes a distinction according to, for example, protocol information following the IP header.
  • the data reception device 200 performs packet decryption processing in steps S204 to S211. If the packet has undergone data portion encryption processing, the data reception device 200 performs the data portion decryption processing in steps S212 to S222.
  • the protocol information included in the IP header includes information indicating ESP.
  • the authentication data confirmation processing unit 223 confirms the ESP header and confirms the presence or absence of an authentication error (step S204).
  • the packet decoding processing unit 222 confirms the SPI value and searches the SAD 174. When the SPI does not exist in the SA, the packet decoding processing unit 222 discards the received packet.
  • the ESP header includes “Sequence Number” indicating the order of packets.
  • “Sequence Number” indicates the order of packets.
  • the packet decoding processing unit 222 discards the received packet.
  • the inappropriate case includes, for example, a case where a certain window size is provided and does not fall within the window size.
  • the authentication data confirmation processing unit 223 confirms the authentication data and confirms whether or not there is an authentication error (step S204).
  • the authentication data confirmation processing unit 223 creates authentication data from the data in the authentication range (for example, see FIG. 4) and compares it with the authentication data added to the packet. If they are different as a result of the comparison, the authentication data confirmation processing unit 223 discards the packet.
  • the packet decryption processing unit 222 decrypts the packet in the encrypted range (see, for example, FIG. 4) (step S205).
  • the encryption range includes a UDP header, an RTP header, RTP data (encrypted data, such as video or audio data), and an ESP trailer.
  • the receiving-side application management unit 270 processes the application using the decrypted data (step S206).
  • the UDP / TCP header processing unit 231 or the application header processing unit 232 confirms whether the received packet is a duplicate packet (step S207). For example, when a packet including the same header as the decrypted UDP header or RTP header has been received before, the UDP / TCP header processing unit 231 or the application header processing unit 232 determines that the current received packet is a duplicate packet. It is determined.
  • the UDP / TCP header processing unit 231 or the application header processing unit 232 discards the duplicate packet (step S208).
  • the duplicate packet number measurement unit 243 measures the number of discarded packets. The number of discarded packets is the same as the number of duplicate packets discarded.
  • the encryption area switching determination unit 250 determines whether or not the number of packet discards measured by the duplicate packet number measurement unit 243 is greater than or equal to a predetermined value (step S209).
  • the encryption area switching determination unit 250 determines to notify the data transmission apparatus 100 of the encryption area switching instruction, and notifies the switching instruction transmission unit 260 of the instruction.
  • the switching instruction transmission unit 260 notifies the data transmitting apparatus 100 of an encryption area switching instruction (instruction for switching to data section encryption processing) (step S210).
  • step S204 the authentication data confirmation processing unit 223 discards the packet including the authentication error (step S211).
  • step S203 when the data portion encryption processing is performed, when processing is performed in order from the header at the head of the packet, a UDP header appears, and an RTP header appears after the UDP header.
  • the data part decryption processing part 221 confirms the RTP header (step S212).
  • the RTP header includes information (for example, protocol number: 50 in FIG. 10) indicating that the ESP header follows the RP header.
  • the UDP / TCP header processing unit 231 or the application header processing unit 232 confirms the duplicate packet in the processing of the UDP header or the RTP header (step S213).
  • the UDP / TCP header processing unit 231 or the application header processing unit 232 discards the duplicate packet (step S220).
  • the duplicate packet number measurement unit 243 measures the number of discarded packets. The number of discarded packets is the same as the number of duplicate packets discarded.
  • the encryption area switching determination unit 250 determines whether the number of packet discards measured by the duplicate packet number measurement unit 243 is equal to or greater than a predetermined value (step S221).
  • the encryption area switching determination unit 250 determines to notify the data transmission apparatus 100 of the encryption area switching instruction, and notifies the switching instruction transmission unit 260 of the instruction.
  • the switching instruction transmission unit 260 notifies the data transmission apparatus 100 of an encryption area switching instruction (switching instruction to packet encryption processing) (step S222).
  • step S213 If it is determined in step S213 that the received packet is not a duplicate packet, the authentication data confirmation processing unit 223 confirms the ESP header and confirms the authentication data as in step S204 (step S214).
  • step S214 the authentication data confirmation processing unit 223 discards the packet including the authentication error (step S217). Further, the authentication error packet number measuring unit 242 measures the number of discarded packets. The number of discarded packets is the same as the number of authentication error packets.
  • the encryption area switching determination unit 250 determines whether or not the number of packet discards measured by the authentication error packet number measurement unit 242 is equal to or greater than a predetermined value (step S218).
  • the encryption area switching determination unit 250 determines to notify the data transmission apparatus 100 of the encryption area switching instruction, and notifies the switching instruction transmission unit 260 of the instruction.
  • the switching instruction transmission unit 260 notifies the data transmission apparatus 100 of an encryption area switching instruction (switching instruction to packet encryption processing) (step S219).
  • the data part decryption processing unit 221 decrypts the packet in the encrypted range (see, for example, FIG. 4) (step S215).
  • the encryption range includes RTP data (Encrypted Data, such as video or audio data) and an ESP trailer.
  • the receiving-side application management unit 270 processes the application using the decrypted data (step S216).
  • the IPsec operation mode includes a tunnel mode in which the entire packet is subjected to encryption processing, and a transport mode in which the IP header and subsequent portions are subjected to encryption processing.
  • FIG. 4 is a diagram showing an example of a packet format used in packet encryption processing in the transport mode and a packet format used in data portion encryption processing in the transport mode.
  • the transmission data creation unit 130 creates transmission data (IP packet).
  • the IPsec encryption processing unit 170 inserts an ESP header between the IP header and the UDP header.
  • the IPsec encryption processing unit 170 adds an ESP trailer.
  • the ESP trailer is additional data for performing block ciphering, and makes packet data a multiple of the block length. Padding length information and protocol information are added to the ESP trailer.
  • FIG. 6 is a diagram showing an ESP packet format.
  • the ESP packet includes an ESP header, ESP data, and an ESP trailer.
  • the ESP header includes information of “SPI” and “Sequence Number”.
  • the ESP data includes “Payload Data”.
  • the ESP trailer includes “Padding”, “Pad Length (Padding Length)”, and “Next Header”. Padding length information is stored in “Pad Length”, and protocol information following ESP is stored in “Next Header”.
  • the IPsec encryption processing unit 170 performs encryption processing on data in the encryption range from the UDP header to the ESP trailer.
  • the IPsec encryption processing unit 170 adds an ESP header before the encrypted data.
  • the IPsec encryption processing unit 170 creates authentication data based on data in the authentication range from the ESP header to the ESP trailer.
  • the IPsec encryption processing unit 170 adds authentication data to the end of the encrypted data, that is, after the ESP trailer.
  • the IPsec encryption processing unit 170 adds an IP header to the beginning of the encrypted data, that is, before the UDP header.
  • the IP header includes protocol information following the IP header.
  • the protocol information initially set in the transmission data (IP packet) created by the transmission data creation unit 130 is, for example, UDP, but the IPsec encryption processing unit 170 stores the UDP information in the ESP trailer. Also, the IPsec encryption processing unit 170 sets the ESP protocol number (number 50) in the protocol information of the added IP header. Thereby, the IP packet subjected to the packet encryption process is completed.
  • the IPsec decryption processing unit 220 In the data receiving apparatus 200, the IPsec decryption processing unit 220 generates a decrypted IP packet from the encrypted IP packet.
  • the IPsec decryption processing unit 220 can recognize that the ESP encryption processing has been performed.
  • the IPsec decryption processing unit 220 extracts ESP authentication data added to the end of the data.
  • the authentication range is from the beginning of the ESP header to the end of the ESP trailer.
  • the IPsec decryption processing unit 220 creates authentication data using data in the authentication range.
  • the IPsec decryption processing unit 220 compares the created authentication data with the authentication data added to the received packet, and discards the packet if they are different.
  • the IPsec decryption processing unit 220 separates the ESP header and decrypts the data in the decryption range from the encrypted UDP header to the ESP trailer.
  • the decrypted ESP trailer includes padding length information.
  • the IPsec decryption processing unit 220 refers to the padding length information and deletes the padding added to the rear part of the decrypted data.
  • the IPsec decryption processing unit 220 returns (sets) the protocol information included in the ESP header to the IP header, and adds the IP header to the top, that is, before the UDP header. Thereby, the IP packet subjected to the packet decoding process is completed.
  • the transmission data creation unit 130 creates transmission data (IP packet).
  • the IPsec encryption processing unit 170 inserts an ESP header between the RTP header and the RTP data (Encrypted Data).
  • the IPsec encryption processing unit 170 separates the IP header, the UDP header, and the RTP header in the IP packet created by the transmission data creation unit 130, and adds an ESP trailer to the RTP data (Data).
  • the IPsec encryption processing unit 170 sets payload type (PT) information included in the RTP header in the protocol information of the ESP trailer.
  • PT payload type
  • FIG. 1 An example of the RTP header format is shown in FIG. 1
  • the IPsec encryption processing unit 170 performs encryption processing on data in the encryption range from RTP data (Data) to the ESP trailer. In addition, the IPsec encryption processing unit 170 adds an ESP header before the encrypted data.
  • the IPsec encryption processing unit 170 creates authentication data based on the authentication range data from the ESP header to the ESP trailer.
  • the IPsec encryption processing unit 170 adds authentication data to the end of the encrypted data.
  • the IPsec encryption processing unit 170 adds an IP header, a UDP header, and an RTP header before the ESP header.
  • the RTP header includes payload type information (PT in FIG. 9).
  • the IPsec encryption processing unit 170 sets the ESP protocol number (number 50) in the PT. Thereby, the IP packet subjected to the data portion encryption processing is completed.
  • FIG. 10 is a diagram illustrating a part of the relationship between the protocol number and the protocol name.
  • information on the left column indicates a protocol number
  • information on the middle column indicates a protocol name (or abbreviation)
  • information on the right column indicates supplementary information on the protocol name.
  • the IPsec decryption processing unit 220 In the data receiving apparatus 200, the IPsec decryption processing unit 220 generates a decrypted IP packet from the encrypted IP packet.
  • a UDP protocol number (No. 17) is set.
  • the UDP header includes port number information and identifies an application received from the port number.
  • the IPsec decryption processing unit 220 refers to the port number and grasps that the RTP header is added to the received packet. Thereby, the application header processing unit 232 can process the RTP header. The application header processing unit 232 confirms the duplicate packet in the RTP header processing, and discards the duplicate packet in the case of the duplicate packet.
  • the IPsec decoding processing unit 220 executes the ESP decoding process.
  • the IPsec decryption processing unit 220 cuts out the ESP authentication data added to the end of the received packet.
  • the authentication range is from the beginning of the ESP header to the end of the ESP trailer.
  • the IPsec decryption processing unit 220 creates authentication data based on the data included in the authentication range.
  • the IPsec decryption processing unit 220 compares the created authentication data with the authentication data added to the received packet, and discards the received packet if they are different.
  • the IPsec decryption processing unit 220 separates the ESP header and decrypts the encrypted RTP data (“Encrypted Data”) to the ESP trailer.
  • the IPsec decryption processing unit 220 refers to the padding length information included in the decrypted ESP trailer, and deletes the padding added to the rear part of the decrypted data.
  • the IPsec decryption processing unit 220 sets the protocol information included in the ESP header again to the payload type (PT) of the RTP header. Also, the IPsec decryption processing unit 220 adds an IP header, a UDP header, and an RTP header to the head of the decrypted data (Data). Thereby, the IP packet subjected to the data part decoding process is completed.
  • PT payload type
  • FIG. 12 is a diagram illustrating an example of a packet format used in packet encryption processing in the tunnel mode and a packet format used in data portion encryption processing in the tunnel port mode.
  • the transmission data creation unit 130 creates transmission data (IP packet). Also, the IPsec encryption processing unit 170 adds an ESP header to the IP packet and encapsulates it in IP.
  • the IPsec encryption processing unit 170 adds an ESP trailer to the IP packet created by the transmission data creation unit 130.
  • a number (No. 4) indicating the IP header is set.
  • the IPsec encryption processing unit 170 performs encryption processing on data in the encryption range from the IP header (Inner) to the ESP trailer.
  • the IPsec encryption processing unit 170 adds the ESP header to the encrypted data.
  • the encryption range includes an IP header (Inner), a UDP header, an RTP header, RTP data (Data), and an ESP trailer.
  • the IPsec encryption processing unit 170 creates authentication data based on the authentication range data from the ESP header to the ESP trailer.
  • the IPsec encryption processing unit 170 adds authentication data to the end of the encrypted data.
  • the authentication range includes an ESP header, an IP header (Inner), a UDP header, an RTP header, RTP data (Data), and an ESP trailer.
  • the IPsec encryption processing unit 170 adds an IP header (Outer) before the ESP header.
  • the IP header (Outer) is a header of IP-encapsulated data.
  • the IPsec encryption processing unit 170 also sets the ESP protocol number (number 50) in the protocol information of the IP header (Outer). Thereby, the IP packet subjected to the packet encryption process is completed.
  • the IPsec decryption processing unit 220 In the data receiving apparatus 200, the IPsec decryption processing unit 220 generates a decrypted IP packet from the encrypted IP packet.
  • the IPsec decryption processing unit 220 can recognize that the ESP encryption processing has been performed, and extracts the ESP authentication data added to the end of the received packet.
  • the IPsec decryption processing unit 220 creates authentication data based on data in the authentication range from the top of the ESP header to the end of the ESP trailer.
  • the IPsec decryption processing unit 220 compares the created authentication data with the authentication data added to the received packet, and discards the received packet if they are different.
  • the IPsec decryption processing unit 220 extracts the ESP header, and decrypts the data in the decryption range from the encrypted IP header (Inner) to the ESP trailer.
  • the decrypted ESP trailer includes padding length information.
  • the IPsec decryption processing unit 220 refers to the padding length information and deletes the padding added to the rear part of the decrypted RTP data (Data).
  • the IPsec decryption processing unit 220 can recognize that the decrypted data is an IP packet by referring to the protocol information included in the ESP header. Further, since the IPsec decryption processing unit 220 can recognize the tunnel mode from the search result of the SAD 224, it can recognize that the data after the decryption processing is an IP packet. Thereby, the IP packet subjected to the packet decoding process is completed.
  • the transmission data creation unit 130 creates transmission data (IP packet).
  • the IPsec encryption processing unit 170 inserts an ESP header between the RTP header and the RTP data (Encrypted Data) to perform IP encapsulation. Further, the IPsec encryption processing unit 170 adds an IP header (Outer) for IP encapsulation to the head of the IP-encapsulated data.
  • the IPsec encryption processing unit 170 separates an IP header (Inner), a UDP header, and an RTP header from among the IP packets created by the transmission data creation unit 130, and adds an ESP trailer to the RTP data (Data). .
  • the IPsec encryption processing unit 170 sets payload type information (PT) included in the RTP header in the protocol information of the ESP trailer.
  • PT payload type information
  • the IPsec encryption processing unit 170 performs encryption processing on data in the encryption range from the RTP data to the ESP trailer.
  • the IPsec encryption processing unit 170 adds an ESP header to the front of the encrypted data.
  • the IPsec encryption processing unit 170 creates authentication data based on the authentication range data from the ESP header to the ESP trailer.
  • the IPsec encryption processing unit 170 adds authentication data to the end of the encrypted data.
  • the IPsec encryption processing unit 170 adds an IP header (Inner), a UDP header, and an RTP header to the front of the ESP header.
  • the RTP header includes payload type (PT) information.
  • the IPsec encryption processing unit 170 sets the ESP protocol number (number 50) in the PT of the RTP header.
  • the IPsec encryption processing unit 170 adds an IP header (Outer) for IP encapsulation before the IP header (Inner) created by the transmission data creation unit 130. Thereby, the IP packet subjected to the data portion encryption processing is completed.
  • the IPsec decryption processing unit 220 In the data receiving apparatus 200, the IPsec decryption processing unit 220 generates a decrypted IP packet from the encrypted IP packet.
  • the IP protocol number (No. 4) is set. Since the IP header (Outer) is an IP encapsulation header, the IPsec decoding processing unit 220 deletes the IP header (Outer) and examines the inner IP header (Inner).
  • a UDP protocol number (No. 17) is set. Since the UDP header includes port number information, the IPsec decryption processing unit 220 identifies an application to be received from the port number.
  • the IPsec decryption processing unit 220 can grasp that the RTP header is added. Thereby, the application header processing unit 232 processes the RTP header. In the processing of the RTP header, the IPsec decryption processing unit 220 confirms the duplicate packet, and when it is a duplicate packet, discards the duplicate packet.
  • the IPsec decryption processing unit 220 decrypts the ESP.
  • the IPsec decryption processing unit 220 separates the ESP authentication data added to the end of the data.
  • the IPsec decryption processing unit 220 creates authentication data based on authentication range data from the beginning of the ESP header to the end of the ESP trailer.
  • the IPsec decryption processing unit 220 compares the created authentication data with the authentication data added to the packet, and discards the packet if they are different.
  • the IPsec decryption processing unit 220 separates the ESP header, and decrypts the data in the decryption range from the encrypted RTP data (Encrypted Data) to the ESP trailer.
  • the ESP trailer that has been decrypted includes the padding length information.
  • the IPsec decryption processing unit 220 refers to the padding length information and deletes the padding added to the rear part of the decrypted data.
  • the IPsec decryption processing unit 220 sets the protocol information included in the ESP header again to the payload type (PT) of the RTP header.
  • the IPsec decryption processing unit 220 adds an IP header, a UDP header, and an RTP header to the front of the RTP data. Thereby, the IP packet after the decoding process is completed.
  • the cryptographic processing unit may switch between the first cryptographic processing and the second cryptographic processing.
  • the encryption processing unit includes, for example, an encryption area determination unit 160 and an IPsec encryption processing unit 170. Thereby, it can be set according to a communication environment whether the tendency which reduces unnecessary decoding processing is strengthened, or the tendency which reduces a denial of service attack is strengthened.
  • the encryption processing unit may add a header not included in the encryption range before the encryption processing header including the information on the encryption processing.
  • the header not included in the encryption range is, for example, a UDP header or an RTP header.
  • the encryption processing header is, for example, an ESP header.
  • the encryption processing header and the encryption processing data are continuously created as a program. By using such a header order, versatility is improved.
  • the encryption processing instruction unit may instruct the data transmission device 100 to switch between the first encryption processing and the second encryption processing.
  • the encryption processing instruction unit includes, for example, an encryption area switching determination unit 250 and a switching instruction transmission unit 260.
  • the data reception apparatus 200 may determine that the encryption processing instruction unit performs the first encryption processing when the number of received unencrypted packets is a predetermined number or more.
  • the first cryptographic process is, for example, a packet cryptographic process.
  • the received non-encrypted packet is a packet including a reception error, for example.
  • DoS attack a denial of service attack
  • the data receiving device 200 includes an authentication processing unit that performs authentication processing on the received packet, and the encryption processing instruction unit is configured such that, as a result of the authentication processing, the number of packets in which an authentication error has occurred is equal to or greater than a predetermined number. It may be determined that the first encryption process is performed.
  • the authentication processing unit is, for example, the authentication data confirmation processing unit 223.
  • DoS attack a denial of service attack
  • the data reception device 200 may determine that the encryption processing instruction unit performs the second encryption processing when the number of received redundant packets is equal to or greater than a predetermined value.
  • the data reception apparatus 200 may determine that the encryption processing instruction unit performs the first encryption processing when the number of received redundant packets is less than a predetermined value.
  • the data receiving apparatus 200 may not perform the decryption process when the received packet is not encrypted, when an authentication error occurs as a result of the authentication process on the received packet, or when the received packet is a redundant packet. .
  • IPsec is used for data portion encryption processing. Further, the position of the ESP header is not changed, and the header (for example, including the UDP header or the application header) inside the ESP header is not encrypted (for example, see FIG. 18).
  • an SA for packet encryption processing and an SA for data portion encryption processing are established. This is because in the present embodiment, the order of each header and data included in the packet is the same in the packet encryption processing and the data portion encryption processing (see, for example, FIG. 18). Therefore, different values are set for the SPI value in the packet encryption processing and the data portion encryption processing.
  • the data reception device 200 processes the header of the packet (IP header) and the ESP header in this order, and determines whether it is packet encryption processing or data portion encryption processing. Specifically, the data receiving apparatus 200 distinguishes the type of encryption processing based on the SPI value included in the ESP header.
  • the data receiving device 200 decrypts the encrypted data following the ESP header.
  • the data receiving apparatus 200 first processes a predetermined header that has not been subjected to encryption processing following the ESP header, for example, discards duplicate packets, and then decrypts the data portion.
  • the predetermined header includes, for example, a UDP header, a TCP header, or an application header.
  • the data part encryption processing unit 171 performs padding so that the transmission data is a multiple of the block size.
  • the data unit encryption processing unit 171 sets the pad length information in the padding and the protocol information following the ESP header in the ESP trailer, and adds the ESP trailer to the packet (step S109).
  • the data part encryption processing unit 171 performs data part encryption processing on the packet to which the ESP trailer is added (step S110).
  • the data part encryption processing unit 171 adds a UDP header and an RTP header before the encrypted data (Encrypted Data) (step S301).
  • the data part encryption processing unit 171 adds an ESP header before the UDP header (step S111).
  • the data unit encryption processing unit 171 sets Length information described later in the ESP header.
  • the authentication data confirmation processing unit 173 creates authentication data based on data in the authentication range from the ESP header to the ESP trailer (step S112).
  • the authentication data confirmation processing unit 173 adds authentication data to the data to which each header including the ESP header is added (step S113), and adds an IP header before the ESP header (step S114). Thereby, the transmission packet is completed.
  • the packet transmission unit 180 transmits the completed packet (step S115).
  • FIG. 18 is a diagram illustrating an example of a packet format used in packet encryption processing in the transport mode and a packet format used in data portion encryption processing in the transport mode.
  • the transmission data creation unit 130 creates transmission data (IP packet), and the IPsec encryption processing unit 170 inserts an ESP header between the IP header and the UDP header.
  • the IPsec encryption processing unit 170 separates the IP header, the UDP header, and the RTP header, and adds an ESP trailer to the RTP data (Data). Also, the IPsec encryption processing unit 170 sets a protocol number (17) indicating UDP in the protocol information of the ESP trailer.
  • the IPsec encryption processing unit 170 performs encryption processing on data in the encryption range from the RTP data to the ESP trailer. In addition, the IPsec encryption processing unit 170 adds the separated UDP header and RTP header to the front of the encrypted data. In addition, the IPsec encryption processing unit 170 adds an ESP header before the UDP header.
  • the IPsec encryption processing unit 170 sets the protocol information following the ESP header to “Next Header” and the Length information to “Length”.
  • the Length information is information indicating the length (for example, the number of bytes) from the end of the ESP header to the position where the cryptographic process is started.
  • a protocol number (No. 17) indicating UDP is set.
  • the Length information the total length (for example, the number of bytes) of the UDP header and the RTP header is set.
  • FIG. 20 is a diagram illustrating an example of an extended version of the ESP packet format in which areas of “Next header” and “Length” are added. The difference from the ESP packet format shown in FIG. 6 is that “Next header” and “Length” are added to the ESP data area.
  • the IPsec encryption processing unit 170 creates authentication data based on the authentication range data from the ESP header to the ESP trailer.
  • the IPsec encryption processing unit 170 adds authentication data to the end of the encrypted data.
  • the IPsec encryption processing unit 170 adds the IP header to the head (before the ESP header). Protocol information is included in the IP header, but initially set protocol information (UDP) is stored in the ESP trailer. The IPsec encryption processing unit 170 sets the ESP protocol number (number 50) in the protocol information of the IP header. Thereby, the IP packet subjected to the data portion encryption processing is completed.
  • Protocol information is included in the IP header, but initially set protocol information (UDP) is stored in the ESP trailer.
  • UDP protocol information
  • the IPsec encryption processing unit 170 sets the ESP protocol number (number 50) in the protocol information of the IP header. Thereby, the IP packet subjected to the data portion encryption processing is completed.
  • the IPsec decryption processing unit 220 In the data receiving apparatus 200, the IPsec decryption processing unit 220 generates a decrypted IP packet from the encrypted IP packet.
  • the IPsec decryption processing unit 220 can recognize that the ESP encryption processing has been performed. Further, from the SPI value included in the ESP header, the IPsec decryption processing unit 220 can recognize that the data portion encryption processing has been performed. Furthermore, since “Next header” of the ESP header includes protocol information following the ESP header, the IPsec decoding processing unit 220 can recognize that the UDP packet continues.
  • the UDP / TCP header processing unit 231 processes the UDP header.
  • the application header processing unit 232 specifies an application program (in this case, RTP) to be received from the port number included in the UDP header, and processes the RTP header.
  • RTP application program
  • the application header processing unit 232 checks whether the received packet is a duplicate packet. For example, if the RTP header is the same as the RTP header of a previously received packet, it is determined that the packet is a duplicate packet. If the application header processing unit 232 determines that the packet is a duplicate packet, the application header processing unit 232 discards the packet.
  • the IPsec decryption processing unit 220 separates the ESP authentication data added to the end of the received packet.
  • the IPsec decryption processing unit 220 creates authentication data based on authentication range data from the beginning of the ESP header to the end of the ESP trailer.
  • the IPsec decryption processing unit 220 compares the created authentication data with the authentication data added to the packet, and discards the packet if they are different.
  • the UDP header and the RTP header are processed before the authentication confirmation process.
  • the authentication confirmation process may be performed before the UDP header and the RTP header.
  • the IPsec decryption processing unit 220 executes decryption processing using the SPI and Length information included in the ESP header when the authentication data of both coincides.
  • the IPsec decryption processing unit 220 removes the ESP header, and decrypts the position from which the number of bytes specified by the Length information is vacated, that is, the beginning of the encrypted data (Encrypted Data) to the ESP trailer.
  • the IPsec decryption processing unit 220 refers to the padding length information included in the decrypted ESP trailer, and deletes the padding added to the rear part of the decrypted data. In addition, the IPsec decoding processing unit 220 adds an IP header, a UDP header, and an RTP header to the head of the data (Data) after the decoding process. Thereby, the decrypted IP packet is completed.
  • FIG. 22 is a diagram illustrating an example of a packet format used in packet encryption processing in the tunnel mode and a packet format used in data portion encryption processing in the tunnel mode.
  • the transmission data creation unit 130 creates transmission data (IP packet), and the IPsec encryption processing unit 170 adds an ESP header to the IP packet and further encapsulates it in IP.
  • the IPsec encryption processing unit 170 separates the IP header (Inner), UDP header, and RTP header included in the IP packet, and adds an ESP trailer to the RTP data (Data).
  • the IPsec encryption processing unit 170 sets a number (No. 4) indicating the IP header in the protocol information of the ESP trailer.
  • the IPsec encryption processing unit 170 performs encryption processing on data in the encryption range from RTP data (Data) to the ESP trailer.
  • the IPsec encryption processing unit 170 adds the separated IP header (Inner), UDP header, and RTP header to the front of the RTP data. Further, the IPsec encryption processing unit 170 adds an ESP header before the IP header (Inner).
  • the IPsec encryption processing unit 170 sets the protocol information to “Next Header” and the Length information to “Length”.
  • the protocol information a protocol number (No. 4) indicating IP is set.
  • the Length information a total length (for example, the number of bytes) of the IP header, the UDP header, and the RTP header is set.
  • the IPsec encryption processing unit 170 creates authentication data based on the authentication range data from the ESP header to the ESP trailer.
  • the IPsec encryption processing unit 170 adds authentication data to the end of the encrypted data.
  • the IPsec encryption processing unit 170 adds the IP header to the head (before the ESP header). Also, the IPsec encryption processing unit 170 sets the ESP protocol number (number 50) in the protocol information of the IP header. Thereby, the IP packet subjected to the data portion encryption processing is completed.
  • the IPsec decryption processing unit 220 In the data receiving apparatus 200, the IPsec decryption processing unit 220 generates a decrypted IP packet from the encrypted IP packet.
  • the IPsec decryption processing unit 220 can recognize that the ESP encryption processing has been performed. Further, from the SPI included in the ESP header, the IPsec decryption processing unit 220 can recognize that the data portion encryption processing has been performed. Further, since the extended version of the ESP header includes protocol information following the ESP header, the IPsec decoding processing unit 220 can recognize that the IP packet continues.
  • the UDP / TCP header processing unit 231 processes the IP header and the UDP header. Further, the application header processing unit 232 specifies an application program (RTP in this case) received from the port number, and processes the RTP header.
  • RTP application program
  • the application header processing unit 232 checks whether the received packet is a duplicate packet. If the application header processing unit 232 determines that the packet is a duplicate packet, the application header processing unit 232 discards the packet.
  • the IPsec decryption processing unit 220 creates authentication data based on data in the authentication range from the beginning of the ESP header to the end of the ESP trailer.
  • the IPsec decryption processing unit 220 compares the created authentication data with the authentication data added to the packet, and discards the packet if they are different.
  • the UDP header and the RTP header are processed before the authentication confirmation process.
  • the authentication confirmation process may be performed before the UDP header and the RTP header.
  • the IPsec decryption processing unit 220 executes decryption processing using the SPI and Length information included in the ESP header when the authentication data of both coincides.
  • the IPsec decryption processing unit 220 separates the ESP header, and decrypts the position from which the number of bytes specified by the Length information is free, that is, the beginning of the encrypted data (Encrypted Data) to the ESP trailer.
  • the IPsec decryption processing unit 220 refers to the padding length information included in the decrypted ESP trailer and deletes the padding added after the data.
  • the IPsec decoding processing unit 220 adds an IP header, a UDP header, and an RTP header to the head of the data (Data) after the decoding process. Thereby, the IP packet subjected to the data part decoding process is completed.
  • the encryption processing unit may add a header not included in the encryption range after the encryption processing header including the information on the encryption processing in the second encryption processing.
  • the header for encryption processing includes information on the length from the header for encryption processing to the encryption range.
  • the length information from the encryption processing header to the encryption range is, for example, Length information.
  • the header information can be confirmed on the data receiving device 200 side before the decoding process, unnecessary decoding process can be avoided. Since the data receiving apparatus 200 can recognize the length from the encryption processing header to the encryption range, the decryption processing can be reliably executed.
  • IPsec is not used for data portion encryption processing.
  • the data transmitting apparatus 100 performs data portion encryption processing using an application-specific encryption method. Therefore, no ESP header is added.
  • the data receiving apparatus 200 processes the header of the packet (IP header), the UDP header, and the RTP header in this order. In addition, the data receiving apparatus 200 performs a data part decoding process on the application data using a unique decoding method determined for each application. Further, the data receiving apparatus 200 performs an authentication process using a unique authentication method determined for each application.
  • the application data encryption processing portion 120 pads the IP packet created by the transmission data creation portion 130 so as to be a multiple of the block size.
  • the application data encryption processing unit 120 includes the padding length information in the trailer and adds the trailer to the data (step S401).
  • the application data encryption processing unit 120 performs an encryption process on the data to which the trailer is added using a predetermined encryption method determined for each application (step S402).
  • the application data encryption processing unit 120 creates authentication data based on the encrypted data (step S403).
  • the application data encryption processing unit 120 adds authentication data after the encrypted data (step S404).
  • the application data encryption processing unit 120 adds an RTP header, a UDP header, and an IP header before the encrypted data (Encrypted Data) (step S405). Thereby, the transmission packet is completed.
  • the packet transmission unit 180 transmits the completed transmission packet (step S115).
  • the application data encryption processing unit 120 pads the data so as to be a multiple of the block size.
  • the application data encryption processing unit 120 includes padding length information in a predetermined trailer and adds the information to the RTP data (Data).
  • the application data encryption processing unit 120 encrypts data to which a predetermined trailer is added.
  • the application data encryption processing unit 120 creates authentication data based on the encrypted data. Since the ESP header is not added, the encryption range and the authentication range are the same range. The application data encryption processing unit 120 adds authentication data after the encrypted data.
  • the application data encryption processing unit 120 adds an IP header, a UDP header, and an RTP header in front of the encrypted data (Encrypted Data). Thereby, the IP packet subjected to the data portion encryption processing is completed.
  • the UDP / TCP header processing unit 231 processes the IP header and the UDP header.
  • the application header processing unit 232 processes the RTP header. For example, when the received packet is a duplicate packet that overlaps a previously received packet, the application header processing unit 232 discards the duplicate packet.
  • the application data decryption processing unit 280 performs authentication processing by a predetermined authentication method determined for each application.
  • the application data decryption processing unit 280 compares the authentication data created by the authentication process with the authentication data added to the packet, and discards the packet if they do not match.
  • the application data decryption processing unit 280 decrypts the data in the decryption range including the data (Encrypted Data) and a predetermined trailer by a predetermined decoding method determined for each application. Further, the application data decryption processing unit 280 deletes the padding of the decrypted RTP data (Data) using the padding length information included in the predetermined trailer subjected to the decryption process.
  • the encryption processing unit performs encryption processing on the data unit by the encryption method determined for each application in the second encryption processing, and includes the encryption processing information.
  • a processing header may not be added.
  • the data transmitting apparatus 100 since the second cryptographic process is processed by an application, the data transmitting apparatus 100 and the data receiving apparatus 200 need to establish a secure communication path for the second cryptographic process in advance.
  • the processing load can be reduced.
  • RTP is mainly exemplified as the application, but FEC may be used, and other applications may be used.
  • UDP is mainly exemplified as the transport layer protocol, but TCP may also be used.
  • FIG. 28 is a diagram showing a sequence of retransmission processing by TCP.
  • the data transmitting apparatus 100 retransmits the segments after the segment “4” (for example, the segments “4” to “7”). Therefore, the segments “5” to “7” are duplicate segments that are transmitted a plurality of times by the retransmission process. Since the data receiving apparatus 200 discards duplicate packets, unnecessary decryption processing can be omitted even when the TCP protocol is employed.
  • the data transmission device 100 or the data reception device 200 can be applied to, for example, a telephone, a television, a cable television, a television broadcasting transmitter, a radio and radio broadcasting transmitter, or a cable broadcasting device.
  • the data transmission device 100 or the data reception device 200 can be applied to a mobile phone, a smartphone, a tablet, a personal computer, a camera with a communication function, a video camera with a communication function, or various data communication devices.
  • Each functional block used in the description of the above embodiment is typically realized as an LSI that is an integrated circuit. These may be individually made into one chip, or may be made into one chip so as to include a part or all of them. Here, it may be an LSI, or may be referred to as an IC, a system LSI, a super LSI, or an ultra LSI depending on the degree of integration.
  • the method of circuit integration is not limited to LSI, and implementation with a dedicated circuit or a general-purpose processor is also possible.
  • an FPGA Field Programmable Gate Array
  • an FPGA Field Programmable Gate Array
  • connection of circuit cells inside the LSI or a reconfigurable processor whose settings can be reconfigured may be used.
  • the first transmission device of the present disclosure is: A transmission device that establishes a secure communication path with a reception device, A packet creation unit for creating a packet;
  • the encryption range in the packet created by the packet creation unit is determined based on the ratio of redundant packets in the packet created by the packet creation unit or the instruction from the receiving device, and encryption processing is performed on the data in the encryption range
  • This configuration can avoid unnecessary decryption processing and counter service denial attacks.
  • the second transmission device of the present disclosure is the first transmission device,
  • the cryptographic processing unit includes a first cryptographic process for cryptographically processing substantially the entire packet created by the packet creating unit, and a cryptographic process for a data unit included in the packet created by the packet creating unit The second encryption process is switched.
  • the third transmission device of the present disclosure is the first or second transmission device,
  • the cryptographic processing unit adds a header that is not included in the cryptographic range before a cryptographic processing header that includes information on the cryptographic processing.
  • the fourth transmission device of the present disclosure is the second transmission device,
  • the cryptographic processing unit adds a header not included in the cryptographic range in the second cryptographic processing after a cryptographic processing header including information on the cryptographic processing,
  • the encryption processing header includes information on a length from the encryption processing header to the encryption range.
  • the fifth transmission device of the present disclosure is a second transmission device,
  • the cryptographic processing unit performs cryptographic processing on the data unit by an encryption method determined for each application, and does not add a cryptographic processing header including information on the cryptographic processing.
  • the sixth transmission device of the present disclosure is any one of the first to fifth transmission devices, Packets created by the packet creation unit include RTP (Real-time Transport Protocol) packets, FEC (Forward Error Correction) packets, TCP (Transmission Control Protocol) packets, or application packets.
  • RTP Real-time Transport Protocol
  • FEC Forward Error Correction
  • TCP Transmission Control Protocol
  • the first receiving device of the present disclosure is: A receiving device that establishes a secure communication path with a transmitting device, A receiving unit for receiving a packet via the secure communication path; According to whether or not the packet received by the receiving unit satisfies a predetermined standard, an encryption range in which the packet created by the transmission device is encrypted is determined, and encryption processing is performed on the data in the encryption range An encryption processing instruction unit for instructing the transmitting device to Is provided.
  • This configuration can avoid unnecessary decryption processing and counter service denial attacks.
  • the second receiving device of the present disclosure is the first receiving device,
  • the cryptographic processing instruction unit performs cryptographic processing on a first cryptographic process that performs cryptographic processing on substantially the entire packet created by the transmission device, and on a data portion included in the packet created by the transmission device.
  • the transmission apparatus is instructed to switch between the second encryption process and the second encryption process.
  • the third receiving device of the present disclosure is a second receiving device,
  • the encryption processing instruction unit determines to perform the first encryption processing when the number of unencrypted packets received by the reception unit is equal to or greater than a predetermined number.
  • the fourth receiving device of the present disclosure is a second receiving device, An authentication processing unit that performs authentication processing on the packet received by the receiving unit;
  • the encryption processing instruction unit determines that the first encryption processing is to be performed when the number of packets in which an authentication error has occurred is a predetermined number or more as a result of the authentication processing by the authentication processing unit.
  • the fifth receiving device of the present disclosure is a second receiving device,
  • the encryption processing instruction unit determines to perform the second encryption processing when the number of redundant packets received by the reception unit is equal to or greater than a predetermined value.
  • the sixth receiving device of the present disclosure is a second receiving device, The receiving apparatus that determines that the first encryption process is performed when the number of redundant packets received by the receiving unit is less than a predetermined value.
  • the seventh receiving device of the present disclosure is any one of the first to sixth receiving devices, and further, A decoding processing unit for decoding the packet received by the receiving unit;
  • the decryption processing unit is received when the packet received by the receiving unit is not cryptographically processed, when an authentication error occurs as a result of the authentication processing for the packet received by the receiving unit, or received by the receiving unit. If the received packet is a redundant packet, the decoding process is not performed.
  • the first communication system of the present disclosure is: A communication system for establishing a secure communication path between a transmission device and a reception device,
  • the transmitter is A packet creation unit for creating a packet;
  • the encryption range in the packet created by the packet creation unit is determined based on the ratio of redundant packets in the packet created by the packet creation unit or an instruction from the receiving device, and encryption is performed on the data in the encryption range.
  • a cryptographic processing unit to process A transmission unit that transmits a packet encrypted by the encryption processing unit via the secure communication path;
  • the receiving device is: A receiving unit for receiving a packet via the secure communication path; According to whether or not the packet received by the receiving unit satisfies a predetermined standard, an encryption range in which the packet created by the transmission device is encrypted is determined, and encryption processing is performed on the data in the encryption range
  • This configuration can avoid unnecessary decryption processing and counter service denial attacks.
  • the first transmission method of the present disclosure is: A transmission method in a transmission device that establishes a secure communication path with a reception device, Creating a packet; Determining a cryptographic range in the created packet based on a ratio of redundant packets in the created packet or an instruction from a receiving device, and performing cryptographic processing on data in the cryptographic range; Transmitting the encrypted packet through the secure communication path; Have
  • This method can avoid unnecessary decryption processing and counter service denial attacks.
  • the first receiving method of the present disclosure is: A receiving method in a receiving apparatus for establishing a secure communication path with a transmitting apparatus, Receiving a packet via the secure communication path; In accordance with whether or not the received packet satisfies a predetermined criterion, the transmission range is determined so as to perform encryption processing on data in the encryption range by determining an encryption range in which the packet created by the transmission device is encrypted. Instructing the device; Have
  • This method can avoid unnecessary decryption processing and counter service denial attacks.
  • the present disclosure is useful for a transmission device, a reception device, a communication system, a transmission method, a reception method, and the like that can avoid unnecessary decoding processing and can counter a denial of service attack.

Abstract

 不要な復号処理を回避でき、サービス妨害攻撃に対抗できる送信装置を提供する。 受信装置との間においてセキュアな通信路(SA)を確立する送信装置であって、パケットを作成するパケット作成部と、作成されたパケットにおける冗長パケットの割合又は受信装置からの指示に基づいて、作成されたパケットにおける暗号範囲を決定し、暗号範囲のデータに対して暗号処理する暗号処理部と、SAを介して、暗号処理されたパケットを送信する送信部と、を備える。

Description

送信装置、受信装置、通信システム、送信方法、及び受信方法
 本開示は、送信装置、受信装置、通信システム、送信方法、及び受信方法に関する。
 インターネットにおいてセキュア通信を実現する方法として、IPsec(Security Architecture for Internet Protocol)が広く使用されている。
 IPsecによる暗号処理については、非特許文献1に、ESP(Encapsulating Security Payload)の方法が記載されている。
 また、他のセキュア通信を実現する方法として、非特許文献2に、SRTP(Secure Real-time Transport Protocol)が記載されている。SRTPは、RTP(Real-Time Transport Protocol)の標準化された暗号方法である。
 また、特許文献1では、暗号処理する範囲を送信側と受信側とにおいて予め調整し、パケットの中の指定した一部領域だけを暗号処理する方法が記されている。
 従来の方法では、不要な復号処理を回避し、サービス妨害攻撃に対抗することが困難であった。
 本開示は、上記事情に鑑みてなされたものであって、不要な復号処理を回避でき、サービス妨害攻撃に対抗できる送信装置、受信装置、通信システム、送信方法、及び受信方法を提供する。
 本開示の送信装置は、受信装置との間においてセキュリティアソシエーションを確立する送信装置であって、パケットを作成するパケット作成部と、前記パケット作成部により作成されたパケットにおける冗長パケットの割合又は受信装置からの指示に基づいて、前記パケット作成部により作成されたパケットにおける暗号範囲を決定し、前記暗号範囲のデータに対して暗号処理する暗号処理部と、前記セキュリティアソシエーションを介して、前記暗号処理部により暗号処理されたパケットを送信する送信部と、を備える。
 本開示によれば、不要な復号処理を回避でき、サービス妨害攻撃に対抗できる。
第1~第3の実施形態におけるデータ送信装置およびデータ受信装置を含むデータ通信システムの構成例を示すブロック図 第1の実施形態におけるデータ送信装置の動作例を示すフローチャート 各実施形態におけるデータ受信装置の動作例を示すフローチャート 第1の実施形態におけるトランスポートモードのパケットフォーマットの一例を示す図 第1の実施形態におけるトランスポートモードにおけるパケット暗号処理の一例を示す図 ESPパケットフォーマットを示す図 第1の実施形態におけるトランスポートモードにおけるパケット復号処理の一例を示す図 第1の実施形態におけるトランスポートモードにおけるデータ部暗号処理の一例を示す図 RTPヘッダフォーマットを示す図 プロトコルとプロトコル番号の関係を示す図 第1の実施形態におけるトランスポートモードにおけるデータ部復号処理の一例を示す図 第1の実施形態におけるトンネルモードのパケットフォーマットの一例を示す図 第1の実施形態におけるトンネルモードにおけるパケット暗号処理の一例を示す図 第1の実施形態におけるトンネルモードにおけるパケット復号処理の一例を示す図 第1の実施形態におけるトンネルモードにおけるデータ部暗号処理の一例を示す図 第1の実施形態におけるトンネルモードにおけるデータ部復号処理の一例を示す図 第2の実施形態におけるデータ送信装置の動作例を示すフローチャート 第2の実施形態におけるトランスポートモードのパケットフォーマットの一例を示す図 第2の実施形態におけるトランスポートモードにおけるデータ部暗号処理の一例を示す図 第2の実施形態における拡張されたESPパケットフォーマットの一例を示す図 第2の実施形態におけるトランスポートモードにおけるデータ部復号処理の一例を示す図 第2の実施形態におけるトンネルモードのパケットフォーマットの一例を示す図 第2の実施形態におけるトンネルモードにおけるデータ部暗号処理の一例を示す図 第2の実施形態におけるトンネルモードにおけるデータ部復号処理の一例を示す図 第3の実施形態におけるデータ送信装置の動作例を示すフローチャート 第3の実施形態におけるデータ部暗号処理の一例を示す図 第3の実施形態におけるデータ部復号処理の一例を示す図 第1~第3の実施形態におけるTCPによる再送処理のシーケンスの一例を示す図 第1~第3の実施形態における暗号処理方式の切り替え例を示す図 第1~第3の実施形態におけるデータ送信装置の動作例の概要を示すフローチャート 第1~第3の実施形態におけるデータ受信装置の動作例の概要を示すフローチャート 第1~第3の実施形態におけるデータ送信装置の内部構成を示すブロック図 第1~第3の実施形態におけるデータ受信装置の内部構成を示すブロック図
 以下、本開示の実施形態について、図面を参照して説明する。
 (本開示の一形態を得るに至った経緯)
 従来方法では、ネットワークの状況の変化に合わせて暗号処理する領域(暗号範囲)を変更できない。
 IPsecでは、UDPヘッダ又はTCPヘッダからアプリケーションデータまで暗号処理し、暗号処理する範囲は固定であった。
 また、SRTPでは、アプリケーションデータを暗号処理し、UDPヘッダ又はRTPヘッダを暗号処理しない。
 また、特許文献1の技術では、暗号処理する領域を事前に決めておかなければならなかった。
 IPsecの場合、ヘッダ部分を含めて暗号処理するため、悪意あるサービス妨害攻撃(DoS攻撃)に対する耐性が強い。DoS攻撃(Denial of Service Attack)は、例えば、TCP SYN Flooding攻撃、UDP Flooding攻撃、ICMP Flooding攻撃、又はTCP Connection Flooding攻撃を含む。IPsecの場合、DoS攻撃に対して、ESPのみ受信するフィルタリング設定を行うことが可能であり、DoS攻撃による被害を小さくできる。
 各ヘッダ(UDPヘッダ又はTCPヘッダを含む)を暗号処理していない場合、DoS攻撃によって被害を受ける可能性が高くなる。すなわち、ヘッダを暗号処理していない場合、インターネットワークを流れるパケットのポート番号を盗み見られ、攻撃者からポート番号を指定したDoS攻撃を受ける危険性がある。DoS攻撃を受けると、例えばCPU又はメモリのリソースを消費させられる。従って、受信装置の処理動作が遅くなり、又は受信装置が停止するので、サービス提供に支障がでる。
 一方、各ヘッダを暗号処理している場合、受信パケットを受信側において復号処理する必要がある。この場合、必要のない復号処理を実行することがある。例えば、映像・音声データを送受信するとき、ネットワークにおいて発生するパケットロスに備えて、データを二重三重に重複して送信し、又は、ロスパケットを復元できるように冗長パケットをあわせて送信する。ロスパケットを復元するための冗長パケットは、例えばFEC(Forward Error Correction)である。
 また、パケットのロス耐性を高める方法として、冗長度をネットワークの状況にあわせて動的に調整することが考えられる。つまり、ネットワークの状況が良好の場合には冗長度を下げて送信し、ネットワークの状況が劣悪の場合には冗長度を上げて送信することが考えられる。冗長度を上げる冗長パケットの送信には、FECのような検査パケットの送信と、同じデータを複数回繰り返し送信する重複パケットの送信と、を含む。このような場合、受信側では、不要なデータ又は同じデータを何度も受信する場合がある。
 しかし、ヘッダを含めて暗号処理されている場合、パケットを復号処理しなければ、冗長パケットが存在するかどうか認識できない。つまり、復号処理した後に、実行した復号処理が不要であったと判明することがある。
 復号処理は、暗号処理と同様にCPU負荷の高い処理であり、例えば消費電力又はバッテリの寿命に影響する。従って、不要な復号処理については、事前に回避できることが望ましい。
 不要な復号処理は、例えば、各ヘッダ(例えば、UDPヘッダ、TCPヘッダ、又はその上位レイヤのアプリケーションヘッダを含む)を暗号処理したために生じる。各ヘッダを暗号処理しなければ、簡単なチェック処理により冗長パケットかどうかを確認でき、例えばCPUに負担となるESPの復号処理を省略できる。
 このように、各ヘッダを暗号処理していない場合、DoS攻撃によってサービス提供に支障がでる可能性がある。逆に、各ヘッダを暗号処理している場合、不要な復号処理を実行しなければならない可能性がある。
 以下では、不要な復号処理を回避でき、サービス妨害攻撃に対抗できる送信装置、受信装置、通信システム、送信方法、及び受信方法について説明する。
 図1に示すように、データ通信システム1000では、データ送信装置100とデータ受信装置200とが、ネットワーク300を介して接続される。
(暗号処理の方式)
 本開示の実施形態では、データ送信装置100は、パケット暗号処理及びデータ部暗号処理を実行する。データ受信装置200は、パケット復号処理及びデータ部復号処理を実行する。パケット復号処理は、パケット暗号処理されたデータを復号する。データ部復号処理は、データ部暗号処理されたデータを復号する。
 パケット暗号処理とは、作成されたパケットの略全体に対して暗号処理する第1の暗号処理の一例である。パケット暗号処理には、IPsecが用いられる。パケット暗号処理では、パケットの先頭のヘッダから処理し、ESPヘッダを処理し、データ(例えば映像データ又は音声データ)を復号処理する。
 データ部暗号処理とは、作成されたパケットに含まれるデータ部(例えばアプリケーションデータを含む)に対して暗号処理する第2の暗号処理の一例である。
 データ送信装置100とデータ受信装置200とは、互いの間に、データ通信を開始する前に、セキュアな通信路を確立する。セキュアな通信路は、セキュリティアソシエーション(SA:Security Association)を含む。SAは、パケット暗号処理用及びデータ部暗号処理用に個別に2つ確立されてもよいし、共通して1つ確立されてもよい。
 セキュリティアソシエーション(SA)とは、例えば、暗号方式、暗号用鍵長、認証方式、認証用鍵長、又は鍵データを含む情報の集合である。暗号用鍵長及び認証用鍵長は、例えばビット長により示される。暗号方式は、例えば、DES(Data Encryption Standard)、3DES、又はAES(Advanced Encryption Standard)を含む。認証方式は、例えば、MD(Message Digest)5、SHA(Secure Hash Algorithm)-1、SHA-2、又はMAC(Message Authentication Code)を含む。
 データ送信装置100とデータ受信装置200とは、パケット暗号処理又はデータ部暗号処理するために、SAを予め共有する。データ受信装置200は、予めSAを共有することにより、データ送信装置100がデータ部暗号処理しても、パケット暗号処理しても、正しく復号処理できる。さらに、データ受信装置200は、データ部暗号処理のパケットとパケット暗号処理のパケットとが混在しても、正しく復号処理できる。
 従って、データ受信装置200がデータ部暗号処理又はパケット暗号処理への切り替えを指示した場合、データ送信装置100が切り替えるまでの間、切り替え前の暗号処理がされたパケットが届いたとしても、正しく復号処理できる。
 また、データ送信装置100に切り替え指示が届かなかった場合でも、又は、データ送信装置100が切り替え指示に従わなかった場合でも、データ受信装置200は、正しく復号処理できる。
(暗号処理方式の切り替え)
 次に、図29を用いて、暗号処理方式の切り替えについて概要を説明する。
 DoS攻撃が開始されると、データ受信装置200は、データ送信装置100によりデータ部暗号処理される状態において、パケット廃棄の検知回数が多くなる(状態A→状態B)。データ受信装置200は、パケット廃棄が所定値を超えた場合、DoS攻撃であると判定し、データ送信装置100にパケット暗号処理に切り替えるよう指示する(状態B→状態C)。廃棄されるパケットは、例えばTCP、UDP、又はICMPのパケットを含む。
 これにより、DoS攻撃が原因となるCPU処理負荷を削減することによって、冗長パケットが原因となるCPU処理負荷の削減と比較して相対的にCPU負荷を減らし、消費電力を削減できる。
 データ受信装置200は、例えばTCP又はUDPの提供サービスを、ポート番号によって識別できる。データ受信装置200は、提供サービスのポート番号宛のパケットを受信した場合、受信側のアプリケーションプログラムを実行することにより、受信データを処理する。
 データ受信装置200は、特定のポート番号を指定したDoS攻撃を受けた場合、非常に多くのパケットの受信処理を実行することになり、CPU処理負荷が高くなる。
 また、データ部暗号処理された場合には、データ受信装置200は、受信パケットの復号処理の前に、UDPヘッダ又はTCPヘッダを処理し、データ部暗号処理により付加された認証データを確認する。DoS攻撃のパケットには正しい認証データを付加できないため、データ受信装置200は、認証データの確認処理によって、DoS攻撃のパケットかどうか判別できる。
 データ受信装置200は、認証データの確認処理(認証エラー)によるパケット廃棄数が所定値を超えた場合、サービスを提供するポート番号をターゲットとしたDoS攻撃であると判定し、データ送信装置にパケット暗号処理に切り替えるように指示する(状態B→状態C)。
 これにより、DoS攻撃が原因となるCPU処理負荷を削減でき、冗長パケットが原因となるCPU処理負荷を削減するのと比較して、相対的にCPU負荷を減らし、消費電力を削減できる。
 また、データ部暗号処理された場合、データ受信装置200は、冗長パケットのパケット廃棄数が所定値以下であることを検知した場合に、データ送信装置100にパケット暗号処理に切り替えるように指示する(状態B→状態C)。
 これにより、不要な復号処理の回数をあまり増加させることなく、DoS攻撃への対抗力は向上する。
 データ受信装置200は、データ部暗号処理からパケット暗号処理への切り替えを指示する場合、切り替えの理由を付加する。データ送信装置100は、データ受信装置200がDoS攻撃を受けたか否かを認識していない。そのため、データ受信装置200は、データ送信装置100にDoS攻撃を受けた旨を通知する。
 一方、データ送信装置100は、冗長パケットが多いかどうかをパケット送信前に把握できる。そのため、データ送信装置100は、独自の判定によって、データ部暗号処理にするかパケット暗号処理にするかを決定できる。
 これにより、DoS攻撃が原因となるCPU処理負荷を削減でき、冗長パケットが原因となるCPU処理負荷を削減するのと比較して、相対的にCPU負荷を減らし、消費電力を削減できる。
 パケット暗号処理される場合、DoS攻撃が終了に向かうと、データ受信装置200は、各パケット(例えばTCP、UDP、又はICMPのパケットを含む)の廃棄回数が減少する(状態C→状態D)。データ受信装置200は、パケット廃棄数が所定値より小さい場合、DoS攻撃を受けていないと判定する。
 また、データ受信装置200は、パケット暗号処理により付加された認証データを確認することによって、DoS攻撃を受けたかどうかを判定する。データ受信装置200は、認証データの確認処理(認証エラー)によるパケット廃棄数が所定値より小さい場合、DoS攻撃を受けていないと判定する。
 データ受信装置200は、DoS攻撃を受けていない場合、パケット復号処理し、冗長パケットを確認する。データ受信装置200は、冗長パケットのパケット廃棄数が所定値を超えた場合、データ送信装置100にデータ部暗号処理に切り替えるように指示する(状態D→状態A)。
 これにより、例えば、既に受信した冗長データと同じパケットである場合、不要な復号処理の実行を回避でき、CPU処理負荷を減らし、消費電力を削減できる。
 なお、データ受信装置200は、DoS攻撃を受けているか否かの情報をデータ送信装置100に送信してもよい。この場合、データ送信装置100は、冗長パケットが多いかどうかの情報と、データ受信装置200がDoS攻撃を受けたかどうかの情報を用いて、データ部暗号処理を行うか、パケット暗号処理を行うかを判定してもよい。
(通信システムの構成)
 次に、データ送信装置100とデータ受信装置200とを含むデータ通信システム1000の構成例について説明する。
 図1は、各実施形態におけるデータ送信装置100とデータ受信装置200とを含むデータ通信システム1000の構成例を示すブロック図である。データ送信装置100及びデータ受信装置200は、ネットワーク300により接続される。
(データ送信装置の構成)
 データ送信装置100の構成例について説明する。図32は、データ送信装置100の内部構成を示すブロック図である。
 データ送信装置100は、送信側アプリケーション管理部110、アプリケーションデータ暗号処理部120、送信データ作成部130、重複情報確認部140、切り替え指示受付部150、及び暗号領域判定部160を備える。また、データ送信装置100は、IPsec暗号処理部170、パケット送信部180を備える。
 IPsec暗号処理部170は、データ部暗号処理部171、パケット暗号処理部172、及び認証データ確認処理部173を備える。また、IPsec暗号処理部170は、SAD(Security Association Database)174、及びSPD(Security Policy Database)175を備える。
 SAD174は、通信相手とのSAの情報を記録するデータベースである。SPD175は、通信相手とのセキュリティポリシ(SP)の情報を記録するデータベースである。
 送信側アプリケーション管理部110は、送信側アプリケーションを管理する。データ送信装置100の各構成部(例えば、送信側アプリケーション管理部110、アプリケーションデータ暗号処理部120、IPsec暗号処理部170)は、送信側アプリケーションを実行することにより、各種機能を実現する。送信側アプリケーションは、ソフトウェアプログラムの1つである。
 例えば、送信側アプリケーションが映像又は音声を扱うアプリケーションであれば、送信側アプリケーション管理部110は、ビデオカメラにより撮影して映像データ又は音声データを作成し、又は、録画された映像データ又は音声データをメディアから読み出す。また、例えば、送信側アプリケーションがファイル転送用のアプリケーションであれば、送信側アプリケーション管理部110は、記録されたファイルデータを読み出す。
 送信データ作成部130は、送信データ(例えばIPパケット)を作成する。作成される送信データは、例えば、RTPデータ、RTPヘッダ、UDPヘッダ又はTCPヘッダ、及びIPヘッダを含む(例えば、図5の最上段のパケット参照)。RTPデータは、アプリケーションデータの一例であり、RTPヘッダは、アプリケーション独自の情報を含むアプリケーションヘッダの一例である。
 送信データ作成部130により作成されるパケットは、RTPパケット、FECパケット、TCPパケット又はアプリケーションパケットを含む。
 IPsec暗号処理部170は、送信データ作成部130により作成されたIPパケットに対して、所定の暗号方式により暗号処理する。データ部暗号処理部171は、データ部暗号処理を実行する。パケット暗号処理部172は、パケット暗号処理を実行する。認証データ確認処理部173は、所定の認証方式により認証処理し、送信されるIPパケットに、認証データを付加する。
 IPsec暗号処理部170は、通信を開始する際にSPD175を検索し、通信相手とのSPを確認する。SPは、例えば、暗号処理して通信する、認証データを付加して通信する、又は暗号処理せず通信する、という情報を含む。SPは、プロトコルやポート番号を指定して決定できる。また、同じ通信相手でも、アプリケーション毎に異なるSPが設定されてもよい。
 IPsec暗号処理部170は、SPを確認した結果、暗号処理が必要である場合、SAD174を検索し、SAを調べる。SAが存在しなければ、IPsec暗号処理部170は、IKE(Internet Key Exchange)を実行し、データ受信装置200との間にSAを確立する。
 パケット送信部180は、アプリケーションデータ暗号処理部120、送信データ作成部130、又はIPsec暗号処理部170により作成されたパケットを送信する。
 重複情報確認部140は、冗長パケット(例えば検査パケット又は重複パケット)を作成するかどうか、若しくは冗長パケットの作成割合を確認し、暗号領域判定部160に通知する。例えば、重複情報確認部140は、同一データの送信繰り返し回数(重複回数)、FECによる検査パケットの作成の要否、又は検査パケットの作成割合を含む情報を確認する。
 切り替え指示受付部150は、データ受信装置200からの情報を受信し、暗号領域判定部160に通知する。データ受信装置200からの情報は、例えば、データ部暗号処理への切り替え指示、パケット暗号処理への切り替え指示、又はDoS攻撃を受けているか、の情報を含む。
 暗号領域判定部160は、重複情報確認部140からの冗長パケットの情報と、データ受信装置200からの情報と、を利用して、データ部暗号処理を実行するか、パケット暗号処理を実行するかを決定し、IPsec暗号処理部170に指示する。
 アプリケーションデータ暗号処理部120は、送信側アプリケーション管理部110から、アプリケーションデータ(例えば映像データ又は音声データ)を受け取る。また、アプリケーションデータ暗号処理部120は、受け取ったデータをアプリケーション独自の暗号方式により暗号処理し、暗号処理されたデータを送信データ作成部130へ出力する。アプリケーションデータ暗号処理部120は、主に第3の実施形態において用いられる。
(データ受信装置の構成)
 データ受信装置200の構成例について説明する。図33は、データ受信装置200の内部構成を示すブロック図である。
 データ受信装置200は、パケット受信部210、IPsec復号処理部220、UDP/TCPヘッダ処理部231、及びアプリケーションヘッダ処理部232を備える。また、データ受信装置200は、受信エラーパケット数計測部241、認証エラーパケット数計測部242、及び重複パケット数計測部243を備える。また、データ受信装置200は、暗号領域切り替え判定部250、切り替え指示送信部260、受信側アプリケーション管理部270、及びアプリケーションデータ復号処理部280を備える。
 IPsec復号処理部220は、データ部復号処理部221、パケット復号処理部222、認証データ確認処理部223、SAD224、及びSPD225を備える。
 受信側アプリケーション管理部270は、受信側アプリケーションを管理する。データ受信装置200の各構成部(例えばIPsec復号処理部220、受信側アプリケーション管理部270、アプリケーションデータ復号処理部280)は、受信側アプリケーションを実行することにより、各種機能を実現する。受信側アプリケーションは、ソフトウェアプログラムの1つである。
 例えば、受信側アプリケーションが映像又は音声を扱うアプリケーションであれば、受信側アプリケーション管理部270は、映像データ又は音声データを再生する。また、例えば、受信側アプリケーションがファイル転送用のアプリケーションであれば、受信側アプリケーション管理部270は、受信したデータを使ってファイルを作成し、保存する。
 アプリケーションデータ復号処理部280は、アプリケーションデータ(例えばRTPデータ)に対して、アプリケーション独自の復号方式により復号処理し、復号処理する。アプリケーションデータ復号処理部280は、主に第3の実施形態において用いられる。
 パケット受信部210は、データ送信装置100から送信されたパケットを受信する。パケット受信部210は、受信パケットが暗号処理されている場合、IPsec復号処理部220に渡す。受信パケットにおいて、UDPヘッダ又はTCPヘッダが付加され、UDPヘッダ又はTCPヘッダが暗号処理されていない場合、UDP/TCPヘッダ処理部231に渡す。
 また、パケット受信部210は、不正なパケットを受信し、パケットを廃棄した場合、受信エラーパケット数計測部241にパケット廃棄情報を通知する。例えば、ESPにより暗号処理されたパケットのみ受信するようにフィルタリング設定された状態において、所定のパケットを受信すると、パケット受信部210は、パケットを廃棄し、その情報を通知する。この所定のパケットは、例えば、UDPパケット、TCPパケット、又はICMPパケットを含む。
 IPsec復号処理部220は、受信パケットに対して、所定の復号方式により復号処理を実行する。データ部復号処理部221は、データ部暗号処理されたパケットを復号処理する(データ部復号処理)。パケット復号処理部222は、パケット暗号処理されたパケットを復号処理する(パケット復号処理)。また、認証データ確認処理部223は、認証データの確認処理を実行する。SAD224はSAD174と同様である。SPD225はSPD175と同様である。IPsec復号処理部220は、SAD224が保持するSAの情報を用いて、復号処理を実行する。
 UDP/TCPヘッダ処理部231は、受信パケットのUDPヘッダ処理又はTCPヘッダ処理を実行する。ヘッダ処理では、ヘッダに含まれる情報のうち、必要な情報が抽出される。受信パケットがデータ部暗号処理されている場合、UDPヘッダ又はTCPヘッダを処理し、その後にデータ部復号処理する。受信パケットがパケット暗号処理されている場合、先にパケット復号処理し、復号処理されたUDPヘッダ又はTCPヘッダを処理する。
 また、UDP/TCPヘッダ処理部231は、冗長パケットに含まれるUDPヘッダ又はTCPヘッダのうち、不要なヘッダを破棄する。例えば、UDP/TCPヘッダ処理部231は、TCPの重複パケットの廃棄状況を確認する。例えば、UDP/TCPヘッダ処理部231は、ヘッダに含まれる「Squence Number」を参照して、所定値又は所定範囲にあれば重複データであると判断する。
 アプリケーションヘッダ処理部232は、アプリケーション毎に異なるヘッダ処理を行う。受信パケットがデータ部暗号処理された場合、アプリケーションヘッダを処理し、その後にデータ部暗号処理する。受信パケットがパケット暗号処理されている場合、データ部暗号処理し、復号処理されたアプリケーションヘッダを処理する。アプリケーションヘッダ処理部232は、冗長パケットに含まれるアプリケーションヘッダのうち、不要なヘッダを廃棄する。
 例えば、アプリケーションヘッダ処理部232は、アプリケーションにおいて繰り返し同じパケット(重複パケット)が送信されたかどうかを確認する。例えば、アプリケーションヘッダ処理部232は、ヘッダに含まれる「Squence Number」を参照して、所定値又は所定範囲にあれば重複パケットであると判断する。
 また、アプリケーションヘッダ処理部232は、FECによる検査パケットの廃棄状況も確認する。例えば、アプリケーションヘッダ処理部232は、ネットワーク状況が良好である場合に、データ復元に必要のないFECパケットを破棄する。
 受信エラーパケット数計測部241は、パケット受信部210から受信エラーが発生したパケットの情報を受取り、受信エラーパケット数を計測(計数)する。また、受信エラーパケット数計測部241は、DoS攻撃を受けたどうかを判断する。受信エラーパケット数計測部241は、例えば、受信エラーパケット数が所定値以上である場合、DoS攻撃を受けたと判定する。受信エラーパケット数計測部241は、DoS攻撃の有無の情報を暗号領域切り替え判定部250に通知する。なお、受信エラーパケット数の代わりに、例えば受信パケット総数に対する受信エラーパケット数の割合に応じて、DoS攻撃の有無を判断してもよい。
 認証エラーパケット数計測部242は、IPsec復号処理部220から認証エラーが発生したパケットの情報を受取り、認証エラーパケット数を計測(計数)する。また、認証エラーパケット数計測部242は、DoS攻撃を受けたかどうかを判断する。認証エラーパケット数計測部242は、例えば、認証エラーパケット数が所定数以上である場合、DoS攻撃を受けたと判定する。認証エラーパケット数計測部242は、DoS攻撃の有無の情報を暗号領域切り替え判定部250に通知する。なお、認証エラーパケット数の代わりに、例えば受信パケット総数に対する認証エラーパケット数の割合に応じて、DoS攻撃の有無を判断してもよい。
 重複パケット数計測部243は、UDP/TCPヘッダ処理部231又はアプリケーションヘッダ処理部232から冗長パケットの廃棄情報を受取り、冗長パケットの廃棄数(冗長パケット数)を計測(計数)する。冗長パケットの廃棄の有無の情報を、暗号領域切り替え判定部250に通知する。
 暗号領域切り替え判定部250は、受信エラーパケット数計測部241、認証エラーパケット数計測部242、重複パケット数計測部243から、DoS攻撃の有無の情報又は冗長パケットの廃棄情報を取得する。
 例えば、暗号領域切り替え判定部250は、冗長パケットのパケット廃棄がほとんどない(所定値以下の)場合、パケット暗号処理を選択する。これにより、ネットワーク負荷及びCPU処理負荷をあまり変化させずに、より安全にデータ通信できる。
 また、例えば、暗号領域切り替え判定部250は、冗長パケットによるパケット廃棄が存在し、かつDoS攻撃を受けていない場合、データ部暗号処理を選択する。これにより、冗長パケットによるネットワーク負荷及びCPU処理負荷を軽減できる。
 暗号領域切り替え判定部250は、パケット暗号処理又はデータ部暗号処理のどちらを選択するかの決定情報(暗号処理選択情報)を、切り替え指示送信部260に通知する。
 切り替え指示送信部260は、暗号処理の選択情報をデータ送信装置100に通知する。暗号処理の選択情報は、例えば、パケット暗号処理を実行させるための切り替え情報、又はデータ部暗号処理を実行させるための切り替え情報を含む。
(動作の概要)
 次に、図30を用いて、データ送信装置100の動作例について概説する。
 データ送信装置100とデータ受信装置200との間には、セキュアな通信路が確立されている。
 まず、パケット作成部は、パケット(例えばIPパケット)を作成する(ステップS11)。パケット作成部は、例えば送信データ作成部130である。
 続いて、暗号処理部は、パケット作成部により作成されたパケットにおける冗長パケットの割合又は受信装置からの指示に基づいて、作成されたパケットの暗号範囲(暗号領域)を決定し(ステップS12)、暗号範囲のデータに対して暗号処理する(ステップS13)。暗号処理部は、例えば暗号領域判定部160及びIPsec暗号処理部170である。
 続いて、送信部は、セキュアな通信路を介して、暗号処理部により暗号処理されたパケットを送信する(ステップS14)。送信部は、例えばパケット送信部180である。
 次に、図31を用いて、データ受信装置200の動作例について概説する。
 データ送信装置100とデータ受信装置200との間には、セキュアな通信路が確立されている。
 まず、受信部は、セキュアな通信路を介してパケットを受信する(ステップS21)。受信部は、例えばパケット受信部210である。
 続いて、暗号処理指示部は、受信部により受信されたパケットが所定基準を満たすか否かに応じて、データ送信装置100により作成されるパケットが暗号処理される暗号範囲を決定する(ステップS22)。また、暗号処理指示部は、暗号範囲のデータに対して暗号処理するようデータ送信装置100に指示する(ステップS23)。暗号処理指示部は、例えばIPsec復号処理部220である。
 以下、本開示の実施形態では、データ部暗号処理として、3つの処理を想定する。それぞれの処理を、第1~第3の実施形態に分けて説明する。なお、パケット暗号処理については、第1~第3の実施形態において同様である。
 また、各実施形態では、パケットには、アプリケーションとしてRTPが含まれることを主に例示する。また、パケットには、UDPパケットが含まれることを主に例示する。また、パケットには、冗長パケットとして、重複パケットを含むことを主に例示する。
(第1の実施形態)
 本実施形態のデータ部暗号処理では、ESPヘッダをESPデータの直前に配置する。また、UDPヘッダ、及びRTPヘッダを、暗号化せずにESPヘッダの前に配置する(例えば図4参照)。
 データ受信装置200は、データ部復号処理において、パケットの先頭のヘッダから処理する。従って、データ受信装置200は、UDPヘッダ、RTPヘッダ、ESPヘッダ、の順に処理し、データを復号処理する。
 本実施形態では、パケット暗号処理とデータ部暗号処理とのSA(IPsec SA)は、同じでもよい。具体的には、データ受信装置200は、ESPヘッダ内に含まれるSPI(Security Parameter Index)と、IPヘッダに含まれる「Destination Address」を用いて、SAを一意に特定する。例えば、SPIの値は、パケット暗号処理とデータ部暗号処理とにおいて、同じ値でもよい。
 次に、図2を用いて、データ送信装置100の動作例について説明する。
 まず、データ送信装置100は、送信データ作成部130が、送信データ(IPパケット)を作成する(ステップS101)。
 続いて、暗号領域判定部160は、いずれの暗号処理(パケット暗号処理又はデータ部暗号処理)を実行するかを判定する(ステップS102)。
 パケット暗号処理を行う場合には、パケット暗号処理部172は、送信データがブロックサイズの倍数となるようにパディングする。パケット暗号処理部172は、パディングにおけるパディング長の情報と、ESPヘッダに続くプロトコル情報と、をESPトレーラに設定し、パケットにESPトレーラを付加する(ステップS103)。
 続いて、パケット暗号処理部172は、ESPトレーラを付加したパケットを暗号処理(パケット暗号処理)する(ステップS104)。
 続いて、パケット暗号処理部172は、暗号処理されたパケットにESPヘッダを付加する(ステップS105)。
 続いて、パケット暗号処理部172は、ESPヘッダを含めた領域(認証領域)の認証データを作成する(ステップS106)。
 続いて、パケット暗号処理部172は、認証データ(ESPの認証データ)を、ステップS105において作成されたパケットに付加する(ステップS107)。
 続いて、パケット暗号処理部172は、ステップS107において作成されたパケットにIPヘッダを付加する(ステップS108)。これにより、送信されるパケットが完成する。
 一方、ステップS102において、データ部暗号処理すると判定された場合には、データ部暗号処理部171は、送信データがブロックサイズの倍数となるようにパディングする。データ部暗号処理部171は、パディングにおけるパディング長の情報とESPヘッダに続くプロトコル情報とをESPトレーラに設定し、パケットにESPトレーラを付加する(ステップS109)。
 続いて、データ部暗号処理部171は、ESPトレーラを付加したパケットを暗号処理する(データ部暗号処理)する(ステップS110)。
 続いて、データ部暗号処理部171は、暗号処理されたパケットにESPヘッダを付加する(ステップS111)。
 続いて、データ部暗号処理部171は、ESPヘッダを含めた領域(認証領域)の認証データを作成する(ステップS112)。
 続いて、データ部暗号処理部171は、認証データ(ESPの認証データ)を、ステップS111において作成されたパケットに付加する(ステップS113)。
 続いて、データ部暗号処理部171は、ステップS113において作成されたRTPヘッダ、UDPヘッダ、及びIPヘッダを付加する(ステップS114)。これにより、送信されるパケットが完成する。
 パケット送信部180は、完成されたパケットを送信する(ステップS115)。
 次に、図3を用いて、データ受信装置200の動作例について説明する。
 データ受信装置200は、パケット受信部210が、パケットを受信する(ステップS201)。
 続いて、パケット受信部210が、受信パケットのエラー(受信エラー)の状況を確認する(ステップS202)。例えば、「TCP SYN Flooding」、「UDP Flooding」、「ICMP Flooding」、又は「TCP Connection Flooding」のDoS攻撃を受けていないかどうかを確認する。受信パケットのIPヘッダに含まれる「Sequence Number」が不適切な場合、受信エラーであると判断する。
 受信パケットに受信エラーが存在する場合、パケット受信部210は、パケット(例えば、TCP、UDP、又はICMPのパケット)を廃棄する(ステップS223)。また、受信エラーパケット数計測部241は、廃棄パケットの数を計測する。
 続いて、暗号領域切り替え判定部250は、受信エラーパケット数計測部241により計測された廃棄パケット数が所定値以上であるか否かを判定する(ステップS224)。
 廃棄パケットが所定数以上である場合、暗号領域切り替え判定部250は、暗号領域の切り替え指示をデータ送信装置100に通知するよう決定し、切り替え指示送信部260に通知する。切り替え指示送信部260は、暗号領域の切り替え指示(パケット暗号処理への切り替え指示)をデータ送信装置100に通知する。
 ステップS202において、受信エラーが発生していない場合、暗号領域切り替え判定部250は、暗号処理されたパケットの暗号領域を判定する(ステップS203)。暗号領域切り替え判定部250は、暗号領域の判定では、パケットの先頭にあるヘッダ(IPヘッダ)から順番に処理し、パケット暗号処理されているか、データ部暗号処理されているかを区別する。暗号領域切り替え判定部250は、例えばIPヘッダに続くプロトコル情報に応じて、区別する。
 パケット暗号処理されたパケットである場合には、データ受信装置200は、ステップS204~S211のパケット復号処理を行う。データ部暗号処理されたパケットである場合には、データ受信装置200は、ステップS212~S222のデータ部復号処理を行う。
 パケット復号処理では、IPヘッダに含まれるプロトコル情報にESPを示す情報が含まれる。まず、認証データ確認処理部223は、ESPヘッダを確認し、認証エラーの有無を確認する(ステップS204)。
 ESPヘッダの確認では、パケット復号処理部222は、SPIの値を確認し、SAD174を検索する。SAが存在しないSPIの場合、パケット復号処理部222は、受信パケットを廃棄する。
 また、ESPヘッダは、パケットの順序を示す「Sequence Number」を含む。「Sequence Number」が不適切な場合、パケット復号処理部222は、受信パケットを廃棄する。不適切な場合とは、例えば、あるウィンドウサイズを設け、そのウィンドウサイズ内に入らない場合を含む。
 また、認証データ確認処理部223は、認証データを確認し、認証エラーの有無を確認する(ステップS204)。認証データの確認では、認証データ確認処理部223は、認証範囲のデータ(例えば図4参照)から認証データを作成し、パケットに付加された認証データと比較する。比較の結果、両者が異なる場合、認証データ確認処理部223は、パケットを廃棄する。
 続いて、パケット復号処理部222は、暗号処理された暗号範囲(例えば図4参照)のパケットを復号処理する(ステップS205)。暗号範囲は、UDPヘッダ、RTPヘッダ、RTPデータ(Encrypted Data、例えば映像又は音声データ)、及びESPトレーラを含む。
 続いて、受信側アプリケーション管理部270は、復号処理後のデータを使ってアプリケーションを処理する(ステップS206)。
 続いて、UDP/TCPヘッダ処理部231又はアプリケーションヘッダ処理部232は、受信パケットが重複パケットかどうかを確認する(ステップS207)。例えば、復号処理されたUDPヘッダ又はRTPヘッダと同一のヘッダを含むパケットが以前に受信された場合、UDP/TCPヘッダ処理部231又はアプリケーションヘッダ処理部232は、今回の受信パケットが重複パケットであると判定する。
 受信パケットが重複パケットである場合、UDP/TCPヘッダ処理部231又はアプリケーションヘッダ処理部232は、重複パケットを廃棄する(ステップS208)。また、重複パケット数計測部243は、廃棄パケットの数を計測する。廃棄パケットの数は、廃棄した重複パケットの数と同数となる。
 続いて、暗号領域切り替え判定部250は、重複パケット数計測部243により計測されたパケット廃棄の数が所定値以上であるか否かを判定する(ステップS209)。
 廃棄パケットが所定数以上である場合、暗号領域切り替え判定部250は、暗号領域の切り替え指示をデータ送信装置100に通知するよう決定し、切り替え指示送信部260へ通知する。切り替え指示送信部260は、暗号領域の切り替え指示(データ部暗号処理への切り替え指示)をデータ送信装置100に通知する(ステップS210)。
 ステップS204において、認証エラーが発生した場合、認証データ確認処理部223が、認証エラーを含むパケットを廃棄する(ステップS211)。
 ステップS203において、データ部暗号処理されている場合、パケットの先頭にあるヘッダから順番に処理すると、UDPヘッダが現れ、UDPヘッダに後続してRTPヘッダが現れる。
 まず、データ部復号処理部221は、RTPヘッダを確認する(ステップS212)。RTPヘッダは、RPヘッダにESPヘッダが後続することを示す情報(例えば、図10におけるプロトコル番号:50番)を含む。
 続いて、UDP/TCPヘッダ処理部231又はアプリケーションヘッダ処理部232は、UDPヘッダ又はRTPヘッダの処理において、重複パケットを確認する(ステップS213)。
 重複パケットである場合、UDP/TCPヘッダ処理部231又はアプリケーションヘッダ処理部232は、重複パケットを廃棄する(ステップS220)。また、重複パケット数計測部243は、廃棄パケットの数を計測する。廃棄パケットの数は、廃棄した重複パケットの数と同数となる。
 続いて、暗号領域切り替え判定部250は、重複パケット数計測部243により計測されたパケット廃棄の数が所定値以上であるか否かを判定する(ステップS221)。
 廃棄パケットが所定数以上である場合、暗号領域切り替え判定部250は、暗号領域の切り替え指示をデータ送信装置100に通知するよう決定し、切り替え指示送信部260へ通知する。切り替え指示送信部260は、暗号領域の切り替え指示(パケット暗号処理への切り替え指示)をデータ送信装置100に通知する(ステップS222)。
 ステップS213において、受信パケットが重複パケットでない場合、ステップS204と同様に、認証データ確認処理部223は、ESPヘッダを確認し、認証データを確認する(ステップS214)。
 ステップS214において、認証エラーが発生した場合、認証データ確認処理部223は、認証エラーを含むパケットを廃棄する(ステップS217)。また、認証エラーパケット数計測部242は、廃棄パケットの数を計測する。廃棄パケットの数は、認証エラーパケットの数と同数となる。
 続いて、暗号領域切り替え判定部250は、認証エラーパケット数計測部242により計測されたパケット廃棄の数が所定値以上であるか否かを判定する(ステップS218)。
 廃棄パケットが所定数以上である場合、暗号領域切り替え判定部250は、暗号領域の切り替え指示をデータ送信装置100に通知するよう決定し、切り替え指示送信部260へ通知する。切り替え指示送信部260は、暗号領域の切り替え指示(パケット暗号処理への切り替え指示)をデータ送信装置100に通知する(ステップS219)。
 ステップS214において、認証エラーが存在しない場合、データ部復号処理部221は、暗号処理された暗号範囲(例えば図4参照)のパケットを復号処理する(ステップS215)。暗号範囲は、RTPデータ(Encrypted Data,例えば映像又は音声データ)及びESPトレーラを含む。
 続いて、受信側アプリケーション管理部270は、復号処理されたデータを用いてアプリケーションを処理する(ステップS216)。
 次に、データ通信システム1000における動作モードについて説明する。
 データ通信システム1000では、IPsecによる通信を行う。IPsecの動作モードには、パケット全体を暗号処理するトンネルモードと、IPヘッダ以降を暗号処理するトランスポートモードと、がある。
[トランスポートモード]
 次に、トランスポートモードについて説明する。
 図4は、トランスポートモードにおけるパケット暗号処理において用いられるパケットフォーマットと、トランスポートモードにおけるデータ部暗号処理において用いられるパケットフォーマットと、の一例を示す図である。
 データ送信装置100によるトランスポートモードにおけるパケット暗号処理について、図5を用いて説明する。図5の上側から下側に向かって、処理が進む。
 データ送信装置100では、送信データ作成部130が、送信データ(IPパケット)を作成する。IPsec暗号処理部170は、IPヘッダとUDPヘッダとの間にESPヘッダを挿入する。
 まず、IPsec暗号処理部170は、ESPトレーラを付加する。ESPトレーラは、ブロック暗号を行うための付加データであり、パケットデータをブロック長の倍数にする。ESPトレーラには、パディング長の情報とプロトコル情報とが付加される。
 図6は、ESPパケットフォーマットを示す図である。
 ESPパケットは、ESPヘッダ、ESPデータ、及びESPトレーラを含む。ESPヘッダは、「SPI」、「Sequence Number」の情報を含む。ESPデータは、「Payload Data」を含む。ESPトレーラは、「Padding」、「Pad Length(Padding Length)」、「Next Header」を含む。「Pad Length」にパディング長の情報が格納され、「Next Header」にESPに続くプロトコルの情報が格納される。
 続いて、IPsec暗号処理部170は、UDPヘッダからESPトレーラまでの暗号範囲のデータを暗号処理する。
 続いて、IPsec暗号処理部170は、ESPヘッダを、暗号処理されたデータの前に付加する。
 IPsec暗号処理部170は、ESPヘッダからESPトレーラまでの認証範囲のデータに基づいて、認証データを作成する。また、IPsec暗号処理部170は、暗号処理されたデータの最後に、つまりESPトレーラの後に、認証データを付加する。
 続いて、IPsec暗号処理部170は、暗号処理されたデータの先頭、つまりUDPヘッダの前に、IPヘッダを付加する。IPヘッダにはIPヘッダに続くプロトコル情報が含まれる。
 なお、送信データ作成部130により作成された送信データ(IPパケット)に当初設定されたプロトコル情報は、例えばUDPであるが、IPsec暗号処理部170が、UDPの情報を、ESPトレーラに格納する。また、IPsec暗号処理部170は、付加されるIPヘッダのプロトコル情報に、ESPのプロトコル番号(50番)が設定する。これにより、パケット暗号処理されたIPパケットが完成する。
 次に、データ受信装置200によるトランスポートモードにおけるパケット復号処理について、図7を用いて説明する。図7の上側から下側に向かって、処理が進む。
 データ受信装置200は、IPsec復号処理部220が、暗号処理されたIPパケットから、復号処理されたIPパケットを生成する。
 IPヘッダの中に記載されたプロトコル情報には、ESPのプロトコル番号(50番)が設定されているので、IPsec復号処理部220は、ESPの暗号処理が施されたことを認識できる。IPsec復号処理部220は、データの最後に付加されたESPの認証データを抽出する。認証範囲は、ESPヘッダの先頭からESPトレーラの最後までである。
 IPsec復号処理部220は、認証範囲のデータを用いて、認証データを作成する。IPsec復号処理部220は、作成された認証データと受信パケットに付加された認証データとを比較し、両者が異なる場合には、パケットを廃棄する。
 両者の認証データが一致した場合、IPsec復号処理部220は、ESPヘッダを分離し、暗号処理されたUDPヘッダからESPトレーラまでの復号範囲のデータに対して、復号処理する。復号処理されたESPトレーラには、パディング長の情報が含まれる。IPsec復号処理部220は、パディング長の情報を参照し、復号処理されたデータの後ろ部分に付加されたパディングを削除する。
 また、IPsec復号処理部220は、ESPヘッダに含まれるプロトコル情報をIPヘッダに戻し(設定し)、IPヘッダを先頭、つまりUDPヘッダの前に付加する。これにより、パケット復号処理されたIPパケットが完成する。
 次に、データ送信装置100によるトランスポートモードにおけるデータ部暗号処理について、図8を用いて説明する。図8の上側から下側に向かって、処理が進む。
 データ送信装置100では、送信データ作成部130が、送信データ(IPパケット)を作成する。IPsec暗号処理部170は、RTPヘッダとRTPデータ(Encrypted Data)との間に、ESPヘッダを挿入する。
 まず、IPsec暗号処理部170は、送信データ作成部130により作成されたIPパケットにおいて、IPヘッダ、UDPヘッダ、及びRTPヘッダを分離し、RTPデータ(Data)にESPトレーラを付加する。IPsec暗号処理部170は、ESPトレーラのプロトコル情報に、RTPヘッダに含まれるペイロードタイプ(PT)の情報を設定する。
 RTPヘッダフォーマット例を図9に示す。
 続いて、IPsec暗号処理部170は、RTPデータ(Data)からESPトレーラまでの暗号範囲のデータに対して暗号処理する。また、IPsec暗号処理部170は、ESPヘッダを暗号処理されたデータの前に付加する。
 続いて、IPsec暗号処理部170は、ESPヘッダからESPトレーラまでの認証範囲のデータに基づいて、認証データを作成する。IPsec暗号処理部170は、暗号処理されたデータの最後に、認証データを付加する。
 続いて、IPsec暗号処理部170は、IPヘッダ、UDPヘッダ、及びRTPヘッダを、ESPヘッダの前に付加する。RTPヘッダには、ペイロードタイプの情報(図9のPT)が含まれる。IPsec暗号処理部170は、PTに、ESPのプロトコル番号(50番)を設定する。これにより、データ部暗号処理されたIPパケットが完成する。
 図10は、プロトコル番号とプロトコル名との関係の一部を示す図である。
 図10において、左列の情報がプロトコル番号を示し、中列の情報がプロトコル名(または略号)を示し、右列の情報が、プロトコル名の補足情報を示す。
 次に、データ受信装置200によるトランスポートモードにおけるデータ部復号処理について、図11を用いて説明する。図11の上側から下側に向かって、処理が進む。
 データ受信装置200では、IPsec復号処理部220が、暗号処理されたIPパケットから、復号処理されたIPパケットを生成する。
 IPヘッダの中に記載されたプロトコル情報には、UDPのプロトコル番号(17番)が設定されている。UDPヘッダには、ポート番号の情報が含まれ、ポート番号から受信されるアプリケーションが特定される。
 IPsec復号処理部220は、ポート番号を参照して、受信パケットにRTPヘッダが付加されたことを把握する。これにより、アプリケーションヘッダ処理部232は、RTPヘッダを処理できる。アプリケーションヘッダ処理部232は、RTPヘッダの処理において、重複パケットを確認し、重複パケットの場合には、重複パケットを廃棄する。
 続いて、RTPヘッダのペイロードタイプ(PT)の情報には、ESPのプロトコル番号(50番)が設定されているため、IPsec復号処理部220は、ESPの復号処理を実行する。
 まず、IPsec復号処理部220は、受信パケットの最後に付加されたESPの認証データを切り取る。認証範囲は、ESPヘッダの先頭からESPトレーラの最後までである。
 IPsec復号処理部220は、認証範囲に含まれるデータに基づいて、認証データを作成する。IPsec復号処理部220は、作成された認証データと受信パケットに付加された認証データとを比較し、両者が異なる場合、受信パケットを廃棄する。
 両者の認証データが一致した場合、IPsec復号処理部220は、ESPヘッダを分離し、暗号処理されたRTPデータ(「Encrypted Data」)からESPトレーラまでを復号処理する。
 IPsec復号処理部220は、復号処理されたESPトレーラに含まれるパディング長の情報を参照し、復号処理されたデータの後ろ部分に付加されたパディングを削除する。
 IPsec復号処理部220は、ESPヘッダに含まれるプロトコル情報を、RTPヘッダのペイロードタイプ(PT)に再度設定する。また、IPsec復号処理部220は、IPヘッダ、UDPヘッダ、及びRTPヘッダを、復号処理されたデータ(Data)の先頭に付加する。これにより、データ部復号処理されたIPパケットが完成する。
[トンネルモード]
 次に、トンネルモードについて説明する。
 図12は、トンネルモードにおけるパケット暗号処理において用いられるパケットフォーマットと、トンネルポートモードにおけるデータ部暗号処理において用いられるパケットフォーマットと、の一例を示す図である。
 データ送信装置100によるトンネルモードにおけるパケット暗号処理について、図13を用いて説明する。図13の上側から下側に向かって、処理が進む。
 データ送信装置100では、送信データ作成部130は、送信データ(IPパケット)を作成する。また、IPsec暗号処理部170は、IPパケットにESPヘッダを付加し、IPカプセル化する。
 まず、IPsec暗号処理部170は、送信データ作成部130により作成されたIPパケットに、ESPトレーラを付加する。ESPトレーラのプロトコル情報には、IPヘッダを示す番号(4番)を設定する。
 続いて、IPsec暗号処理部170は、IPヘッダ(Inner)からESPトレーラまでの暗号範囲のデータを暗号処理する。また、IPsec暗号処理部170は、ESPヘッダを暗号処理したデータの前に付加する。なお、暗号範囲は、IPヘッダ(Inner)、UDPヘッダ、RTPヘッダ、RTPデータ(Data)、及びESPトレーラを含む。
 続いて、IPsec暗号処理部170は、ESPヘッダからESPトレーラまでの認証範囲のデータに基づいて、認証データを作成する。IPsec暗号処理部170は、暗号処理されたデータの最後に、認証データを付加する。なお、認証範囲は、ESPヘッダ、IPヘッダ(Inner)、UDPヘッダ、RTPヘッダ、RTPデータ(Data)、及びESPトレーラを含む。
 続いて、IPsec暗号処理部170は、IPヘッダ(Outer)を、ESPヘッダの前に付加する。IPヘッダ(Outer)は、IPカプセル化されたデータのヘッダである。また、IPsec暗号処理部170は、IPヘッダ(Outer)のプロトコル情報に、ESPのプロトコル番号(50番)を設定する。これにより、パケット暗号処理されたIPパケットが完成する。
 次に、データ受信装置200によるトンネルモードにおけるパケット復号処理について、図14を用いて説明する。図14の上側から下側に向かって、処理が進む。
 データ受信装置200では、IPsec復号処理部220が、暗号処理されたIPパケットから、復号処理されたIPパケットを生成する。
 IPヘッダ(Outer)に記載されたプロトコル情報には、ESPのプロトコル番号(50番)が設定されている。これにより、IPsec復号処理部220は、ESPの暗号処理が施されていることを認識でき、受信パケットの最後に付加されているESPの認証データを抽出する。
 IPsec復号処理部220は、ESPヘッダの先頭からESPトレーラの最後までの認証範囲のデータに基づいて、認証データを作成する。IPsec復号処理部220は、作成された認証データと受信パケットに付加された認証データとを比較し、両者が異なる場合、受信パケットを廃棄する。
 両者の認証データが一致した場合、IPsec復号処理部220は、ESPヘッダを抽出し、暗号処理されたIPヘッダ(Inner)からESPトレーラまでの復号範囲のデータを復号処理する。復号処理されたESPトレーラには、パディング長の情報が含まれる。IPsec復号処理部220は、パディング長の情報を参照し、復号処理されたRTPデータ(Data)の後ろ部分に付加されたパディングを削除する。
 また、IPsec復号処理部220は、ESPヘッダに含まれるプロトコル情報を参照することにより、復号処理されたデータがIPパケットであることを認識できる。また、IPsec復号処理部220は、SAD224の検索結果より、トンネルモードであることを認識できるため、復号処理後のデータがIPパケットであることを認識できる。これにより、パケット復号処理されたIPパケットが完成する。
 次に、データ送信装置100によるトンネルモードにおけるデータ部暗号処理について、図15を用いて説明する。図15の上側から下側に向かって、処理が進む。
 データ送信装置100では、送信データ作成部130が、送信データ(IPパケット)を作成する。また、IPsec暗号処理部170は、RTPヘッダとRTPデータ(Encrypted Data)との間にESPヘッダを挿入し、IPカプセル化する。また、IPsec暗号処理部170は、IPカプセル化されたデータの先頭に、IPカプセル化用のIPヘッダ(Outer)を付加する。
 まず、IPsec暗号処理部170は、送信データ作成部130により作成されたIPパケットのうち、IPヘッダ(Inner)、UDPヘッダ、及びRTPヘッダを分離し、RTPデータ(Data)にESPトレーラを付加する。IPsec暗号処理部170は、ESPトレーラのプロトコル情報に、RTPヘッダに含まれるペイロードタイプの情報(PT)を設定する。
 続いて、IPsec暗号処理部170は、RTPデータからESPトレーラまでの暗号範囲のデータを暗号処理する。IPsec暗号処理部170は、ESPヘッダを、暗号処理されたデータの前に付加する。
 続いて、IPsec暗号処理部170は、ESPヘッダからESPトレーラまでの認証範囲のデータに基づいて、認証データを作成する。IPsec暗号処理部170は、暗号処理されたデータの最後に、認証データを付加する。
 続いて、IPsec暗号処理部170は、IPヘッダ(Inner)、UDPヘッダ、及びRTPヘッダを、ESPヘッダの前に付加する。RTPヘッダには、ペイロードタイプ(PT)の情報が含まれる。IPsec暗号処理部170は、RTPヘッダのPTに、ESPのプロトコル番号(50番)を設定する。
 続いて、IPsec暗号処理部170は、送信データ作成部130により作成されたIPヘッダ(Inner)の前に、IPカプセル化用のIPヘッダ(Outer)を付加する。これにより、データ部暗号処理されたIPパケットが完成する。
 次に、データ受信装置200によるトンネルモードにおけるデータ部復号処理について、図16を用いて説明する。図16の上側から下側に向かって、処理が進む。
 データ受信装置200では、IPsec復号処理部220は、暗号処理されたIPパケットから、復号処理されたIPパケットを生成する。
 外側のIPヘッダ(Outer)の中に記載されたプロトコル情報には、IPのプロトコル番号(4番)が設定されている。IPヘッダ(Outer)は、IPカプセル化のヘッダであるので、IPsec復号処理部220は、IPヘッダ(Outer)を削除し、内側のIPヘッダ(Inner)を調べる。
 IPヘッダ(Inner)に記載されたプロトコル情報には、UDPのプロトコル番号(17番)が設定されている。UDPヘッダにはポート番号の情報が含まれるので、IPsec復号処理部220は、ポート番号から受信処理されるアプリケーションを特定する。
 IPsec復号処理部220は、RTPヘッダが付加されたことを把握できる。これにより、アプリケーションヘッダ処理部232は、RTPヘッダを処理する。RTPヘッダの処理において、IPsec復号処理部220は、重複パケットを確認し、重複パケットの場合には、重複パケットを廃棄する。
 RTPヘッダのペイロードタイプ(PT)の情報には、ESPのプロトコル番号(50番)が設定されているため、IPsec復号処理部220は、ESPを復号処理する。
 ESPの復号処理では、まず、IPsec復号処理部220は、データの最後に付加されたESPの認証データを分離する。IPsec復号処理部220は、ESPヘッダの先頭からESPトレーラの最後までの認証範囲のデータに基づいて、認証データを作成する。IPsec復号処理部220は、作成された認証データとパケットに付加された認証データとを比較し、両者が異なる場合、パケットを廃棄する。
 認証データが一致した場合、IPsec復号処理部220は、ESPヘッダを分離し、暗号処理されたRTPデータ(Encrypted Data)からESPトレーラまでの復号範囲のデータを復号処理する。
 復号処理されたESPトレーラには、パディング長の情報が含まれる。IPsec復号処理部220は、パディング長の情報を参照し、復号処理されたデータの後ろ部分に付加されたパディングを削除する。
 また、IPsec復号処理部220は、ESPヘッダに含まれるプロトコル情報をRTPヘッダのペイロードタイプ(PT)に再度設定する。また、IPsec復号処理部220は、IPヘッダ、UDPヘッダ、及びRTPヘッダをRTPデータの前に付加する。これにより、復号処理後のIPパケットが完成する。
 このように、データ送信装置100は、暗号処理部が、第1の暗号処理と第2の暗号処理とを切り替えてもよい。暗号処理部は、例えば暗号領域判定部160及びIPsec暗号処理部170を含む。これにより、不要な復号処理を軽減する傾向を強化するか、サービス妨害攻撃を低減する傾向を強化するかを、通信環境に応じて設定できる。
 また、データ送信装置100は、暗号処理部が、暗号範囲に含まれないヘッダを暗号処理の情報を含む暗号処理ヘッダの前に付加してもよい。暗号範囲に含まれないヘッダは、例えばUDPヘッダ又はRTPヘッダである。暗号処理ヘッダは、例えばESPヘッダである。
 これにより、データ送信装置100の設計を簡単化できる。暗号処理ヘッダと暗号処理データ(例えばESPデータ、暗号範囲のデータ)とは、連続するものとしてプログラムが汎用的に作られている。このようなヘッダの順序にすることで、汎用性が向上する。
 また、データ受信装置200は、暗号処理指示部は、第1の暗号処理と、第2の暗号処理とを切り替えるようデータ送信装置100に指示してもよい。暗号処理指示部は、例えば暗号領域切り替え判定部250及び切り替え指示送信部260を含む。
 これにより、不要な復号処理を軽減する傾向を強化するか、サービス妨害攻撃を低減する傾向を強化するかを、データ受信装置200が検知した通信環境に応じて設定できる。
 また、データ受信装置200は、暗号処理指示部が、受信された暗号処理されていないパケット数が所定数以上である場合、第1の暗号処理を行うと判定してもよい。第1の暗号処理は、例えばパケット暗号処理である。受信された暗号処理されていないパケットとは、例えば受信エラーを含むパケットである。
 受信エラーの多い場合には、サービス妨害攻撃(DoS攻撃)を受けている可能性が高い。データ送信装置100の暗号処理形式が第1の暗号処理に設定されることで、サービス妨害攻撃を低減する傾向を強化できる。
 また、データ受信装置200は、受信されたパケットに対して認証処理する認証処理部を備え、暗号処理指示部は、認証処理の結果、認証エラーが発生したパケット数が所定数以上である場合、第1の暗号処理を行うと判定してもよい。認証処理部は、例えば認証データ確認処理部223である。
 認証エラーの多い場合には、サービス妨害攻撃(DoS攻撃)を受けている可能性が高い。データ送信装置100の暗号処理形式が第1の暗号処理に設定されることで、サービス妨害攻撃を低減する傾向を強化できる。
 また、データ受信装置200は、暗号処理指示部が、受信された冗長パケットのパケット数が所定値以上である場合、第2の暗号処理を行うと判定してもよい。
 冗長パケットの多い場合には、不要なデータを通信している可能性が高い。データ送信装置100の暗号処理形式が第2の暗号処理に設定されることで、不要な復号処理を低減する傾向を強化できる。
 また、データ受信装置200は、暗号処理指示部が、受信された冗長パケットのパケット数が所定値未満である場合、第1の暗号処理を行うと判定してもよい。
 冗長パケットの少ない場合には、好適な冗長度でデータを通信している可能性が高い。データ送信装置100の暗号処理形式が第1の暗号処理に設定されることで、特に不要な復号処理を増大することなく、サービス妨害攻撃を低減する傾向を強化できる。
 また、データ受信装置200は、受信パケットが暗号処理されていない場合、受信パケットに対する認証処理の結果、認証エラーが発生した場合、又は受信パケットが冗長パケットである場合、復号処理しなくてもよい。
 これにより、不要な復号処理を省略でき、CPU処理負荷を低減できる。
(第2の実施形態)
 第2の実施形態について説明する。本実施形態では、第1の実施形態において説明した内容と重複する内容については、説明を省略する。
 本実施形態では、データ部暗号処理にIPsecを用いる。また、ESPヘッダの位置を変えず、ESPヘッダの内側にあるヘッダ(例えばUDPヘッダ又はアプリケーションヘッダを含む)を暗号処理しない(例えば図18参照)。
 本実施形態では、パケット暗号処理用のSAとデータ部暗号処理用のSAをそれぞれ確立しておく。本実施形態では、パケットに含まれる各ヘッダ及びデータの順序が、パケット暗号処理とデータ部暗号処理とにおいて同一であるためである(例えば図18参照)。従って、SPIの値は、パケット暗号処理とデータ部暗号処理とにおいて、異なる値を設定しておく。
 データ受信装置200は、パケットの先頭のヘッダ(IPヘッダ)、ESPヘッダ、の順に処理し、パケット暗号処理かデータ部暗号処理かを判別する。具体的には、データ受信装置200は、ESPヘッダに含まれるSPIの値によって、暗号処理の種別を区別する。
 パケット暗号処理を示すSPIの場合、データ受信装置200は、ESPヘッダに続く暗号処理されたデータを復号処理する。
 データ部暗号処理を示すSPIの場合、データ受信装置200は、ESPヘッダに続く暗号処理されていない所定のヘッダを最初に処理し、例えば重複パケットを廃棄した後、データ部を復号処理する。この所定のヘッダは、例えばUDPヘッダ、TCPヘッダ、又はアプリケーションヘッダを含む。
 次に、図17を用いて、データ送信装置100の動作例について説明する。
 図17では、図2と同様の処理については、説明を省略又は簡略化する。
 本実施形態のパケット暗号処理は、第1の実施形態において説明したパケット暗号処理と同じであるので、説明を省略する。
 データ部暗号処理では、データ部暗号処理部171は、送信データがブロックサイズの倍数となるようにパディングする。データ部暗号処理部171は、パディングにおけるパディング長の情報とESPヘッダに続くプロトコル情報とをESPトレーラに設定し、パケットにESPトレーラを付加する(ステップS109)。
 続いて、データ部暗号処理部171は、ESPトレーラを付加したパケットをデータ部暗号処理する(ステップS110)。
 続いて、データ部暗号処理部171は、暗号処理されたデータ(Encrypted Data)の前に、UDPヘッダとRTPヘッダとを付加する(ステップS301)。
 続いて、データ部暗号処理部171は、UDPヘッダの前に、ESPヘッダを付加する(ステップS111)。なお、データ部暗号処理部171は、ESPヘッダに、後述するLength情報を設定する。
 続いて、認証データ確認処理部173は、ESPヘッダからESPトレーラまでの認証範囲のデータに基づいて、認証データを作成する(ステップS112)。
 続いて、認証データ確認処理部173は、ESPヘッダを含む各ヘッダが付加されたデータに認証データを付加し(ステップS113)、ESPヘッダの前にIPヘッダを付加する(ステップS114)。これにより、送信パケットが完成する。
 続いて、パケット送信部180は、完成されたパケットを送信する(ステップS115)。
[トランスポートモード]
 次に、トランスポートモードについて説明する。
 図18は、トランスポートモードにおけるパケット暗号処理において用いられるパケットフォーマットと、トランスポートモードにおけるデータ部暗号処理において用いられるパケットフォーマットと、の一例を示す図である。
 パケット暗号処理において用いられるパケットフォーマットは、第1の実施形態と同様であるので、説明を省略する。
 次に、データ送信装置100によるトランスポートモードにおけるデータ部暗号処理について、図19を用いて説明する。図19の上側から下側に向かって、処理が進む。
 データ送信装置100では、送信データ作成部130が、送信データ(IPパケット)を作成し、IPsec暗号処理部170が、IPヘッダとUDPヘッダとの間に、ESPヘッダを挿入する。
 まず、IPsec暗号処理部170は、IPヘッダ、UDPヘッダ、及びRTPヘッダを分離し、RTPデータ(Data)にESPトレーラを付加する。また、IPsec暗号処理部170は、ESPトレーラのプロトコル情報に、UDPを示すプロトコル番号(17番)を設定する。
 続いて、IPsec暗号処理部170は、RTPデータからESPトレーラまでの暗号範囲のデータを暗号処理する。また、IPsec暗号処理部170は、分離されたUDPヘッダとRTPヘッダとを暗号処理されたデータの前に付加する。また、IPsec暗号処理部170は、ESPヘッダをUDPヘッダの前に付加する。
 IPsec暗号処理部170は、ESPヘッダにおいて、ESPヘッダに続くプロトコル情報を「Next Header」に、Length情報を「Length」に設定する。Length情報は、ESPヘッダの終端から暗号処理を開始する位置までの間の長さ(例えばバイト数)を示す情報である。
 プロトコル情報には、UDPを示すプロトコル番号(17番)が設定される。また、Length情報には、UDPヘッダとRTPヘッダの合計の長さ(例えばバイト数)が設定される。
 図20は、「Next header」および「Length」の領域が追加された拡張版のESPパケットフォーマットの一例を示す図である。図6に示したESPパケットフォーマットと異なる点は、ESPデータの領域に、「Next header」および「Length」が追加されている点である。
 続いて、IPsec暗号処理部170は、ESPヘッダからESPトレーラまでの認証範囲のデータに基づいて、認証データを作成する。IPsec暗号処理部170は、暗号処理されたデータの最後に、認証データを付加する。
 続いて、IPsec暗号処理部170は、IPヘッダを、先頭(ESPヘッダの前)に付加する。IPヘッダにはプロトコル情報が含まれるが、当初設定されたプロトコル情報(UDP)は、ESPトレーラの中に格納されている。IPsec暗号処理部170は、IPヘッダのプロトコル情報に、ESPのプロトコル番号(50番)を設定する。これにより、データ部暗号処理されたIPパケットが完成する。
 次に、データ受信装置200によるトランスポートモードにおけるデータ部復号処理について、図21を用いて説明する。図21の上側から下側に向かって、処理が進む。
 データ受信装置200は、IPsec復号処理部220が、暗号処理されたIPパケットから、復号処理されたIPパケットを生成する。
 IPヘッダの中に記載されたプロトコル情報には、ESPのプロトコル番号(50番)が設定されているため、IPsec復号処理部220は、ESPの暗号処理が施されたことを認識できる。また、ESPヘッダに含まれるSPIの値より、IPsec復号処理部220は、データ部暗号処理されたことを認識できる。さらに、ESPヘッダの「Next header」には、ESPヘッダに続くプロトコル情報が含まれるため、IPsec復号処理部220は、UDPパケットが続くことを認識できる。
 UDP/TCPヘッダ処理部231は、UDPヘッダを処理する。また、アプリケーションヘッダ処理部232は、UDPヘッダに含まれるポート番号から受信処理するアプリケーションプログラム(ここではRTP)を特定し、RTPヘッダを処理する。
 また、アプリケーションヘッダ処理部232は、受信パケットが重複パケットかどうか確認する。例えば、以前に受信されたパケットのRTPヘッダと同一のRTPヘッダである場合には、重複パケットであると判定する。アプリケーションヘッダ処理部232は、重複パケットであると判定された場合、パケットを廃棄する。
 続いて、IPsec復号処理部220は、受信パケットの最後に付加されたESPの認証データを分離する。IPsec復号処理部220は、ESPヘッダの先頭からESPトレーラの最後までの認証範囲のデータに基づいて、認証データを作成する。
 IPsec復号処理部220は、作成された認証データとパケットに付加された認証データとを比較し、両者が異なる場合、パケットを廃棄する。なお、ここでは、認証確認処理の前に、UDPヘッダおよびRTPヘッダを処理する例を記載したが、認証確認処理をUDPヘッダ及びRTPヘッダの処理前に行ってもよい。
 IPsec復号処理部220は、両者の認証データが一致した場合、ESPヘッダに含まれるSPIおよびLength情報を用いて、復号処理を実行する。
 この場合、IPsec復号処理部220は、ESPヘッダを取り除き、Length情報により指定されたバイト数を空けた位置、つまり暗号処理されたデータ(Encrypted Data)の先頭からESPトレーラまでを復号処理する。
 IPsec復号処理部220は、復号処理されたESPトレーラに含まれるパディング長の情報を参照し、復号処理されたデータの後ろ部分に付加されたパディングを削除する。また、IPsec復号処理部220は、IPヘッダ、UDPヘッダ、及びRTPヘッダを、復号処理後のデータ(Data)の先頭に付加する。これにより、復号処理されたIPパケットが完成する。
[トンネルモード]
 次に、トンネルモードについて説明する。
 図22は、トンネルモードにおけるパケット暗号処理において用いられるパケットフォーマットと、トンネルモードにおけるデータ部暗号処理において用いられるパケットフォーマットと、の一例を示す図である。
 パケット暗号処理において用いられるパケットフォーマットは、第1の実施形態と同様であるので、説明を省略する。
 次に、データ送信装置100によるトンネルモードにおけるデータ部暗号処理について、図23を用いて説明する。図23の上側から下側に向かって、処理が進む。
 データ送信装置100では、送信データ作成部130が、送信データ(IPパケット)を作成し、IPsec暗号処理部170が、IPパケットにESPヘッダを付加し、さらにIPカプセル化する。
 まず、IPsec暗号処理部170は、IPパケットに含まれるIPヘッダ(Inner)、UDPヘッダ、及びRTPヘッダを分離し、RTPデータ(Data)にESPトレーラを付加する。IPsec暗号処理部170は、ESPトレーラのプロトコル情報に、IPヘッダを示す番号(4番)を設定する。
 続いて、IPsec暗号処理部170は、RTPデータ(Data)からESPトレーラまでの暗号範囲のデータに対して暗号処理する。また、IPsec暗号処理部170は、分離されたIPヘッダ(Inner)、UDPヘッダ及びRTPヘッダを、RTPデータの前に付加する。さらに、IPsec暗号処理部170は、ESPヘッダをIPヘッダ(Inner)の前に付加する。
 IPsec暗号処理部170は、ESPヘッダにおいて、プロトコル情報を「Next Header」に、Length情報を「Length」に設定する。プロトコル情報には、IPを示すプロトコル番号(4番)が設定される。Length情報には、IPヘッダ、UDPヘッダ、及びRTPヘッダの合計の長さ(例えばバイト数)が設定される。
 続いて、IPsec暗号処理部170は、ESPヘッダからESPトレーラまでの認証範囲のデータに基づいて、認証データを作成する。IPsec暗号処理部170は、暗号処理されたデータの最後に、認証データを付加する。
 続いて、IPsec暗号処理部170は、IPヘッダを先頭(ESPヘッダの前)に付加する。また、IPsec暗号処理部170は、IPヘッダのプロトコル情報に、ESPのプロトコル番号(50番)を設定する。これにより、データ部暗号処理されたIPパケットが完成する。
 次に、データ受信装置200によるトランスポートモードにおけるデータ部復号処理について、図24を用いて説明する。図24の上側から下側に向かって、処理が進む。
 データ受信装置200では、IPsec復号処理部220が、暗号処理されたIPパケットから復号処理されたIPパケットを生成する。
 IPヘッダの中に記載されたプロトコル情報には、ESPのプロトコル番号(50番)が設定されているため、IPsec復号処理部220は、ESPの暗号処理されたことを認識できる。また、ESPヘッダに含まれるSPIより、IPsec復号処理部220は、データ部暗号処理されたことを認識できる。さらに、拡張版のESPヘッダには、ESPヘッダに続くプロトコル情報が含まれるため、IPsec復号処理部220は、IPパケットが続くことを認識できる。
 続いて、UDP/TCPヘッダ処理部231は、IPヘッダ及びUDPヘッダを処理する。また、アプリケーションヘッダ処理部232は、ポート番号から受信されたアプリケーションプログラム(ここではRTP)を特定し、RTPヘッダを処理する。
 また、アプリケーションヘッダ処理部232は、受信パケットが重複パケットかどうか確認する。アプリケーションヘッダ処理部232は、重複パケットであると判定された場合、パケットを廃棄する。
 続いて、受信されたデータの最後に付加されたESPの認証データを分離する。また、IPsec復号処理部220は、ESPヘッダの先頭からESPトレーラの最後までの認証範囲のデータに基づいて、認証データを作成する。
 IPsec復号処理部220は、作成された認証データとパケットに付加された認証データとを比較し、両者が異なる場合、パケットを廃棄する。なお、ここでは、認証確認処理の前に、UDPヘッダおよびRTPヘッダを処理する例を記載したが、認証確認処理をUDPヘッダ及びRTPヘッダの処理前に行ってもよい。
 IPsec復号処理部220は、両者の認証データが一致した場合、ESPヘッダに含まれるSPIおよびLength情報を用いて、復号処理を実行する。
 この場合、IPsec復号処理部220は、ESPヘッダを分離し、Length情報により指定されたバイト数を空けた位置、つまり暗号処理されたデータ(Encrypted Data)の先頭からESPトレーラまでを復号処理する。
 IPsec復号処理部220は、復号処理されたESPトレーラに含まれるパディング長の情報を参照し、データの後ろに付加されたパディングを削除する。また、IPsec復号処理部220は、IPヘッダ、UDPヘッダ、及びRTPヘッダを、復号処理後のデータ(Data)の先頭に付加する。これにより、データ部復号処理されたIPパケットが完成する。
 このように、データ送信装置100は、暗号処理部が、第2の暗号処理において、暗号範囲に含まれないヘッダを、暗号処理の情報を含む暗号処理ヘッダの後に付加してもよい。また、暗号処理用のヘッダは、当該暗号処理用のヘッダから暗号範囲までの長さの情報を含む。暗号処理用のヘッダから暗号範囲までの長さの情報は、例えばLength情報である。
 これにより、データ受信装置200側では、復号処理する前に各ヘッダ情報を確認できるので、不要な復号処理の実施を回避できる。データ受信装置200側では、暗号処理用のヘッダから暗号範囲までの長さを認識できるので、復号処理を確実に実行できる。
(第3の実施形態)
 第3の実施形態について説明する。本実施形態では、第1又は第2の実施形態において説明した内容と重複する内容については、説明を省略する。
 本実施形態では、データ部暗号処理に、IPsecを用いない。データ送信装置100は、アプリケーション独自の暗号方式によって、データ部暗号処理する。従って、ESPヘッダが付加されない。
 データ部復号処理では、データ受信装置200は、パケットの先頭のヘッダ(IPヘッダ)、UDPヘッダ、RTPヘッダ、の順に処理する。また、データ受信装置200は、アプリケーションのデータをアプリケーション毎に定められた独自の復号方式により、データ部復号処理する。また、データ受信装置200は、アプリケーション毎に定められた独自の認証方式により、認証処理する。
 また、本実施形態では、パケット暗号処理用のSAのみ確立しておく。データ部暗号処理では、アプリケーション毎に定められた独自のセキュアな通信路が確立される。
 アプリケーション独自の暗号方式、復号方式、及び認証方式としては、例えばSRTPと同様の方式が想定される。
 次に、図25を用いて、データ送信装置100の動作例について説明する。
 図25では、図2と同様の処理については、説明を省略又は簡略化する。
 本実施形態のパケット暗号処理は、第1の実施形態において説明したパケット暗号処理と同じであるので、説明を省略する。
 データ部暗号処理では、アプリケーションデータ暗号処理部120は、送信データ作成部130により作成されたIPパケットを、ブロックサイズの倍数となるようにパディングする。アプリケーションデータ暗号処理部120は、パディング長の情報をトレーラに含め、トレーラをデータに付加する(ステップS401)。
 続いて、アプリケーションデータ暗号処理部120は、トレーラが付加されたデータに対して、アプリケーション毎に定められた所定の暗号方式により、暗号処理する(ステップS402)。
 続いて、アプリケーションデータ暗号処理部120は、暗号処理されたデータに基づいて、認証データを作成する(ステップS403)。
 続いて、アプリケーションデータ暗号処理部120は、暗号処理されたデータの後に認証データを付加する(ステップS404)。
 続いて、アプリケーションデータ暗号処理部120は、RTPヘッダ、UDPヘッダ、及びIPヘッダを、暗号処理されたデータ(Encrypted Data)の前に付加する(ステップS405)。これにより、送信パケットが完成する。
 続いて、パケット送信部180は、完成された送信パケットを送信する(ステップS115)。
 次に、図26を用いて、データ送信装置100によるデータ部暗号処理について説明する。図26の上側から下側に向かって、処理が進む。
 まず、アプリケーションデータ暗号処理部120は、ブロックサイズの倍数となるようにデータにパディングする。アプリケーションデータ暗号処理部120は、パディング長の情報を所定のトレーラに含め、RTPデータ(Data)に付加する。
 続いて、アプリケーションデータ暗号処理部120は、所定のトレーラが付加されたデータを暗号処理する。
 続いて、アプリケーションデータ暗号処理部120は、暗号処理されたデータに基づいて、認証データを作成する。なお、ESPヘッダが付加されないので、暗号範囲と認証範囲とは同じ範囲である。アプリケーションデータ暗号処理部120は、暗号処理されたデータの後に、認証データを付加する。
 続いて、アプリケーションデータ暗号処理部120は、IPヘッダ、UDPヘッダ、及びRTPヘッダを、暗号処理されたデータ(Encrypted Data)の前に付加する。これにより、データ部暗号処理されたIPパケットが完成する。
 次に、図27を用いて、データ受信装置200によるデータ部復号処理について説明する。図27の上側から下側に向かって、処理が進む。
 UDP/TCPヘッダ処理部231は、IPヘッダ及びUDPヘッダを処理する。アプリケーションヘッダ処理部232は、RTPヘッダを処理する。アプリケーションヘッダ処理部232は、例えば受信パケットが以前に受信したパケットと重複する重複パケットである場合には、重複パケットを廃棄する。
 続いて、アプリケーションデータ復号処理部280は、アプリケーション毎に定められた所定の認証方式により、認証処理する。アプリケーションデータ復号処理部280は、認証処理により作成された認証データと、パケットに付加された認証データと、を比較し、両者が一致しない場合には、パケットを廃棄する。
 続いて、アプリケーションデータ復号処理部280は、データ(Encrypted Data)と所定のトレーラとを含む復号範囲のデータに対して、アプリケーション毎に定められた所定の復号方式により、復号処理する。また、アプリケーションデータ復号処理部280は、復号処理された所定のトレーラに含まれるパディング長の情報を用いて、復号処理されたRTPデータ(Data)のパディングを削除する。
 このように、データ送信装置100は、暗号処理部が、前記第2の暗号処理において、アプリケーション毎に定められた暗号方式により前記データ部に対して暗号処理し、前記暗号処理の情報を含む暗号処理ヘッダを付加しなくてもよい。
 データ送信装置100によれば、第2の暗号処理についてはアプリケーションにより処理されるため、データ送信装置100及びデータ受信装置200において、第2の暗号処理用にセキュアな通信路を事前に確立する必要がなく、処理負荷を低減できる。
 本開示は、上記実施形態の構成に限られない。特許請求の範囲において示した機能、または上記実施形態の構成が持つ機能が達成できる構成であれば、どのようなものであっても適用できる。
 上記実施形態では、アプリケーションとしてRTPを主に例示したが、FECでもよいし、その他のアプリケーションでもよい。
 また、上記実施形態では、トランスポート層のプロトコルとしてUDPを主に例示したが、TCPでもよい。
 図28はTCPによる再送処理のシーケンスを示す図である。例えば、データ受信装置200がセグメント「4」を受信していない場合、データ送信装置100は、セグメント「4」以降のセグメント(例えば、セグメント「4」~「7」)を再送信する。このため、セグメント「5」~「7」は、再送処理により複数回送信される重複セグメントとなる。データ受信装置200は、重複パケットを廃棄するので、TCPプロトコルを採用した場合でも、不要な復号処理を省略できる。
 データ送信装置100、データ受信装置200、又はデータ通信システム1000によれば、例えば、重複する復号処理を削除でき、CPU処理負荷を軽減でき、消費電力を抑えられる。従って、データ送信装置100又はデータ受信装置200は、例えば、電話、テレビ、ケーブルテレビ、テレビ放送側の送信機、ラジオおよびラジオ放送側の送信機、又は有線放送機器に適用できる。また、データ送信装置100又はデータ受信装置200は、携帯電話、スマートフォン、タブレット、パソコン、通信機能付きカメラ、通信機能付きビデオカメラ、又は様々なデータ通信機器に適用できる。
 また、上記実施形態では、本開示をハードウェアによって構成する場合を例にとって説明したが、本開示はハードウェアとの連携においてソフトウェアでも実現することも可能である。
 また、上記実施形態の説明に用いた各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部または全てを含むように1チップ化されてもよい。ここでは、LSIとしてもよいし、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称してもよい。
 また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。例えば、LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、LSI内部の回路セルの接続、又は、設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
 さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
(開示の一態様の概要)
 本開示の第1の送信装置は、
 受信装置との間においてセキュアな通信路を確立する送信装置であって、
 パケットを作成するパケット作成部と、
 前記パケット作成部により作成されたパケットにおける冗長パケットの割合又は受信装置からの指示に基づいて、前記パケット作成部により作成されたパケットにおける暗号範囲を決定し、前記暗号範囲のデータに対して暗号処理する暗号処理部と、
 前記セキュアな通信路を介して、前記暗号処理部により暗号処理されたパケットを送信する送信部と、
 を備える。
 この構成により、不要な復号処理を回避でき、サービス妨害攻撃に対抗できる。
 また、本開示の第2の送信装置は、第1の送信装置であって、
 前記暗号処理部は、前記パケット作成部により作成されたパケットの略全体に対して暗号処理する第1の暗号処理と、前記パケット作成部により作成されたパケットに含まれるデータ部に対して暗号処理する第2の暗号処理と、を切り替える。
 また、本開示の第3の送信装置は、第1又は第2の送信装置であって、
 前記暗号処理部は、前記暗号範囲に含まれないヘッダを、前記暗号処理の情報を含む暗号処理ヘッダの前に付加する。
 また、本開示の第4の送信装置は、第2の送信装置であって、
 前記暗号処理部は、前記第2の暗号処理において、前記暗号範囲に含まれないヘッダを、前記暗号処理の情報を含む暗号処理ヘッダの後に付加し、
 前記暗号処理用のヘッダは、前記当該暗号処理用のヘッダから前記暗号範囲までの長さの情報を含む。
 また、本開示の第5の送信装置は、第2の送信装置であって、
 前記暗号処理部は、前記第2の暗号処理において、アプリケーション毎に定められた暗号方式により前記データ部に対して暗号処理し、前記暗号処理の情報を含む暗号処理ヘッダを付加しない。
 また、本開示の第6の送信装置は、第1ないし第5のいずれか1つの送信装置であって、
 前記パケット作成部により作成されるパケットは、RTP(Real-time Transport Protocol)パケット、FEC(Forward Error Correction)パケット、TCP(Transmission Control Protocol)パケット、又は、アプリケーションパケットを含む。
 また、本開示の第1の受信装置は、
 送信装置との間においてセキュアな通信路を確立する受信装置であって、
 前記セキュアな通信路を介してパケットを受信する受信部と、
 前記受信部により受信されたパケットが所定基準を満たすか否かに応じて、前記送信装置により作成されるパケットが暗号処理される暗号範囲を決定し、前記暗号範囲のデータに対して暗号処理するよう前記送信装置に指示する暗号処理指示部と、
 を備える。
 この構成により、不要な復号処理を回避でき、サービス妨害攻撃に対抗できる。
 また、本開示の第2の受信装置は、第1の受信装置であって、
 前記暗号処理指示部は、前記送信装置により作成されたパケットの略全体に対して暗号処理する第1の暗号処理と、前記送信装置により作成されたパケットに含まれるデータ部に対して暗号処理する第2の暗号処理と、を切り替えるよう前記送信装置に指示する。
 また、本開示の第3の受信装置は、第2の受信装置であって、
 前記暗号処理指示部は、前記受信部により受信された暗号処理されていないパケット数が所定数以上である場合、前記第1の暗号処理を行うと判定する。
 また、本開示の第4の受信装置は、第2の受信装置であって、
 前記受信部により受信されたパケットに対して認証処理する認証処理部を備え、
 前記暗号処理指示部は、前記認証処理部による認証処理の結果、認証エラーが発生したパケット数が所定数以上である場合、前記第1の暗号処理を行うと判定する。
 また、本開示の第5の受信装置は、第2の受信装置であって、
 前記暗号処理指示部は、前記受信部により受信された冗長パケットのパケット数が所定値以上である場合、前記第2の暗号処理を行うと判定する。
 また、本開示の第6の受信装置は、第2の受信装置であって、
 前記暗号処理指示部は、前記受信部により受信された冗長パケットのパケット数が所定値未満である場合、前記第1の暗号処理を行うと判定する受信装置。
 また、本開示の第7の受信装置は、第1ないし第6のいずれか1つの受信装置であって、更に、
 前記受信部により受信されたパケットに対して復号処理する復号処理部を備え、
 前記復号処理部は、前記受信部により受信されたパケットが暗号処理されていない場合、前記受信部により受信されたパケットに対する認証処理の結果、認証エラーが発生した場合、又は、前記受信部により受信されたパケットが冗長パケットである場合、復号処理しない。
 また、本開示の第1の通信システムは、
 送信装置と受信装置との間においてセキュアな通信路を確立する通信システムであって、
 前記送信装置は、
 パケットを作成するパケット作成部と、
 前記パケット作成部により作成されたパケットにおける冗長パケットの割合又は前記受信装置からの指示に基づいて、前記パケット作成部により作成されたパケットにおける暗号範囲を決定し、前記暗号範囲のデータに対して暗号処理する暗号処理部と、
 前記セキュアな通信路を介して、前記暗号処理部により暗号処理されたパケットを送信する送信部と、
 を備え、
 前記受信装置は、
 前記セキュアな通信路を介してパケットを受信する受信部と、
 前記受信部により受信されたパケットが所定基準を満たすか否かに応じて、前記送信装置により作成されるパケットが暗号処理される暗号範囲を決定し、前記暗号範囲のデータに対して暗号処理するよう前記送信装置に指示する暗号処理指示部と、
 を備える。
 この構成により、不要な復号処理を回避でき、サービス妨害攻撃に対抗できる。
 また、本開示の第1の送信方法は、
 受信装置との間においてセキュアな通信路を確立する送信装置における送信方法であって、
 パケットを作成するステップと、
 前記作成されたパケットにおける冗長パケットの割合又は受信装置からの指示に基づいて、前記作成されたパケットにおける暗号範囲を決定し、前記暗号範囲のデータに対して暗号処理するステップと、
 前記セキュアな通信路を介して、前記暗号処理されたパケットを送信するステップと、
 を有する。
 この方法により、不要な復号処理を回避でき、サービス妨害攻撃に対抗できる。
 また、本開示の第1の受信方法は、
 送信装置との間においてセキュアな通信路を確立する受信装置における受信方法であって、
 前記セキュアな通信路を介してパケットを受信するステップと、
 前記受信されたパケットが所定基準を満たすか否かに応じて、前記送信装置により作成されるパケットが暗号処理される暗号範囲を決定し、前記暗号範囲のデータに対して暗号処理するよう前記送信装置に指示するステップと、
 を有する。
 この方法により、不要な復号処理を回避でき、サービス妨害攻撃に対抗できる。
 本発明を詳細にまた特定の実施態様を参照して説明したが、本発明の精神と範囲を逸脱することなく様々な変更や修正を加えることができることは当業者にとって明らかである。
 本出願は、2012年5月29日出願の日本特許出願No.2012-122363に基づくものであり、その内容はここに参照として取り込まれる。
 本開示は、不要な復号処理を回避でき、サービス妨害攻撃に対抗できる送信装置、受信装置、通信システム、送信方法、及び受信方法等に有用である。
1000 データ通信システム
100 データ送信装置
110 送信側アプリケーション管理部
120 アプリケーションデータ暗号処理部
130 送信データ作成部
140 重複情報確認部
150 切り替え指示受付部
160 暗号領域判定部
170 IPsec暗号処理部
171 データ部暗号処理部
172 パケット暗号処理部
173 認証データ負荷処理部
174 SAD
175 SPD
180 パケット送信部
200 データ受信装置
210 パケット受信部
220 IPsec復号処理部
221 データ部復号処理部
222 パケット復号処理部
223 認証データ確認処理部
224 SAD
225 SPD
231 UDP/TCPヘッダ処理部
232 アプリケーションヘッダ処理部
241 受信エラーパケット数計測部
242 認証エラーパケット数計測部
243 重複パケット数計測部
250 暗号領域切り替え判定部
260 切り替え指示送信部
270 受信側アプリケーション管理部
280 アプリケーションデータ復号処理部
300 ネットワーク

Claims (16)

  1.  受信装置との間においてセキュアな通信路を確立する送信装置であって、
     パケットを作成するパケット作成部と、
     前記パケット作成部により作成されたパケットにおける冗長パケットの割合又は受信装置からの指示に基づいて、前記パケット作成部により作成されたパケットにおける暗号範囲を決定し、前記暗号範囲のデータに対して暗号処理する暗号処理部と、
     前記セキュアな通信路を介して、前記暗号処理部により暗号処理されたパケットを送信する送信部と、
     を備える送信装置。
  2.  請求項1に記載の送信装置であって、
     前記暗号処理部は、前記パケット作成部により作成されたパケットの略全体に対して暗号処理する第1の暗号処理と、前記パケット作成部により作成されたパケットに含まれるデータ部に対して暗号処理する第2の暗号処理と、を切り替える送信装置。
  3.  請求項1または2に記載の送信装置であって、
     前記暗号処理部は、前記暗号範囲に含まれないヘッダを、前記暗号処理の情報を含む暗号処理ヘッダの前に付加する送信装置。
  4.  請求項2に記載の送信装置であって、
     前記暗号処理部は、前記第2の暗号処理において、前記暗号範囲に含まれないヘッダを、前記暗号処理の情報を含む暗号処理ヘッダの後に付加し、
     前記暗号処理用のヘッダは、前記当該暗号処理用のヘッダから前記暗号範囲までの長さの情報を含む送信装置。
  5.  請求項2に記載の送信装置であって、
     前記暗号処理部は、前記第2の暗号処理において、アプリケーション毎に定められた暗号方式により前記データ部に対して暗号処理し、前記暗号処理の情報を含む暗号処理ヘッダを付加しない送信装置。
  6.  請求項1ないし5のいずれか1項に記載の送信装置であって、
     前記パケット作成部により作成されるパケットは、RTP(Real-time Transport Protocol)パケット、FEC(Forward Error Correction)パケット、TCP(Transmission Control
     Protocol)パケット、又は、アプリケーションパケットを含む送信装置。
  7.  送信装置との間においてセキュアな通信路を確立する受信装置であって、
     前記セキュアな通信路を介してパケットを受信する受信部と、
     前記受信部により受信されたパケットが所定基準を満たすか否かに応じて、前記送信装置により作成されるパケットが暗号処理される暗号範囲を決定し、前記暗号範囲のデータに対して暗号処理するよう前記送信装置に指示する暗号処理指示部と、
     を備える受信装置。
  8.  請求項7に記載の受信装置であって、
     前記暗号処理指示部は、前記送信装置により作成されたパケットの略全体に対して暗号処理する第1の暗号処理と、前記送信装置により作成されたパケットに含まれるデータ部に対して暗号処理する第2の暗号処理と、を切り替えるよう前記送信装置に指示する受信装置。
  9.  請求項8に記載の受信装置であって、
     前記暗号処理指示部は、前記受信部により受信された暗号処理されていないパケット数が所定数以上である場合、前記第1の暗号処理を行うと判定する受信装置。
  10.  請求項8に記載の受信装置であって、更に、
     前記受信部により受信されたパケットに対して認証処理する認証処理部を備え、
     前記暗号処理指示部は、前記認証処理部による認証処理の結果、認証エラーが発生したパケット数が所定数以上である場合、前記第1の暗号処理を行うと判定する受信装置。
  11.  請求項8に記載の受信装置であって、
     前記暗号処理指示部は、前記受信部により受信された冗長パケットのパケット数が所定値以上である場合、前記第2の暗号処理を行うと判定する受信装置。
  12.  請求項8に記載の受信装置であって、
     前記暗号処理指示部は、前記受信部により受信された冗長パケットのパケット数が所定値未満である場合、前記第1の暗号処理を行うと判定する受信装置。
  13.  請求項7ないし12のいずれか1項に記載の受信装置であって、更に、
     前記受信部により受信されたパケットに対して復号処理する復号処理部を備え、
     前記復号処理部は、前記受信部により受信されたパケットが暗号処理されていない場合、前記受信部により受信されたパケットに対する認証処理の結果、認証エラーが発生した場合、又は、前記受信部により受信されたパケットが冗長パケットである場合、復号処理しない受信装置。
  14.  送信装置と受信装置との間においてセキュアな通信路を確立する通信システムであって、
     前記送信装置は、
     パケットを作成するパケット作成部と、
     前記パケット作成部により作成されたパケットにおける冗長パケットの割合又は前記受信装置からの指示に基づいて、前記パケット作成部により作成されたパケットにおける暗号範囲を決定し、前記暗号範囲のデータに対して暗号処理する暗号処理部と、
     前記セキュアな通信路を介して、前記暗号処理部により暗号処理されたパケットを送信する送信部と、
     を備え、
     前記受信装置は、
     前記セキュアな通信路を介してパケットを受信する受信部と、
     前記受信部により受信されたパケットが所定基準を満たすか否かに応じて、前記送信装置により作成されるパケットが暗号処理される暗号範囲を決定し、前記暗号範囲のデータに対して暗号処理するよう前記送信装置に指示する暗号処理指示部と、
     を備える通信システム。
  15.  受信装置との間においてセキュアな通信路を確立する送信装置における送信方法であって、
     パケットを作成するステップと、
     前記作成されたパケットにおける冗長パケットの割合又は受信装置からの指示に基づいて、前記作成されたパケットにおける暗号範囲を決定し、前記暗号範囲のデータに対して暗号処理するステップと、
     前記セキュアな通信路を介して、前記暗号処理されたパケットを送信するステップと、
     を有する送信方法。
  16.  送信装置との間においてセキュアな通信路を確立する受信装置における受信方法であって、
     前記セキュアな通信路を介してパケットを受信するステップと、
     前記受信されたパケットが所定基準を満たすか否かに応じて、前記送信装置により作成されるパケットが暗号処理される暗号範囲を決定し、前記暗号範囲のデータに対して暗号処理するよう前記送信装置に指示するステップと、
     を有する受信方法。
PCT/JP2013/002548 2012-05-29 2013-04-15 送信装置、受信装置、通信システム、送信方法、及び受信方法 WO2013179551A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2013558256A JPWO2013179551A1 (ja) 2012-05-29 2013-04-15 送信装置、受信装置、通信システム、送信方法、及び受信方法
US14/131,959 US9185130B2 (en) 2012-05-29 2013-04-15 Transmission apparatus, reception apparatus, communication system, transmission method, and reception method
EP13797957.1A EP2858300A4 (en) 2012-05-29 2013-04-15 TRANSMITTING APPARATUS, RECEIVING APPARATUS, COMMUNICATION SYSTEM, TRANSMITTING METHOD, AND RECEIVING METHOD

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012122363 2012-05-29
JP2012-122363 2012-05-29

Publications (1)

Publication Number Publication Date
WO2013179551A1 true WO2013179551A1 (ja) 2013-12-05

Family

ID=49672786

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/002548 WO2013179551A1 (ja) 2012-05-29 2013-04-15 送信装置、受信装置、通信システム、送信方法、及び受信方法

Country Status (4)

Country Link
US (1) US9185130B2 (ja)
EP (1) EP2858300A4 (ja)
JP (1) JPWO2013179551A1 (ja)
WO (1) WO2013179551A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023175705A1 (ja) * 2022-03-15 2023-09-21 日本電気株式会社 通信制御装置、通信装置、通信制御システム、通信制御方法およびプログラム
JP7391496B2 (ja) 2018-06-11 2023-12-05 大日本印刷株式会社 パケット通信システム

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160182542A1 (en) * 2014-12-18 2016-06-23 Stuart Staniford Denial of service and other resource exhaustion defense and mitigation using transition tracking
CN110912859B (zh) 2018-09-17 2021-12-14 华为技术有限公司 发送报文的方法、接收报文的方法及网络设备
US10812220B1 (en) * 2018-09-26 2020-10-20 Parallels International Gmbh Method and system for transmitting data over multiple paths
CN112448918B (zh) * 2019-08-29 2023-06-09 华为技术有限公司 报文传输方法及装置、计算机存储介质
US11777708B2 (en) * 2021-09-30 2023-10-03 International Business Machines Corporation Secure encryption of partial blocks

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008034939A (ja) * 2006-07-26 2008-02-14 Oki Electric Ind Co Ltd データ配信システム、配信サーバ、サーバ及び受信端末
JP2008067102A (ja) * 2006-09-07 2008-03-21 Victor Co Of Japan Ltd コンテンツ配信サーバ
JP2012010254A (ja) * 2010-06-28 2012-01-12 Fujitsu Ltd 通信装置、通信方法及び通信システム
JP2013015605A (ja) * 2011-07-01 2013-01-24 Nippon Telegr & Teleph Corp <Ntt> 信号処理装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7155011B2 (en) * 2001-03-13 2006-12-26 Victor Company Of Japan, Limited Encryption method, decryption method, and recording and reproducing apparatus
US20040193871A1 (en) * 2003-03-28 2004-09-30 Broadcom Corporation System and method for transmitting data using selective partial encryption
US8594075B2 (en) * 2006-04-19 2013-11-26 D & S Consultants, Inc. Method and system for wireless VoIP communications
US9654810B2 (en) * 2010-07-23 2017-05-16 Lattice Semiconductor Corporation Mechanism for partial encryption of data streams
US9106680B2 (en) * 2011-06-27 2015-08-11 Mcafee, Inc. System and method for protocol fingerprinting and reputation correlation
US8745381B2 (en) * 2011-10-19 2014-06-03 Ixia Methods, systems, and computer readable media for performing encapsulating security payload (ESP) rehashing

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008034939A (ja) * 2006-07-26 2008-02-14 Oki Electric Ind Co Ltd データ配信システム、配信サーバ、サーバ及び受信端末
JP2008067102A (ja) * 2006-09-07 2008-03-21 Victor Co Of Japan Ltd コンテンツ配信サーバ
JP2012010254A (ja) * 2010-06-28 2012-01-12 Fujitsu Ltd 通信装置、通信方法及び通信システム
JP2013015605A (ja) * 2011-07-01 2013-01-24 Nippon Telegr & Teleph Corp <Ntt> 信号処理装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2858300A4 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7391496B2 (ja) 2018-06-11 2023-12-05 大日本印刷株式会社 パケット通信システム
WO2023175705A1 (ja) * 2022-03-15 2023-09-21 日本電気株式会社 通信制御装置、通信装置、通信制御システム、通信制御方法およびプログラム

Also Published As

Publication number Publication date
EP2858300A4 (en) 2015-07-01
US20140201523A1 (en) 2014-07-17
JPWO2013179551A1 (ja) 2016-01-18
US9185130B2 (en) 2015-11-10
EP2858300A1 (en) 2015-04-08

Similar Documents

Publication Publication Date Title
WO2013179551A1 (ja) 送信装置、受信装置、通信システム、送信方法、及び受信方法
US8984268B2 (en) Encrypted record transmission
CN102882789B (zh) 一种数据报文处理方法、系统及设备
JP3783142B2 (ja) 通信システム、通信装置、通信方法、及びそれを実現するための通信プログラム
US7434045B1 (en) Method and apparatus for indexing an inbound security association database
US20070180227A1 (en) Decryption apparatus for use in encrypted communications
WO2020134413A1 (zh) 一种数据传输方法、装置、相关设备及存储介质
WO2016165277A1 (zh) 一种实现IPsec分流的方法和装置
JP2012010254A (ja) 通信装置、通信方法及び通信システム
KR100415554B1 (ko) 정보 보호 인터넷 프로토콜 패킷의 송수신 방법
WO2010078127A2 (en) Anti-replay method for unicast and multicast ipsec
CN112600802B (zh) 一种SRv6加密报文、SRv6报文的加解密方法及装置
JP2013077957A (ja) 中継装置、暗号化通信システム、暗号化通信プログラム、および暗号化通信方法
WO2021208088A1 (en) Method and apparatus for security communication
JP2010011122A (ja) 暗号化パケット処理システム
EP3131269B1 (en) Method and device for conducting ah authentication on ipsec packet which has gone through nat traversal
WO2023159346A1 (en) Communication devices and methods therein for facilitating ipsec communications
WO2024092655A1 (en) Method and communication device for communication using ipsec
Lindskog et al. An end-to-end security solution for SCTP
Lindskog et al. The design and message complexity of secure socket SCTP
Liu Research on Network Security Based on IPSec
CN111556084A (zh) Vpn设备间的通信方法、装置、系统、介质和电子设备
Lindskog et al. A comparison of end-to-end security solutions for sctp
Migault Internet-Draft Orange Intended status: Standards Track T. Guggemos, Ed. Expires: January 3, 2015 Orange/LMU Munich July 2, 2014
LIOY Advanced Security Technologies in Networking 55 95 B. Jerman-Blažič et al.(Eds.) IOS Press, 2001

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2013558256

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2013797957

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 14131959

Country of ref document: US

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13797957

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE