next up previous
Next: 4.3.2 Data Confidentiality Up: 4.3 Security Service Previous: 4.3 Security Service

4.3.1 Data Integrity

The Secure TCP must protect following parts against message modification attacks: TCP header and TCP segment data.

The TCP header has TCP control information, such as checksum, acknowledgment number, sequence number and control flags. These information are essential for TCP protocol, and thus they must be protected. Furthermore, since the TCP segment data includes real application data that may be potential target for attackers, its integrity must be maintained.

We introduced MAC (Message Authentication Code) in the Secure TCP segment to identify if it is modified by attackers. MAC is made by following procedures.

  1. The Message Digest (MD) is calculated by applying a hash function as follows;

    MD = hash(TCP psudeo header + TCP header + TCP segmentdata)

    The TCP pseudo header consists of a source IP address, a destination IP address, a TCP segment length and a protocol number derived from the IP header. The TCP header includes the TCP options, but all the bits in its checksum field are filled up with zeros. Both headers are the network byte order, as specified in the TCP protocol specification. If there are no payload data, the TCP segment data will be zero.

  2. MAC is derived from the encryption of the MD. This encryption process is achieved by the shared key WKi.

    MAC = (MD)^{WKi}

Toshiyuki Tutumi
Sat Apr 29 04:12:04 GMT+0900 1995