module JWT::JWA::SigningAlgorithm

Attributes

alg[R]

Public Class Methods

included(klass) click to toggle source
# File lib/jwt/jwa/signing_algorithm.rb, line 12
def self.included(klass)
  klass.extend(ClassMethods)
  klass.include(JWT::JWA::Compat)
end

Public Instance Methods

header(*) click to toggle source
# File lib/jwt/jwa/signing_algorithm.rb, line 23
def header(*)
  { 'alg' => alg }
end
raise_sign_error!(message) click to toggle source
# File lib/jwt/jwa/signing_algorithm.rb, line 39
def raise_sign_error!(message)
  raise(EncodeError.new(message).tap { |e| e.set_backtrace(caller(1)) })
end
raise_verify_error!(message) click to toggle source
# File lib/jwt/jwa/signing_algorithm.rb, line 35
def raise_verify_error!(message)
  raise(DecodeError.new(message).tap { |e| e.set_backtrace(caller(1)) })
end
sign(*) click to toggle source
# File lib/jwt/jwa/signing_algorithm.rb, line 27
def sign(*)
  raise_sign_error!('Algorithm implementation is missing the sign method')
end
valid_alg?(alg_to_check) click to toggle source
# File lib/jwt/jwa/signing_algorithm.rb, line 19
def valid_alg?(alg_to_check)
  alg&.casecmp(alg_to_check)&.zero? == true
end
verify(*) click to toggle source
# File lib/jwt/jwa/signing_algorithm.rb, line 31
def verify(*)
  raise_verify_error!('Algorithm implementation is missing the verify method')
end