Saltar al contenido
Dialova

Documentación IRC · Avanzado

Comando AUTHENTICATE: intercambiar datos SASL

AUTHENTICATE transmite un intercambio SASL después de activar la capacidad sasl. No es un comando para escribir un secreto en un canal. El mecanismo elegido define los datos, su significado y los requisitos previos.

El equipo de Dialova · Verificado el

Sintaxis y parámetros #

Sintaxis del protocolo, sin la / del cliente
AUTHENTICATE <mécanisme | données-base64 | + | *>
ParámetroSignificado
mecanismoPor ejemplo PLAIN o EXTERNAL, si el servidor lo ofrece.
datos-base64Respuesta del mecanismo, dividida según las reglas SASL de IRC.
+ / *+ representa una respuesta vacía; * solicita cancelar el intercambio.

Ejemplo comentado #

Intercambio IRC: C = cliente, S = servidor
C: CAP REQ :sasl
S: :irc.example CAP Alice ACK :sasl
C: AUTHENTICATE EXTERNAL
S: AUTHENTICATE +
C: AUTHENTICATE +
S: :irc.example 903 Alice :SASL authentication successful
C: CAP END

Los apodos, hosts y textos de este intercambio son ficticios. El cliente puede mostrar las respuestas de forma más legible que las tramas presentadas.

Respuestas y posibles errores #

RespuestaSignificado
900 / 903Información de conexión a la cuenta y autenticación SASL correcta, según las respuestas emitidas.
908Lista de mecanismos disponible en los casos previstos por la especificación.
ErrorCausa habitual
904Error de autenticación SASL.
905Respuesta demasiado larga.
906Intercambio cancelado.
907La cuenta ya está autenticada para un uso no permitido.

Permisos, compatibilidad y precauciones #

Este ejemplo EXTERNAL requiere un certificado de cliente aceptado y asociado a la cuenta. No funciona solo por activar TLS: TLS autentica primero al servidor, y el certificado de cliente requiere una configuración adicional.

Con PLAIN, la respuesta contiene la identidad de autorización, la identidad de autenticación y la contraseña, separadas por bytes NUL y codificadas en Base64. Base64 no cifra nada: utiliza una conexión TLS validada.

Cada bloque de datos codificados tiene un máximo de 400 bytes. Si la longitud total codificada es un múltiplo exacto de 400, un AUTHENTICATE + final indica el fin. Envía CAP END solo cuando corresponda al resultado o a la cancelación.

Preguntas frecuentes #

¿SASL siempre pide la contraseña del sitio? No. Las credenciales dependen del servicio. Dialova utiliza una clave IRC específica.

¿Puedo enviar AUTHENTICATE en mitad de una conversación? La reautenticación depende del servidor y de SASL 3.2; no es una forma universal de cambiar de cuenta sin desconectarse.

Fuentes y verificación

Los ejemplos usan apodos y dominios ficticios, salvo los puntos de conexión expresamente documentados. Las extensiones y los ajustes específicos de una red se indican en el texto.