验证服务器时间戳`t`精确规格及Yubico OTP时间戳构造解析问询
Yubico OTP时间戳
t的规格、构造与解析 格式本质说明
你看到的2019-06-06T05:14:15Z0369这类字符串,是ISO 8601 UTC时间格式拼接会话计数器值的复合字符串,并非纯ISO 8601标准格式。
精确规格
验证服务器返回的t字段由两部分组成:
- 前20位:严格遵循ISO 8601的UTC时间格式
YYYY-MM-DDTHH:MM:SSZ,对应YubiKey生成OTP时的UTC时间 - 后4位:十进制数字形式的会话计数器,范围0000-9999,每次插拔YubiKey或触发重置操作时递增
构造逻辑
YubiKey生成OTP时,会同时获取当前UTC时间(按ISO 8601格式输出)和当前会话计数器值,直接将两个字符串拼接,就得到了这种复合时间戳。
解析方法
只需按固定长度拆分即可:
- 截取前20个字符,得到标准ISO 8601 UTC时间(例如从
2019-06-06T05:14:15Z0369中提取2019-06-06T05:14:15Z) - 剩余4位字符即为会话计数器值(例如
0369)
内容的提问来源于stack exchange,提问作者U. Windl
相关产品推荐
相关产品推荐

