开发文档

Telegram 两步验证、二维码与 Passkey 登录

区分密码验证、已登录设备确认二维码和 Passkey 支持范围,正确设计 Telegram 登录状态机。

GetTGAPI 编辑团队更新于
文档解读核对日期

依据官方资料整理,由 GetTGAPI 独立维护。 文档目录与术语表 →

本页内容
  1. 两步验证不是另一条短信
  2. 二维码需要已有设备确认
  3. Passkey 的支持范围
  4. 登录界面建议

两步验证不是另一条短信

开启两步验证的账号需要额外验证密码。Telegram 使用 SRP 协议完成相应验证;不要把原始密码直接套用到一个自行猜测的 HTTP 接口。使用维护中的客户端库,并按服务器给出的算法参数处理。

产品状态至少应区分等待验证码、等待密码和已授权。验证码通过不一定意味着全部授权已完成。

二维码需要已有设备确认

二维码登录令牌有有效期;另一台已登录设备接受后,客户端还需处理后续授权结果以及可能的数据中心迁移。过期令牌应更新,不能靠刷新旧二维码图片延长有效期。

因此,二维码并不是让未注册号码完全跳过身份验证的入口。

Passkey 的支持范围

本次核对的官方文档明确说明:非官方应用暂不支持 Passkey 登录,服务端限制其他 RP ID。即使支持 Passkey 的官方流程中,账号设置的两步验证仍可能需要完成。不能只展示一个系统通行密钥弹窗就宣称接入成功。

登录界面建议

对每种状态显示实际需要的动作,不预先保证一定收短信。超时、取消和重试各自独立;只记录状态与脱敏错误,不记录密码或完整二维码令牌。