module XMPP::ChannelBinding

Overview

Channel Binding support for TLS connections Implements RFC 5929 (for TLS 1.2) and RFC 9266 (for TLS 1.3)

Defined in:

xmpp/channel_binding.cr

Class Method Summary

Class Method Detail

def self.base_mechanism(mechanism : String) : String #

Get the base mechanism name without -PLUS suffix


[View source]
def self.format_for_scram(cb_type : Type, cb_data : Bytes) : String #

Format channel binding data for SCRAM Returns the base64-encoded channel binding data in GS2 format


[View source]
def self.get_channel_binding(socket : OpenSSL::SSL::Socket::Client) : Tuple(Type, Bytes) | Nil #

Get the appropriate channel binding data for the TLS connection Returns tuple of (binding_type, binding_data) or nil if not available


[View source]
def self.supports_channel_binding?(mechanism : String) : Bool #

Check if channel binding is supported for the given mechanism


[View source]