Coder Social home page Coder Social logo

dimankiev / authenticator Goto Github PK

View Code? Open in Web Editor NEW
4.0 2.0 0.0 300 KB

2FA Authenticator

Home Page: http://aaa114-project.pp.ua

License: GNU General Public License v3.0

Python 100.00%
2fa 2factor 2fa-client 2fa-client-python multi-factor multi-factor-authentication authenticator auth two-factor two-factor-authenticator

authenticator's Introduction

2FA Python-based Authenticator v1.0.2.0

Python-Based Crossplatform CLI TOTP 2FA Authenticator with AES-256 encryption for better security.

What is TOTP ?

The Time-based One-time Password algorithm (TOTP) is an extension of the HMAC-based One-time Password algorithm (HOTP) generating a one-time password by instead taking uniqueness from the current time. It has been adopted as Internet Engineering Task Force standard RFC 6238, is the cornerstone of Initiative For Open Authentication (OATH), and is used in a number of two-factor authentication systems. So it's default Password algorithm, which is used in many variations of 2FA authenticators, such as Google Authenticator, andOTP, Authy, etc.

Wikipedia - TOTP

What is 2FA ?

Two-factor authentication (also known as 2FA) is a type, or subset, of multi-factor authentication. It is a method of confirming users' claimed identities by using a combination of two different factors:

  1. something they know
  2. something they have
  3. something they are.

A good example of two-factor authentication is the withdrawing of money from an ATM; only the correct combination of a bank card (something the user possesses) and a PIN (something the user knows) allows the transaction to be carried out.

Two other examples are to supplement a user-controlled password with a one-time password (OTP) or code generated or received by a device (e.g. a security token or smartphone) that only the user possesses.

Wikipedia - Multi-Factor Authentication

Features

  1. Simple CLI Interface.
  2. Simple Installation.
  3. Simple in use.
  4. Configuration file AES-256 Encryption.
  5. PIN Code
  6. Autoupdating code in a bottom toolbar of a terminal

2FA Authenticator

How to install ?

  git clone https://github.com/dimankiev/authenticator
  cd authenticator
  pip3 install -r requirements.txt
  python3 authenticator.py

How to use ?

  1. Start the script
  2. Set up your new PIN code
  3. When step 1 and 2 done - type help in opened CLI
  4. Use command add service_name, then enter special 2FA key that was provided by your service on which you want to set up 2FA. (service_name example: google, github, etc.)
  5. Use command list to see added apps
  6. Use command get service_name to start receiving 2FA codes.
  7. Use command export service_name to export 2FA Authenticator key.
  8. Use command remove service_name to remove app from the authenticator
  9. Use command exit or keys combination Ctrl+C to close the script

Credits

Code written by - dimankiev

All rights reserved. dimankiev © 2019

aaa114-project

authenticator's People

Contributors

dimankiev avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

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.