Network Working Group T. Ts'o
Request for Comments: 2946 VA Linux Systems
Category: Standards Track September 2000
Telnet Data Encryption Option
1. Command Names and Codes
ENCRYPT 38
IS 0
SUPPORT 1
REPLY 2
START 3 END 4 REQUEST-START 5 REQUEST-END 6 ENC_KEYID 7 DEC_KEYID 8
Ts'o Standards Track [Page 1]
RFC 2946 Telnet Data Encryption Option September 2000
Following historical practice, future encryption type numbers will be assigned by the IANA under a First Come First Served policy as outlined by RFC 2434 [3]. Despite the fact that authentication type numbers are allocated out of an 8-bit number space (as are most values in the telnet specification) it is not anticipated that the number space is or will become in danger of being exhausted. However, if this should become an issue, when over 50% of the number space becomes allocated, the IANA shall refer allocation requests to either the IESG or a designated expert for approval.
2. Command Meanings
IAC WILL ENCRYPT
Ts'o Standards Track [Page 2]
RFC 2946 Telnet Data Encryption Option September 2000
IAC SB ENCRYPT IS encryption-type ... IAC SE
Ts'o Standards Track [Page 3]
RFC 2946 Telnet Data Encryption Option September 2000
IAC SB ENCRYPT REQUEST-END IAC SE
3. Default Specification
The default specification for this option is
4. Motivation
The Telnet protocol has no form of protection from some intervening gateway looking at IP packets as they travel through the network. This is especially dangerous when passwords are sent as clear text over the network. This option provides a method for encrypting the data stream.
5. Implementation Rules
Once the Encryption option is in effect, all data in the negotiated direction, including TELNET options, is encrypted. Encryption begins with the octet of data immediately following the "IAC SB ENCRYPT START encryption-type IAC SE" command. Encryption ends after the "IAC SB ENCRYPT END IAC SE" command. WILL and DO are used only at the beginning of the connection to obtain and grant permission for future negotiations. The ENCRYPT option must be negotiated in both directions.
Ts'o Standards Track [Page 4]
RFC 2946 Telnet Data Encryption Option September 2000
Once the two hosts have exchanged a WILL and a DO, the sender of the DO ENCRYPT must send a ENCRYPT SUPPORT command to let the remote side know the types of encryption it is willing to accept. In the request, a list of supported encryption schemes is sent. Only the sender of the DO may send a list of supported encryption types (IAC SB ENCRYPT SUPPORT encryption-type-list IAC SE). Only the sender of the WILL may actually transmit encrypted data. This is initiated via the "IAC SB ENCRYPT START IAC SE" command, and terminated via the "IAC SB ENCRYPT END IAC SE" command. If a START is received, and then a second START is received before receiving an END, the second START is ignored.
Ts'o Standards Track [Page 5]
RFC 2946 Telnet Data Encryption Option September 2000
Host1 Host2
6. Security Considerations
The ENCRYPT option used in isolation provides protection against passive attacks, but not against active attacks. In other words, it will provide protection from someone who is just watching the IP packets as they pass through the network. However, an attacker who is able to modify packets in flight could prevent the ENCRYPT option from being negotiated.
Ts'o Standards Track [Page 6]
RFC 2946 Telnet Data Encryption Option September 2000 7. Future directions for Telnet EncryptionThe specification defines a method for providing data confidentiality to the telnet data stream. Unfortunately all of the encryption mechanism provided under this option do not provide data integrity, because of the complexity of specifying a protocol which provided integrity services efficiently in a stream-oriented protocol.
8. Acknowledgments
This document was originally written by Dave Borman of Cray Research, with the assistance of Theodore Ts'o of MIT and the IETF Telnet Working Group.
9. References
[1] Reynolds, J. and J. Postel, "Telnet Protocol Specification", STD
10. Author's Address
Theodore Ts'o, Editor VA Linux Systems 43 Pleasant St. Medford, MA 02155
Ts'o Standards Track [Page 7]
RFC 2946 Telnet Data Encryption Option September 2000 11. Full Copyright StatementCopyright (C) The Internet Society (2000). All Rights Reserved.