2.2.2 Command and Response ABNF Grammar

This section uses Augmented Backus-Naur Form (ABNF) (as specified in [RFC5234]) to define the format of commands and responses used by this extension, where CRLF, SP, and CHAR are specified in [RFC5234]. Note that the values of username and password MUST be encoded using base64 encoding, as specified in [RFC4648], before being transmitted.

 username                        = 1*CHAR            ; Base64-encoded username
 password                        = 1*CHAR            ; Base64-encoded password
 auth_login_command              = "AUTH LOGIN" [SP username] CRLF 
 auth_login_username_challenge   = "334 VXNlcm5hbWU6" CRLF
 auth_login_username_response    = username CRLF
 auth_login_password_challenge   = "334 UGFzc3dvcmQ6" CRLF
 auth_login_password_response    = password CRLF

The auth_login_command ABNF rule is consistent with the AUTH command syntax specified in [RFC4954], where the mechanism parameter is "LOGIN" and the initial-response parameter is the base64-encoded username.