gamgee: Tool for generating TOTP MFA tokens.

[ authentication, command-line, library, mpl, program ] [ Propose Tags ]

Tool for generating TOTP MFA tokens. Please see the README on GitHub at https://github.com/rkaippully/gamgee#readme


[Skip to Readme]
Versions [faq] 1.0.0, 1.1.0, 1.2.0
Change log ChangeLog.md
Dependencies aeson (>=1.4.4.0 && <1.5), base (>=4.12.0.0 && <4.13), base64-bytestring (>=1.0.0.2 && <1.1), bytestring (>=0.10.8.2 && <0.11), cryptonite (==0.25.*), directory (>=1.3.3.0 && <1.4), filepath (>=1.4.2.1 && <1.5), gamgee, Hclip (>=3.0.0.4 && <3.1), memory (>=0.14.18 && <0.15), optparse-applicative (>=0.14.3.0 && <0.15), polysemy (>=0.7.0.0 && <0.8), relude (>=0.5.0 && <0.6), safe-exceptions (>=0.1.7.0 && <0.2), text (>=1.2.3.1 && <1.3), time (>=1.8.0.2 && <1.9), unix (>=2.7.2.2 && <2.8) [details]
License MPL-2.0
Copyright 2018 Raghu Kaippully
Author Raghu Kaippully
Maintainer rkaippully@gmail.com
Revised Revision 1 made by rkaippully at Thu Jul 25 06:52:38 UTC 2019
Category Authentication, Command Line
Home page https://github.com/rkaippully/gamgee#readme
Bug tracker https://github.com/rkaippully/gamgee/issues
Source repo head: git clone https://github.com/rkaippully/gamgee
Uploaded by rkaippully at Thu Jul 25 06:32:53 UTC 2019
Distributions NixOS:1.2.0
Executables gamgee
Downloads 195 total (69 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2019-07-25 [all 3 reports]

Modules

[Index] [Quick Jump]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees


Readme for gamgee-1.1.0

[back to package description]

Build Status Release

About

Gamgee is your sidekick for managing multi-factor authentication tokens. It is a command-line tool that can be used as a drop-in replacement for Google Authenticator app or any other similar app providing multi-factor authentication using Time-based One-Time Password (TOTP) algorithm.

Gamgee implements the TOTP algorithm specified in RFC6238

Installation

On MacOS, install using homebrew:

brew install rkaippully/tools/gamgee

See other releases here: https://github.com/rkaippully/gamgee/releases/latest

Usage

Gamgee is a replacement for apps like Google Authenticator or Authy that are used to generate TOTP tokens. Typically, such tools scan a QR code to create an account. Gamgee cannot scan a QR code (yet), but you can instead get a secret token from your service and add that to Gamgee.

  1. Go to the multi-factor authentication setup page of your service (such as Github, Gmail, etc). You will see a QR code in that page and instructions to scan it with an app.
  2. Look for a link in the page that gives alternative installation instructions. For example, many services include a "Can't scan barcode?" or "Enter this text code" link next to the QR code. Follow that link.
  3. Note down the secret code mentioned in the page. Once you get the secret, create a token with this command:
gamgee add -l "<token-label>" -s "<secret-code>"

token-label is a convenient label that you choose for this token.

Now you are ready to generate an OTP with your token:

gamgee <token-label>

This will generate an OTP and copy it to your clipboard. You can paste it into your authentication service. Alternatively, you can write the OTP to standard output with:

gamgee <token-label> --stdout

You can find a list of all your tokens with:

gamgee list

You can also remove a token if it is no longer needed. Please remember that this cannot be undone:

gamgee delete -l "<token-label>"

Polysemy stores the tokens in a configuration file under your home directory. You can find the location of this file (along with some other details) by running:

gamgee info

License

Gamgee is distributed under Mozilla Public License 2.0. See the file LICENSE for details.

This Source Code Form is "Incompatible With Secondary Licenses", as defined by the Mozilla Public License, v. 2.0.