class PedicelPay::Client
Attributes
ca_certificate_pem[RW]
certificate[RW]
key[RW]
Public Class Methods
new(key: nil, certificate: nil, ca_certificate_pem: nil)
click to toggle source
# File lib/pedicel-pay/client.rb, line 9 def initialize(key: nil, certificate: nil, ca_certificate_pem: nil) @key = key @certificate = certificate @ca_certificate_pem = ca_certificate_pem end
Public Instance Methods
decrypt(token, ca_certificate_pem: @ca_certificate_pem, now: Time.now)
click to toggle source
# File lib/pedicel-pay/client.rb, line 36 def decrypt(token, ca_certificate_pem: @ca_certificate_pem, now: Time.now) Pedicel::EC. new(token). decrypt(private_key: key, certificate: certificate, ca_certificate_pem: ca_certificate_pem, now: now) end
generate_csr(subject: PedicelPay.config[:subject][:csr])
click to toggle source
# File lib/pedicel-pay/client.rb, line 22 def generate_csr(subject: PedicelPay.config[:subject][:csr]) req = OpenSSL::X509::Request.new req.version = 0 req.subject = subject req.public_key = PedicelPay::Helper.ec_key_to_pkey_public_key(key) req.sign(key, OpenSSL::Digest::SHA256.new) req end
generate_key()
click to toggle source
# File lib/pedicel-pay/client.rb, line 15 def generate_key @key = OpenSSL::PKey::EC.new(PedicelPay::EC_CURVE) @key.generate_key @key end
merchant_id()
click to toggle source
# File lib/pedicel-pay/client.rb, line 32 def merchant_id Pedicel::EC.merchant_id(certificate: certificate) end