Skip to content

AmeenUrRehman/3-Factor-Authentication-with-Face-Recognition-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Three Factor Authentication with Face Recognition System

Made a project which add a layer of security to the old 2FA, using Facial Recognition, and mark the time of the users when they log in.

Introduction:man_office_worker:

Presently the risk of Cyber Attacks has increased a lot. Do you know how frequently malicious hackers attack our data and privacy? Every 39 seconds! According to reliable estimates, Cybercrimes are expected to cost the world around 6 trillion dollars annually by 2022. Shocking, right? During last year, over 10 billion data breaches were recorded worldwide, And 79% of companies have experienced at least one in the past 18 months.

So it's clear that we need something more to protect our Data and Privacy, and my Project could provide an additional layer of security to all those systems which are more venerable to cyber thefts. I implemented a Face Recognition of the users with a Unique ID for securely authenticating a session.

Approach 🏃‍♂️

I have implemented a three-factor authentication system, which provides an additional layer security to the old 2FA, with the help of Facial Recognition.

  • Factor-1: (Something You Have) Basic Email + Password Authentication.
  • Factor-2: (Something You Know) Use Scanner to scan QR-Code for password.
  • Factor-3: (Something You Are) Facial Biometrics of the user were used to validate his presence.

3-factor

Technologies 🛸 and Packages used in this project,

  • Python
  • Face Recognition and OpenCV
  • Numpy
  • Python flask for http server.
  • HTML, CSS and Bootstrap for UI
  • Operating System

Key features 🚀

  • Recognize the face of the user.
  • Mark the time when user face is recognized in the 3-Factor Login.

Functioning 👨‍🎓

  • Factor-1: (Something You Have) Users log in with their email and password 🤗.

Login_page

  • Factor-2: (Something You Know) Users can use the scanner to Scan QR codes for passwords to login into 2nd Factor. 😇.

2nd Login

  • Factor-3: (Something You Are) Website identifies the Users face in real time and mark the time at which the machine recognized the user on the website. It reveals the ID of the user which the user can use to login into the 3rd Factor 😎 of the Three Factor Authentication.

3rd login with face recogntion

  • Username and Login_time saved into the csv file.

user_login_time

  • You are logged into the Personal Page of the website with security 🥳.

home_page

If Users are not able 🥺 to Login with any of the factor authentication they will redirect to factor-1 😥 of the Three Factor Authentication.

Conclusion

3-factor authentication is preferred, as it is much more difficult for an intruder to overcome. With just a password, an attacker only has to have a single attack skill and wage a single successful attack to impersonate the victim. With multi-factor authentication, the attack must have multiple attack skills and wage multiple successful attacks simultaneously in order to impersonate the victim. This is extremely difficult and, thus, a more resilient logon solution. 👋👋

Releases

No releases published

Packages

No packages published