Skip to content

A secure-authentication system which verifies users by verifying an uploaded file.

Notifications You must be signed in to change notification settings

Sanath91009/File_authentication

 
 

Repository files navigation

File-Auth

Codepeak 2021 Open source

Issues GitHub pull requests


Python Django MySQL React
JWT HTML5 CSS3 Postman Visual Studio Code GitHub
A secure-authentication system which verifies users by verifying an uploaded file.

Link of Figma design for SignIn-SignUp page : @Figma
Credit : @riyajha2305

Advantages

  • Hard/near-impossible to bruteforce.
  • No need to remember password.
  • Even if somebody sees your file they can't get access to the account.
  • Storage space doesn't depend on the file size.
  • Reduces working time & increases productivity.
  • Credentials accessible anytime & anywhere with just few clicks.
  • Easy to understand and use for beginners.
  • Highly accessible with low skill gap.

Disadvantages

  • If the key-file is large it would take much time to verify.
  • If user shares their file publicly it would be a risk.
  • If someone's computer is infected then it may be risky to keep key files open because there are malwares which take user's position coordinates from IP, copy hardware ID, copy the key file and send it to the hacker and hacker can easily get access user's account. In this case two factor authentication(2FA) also has no role to save user's account.
  • If key file is lost during formatting device or some other issue the account will be locked forever if 2FA is absent.
  • If it is a online system then internet problems can reduce productivity.
  • If someone is using this service from a remote server the session can be hijacked and control of account can be taken by hacker.
  • Cannot be used in public servers like airports/railways since it poses humongous threat on the file integrity and could lead to a breach of security.

Contributing :

Contributions are always welcome!

Codepeak-2021 scoring criteria :

  • For merging easy issue assign 5 points.
  • For merging MED issue assign 10 points.
  • For merging hard issue assign 20 points.
  • For merging 1-point issue assign 1 points.
  • For pointing a new easy issue assigne 1 point
  • For pointing a new MED/HARD issue assigne 1 point

Getting started :

  • [ step 1 ]

    Fork the repo, give a star also😉, git clone the repo --

      git clone https://github.com/RupakBiswas-2304/File_authentication.git
    
  • [ step 2]

    cd into the main directory , next create a virtual environment using the folowing command if you are using multiple version of python, use python3.7

      python -m venv venv

    after successfull creation of virtual environment , activate the environment by executing the activate file in venv/scripts/

  • [ step 3 ]

    install requied python modules -

      pip install -r requirment.txt
  • [ step 4 ]

    open your mysql server , and create a new database and update the settings.py in the auth folder

      DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'YOUR DATABASE NAME',
            'USER': 'ADD YOUR USER NAME HERE',
            'PASSWORD': 'ADD YOUR PASSWORD HERE',
            'HOST':'127.0.0.1',
            'PORT':'3306',
        }
      }
  • [ step 5 ] open terminal and start the server : (make sure your virtual environment is active)

      python manage.py migrate
      python manage.py runserver
  • [ step 6 ] use postman to test apis

  • [ step 7 ] Now read the full documentation of the API to start developing. Link to API Documentation

Getting Started with Create React App

Read here

Authors

About

A secure-authentication system which verifies users by verifying an uploaded file.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 41.5%
  • Python 38.4%
  • CSS 11.7%
  • HTML 8.4%