Module: Adyen::HPP::Signature
Overview
The Signature module can sign and verify HMAC SHA-256 signatures for Hosted Payment Pages
Instance Method Summary collapse
-
#sign(params, shared_secret) ⇒ Hash
Sign the parameters with the given shared secret.
-
#verify(params, shared_secret) ⇒ Boolean
Verify the parameters with the given shared secret.
Instance Method Details
#sign(params, shared_secret) ⇒ Hash
Sign the parameters with the given shared secret
13 14 15 16 17 18 |
# File 'lib/adyen/hpp/signature.rb', line 13 def sign(params, shared_secret) params = params.dup params.delete('merchantSig') params["sharedSecret"] ||= shared_secret params.merge('merchantSig' => Adyen::Signature.sign(params)) end |
#verify(params, shared_secret) ⇒ Boolean
Verify the parameters with the given shared secret
25 26 27 28 29 30 31 |
# File 'lib/adyen/hpp/signature.rb', line 25 def verify(params, shared_secret) params = params.dup params["sharedSecret"] ||= shared_secret their_sig = params.delete('merchantSig') raise ArgumentError, "params must include 'merchantSig' for verification" if their_sig.empty? Adyen::Signature.verify(params, their_sig) end |