Class: Omnipay::Signer
- Inherits:
-
Object
- Object
- Omnipay::Signer
- Defined in:
- lib/omnipay/signer.rb
Overview
Class responsible for computing a signature of a payment.
Instance Method Summary collapse
- #initialize(transaction_id, amount, context) ⇒ Signer constructor
-
#signature ⇒ String
Actually computes the signature.
Constructor Details
#initialize(transaction_id, amount, context) ⇒ Signer
12 13 14 15 16 |
# File 'lib/omnipay/signer.rb', line 12 def initialize(transaction_id, amount, context) @transaction_id = transaction_id @amount = amount @context = context || {} end |
Instance Method Details
#signature ⇒ String
Actually computes the signature
20 21 22 23 |
# File 'lib/omnipay/signer.rb', line 20 def signature to_sign = "#{secret_token}:#{@transaction_id}:#{@amount}:#{self.class.hash_to_string @context}" CGI.escape(Base64.encode64(OpenSSL::HMAC.digest('sha1', secret_token, to_sign))) end |