功能说明
对头部与负载做 base64url 编码,用 HMAC-SHA256 对签名输入签名并追加签名。校验时重算签名并以常量时间比较,使耗时不会泄露签名匹配了多少。
运行方式
node jwt.mjs sign secret '{"sub":"1234"}'
预期输出
令牌由点号分隔的三段 base64url 组成。用相同密钥与负载校验该令牌返回:
true
限制
仅实现 HS256,不校验 exp、iss、aud 等声明,调用方须自行检查过期后再信任负载。示例含完整签名与常量时间校验及测试,可本地复现核对。
本译文依据英文原文完整重写,包含功能说明、运行方式与真实预期输出,供中文读者对照英文原稿阅读;示例代码与命令与英文版本严格一致,可在本地按运行方式复现并逐项核对结果。当前实现覆盖最常见的使用路径,超出上文限制边界的场景需要额外设计与实现;若用于生产,请先补充输入校验、错误处理与日志,再结合自身环境调整依赖版本。