Skip to main content

6. Algorithm and Method Naming (算法和方法命名)

6. Algorithm and Method Naming (算法和方法命名)

SSH 协议通过名称引用特定的哈希 (hash),加密 (encryption),完整性 (integrity),压缩 (compression) 和密钥交换 (key exchange) 算法或方法.所有实现必须支持一些标准算法和方法.还有一些在协议规范中定义的算法和方法, 但它们是可选的.此外, 预计一些组织将希望使用他们自己的算法或方法.

在此协议中, 所有算法和方法标识符必须是可打印的 US-ASCII, 非空字符串, 不超过 64 个字符.名称必须区分大小写.

算法和方法名称有两种格式:

  • 不包含 at 符号 ("@") 的名称保留由 IETF CONSENSUS 分配.示例包括 "3des-cbc", "sha-1", "hmac-sha1" 和 "zlib" (双引号不是名称的一部分).此格式的名称仅在首先向 IANA 注册时才有效.注册的名称不得包含 at 符号 ("@"),逗号 (","),空格,控制字符 (ASCII 码 32 或更少) 或 ASCII 码 127 (DEL).名称区分大小写, 并且不得超过 64 个字符.

  • 任何人都可以通过使用格式为 name@domainname 的名称来定义额外的算法或方法, 例如, "[email protected]".at 符号之前部分的格式未指定; 但是, 这些名称必须是可打印的 US-ASCII 字符串, 并且不得包含逗号字符 (","),空格,控制字符 (ASCII 码 32 或更少) 或 ASCII 码 127 (DEL).它们必须只有一个 at 符号.at 符号后面的部分必须是由定义名称的个人或组织控制的有效,完全限定的域名 [RFC1034].名称区分大小写, 并且不得超过 64 个字符.每个域如何管理其本地命名空间由每个域自行决定.应该注意的是, 这些名称类似于 STD 11 [RFC0822] 电子邮件地址.这纯粹是巧合, 与 STD 11 [RFC0822] 无关.