一、核心概念
| 类型 | 原理 | 典型实现 |
|---|---|---|
| OTP | 临时验证码,单次使用或短时有效后失效 | TOTP、HOTP、SMS验证码、邮件验证码 |
| 持续认证 | 会话期间持续验证身份,非一次性 | 行为生物特征、设备状态、环境感知 |
二、OTP 详解
实现方式:
| 类别 | 机制 | 特点 |
|---|---|---|
| TOTP | 基于时间(每30秒更新) | 需服务器与客户端时钟同步,RFC 6238标准化 |
| HOTP | 基于计数器(每次使用递增) | 不依赖时间,但需同步计数器 |
| SMS OTP | 通过短信下发 | 依赖运营商,最易受SIM交换攻击 |
| 邮件OTP | 通过邮件发送 | 成本低,但可能有延迟 |
优点:
- 防止重放攻击(密码截获后无法再利用)
- 抵御钓鱼攻击(动态验证码)
- 符合NIST AAL2认证级别要求
- 广泛兼容,实施门槛低
缺点:
- 仍存在SIM交换攻击、钓鱼中间人风险
- 用户体验摩擦(每次需输入验证码)
- 短信OTP安全性低于TOTP/App认证器
三、持续认证 详解
实现方式:
| 类别 | 机制 |
|---|---|
| 行为生物特征 | 打字节奏、鼠标轨迹、触屏力度 |
| 设备状态感知 | Wi-Fi/蓝牙环境、设备位置 |
| 环境上下文 | 访问时间、IP信誉、行为异常检测 |
| 渐进式验证 | 风险评估后动态调整验证强度 |
优点:
- 会话全流程保护,检测会话劫持
- 无需用户主动操作,用户体验佳
- 可发现异常行为而非仅依赖身份声明
缺点:
- 隐私争议(持续收集行为数据)
- 误报率管理复杂
- 攻击者若成功伪装,难以终止
四、核心对比
| 维度 | OTP | 持续认证 |
|---|---|---|
| 保护时机 | 登录/交易瞬间 | 整会话期间 |
| 攻击防御 | 防截获重放、防钓鱼 | 防会话劫持、防冒用 |
| 用户摩擦 | 中(需输入) | 低(静默) |
| 实施复杂度 | 低 | 高 |
| 隐私影响 | 低 | 中高 |
| 典型场景 | 金融登录、支付验证 | 高安全需求会话、长时操作 |
五、适用场景建议
OTP 更适合:
- 🌐 金融系统登录/转账验证
- 📱 App登录MFA二次验证
- 📧 敏感操作(密码重置、权限变更)
- 🔐 符合合规要求(AAL2)的企业环境
- 场景:用户明确感知"需要做什么"
持续认证 更适合:
- 🏦 高安全要求会话(企业内部系统)
- 📊 长时间敏感操作(数据处理、审批流)
- 🖥️ 零信任架构下的持续信任评估
- 🛡️ 检测账号共享、异常共享使用
- 场景:需要无感知保护、减少用户干扰
最佳实践: 两者组合 --- OTP负责强身份确认,持续认证负责会话期间异常检测,形成纵深防护。