Skip to main content

Totpy - CLI TOTP 生成器和管理工具

项目描述

托皮

描述

Totpy 是适用于 Linux 和 MacOS 的 CLI TOTP 生成器和管理工具。可以从给定的密钥或存储在配置文件中的密钥生成 TOTP 令牌。可以使用密钥或密钥的二维码图像将秘密添加到配置文件中。默认配置文件存储在 中~/.local/config/totpy,但可以用给定的配置文件覆盖。

安装

Totpy 需要以下软件包:

可以使用 pip 从此存储库安装 Totpy:

$ pip install git+https://github.com/jorgegarciadev/totpy.git

使用 pip 从 Python 包索引:

$ pip install totpy

或者克隆这个存储库并运行 setup.py:

$ git clone https://github.com/jorgegarciadev/totpy.git
$ python setup.py install --user

在所有情况下它都会安装模块和 CLI 工具。

用法

-c --conf PATH

从现在开始覆盖存储的配置~/.local/config/totpy/config.json并使用新文件。检查config.example更多信息。

$ totpy -c conf.json foo

-a --add NAME

在配置文件中添加一个新的秘密。可以使用 QR 码图像添加新密钥:

$ totpy -a foo -q foo.png

-s或使用以下选项直接传递秘密:

$ totpy -a foo -s JBSWY3DPEHPK3PXP

如果条目已经存在,它将被覆盖。

-r --remove NAME

从配置文件中删除给定的条目。

$ totpy -r foo

-qr NAME

为给定名称生成 QR 码并在终端中打印。

$ totpy -qr foo

-l --list

显示配置文件中所有条目的名称。

$ totpy -l

-s --secret

为给定的密钥生成 TOTP 令牌。

$ totpy -s JBSWY3DPEHPK3PXP
235467

--copy

将 TOTP 令牌复制到剪贴板。

$ totpy --copy -s JBSWY3DPEHPK3PXP
235467

$ totpy --copy granada
099299

NAME

使用存储在给定名称的配置文件中的秘密生成 TOTP 令牌。

$ totpy granada
099299

托皮模块

Totpy 包括三个类:

  • Base:用于管理配置文件的帮助类。
  • Totpy:定义totpyCLI 工具行为的类。
  • Totp:生成令牌的类。

顶级班

这可以在您的项目中导入并使用。这是源代码:

class Totp(object):
  """docstring for Totpy"""
  def __init__(self, secret):
    self.secret = secret

  def getHotpToken(self, interval):
    key = base64.b32decode(self.secret, True)
    msg = struct.pack(">Q", int(time.time()) // interval)
    h = hmac.new(key, msg, hashlib.sha1).digest()
    o = h[19] & 15
    h = (struct.unpack(">I", h[o:o+4])[0] & 0x7fffffff) % 1000000
    return h

  def getTotpToken(self):
    return self.getHotpToken(interval=30)

执照

这是免费的开源软件。根据 MIT 许可证的条款,您可以使用、复制、修改、合并、发布、分发、再许可和/或出售其副本。有关详细信息,请参阅 LICENSE.txt。

本软件按“原样”提供,不提供任何形式的明示或暗示保证。有关详细信息,请参阅 LICENSE.txt。

支持

要报告错误、建议改进或提出问题,请在https://github.com/jorgegarciadev/totpy/issues创建一个新问题。

下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

totpy-0.3.2.tar.gz (5.2 kB 查看哈希)

已上传 source