Code Monkey home page Code Monkey logo

gamgee's Introduction

Build Status Release Hackage

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.

gamgee's People

Contributors

maksar avatar rkaippully avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

gamgee's Issues

Support token backup

When you accidentally lost your phone with installed Google Authenticator in there, you lost all your data and GoogleAuth doesn't have backup :(

It will be really good to support backup in gamgee. For example, if I could store encrypted file with all my keys anywhere I think is secure and robust place, it will be really good. But those things to achieve gamgee should support backup command or something like that.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.