使用纯 Swift 实现的基于时间和基于HMAC的一次性密码生成器。深受 OneTimePassword 库 (来自 @mattrubin) 的启发。基于协议的设计,因此您在这里找不到任何子类。
可以通过 Swift Package Manager 安装 THOTP
。
支持的平台包括 iOS (13.0+)、tvOS (13.0+)、watchOS (6.0+) 和 macOS (10.15+)。
最简单的集成方式是使用 Xcode 11.0+ 中的内置包管理器工具。您也可以手动进行。
将以下内容作为依赖项添加到您的 Package.swift 中
.package(url: "https://github.com/ericlewis/THOTP.git", .upToNextMajor(from: "1.0.0"))
在指定 THOTP
作为要使用它的目标的依赖项之后,运行
swift package update
默认情况下,这包括 Password & Generators 的基本具体类型。如果您对持久化感兴趣,则有几个选项可供选择
NSManagedObject
)实现 PasswordProtocol
最简单的用法是解析 URL。 THOTP
兼容 Google Authenticator 的 URI 方案。
let password = try? Password(url: URL(string: "otpauth://totp/test?secret=GEZDGNBV")!)
print(password.currentPassword) // 123321