Sha256: fb3ba29573df7755f0c9045e2c55359bf1c619e236514b170aaf1711b68ee3ab

Contents?: true

Size: 373 Bytes

Versions: 2

Compression:

Stored size: 373 Bytes

Contents

require 'openssl'

module XSignature
  class HexSignatureValidator < SignatureValidator

    def self.signature(secret:, nonce:, body:, method:, request_uri:)
      sha512  = OpenSSL::Digest::SHA512.new
      request = "#{method.to_s.upcase}#{request_uri}#{sha512.hexdigest("#{nonce}#{body}")}"
      OpenSSL::HMAC.hexdigest(sha512, secret.to_s, request)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
x-signature-0.1.1 lib/x-signature/hex_signature_validator.rb
x-signature-0.1.0 lib/x-signature/hex_signature_validator.rb