module XMPP::SASLUpgrade

Overview

XEP-0480: SASL Upgrade Tasks Handles SASL mechanism upgrades, particularly SCRAM hash upgrades

Defined in:

xmpp/auth/sasl_upgrade.cr

Class Method Summary

Class Method Detail

def self.algorithm_from_mechanism(mechanism : String) : OpenSSL::Algorithm #

Get algorithm from mechanism name


[View source]
def self.compute_scram_hash(password : String, salt : Bytes, iterations : Int32, algorithm : OpenSSL::Algorithm) : String #

Compute SCRAM SaltedPassword for upgrade


[View source]
def self.parse_task_name(task : String) : String | Nil #

Parse upgrade task name to get mechanism


[View source]
def self.scram_upgrade?(task : String) : Bool #

Check if a task is a SCRAM upgrade


[View source]
def self.select_upgrades(current_mechanism : AuthMechanism, available_mechanisms : Array(String), available_upgrades : Array(String)) : Array(String) #

Determine which upgrades to request based on available mechanisms and current auth


[View source]
def self.task_name(mechanism : AuthMechanism) : String #

Generate upgrade task name from mechanism


[View source]