In the Internet, some of application protocols handle important and/or sensitive data. However, because of lack of security functions in the current TCP/IP protocols, they are under threat of attacks, such as unauthorized accesses, message modifications and eavesdroppings. Several mechanisms and protocols to guard the Internet communications have been proposed against these attacks, such as Privacy Enhanced Mail(PEM), Privacy Enhanced Telnet(PET), Kerberos authentication service, swIPe and IP/Secure.
In order to reduce overhead for adding security functions to current existing application protocols and systems, various kinds of security services should be available. Currently, adding security functions onto the host/host communication are performed by IP level security such as swIPe or IP/Secure. However, for process/process communication, enhancement of each application protocol has been the only way to add security functions. Therefore, because of the overhead to enhance application protocols, only few of applications are now providing security functions such as data encryption or user authentication.
In order to reduce this overhead and accelerate the integration of security functions to currently available network applications, security functions should be provided in the transport layer. So, we propose and have developed a new mechanism called ``Secure TCP'' --- a security enhanced TCP to guard communication against the attacks. Since TCP is widely used for various applications, the Secure TCP can be applied to many of current existing network applications. The Secure TCP can be a common platform for the secure network applications to achieve secure process/process communication.
Furthermore, the Secure TCP provides a solution for the smooth migration to secure services for existing applications. The Secure TCP is interoperable with the classical TCP since it uses a natural extension of TCP three-way handshake to exchange session keys for TCP segment encryption, while swIPe requires a complicated swIPe neighbor discovery mechanism. This feature is important to apply it to the existing network environment.
This paper is organized as follows: Section 2 shows problems of a current version of TCP. Section 3 gives our goal and assumption of Secure TCP. Section 4 describes a design of Secure TCP protocol. Section 5 discusses the protocol format in our implementation. Section 6 shows our implementation on BSD UNIX System and a simple performance measurement. Section 7 argues future works of Secure TCP development.