生成没有ssh-keygen的SSH密钥对(私有/公共)
我正在研究需要生成SSH密钥对的Ruby / Rack应用程序。尽管我想从应用程序中调用
ssh-keygen
,但我不能,因为它设计为在Heroku上运行,并且它们不支持调用该命令。
我已经能够在Ruby标准库中使用OpenSSL获取私有/公共RSA密钥,执行以下操作:
key = OpenSSL::PKey::RSA.generate(2048)
# => -----BEGIN RSA PRIVATE KEY----- ....
key.public_key
# => -----BEGIN RSA PUBLIC KEY----- ....
遗憾的是,RSA公钥和SSH公钥不是一回事,即使它们可以使用相同的RSA密钥生成。 SSH公钥类似于以下内容:
ssh-rsa AAAAB3NzaC1yc2EAAAABIwA.....
是否可以在Ruby中生成SSH密钥或将RSA密钥转换为SSH而不使用ssh-keygen
?
没有找到相关结果
已邀请:
3 个回复
掸牛浓疗
- 适当返回
或
和
- 以OpenSSH二进制blob格式返回公钥。如果你对它进行64位编码,那就是你正在寻找的格式。
赣借
掸牛浓疗
这里记录了包括密钥加密在内的完整过程:http://stuff-things.net/2009/12/11/generating-rsa-key-pairs-in-ruby/