Module: Mobilepay::Requests::GenerateSignature

Included in:
Client, Security
Defined in:
lib/mobilepay/requests/generate_signature.rb

Instance Method Summary collapse

Instance Method Details

#generate_signature(request) ⇒ Object

Generate Authentication Signature



10
11
12
13
14
15
16
17
18
# File 'lib/mobilepay/requests/generate_signature.rb', line 10

def generate_signature(request)
    payload = (request.uri.to_s + request.body.to_s).encode('UTF-8')
    payload_sha1 = Digest::SHA1.digest(payload)
    payload_base64 = Base64.encode64(payload_sha1)

    jwk_rs256 = JOSE::JWK.generate_key([:rsa, 1024])
    jwk_rs256.kty.key = privatekey
    JOSE::JWS.sign(jwk_rs256, payload_base64, { "alg" => "RS256" }).compact
end