You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何拆分AUTH PLAIN组合字符串适配SMTP的AUTH LOGIN认证

拆分AUTH PLAIN的Base64字符串以适配AUTH LOGIN认证

AUTH PLAIN的Base64编码遵循固定格式:空字节(ASCII值0) + 用户名 + 空字节 + 密码,再将整体转为Base64字符串。你完全可以从现有字符串中提取出AUTH LOGIN所需的单独用户名和密码,步骤如下:

核心逻辑

解码Base64字符串后,原始内容里的两个空字节是分隔符——第一个空字节在最开头,之后是用户名,再是第二个空字节,最后是密码。按空字节拆分就能得到单独的用户名和密码。

具体操作方法

方法1:用命令行工具(Linux/macOS)

  1. 解码Base64字符串并将空字节替换为可见分隔符(比如逗号):
    echo "dGhpc0lzTXlVc2VybmFtZVRoaXNJc015UGFzc3dvcmQ=" | base64 -d | tr '\0' ','
    
  2. 输出结果会是 ,thisIsMyUsername,thisIsMyPassword,其中:
    • 第一个逗号和第二个逗号之间的内容是用户名
    • 第二个逗号之后的内容是密码

方法2:用Python脚本

直接解码后按空字节拆分:

import base64

# 替换成你的AUTH PLAIN Base64字符串
encoded_str = "dGhpc0lzTXlVc2VybmFtZVRoaXNJc015UGFzc3dvcmQ="
decoded_bytes = base64.b64decode(encoded_str)
decoded_str = decoded_bytes.decode('utf-8')

# 按空字节分割
parts = decoded_str.split('\x00')
username = parts[1]
password = parts[2]

print(f"用户名:{username}")
print(f"密码:{password}")

执行后就能直接得到可用于AUTH LOGIN的单独用户名和密码。

内容的提问来源于stack exchange,提问作者Nina

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 20:30:37