ECDSA SSH密钥位于10.8.2


11

我曾经ssh-keygen -t ecdsa生成过ECDSA密钥,但是却收到了错误消息 unknown key type ecdsa

man ssh-keygen 说:

 -t type
         Specifies the type of key to create.  The possible values are ``rsa1''
         for protocol version 1 and ``dsa'', ``ecdsa'' or ``rsa'' for
         protocol version 2.

有人对此有见识吗?


这是/usr/bin/ssh-keygen您系统上唯一的版本,并且您可能有多个OpenSSL版本吗?我的10.8.2系统具有ssh -VOpenSSH_5.9p1,OpenSSL 0.9.8r 2011
。– MacLemon

Answers:


17

该手册页描述了生成ECC密钥的能力,因为OpenSSH 5.9p1版本(Mountain Lion随附的版本)可能支持ECC。但是,与Mountain Lion捆绑在一起的OpenSSH的实际构建似乎缺少ECC支持1。当编译后的二进制文件中不包含ECC支持时,不会修改联机帮助页。

如果您需要或需要ECC支持,则可以使用MacPorts(或可能是Homebrew)来安装不支持ECC的OpenSSH版本。但是,您可能会遇到一些不兼容性:

  • 捆绑的ssh-agent(由launchd自动启动)将无法处理任何ECC密钥(您必须启动自己的“自定义”构建的代理实例,或者每次在以下情况下使用ECC密钥时都要键入密码: “定制”构建的ssh),以及
  • “自定义”构建的工具将不具有Apple的修补Keychain集成。

1 OpenSSH的configure脚本进行了一些检查,以确保可用的OpenSSL库足够新,并且包含各种ECC功能。OpenSSL的捆绑版本似乎可以满足这些要求。我不确定为什么在没有ECC支持的情况下构建了捆绑版本的OpenSSH。


2

Elliptic Curve加密技术存在潜在的专利问题,因此许多供应商暂时拒绝支持它。不过,它似乎在OSX OpenSSL安装中可用,因此您只需要自己编译OpenSSH。


0

从osx 10.10。{0,1}开始受支持(不确定是哪一个)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.