Network Working Group J. Altman Request for Comments: 2949 Columbia University Category: Standards Track September 2000
Network Working Group J. Altman Request for Comments: 2949 Columbia University Category: Standards Track September 2000
Telnet Encryption: CAST-128 64 bit Output Feedback
Telnet加密:CAST-128 64位输出反馈
Status of this Memo
本备忘录的状况
This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.
本文件规定了互联网社区的互联网标准跟踪协议,并要求进行讨论和提出改进建议。有关本协议的标准化状态和状态,请参考当前版本的“互联网官方协议标准”(STD 1)。本备忘录的分发不受限制。
Copyright Notice
版权公告
Copyright (C) The Internet Society (2000). All Rights Reserved.
版权所有(C)互联网协会(2000年)。版权所有。
Abstract
摘要
This document specifies how to use the CAST-128 encryption algorithm in output feedback mode with the telnet encryption option. Two key sizes are defined: 40 bit and 128 bit.
本文档指定如何在输出反馈模式下使用带telnet加密选项的CAST-128加密算法。定义了两种密钥大小:40位和128位。
Encryption Type
加密类型
CAST5_40_OFB64 9 CAST128_OFB64 11
4号铸造4号铸造9号铸造128号铸造4号铸造11号铸造
Suboption Commands
子选项命令
OFB64_IV 1 OFB64_IV_OK 2 OFB64_IV_BAD 3
OFB64_IV 1 OFB64_IV_OK 2 OFB64_IV_BAD 3
IAC SB ENCRYPT IS CAST5_40_OFB64 OFB64_IV <initial vector> IAC SE IAC SB ENCRYPT IS CAST128_OFB64 OFB64_IV <initial vector> IAC SE
IAC SB ENCRYPT IS CAST5_40_OFB64 OFB64_IV <initial vector> IAC SE IAC SB ENCRYPT IS CAST128_OFB64 OFB64_IV <initial vector> IAC SE
The sender of this command generates a random 8 byte initial vector, and sends it to the other side of the connection using the OFB64_IV command. The initial vector is sent in clear text. Only the side of the connection that is WILL ENCRYPT may send the OFB64_IV command.
此命令的发送方生成一个随机的8字节初始向量,并使用OFB64_IV命令将其发送到连接的另一端。初始向量以明文形式发送。只有将加密的连接端可以发送OFB64_IV命令。
IAC SB ENCRYPT REPLY CAST5_40_OFB64 OFB64_IV_OK IAC SE IAC SB ENCRYPT REPLY CAST128_OFB64 OFB64_IV_OK IAC SE IAC SB ENCRYPT REPLY CAST5_40_OFB64 OFB64_IV_BAD IAC SE IAC SB ENCRYPT REPLY CAST128_OFB64 OFB64_IV_BAD IAC SE
IAC SB加密回复CAST64\u IV\u OK IAC SE IAC SB加密回复CAST128\u OFB64\u IV\u OK IAC SE IAC SB加密回复CAST64\u IV\u BAD IAC SE IAC SB加密回复CAST128\u OFB64\u IV\u BAD IAC SE
The sender of these commands either accepts or rejects the initial vector received in a OFB64_IV command. Only the side of the connection that is DO ENCRYPT may send the OFB64_IV_OK and OFB64_IV_BAD commands. The OFB64_IV_OK command MUST be sent for backwards compatibility with existing implementations; there really isn't any reason why a sender would need to send the OFB64_IV_BAD command except in the case of a protocol violation where the IV sent was not of the correct length (i.e., 8 bytes).
这些命令的发送方接受或拒绝在OFB64_IV命令中接收的初始向量。只有连接的加密端可以发送OFB64_IV_OK和OFB64_IV_BAD命令。必须发送OFB64_IV_OK命令,以便与现有实现向后兼容;发送方确实没有任何理由需要发送OFB64_IV_BAD命令,除非在违反协议的情况下发送的IV长度不正确(即8字节)。
Once a OFB64_IV_OK command has been received, the WILL ENCRYPT side of the connection should do keyid negotiation using the ENC_KEYID command. Once the keyid negotiation has successfully identified a common keyid, then START and END commands may be sent by the side of the connection that is WILL ENCRYPT. Data will be encrypted using the CAST128 64 bit Output Feedback algorithm.
收到OFB64_IV_OK命令后,连接的WILL ENCRYPT端应使用ENC_keyid命令进行keyid协商。一旦keyid协商成功地识别了一个公共keyid,那么将加密的连接端可以发送START和END命令。数据将使用CAST128 64位输出反馈算法进行加密。
If encryption (decryption) is turned off and back on again, and the same keyid is used when re-starting the encryption (decryption), the intervening clear text must not change the state of the encryption (decryption) machine.
如果关闭加密(解密)并再次打开,并且在重新启动加密(解密)时使用相同的密钥ID,则插入的明文不得更改加密(解密)计算机的状态。
If a START command is sent (received) with a different keyid, the encryption (decryption) machine must be re-initialized immediately following the end of the START command with the new key and the initial vector sent (received) in the last OFB64_IV command.
如果使用不同的密钥ID发送(接收)启动命令,则必须在使用新密钥和最后一个OFB64_IV命令中发送(接收)的初始向量的启动命令结束后立即重新初始化加密(解密)机器。
If a new OFB64_IV command is sent (received), and encryption (decryption) is enabled, the encryption (decryption) machine must be re-initialized immediately following the end of the OFB64_IV command with the new initial vector, and the keyid sent (received) in the last START command.
如果发送(接收)了新的OFB64_IV命令,并且启用了加密(解密),则必须在OFB64_IV命令结束后立即用新的初始向量重新初始化加密(解密)机器,并在最后一个START命令中发送(接收)keyid。
If encryption (decryption) is not enabled when a OFB64_IV command is sent (received), the encryption (decryption) machine must be re-initialized after the next START command, with the keyid sent (received) in that START command, and the initial vector sent (received) in this OFB64_IV command.
如果在发送(接收)OFB64_IV命令时未启用加密(解密),则必须在下一个START命令后重新初始化加密(解密)机器,在该START命令中发送(接收)keyid,并在此OFB64_IV命令中发送(接收)初始向量。
CAST 64 bit Output Feedback
强制转换64位输出反馈
key --->+------+ +->| CAST |--+ | +------+ | +------------+ v INPUT --------->(+) ----> DATA
key --->+------+ +->| CAST |--+ | +------+ | +------------+ v INPUT --------->(+) ----> DATA
Given: iV: Initial vector, 64 bits (8 bytes) long. Dn: the nth chunk of 64 bits (8 bytes) of data to encrypt (decrypt). On: the nth chunk of 64 bits (8 bytes) of encrypted (decrypted) output.
给定:iV:初始向量,64位(8字节)长。Dn:要加密(解密)的64位(8字节)数据的第n块。On:加密(解密)输出的第n块64位(8字节)。
V0 = CAST(iV, key) V(n+1) = CAST(Vn, key) On = Dn ^ Vn
V0 = CAST(iV, key) V(n+1) = CAST(Vn, key) On = Dn ^ Vn
As noted in the telnet ENCRYPTION option specifications, a keyid value of zero indicates the default encryption key, as might be derived from the telnet AUTHENTICATION option. If the default encryption key negotiated as a result of the telnet AUTHENTICATION option contains less than 16 (5) bytes, then the CAST128_OFB64 (CAST5_40_OFB64) option must not be offered or used as a valid telnet encryption option.
如telnet加密选项规范中所述,keyid值为零表示默认加密密钥,这可能是从telnet身份验证选项派生的。如果由于telnet身份验证选项而协商的默认加密密钥包含少于16(5)个字节,则不得提供或使用CAST128_Ob64(CAST5_40_Ob64)选项作为有效的telnet加密选项。
If there are less than 32 (10) bytes of key data, the first 16 (5) bytes of key data are used as keyid 0 in each direction. If there are at least 32 (10) bytes of key data, the first 16 (5) bytes of key data are used to encrypt the data sent by the telnet client to the telnet server; the second 16 (5) bytes of key data are used to encrypt the data sent by the telnet server to the telnet client.
如果密钥数据少于32(10)字节,则前16(5)字节的密钥数据将用作每个方向上的密钥ID 0。如果至少有32(10)字节的密钥数据,则前16(5)字节的密钥数据用于加密telnet客户端发送到telnet服务器的数据;第二个16(5)字节的密钥数据用于加密telnet服务器发送到telnet客户端的数据。
Any extra key data is used as random data to be sent as an initialization vector.
任何额外的密钥数据都用作随机数据,作为初始化向量发送。
Encryption using Output Feedback does not ensure data integrity; an active attacker may be able to substitute text, if he can predict the clear-text that was being transmitted.
使用输出反馈的加密无法确保数据完整性;如果主动攻击者能够预测正在传输的明文,则他可能能够替换文本。
The tradeoff here is that adding a message authentication code (MAC) will significantly increase the number of bytes needed to send a single character in the telnet protocol, which will impact performance on slow (i.e. dialup) links.
这里的权衡是,添加消息身份验证码(MAC)将显著增加telnet协议中发送单个字符所需的字节数,这将影响慢速(即拨号)链路的性能。
This option was originally drafted back when CPU speeds where not necessarily fast enough to do allow use of CFB. Since then, CPU's have gotten much faster. Given the inherent weaknesses in Output Feedback mode, perhaps it should be deprecated in favor of CFB modes?
该选项最初是在CPU速度不一定快到允许使用CFB时起草的。从那时起,CPU的速度变得更快了。考虑到输出反馈模式的固有弱点,也许应该反对使用CFB模式?
Encryption modes using 40-bit keys are not to be considered secure. The 40 bit key mode CAST5_40_OFB64 is listed here simply to document the implementations that are already prevalent on the Internet but have never been documented.
使用40位密钥的加密模式不被认为是安全的。这里列出的40位密钥模式CAST5_40_Ob64只是为了记录互联网上已经流行但从未被记录的实现。
This document was based on the "Telnet Encryption: DES 64 bit Output Feedback" document originally written by Dave Borman of Cray Research with the assistance of the IETF Telnet Working Group.
本文档基于“Telnet加密:DES 64位输出反馈”文档,最初由Cray Research的Dave Borman在IETF Telnet工作组的协助下编写。
[1] Adams, C., "The CAST-128 Encryption Algorithm", RFC 2144, May 1997.
[1] Adams,C.,“CAST-128加密算法”,RFC 2144,1997年5月。
Author's Address
作者地址
Jeffrey Altman, Editor Columbia University 612 West 115th Street Room 716 New York NY 10025 USA
Jeffrey Altman,编辑哥伦比亚大学612西115街716室美国纽约州纽约市10025
Phone: +1 (212) 854-1344 EMail: jaltman@columbia.edu
Phone: +1 (212) 854-1344 EMail: jaltman@columbia.edu
Full Copyright Statement
完整版权声明
Copyright (C) The Internet Society (2000). All Rights Reserved.
版权所有(C)互联网协会(2000年)。版权所有。
This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English.
本文件及其译本可复制并提供给他人,对其进行评论或解释或协助其实施的衍生作品可全部或部分编制、复制、出版和分发,不受任何限制,前提是上述版权声明和本段包含在所有此类副本和衍生作品中。但是,不得以任何方式修改本文件本身,例如删除版权通知或对互联网协会或其他互联网组织的引用,除非出于制定互联网标准的需要,在这种情况下,必须遵循互联网标准过程中定义的版权程序,或根据需要将其翻译成英语以外的其他语言。
The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns.
上述授予的有限许可是永久性的,互联网协会或其继承人或受让人不会撤销。
This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS 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.
本文件和其中包含的信息是按“原样”提供的,互联网协会和互联网工程任务组否认所有明示或暗示的保证,包括但不限于任何保证,即使用本文中的信息不会侵犯任何权利,或对适销性或特定用途适用性的任何默示保证。
Acknowledgement
确认
Funding for the RFC Editor function is currently provided by the Internet Society.
RFC编辑功能的资金目前由互联网协会提供。