@litert/[email protected]
该文章根据 CC-BY-4.0 协议发表,转载请遵循该协议。
本文地址:https://fenying.net/project/litert/otp/v2.0.0/
基于 TOTP 和 HOTP 算法的 2FA 工具库,使用 TypeScript 开发,适用于 NodeJS。
v2.0.0 更新内容
- build(project): 重构,支持完整的 OTP 功能。
- feat(hotp): 添加对其他摘要算法的支持。
- feat(totp): 添加对其他摘要算法的支持。
- feat(url): 添加对生成 OTP URL 的支持。
- feat(cli): 添加 OTP 操作的命令行工具。
- build(test): 添加对所有功能的单元测试。
- build(docs): 添加对库和 CLI 工具的完整文档。
使用文档
功能特性
- HOTP(基于 HMAC 的一次性密码)算法实现。
- TOTP(基于时间的一次性密码)算法实现。
- OTP URL 编码和解码。
- 命令行工具:
- 生成 OTP 代码。
- 生成 OTP URL。
- 检查 OTP URL。
- 自定义选项:
- 数字长度从 4 到 10 位。
- TOTP 时间步长(周期)。
- 摘要算法支持 SHA-1、SHA-256 和 SHA-512。
使用要求
- TypeScript v5.0.x (Or newer)
- NodeJS v18.x (Or newer)
安装
1npm i @litert/otp --save
使用示例
在代码中使用
点击查看《快速上手》文档。
使用命令行工具
该库提供了一个命令行工具来执行 OTP 操作。
有两种使用方式:
-
使用
npx
直接运行 CLI,无需手动安装。1npx @litert/otp -k 'raw:1234567890' 2 3# 查看帮助信息 4npx @litert/otp --help
-
全局或本地安装到项目中。
1npm i -g @litert/otp 2# 或仅在本地项目中安装 3npm i @litert/otp # -D # 如果仅在开发环境中使用
现在您可以直接使用
otp
命令:1npx otp -k 'raw:1234567890'
点击查看《命令行工具使用文档》以获取更多详细信息。
开源许可
该库基于 Apache-2.0 协议发布,使用者请遵守相关许可条款。