Files
danbooru/app/logical/danbooru/message_verifier.rb
evazion a7dc05ce63 Enable frozen string literals.
Make all string literals immutable by default.
2021-12-14 21:33:27 -06:00

26 lines
668 B
Ruby

# frozen_string_literal: true
module Danbooru
class MessageVerifier
attr_reader :purpose, :secret, :verifier
def initialize(purpose)
@purpose = purpose
@secret = Rails.application.key_generator.generate_key(purpose.to_s)
@verifier = ActiveSupport::MessageVerifier.new(secret, serializer: JSON, digest: "SHA256")
end
def generate(*args, **options)
verifier.generate(*args, purpose: purpose, **options)
end
def verify(*args, **options)
verifier.verify(*args, purpose: purpose, **options)
end
def verified(*args, **options)
verifier.verified(*args, purpose: purpose, **options)
end
end
end