Module: MailMCP::Pkce
- Defined in:
- lib/mail_mcp/pkce.rb
Class Method Summary collapse
Class Method Details
.challenge(verifier) ⇒ Object
6 7 8 |
# File 'lib/mail_mcp/pkce.rb', line 6 def self.challenge(verifier) Base64.urlsafe_encode64(Digest::SHA256.digest(verifier), padding: false) end |
.valid?(verifier:, challenge:) ⇒ Boolean
10 11 12 13 14 15 16 17 |
# File 'lib/mail_mcp/pkce.rb', line 10 def self.valid?(verifier:, challenge:) expected = challenge(verifier) begin ActiveSupport::SecurityUtils.secure_compare(expected, challenge) rescue StandardError (expected == challenge) end end |