zlib和zlib@openssh.com有什么区别?

时间:2019-04-30 04:02:13

标签: ssh compression

当我调试ssh时,发现有2种压缩方法:zlib和zlib@openssh.com。

debug2:compression ctos: none, zlib@openssh.com,zlib
debug2:compression stoc: none, zlib@openssh.com,zlib

那么2之间有什么区别吗?

2 个答案:

答案 0 :(得分:0)

rfc4251

  

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

     

不包含符号(“ @”)的名称保留为         由IETF CONSENSUS分配。示例包括“ 3des-cbc”,“ sha-1”,         “ hmac-sha1”和“ zlib”(双引号不属于         名称)。此格式的名称仅在名称为第一个时才有效         在IANA上注册。注册名称不得包含         符号(“ @”),逗号(“,”),空格,控制字符(ASCII         小于等于32的代码)或ASCII码127(DEL)。名称区分大小写         敏感字符,且不得超过64个字符。

     

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

简而言之,一个没有签名的是正式版本,另一个是openssh制作的附加版本。

答案 1 :(得分:0)

来自https://www.openssh.com/manual.html

  

OpenSSH实施了一种压缩方法“ zlib@openssh.com”,该方法将启动压缩延迟到用户身份验证之后,以消除针对压缩代码进行预身份验证攻击的风险。在draft-miller-secsh-compression-delayed-00.txt中进行了描述。

简而言之,它执行相同的zlib压缩,但仅在成功通过身份验证后才开始压缩,这样可以防止某些类型的攻击。<​​/ p>