#otp #authorization #lib

no-std bin+lib miniotp

最小化可自定义的 HOTP 和 TOTP 实现

5 个版本 (稳定)

2.0.0 2021 年 3 月 13 日
1.2.0 2020 年 7 月 28 日
1.1.0 2020 年 3 月 28 日
1.0.0 2020 年 3 月 27 日
0.1.0 2020 年 3 月 27 日

#895身份验证

MIT 许可证

38KB
1K SLoC

MiniOTP

一个最小化、可自定义的 HOTP 和 TOTP 实现。

MVP 以 #![no_std] 模式工作,默认不启用 default-features = false


lib.rs:

miniotp

一个 OTP crate,旨在实现正确性,同时提供相同速度。

功能

  • std - 默认启用;启用系统时间和使用分配。
  • alloc - 默认禁用;在需要分配时启用 alloc crate。
  • only-gauth - 只使用 Google Authenticator 的有效代码。这会禁用一些功能,如设置长度、算法、周期或纪元。默认启用。
  • cstr - 启用从 AsRef<CStr> 创建代码的支持;以便更容易与 noria::DataType::Text(_) 或其他数据库兼容。
  • base32 - 默认启用;启用将 OTP 秘密作为或转换为字符串的相关函数集。
  • serde - 默认禁用;向 TOTP 和 HOTP 结构添加序列化和反序列化能力。
  • abomonation_impl - 默认禁用;向 TOTP 和 HOTP 结构添加更快、按数组字节(序列化和反序列化)的能力。

依赖项

~5–14MB
~242K SLoC