跳到主要内容

基于时间的认证

k-ID 在其各种验证和同意流程中实现了先进的基于时间的认证机制。这些时间敏感的元素有助于防止未经授权的访问,同时为合法用户提供合理的操作窗口。

基于时间的安全概述

基于时间的认证在 k-ID 中有多重目的:

  • 安全性:防止重放攻击和未授权访问
  • 用户体验:为用户提供合理的操作时间
  • 合规性:确保遵守数据处理和同意的隐私法规

家长同意认证

当玩家触发年龄门槛验证流程时,k-ID 会生成多个时间敏感的认证要素:

一次性密码 (OTP)

每个挑战都会生成唯一的 OTP,家长可用其访问同意门户。OTP 特点:

  • 挑战创建时自动生成
  • 出于安全考虑,OTP 有效期短
  • 可通过 /challenge/generate-otp API 刷新
{
"otp": "123ABC",
"expiresAt": "2022-12-31T23:59:59Z"
}

二维码 URL

挑战响应中包含可渲染为二维码的 URL,便于移动端访问。该 URL:

  • 包含嵌入的 OTP
  • 与 OTP 同步过期
  • 为家长提供无缝的移动体验

邮件认证

k-ID 提供了带有自身时间安全机制的可选邮件流程:

邮件链接过期

使用 /challenge/send-email API 发送同意请求时:

  • 邮件链接两周后过期
  • 链接包含加密签名令牌
  • 过期后需重新生成邮件请求

环境特定超时

k-ID 根据环境实现了不同的超时时间,以优化安全性和开发体验:

测试环境

  • 更短的超时(通常不超过10分钟)
  • 便于开发时快速测试
  • 简化超时场景测试

生产环境

  • 更长的超时以提升用户体验
  • 家长同意邮件链接有效期为14天

k-ID 的基于时间的认证系统在安全性和用户体验之间取得平衡,确保家长同意等敏感操作既安全又有合理的完成窗口。