IMAP 的 SASL-IR(RFC 4959)是什么?它如何让认证“一步完成”?

1 IMAP 的 SASL-IR(RFC 4959)是什么?它如何让认证“一步完成”?
背景

普通 IMAP 认证先发 AUTHENTICATE <机制> 等服务器挑战,再回响应,多一轮往返;SASL-IR 允许“初始响应”随命令一起发。

机制

AUTHENTICATE <机制> <初始响应> 把认证数据(如 PLAIN 的 userpass)直接带上,服务端一次验证,省一轮 RTT。

价值

在慢网络/多次登录下提速明显;与 STARTTLS 配合时仍须“先加密再 IR”以防明文泄露。

实践

现代客户端/库支持 SASL-IR 后登录更快;邮件系统应 advert 该能力(CAPABILITY 含 SASL-IR),并在 TLS 内才接受含凭证的初始响应。

参考:RFC 4959(IMAP SASL-IR 初始响应);RFC 2595(IMAP STARTTLS 前置)