Initial commit

This commit is contained in:
Yaser
2026-08-13 19:56:46 +03:30
commit de1d57a67b
474 changed files with 43185 additions and 0 deletions

View File

@@ -0,0 +1,17 @@
# frozen_string_literal: true
class APIKeysVerifier
def initialize(params = {})
@kid = params[:kid]
@signature = params[:signature]
@nonce = params[:nonce] || nil
@api_key = APIKey.find_by!(kid: @kid)
end
def verify_hmac_payload?
data = @nonce.to_s + @kid
algorithm = 'SHA' + @api_key.algorithm[2..4]
true_signature = OpenSSL::HMAC.hexdigest(algorithm, @api_key.secret, data)
true_signature == @signature
end
end