4

是否可以通过命令行界面使用 Putty Key Generator?我找不到任何文件。

任何指针?

顺便说一句,我只想在 Windows 机器上生成一个 openssh 格式的密钥对。

4

3 回答 3

5

阅读源代码似乎有一个命令行界面

主要是

if (argc > 0) {
if (!strcmp(argv[0], "-pgpfp")) {
    pgp_fingerprints();
    exit(1);
} else {
    /*
     * Assume the first argument to be a private key file, and
     * attempt to load it.
     */
    cmdline_keyfile = argv[0];
}
}

你有一个选择

  • -pgpfp

输出一条消息:

void pgp_fingerprints(void)
{
    fputs("These are the fingerprints of the PuTTY PGP Master Keys. They can\n"
      "be used to establish a trust path from this executable to another\n"
      "one. See the manual for more information.\n"
      "(Note: these fingerprints have nothing to do with SSH!)\n"
      "\n"
      "PuTTY Master Key (RSA), 1024-bit:\n"
      "  " PGP_RSA_MASTER_KEY_FP "\n"
      "PuTTY Master Key (DSA), 1024-bit:\n"
      "  " PGP_DSA_MASTER_KEY_FP "\n", stdout);
}
  • 一个密钥文件名,稍后用于

    if (cmdline_keyfile) load_key_file(hwnd, state, filename_from_str(cmdline_keyfile), 0); 返回 1;`

我的建议是遵循代码,看看是什么。

于 2013-05-23T01:43:15.047 回答
4

您可以尝试通过 cygwin 使用unix 版本的 puttygen。

还有一篇关于为什么 puttygen 不支持 Windows 中的命令行的文章。使用窗口版本,您只能指定最初加载的密钥文件。

于 2013-05-23T01:45:44.417 回答
4

您可能不走运:puttygen(有充分的理由)实际上并没有可靠的命令行界面。

因为您ssh-keygen在 Windows 上所需要的可能就是您所需要的。这需要一些工作,但您可以从http://code.google.com/p/msysgit/downloads/list上的 mSysGit 安装中提取它并使用它。

于 2013-05-23T02:02:08.443 回答