Class: KambaSignatureGeneration::API
- Inherits:
-
Object
- Object
- KambaSignatureGeneration::API
- Defined in:
- lib/kamba_signature_generation/api.rb
Class Method Summary collapse
Class Method Details
.generate_md5(checkout) ⇒ Object
14 15 16 |
# File 'lib/kamba_signature_generation/api.rb', line 14 def self.generate_md5(checkout) Digest::MD5.base64digest(checkout) end |
.generate_signature(checkout) ⇒ Object
3 4 5 6 7 8 9 10 11 12 |
# File 'lib/kamba_signature_generation/api.rb', line 3 def self.generate_signature(checkout) time = Time.now.utc.httpdate secret_key = KambaSignatureGeneration.secret_key json_string = checkout.to_json canonical_string = "POST,application/json,#{generate_md5(json_string)},/v1/checkouts,#{time}" digest = OpenSSL::Digest.new('sha1') hmac_signature = OpenSSL::HMAC.hexdigest(digest, secret_key, canonical_string) time + '.' + Base64.strict_encode64(hmac_signature) end |