#otp #2fa #双因素

应用 notp

一款用于 CLI 的单次密码生成工具

5 个稳定版本

2.1.0 2020年6月4日
2.0.0 2020年5月12日
1.1.2 2020年4月22日

#2065命令行工具

MIT 许可证

21KB
456

notp

Continuous Integration

notp 是一个 CLI 工具,用于从 CLI 生成单次密码。深受 rsc 的双因素仓库影响。

安装

您可以通过克隆仓库并从源代码构建,使用 crate.io 下载,或者直接从最新版本下载适合您操作系统的二进制文件

使用方法

# Let's see what we have here.
$ notp --help
# notp supports --key and --stdin exclusively. If you want to keep your secret secret,
# I urge you to use --stdin flag. --key is also usefull when you want to combine notp with
# shell tools and don't want to pass your secret using echo and such. Also, for the sake of 
# simplictiy I'll keep using --key flag throughout this documentation.
# Alrigh, lets say I'd like to add a Google account.
$ notp --add taylan-google --key superSecretKey
# you have to provide secret code when stdin prompts.
# OR
$ notp --add taylan-google --stdin
# Key: <you will type your encryption key here>
# Enter secret prompt: <You will paste your OTP secret here>
$ notp --list
$ notp --get <name> --key superSecretKey 

目前 OTP 生成只支持 6 位数字代码。

notp 使用您使用的操作系统的默认配置路径。例如,Linux 上的 ~/.config/notp,Windows 上的 \AppData\Roaming\notp,iOS 上的 ~/Library/Preferences/notp。它使用 CLI 作为参数提供的密钥以 AES 加密文件。

默认的时间认证码是从密钥和当前时间的哈希值派生出来的,因此系统时钟至少需要一分钟精度。

示例

添加新密钥

$ notp --add AWS --key ttaayyllaann 
Please enter the secret: NRNM7KGFTR6SUMPBAEMBETM2WGKVUWHH6Y4VEGNPZON3GMVXBHF...
$
# There won't be any confirmation messages that indicates successfull insertion
# but there will be error messages if something wents wrong.

检查您拥有的现有密钥

$ notp --list
1. AWS
2. Google
$

生成 OTP 代码

$ notp --get AWS --key ttaayyllaann
OTP code for the AWS: 442659
$ 

删除密钥

$ notp --delete AWS
AWS Deleted!

与 CLI 一起使用

$ notp --key ttaayyllaann -q --get AWS
442659

依赖项

~12MB
~306K SLoC