0
私はプライベートキーを持つpem証明書を持っています。 私は次のようにパスワードで保護されているP12証明書を生成するために、上記の情報を使用しています:ルビーはp12証明書(バイナリ)をエンコードし、jsonレスポンスとして送信します
def p12_cert
ca_cert = x509_cert(File.open("#{root}/ca-cert.crt").read)
p12 = OpenSSL::PKCS12.create(@random_pass, 'My Certificate',
rsa_pkey(private_key), x509_cert(public_cert), [ca_cert])
create_file('p12', p12.to_der, ':ASCII-8BIT')
end
問題は、これがバイナリ形式であるとJSON APIを介して送信することができないです。
これをJSONレスポンスとして送信できるように、どうすれば(おそらくbase64)エンコードすることができますか?
編集:私は、読み取りのためにP12ファイルを開き、その後、base64でエンコードしようとした、次のようだ:
irb(main):017:0> enc_p12 = Base64.encode64(p12) TypeError: no implicit conversion of OpenSSL::PKCS12 into String
ような何かがhttps://github.com/Mitka20/tango_api/blob/2cc0127b8fc601526ddd000ff1ac46d6531592c0/tango_api.rbでコードがお手伝いしていますか? @ shepe。 – sheppe
私はわかりません。あなたの例では、p12ファイルを読んでいますが、私はJSON(非バイナリ形式)で送信する方法がわかりません – Micheal
キーは次の行の要求に添付されています:https.key = p12.key また、そうではありません私のコードですが、それは関連しているようです。 :) – sheppe