我从github api获取了一个公钥,所以它的格式是ssh读取它所需的格式。
我希望将其格式化为PEM,以便我可以使用ruby的OpenSSL库来处理它,特别是我需要一个OpenSSL::PKey::RSA
实例。
ssh-keygen -f testing_rsa.pub -e -m pem
我找到了SSHKey宝石,但它似乎没有做到这一点。
有没有办法在OpenSSL或其他库中执行此操作,或者我是否需要求助于这些other答案建议并手动转换它?
答案 0 :(得分:2)
require 'open3'
def key_file_in_pem_format key_file
stdout, status = Open3::capture2('ssh-keygen', '-f', key_file, '-e', '-m', 'pem')
raise unless status == 0
stdout
end
这将ssh-keygen程序的输出作为字符串返回。