Skip to content

OTP generator with password and handwritten signature authenticity check

License

Notifications You must be signed in to change notification settings

aivarovskiy/3fa-authenticator-app

Repository files navigation

Screenshots

3FA Authenticator App

Overview

3FA Authenticator App introduces a third factor to the conventional two-factor authentication (2FA) mechanism by incorporating a handwritten signature authenticity check.

How it works

3FA Authenticator App verifies three factors: knowledge, inherence and possession.

The first and second factors are managed by the authentication system, which verifies the user's password and handwritten signature. The handwritten signature is verified using a siamese neural network model. The third factor is handled by the one-time password generator. The generator is only accessible after successful authentication.

Caution

3FA Authenticator App creates anchor and dict files on user registration:

  • The dict file stores encrypted information about the user's account names and secret keys.
  • The anchor file stores encrypted information about the user's handwritten signature.

The user's password is used for encryption key generation. Forgetting it or deleting these files will result in irreversible data loss.

Siamese Neural Network Model Architecture

Architecture

Modules

Module Description
main.py Main script that runs the app.
datacrypt.py Functions for encrypting and decrypting user data.
preprocess.py Functions for preprocessing signatures for the model.
train.py Functions used for creating, training, validating, and testing the model.
siamese Model data.

Setup

  1. Clone this repository:

    git clone https://github.com/aivarovsky/3fa-authenticator-app
  2. Navigate to the project directory:

    cd 3fa-authenticator-app
  3. Install dependencies:

    pip install -r requirements.txt
  4. Run main.py:

    python main.py

References

License

This project is licensed under the MIT License.

About

OTP generator with password and handwritten signature authenticity check

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published