Network Working Group B. Harris Internet-Draft February 15, 2007 Intended status: Standards Track Expires: August 19, 2007 Extended packet types for the Secure Shell (SSH) Transport Layer Protocol draft-bjh21-ssh-transport-extension-00 Status of this Memo By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on August 19, 2007. Copyright Notice Copyright (C) The IETF Trust (2007). Abstract This memo introduces a new message type into the Secure Shell (SSH) Transport Layer Protocol whose meaning and contents are defined by a name at the start of the message, thus allowing for further extensions to the protocol to be implemented without using further message numbers. Comments are solicited and should be addressed to the mailing list at Harris Expires August 19, 2007 [Page 1] Internet-Draft SSH Transport Protocol Extension February 2007 or to the author. 1. Introduction Secure Shell (SSH) [RFC4251] is a secure remote-login protocol. Its transport layer is designed to be extensible, and in particular the various cryptographic algorithms that it uses are identified by names, which are strings of up to 64 ASCII characters. Significantly, names ending with '@' followed by a domain name are reserved for allocation by the owner of the corresponding domain. Individual messages in SSH, though, have their meaning specified by a single byte at the start. Only 19 of these message numbers are available for generic transport-layer purposes, and at the time of writing six have already been allocated. This shortage of message numbers, and the requirement that they be allocated by IANA, increases the difficulty of developing extensions to the SSH Transport Layer Protocol that require new messages. This document aims to alleviate this problem by allocating one message number for extensions to the transport layer protocol, with the type of the packet being identified by name. 2. Conventions Used in this Document The key words "MUST", "SHOULD", and "SHOULD NOT" in this document are to be interpreted as described in [RFC2119]. The data types "byte", "string", and "mpint" are defined in section 5 of [RFC4251]. Other terminology and symbols have the same meaning as in [RFC4253]. 3. Extension Message Format The format of the message is: byte SSH_MSG_TRANSPORT_EXTENSION string extension name ... extension-specific fields The meaning of the message and the contents of 'extension-specific fields' are determined by 'message name', which follows the conventions described in section 4.6.1 of [RFC4250]. Harris Expires August 19, 2007 [Page 2] Internet-Draft SSH Transport Protocol Extension February 2007 If an implementation recieves an SSH_MSG_TRANSPORT_EXTENSION whose 'extension name' it does not recognise, it MUST treat it as if the message number were unrecognised and return SSH_MSG_UNIMPLEMENTED as specified in section 11.4 of [RFC4253]. 4. Security Considerations The security considerations in [RFC4251] apply. New message types introduced under this specification SHOULD NOT be sent before initial key exchange is complete (i.e. before sending SSH_MSG_NEWKEYS), since packets sent before that and not included in the exchange hash have no integrity protection. Similarly, any such packets received before the first SSH_MSG_NEWKEYS SHOULD be either ignored or rejected. 5. IANA Considerations IANA should assign a Message Number in the range 1 to 19 for SSH_MSG_TRANSPORT_EXTENSION in accordance with section 4.1 of [RFC4250]. IANA should maintain a register of Transport Layer Extension Packet Names following the conventions and instructions in section 4.6 of [RFC4250]. 6. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC4250] Lehtinen, S. and C. Lonvick, "The Secure Shell (SSH) Protocol Assigned Numbers", RFC 4250, January 2006. [RFC4251] Ylonen, T. and C. Lonvick, "The Secure Shell (SSH) Protocol Architecture", RFC 4251, January 2006. [RFC4253] Ylonen, T. and C. Lonvick, "The Secure Shell (SSH) Transport Layer Protocol", RFC 4253, January 2006. Trademark Notice "SSH" is a registered trademark in the United States. Harris Expires August 19, 2007 [Page 3] Internet-Draft SSH Transport Protocol Extension February 2007 Author's Address Ben Harris 2a Eachard Road CAMBRIDGE CB3 0HY GB Email: bjh21@bjh21.me.uk Harris Expires August 19, 2007 [Page 4] Internet-Draft SSH Transport Protocol Extension February 2007 Full Copyright Statement Copyright (C) The IETF Trust (2007). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual Property The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org. Acknowledgment Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA). Harris Expires August 19, 2007 [Page 5]