Sha256: eb4f5bbe1ffb52d39de69ab72ae564522ab76e70ee251c123c6a354ba8cce8ea

Contents?: true

Size: 426 Bytes

Versions: 14

Compression:

Stored size: 426 Bytes

Contents

# frozen_string_literal: true

require 'openssl'

class SignatureUtils
  SIGNATURE_HEADER = 'x-securenative'

  def self.valid_signature?(api_key, payload, header_signature)
    key = api_key.encode('utf-8')
    body = payload.encode('utf-8')
    calculated_signature = OpenSSL::HMAC.hexdigest(OpenSSL::Digest.new('sha512'), key, body)
    calculated_signature.eql? header_signature
  rescue StandardError
    false
  end
end

Version data entries

14 entries across 9 versions & 1 rubygems

Version Path
securenative-0.1.28 out/production/securenative-ruby/utils/signature_utils.rb
securenative-0.1.27 out/production/securenative-ruby/utils/signature_utils.rb
securenative-0.1.26 out/production/securenative-ruby/utils/signature_utils.rb
securenative-0.1.24 out/production/securenative-ruby/utils/signature_utils.rb
securenative-0.1.23 lib/utils/signature_utils.rb
securenative-0.1.23 out/production/securenative-ruby/utils/signature_utils.rb
securenative-0.1.22 out/production/securenative-ruby/utils/signature_utils.rb
securenative-0.1.22 lib/utils/signature_utils.rb
securenative-0.1.21 out/production/securenative-ruby/utils/signature_utils.rb
securenative-0.1.21 lib/utils/signature_utils.rb
securenative-0.1.20 out/production/securenative-ruby/utils/signature_utils.rb
securenative-0.1.20 lib/utils/signature_utils.rb
securenative-0.1.18 lib/utils/signature_utils.rb
securenative-0.1.18 out/production/securenative-ruby/utils/signature_utils.rb