Sha256: b1d2c5c403db0c332ac2e0ec88fa1d25a75bab12461922b67c357221b35b7ede
Contents?: true
Size: 411 Bytes
Versions: 20
Compression:
Stored size: 411 Bytes
Contents
# frozen_string_literal: true require "base64" require "digest" module PKCE # Handles Proof Key for Code Exchange (PKCE) challenge. class Challenger def initialize hasher: Digest::SHA256, encoder: Base64 @hasher = hasher @encoder = encoder end def call(code) = encoder.urlsafe_encode64 hasher.digest(code), padding: false private attr_reader :hasher, :encoder end end
Version data entries
20 entries across 20 versions & 1 rubygems