Howdy is a project that can use your built-in IR cameras and IR emitters to provide a Face Recognition Lock system that can be used in all actions that require permission. Be it unlocking the lock screen, or even the sudo command.
Basically, you add your face profile and it associates your face profile with the Linux user's password. So whenever the kernel has to ask you: "sudo password for <user>:", it will first turn on the IR camera and will try recognizing a face before asking you to type the password. If the face unlock succeeds, it will associate the user found with the user's password and the "sudo password for <user>:" message will be automatically skipped. If it fails, well, it's just like your phone then.
Now associating the face with a user and their password might seem unsafe to you but it's not really any vulnerability in your system per se. The howdy project is basically a pluggable authentication module, which means that it is independent of the underlying authentication scheme of Linux. All it ever does is associates a face with a Linux user. To the scheme, only the information about the Linux user is fed, not the face or the password (it has no way to actually know the password).
Of course, having said this, it must be pointed out that since you're using a face recognition system using your desktop's built-in camera, the quality of the image is in no way as accurate, and thus, the authentication system is not that secure. By the project's README's own admission:
This package is in no way as secure as a password and will never be. Although it's harder to fool than normal face recognition, a person who looks similar to you or well-printed photo of you could be enough to do it. Howdy is a more quick and convenient way of logging in, not a more secure one.So when should you use Howdy?
When you just want a faster, cooler way to login. You shouldn't use Howdy when there are people around you who could misuse your PC or its data and having a password in your desktop is truly a matter of grave security.
Does it make the login faster?
I would say it's easier, not necessarily faster. There are 3 modes in which Howdy can operate: fast, balanced, secure. With increasing order of security and depth in face recognition techniques, and also time taken to recognize the face and unlock the device, you have the option to choose your security. Choosing secure does not negate the info in the previous answer. It's comparatively secure. I have chosen the balanced mode as my setting, and when I am in a well-lit area, the recognition system works really well. However, otherwise, it first spends approximately 2-3 seconds trying to scan the face (as it should), and outputs face recognition timeout reached and then I can enter the password in case of sudo. In case of lock screen, I can type my password in under 1/1.5 seconds. So 2-3 seconds is a waste of time for me even though I can type the password parallely while the program is trying to scan my face.
I must say, however, that I use a Dell Inspiron 15 7560 model of my laptop and if you have seen this device, it has a very bad position of the webcam. So even in decent/average lighting, there are high chances of failure. If it weren't for my laziness to type even 8 characters into the PC for unlock or for overriding permissions, I wouldn't be using the project at all.
Notice the camera position |
Tips for pitfalls:
While installing Howdy, there are chances you might run into the following troubles:
- pip:
Traceback (most recent call last): File "/usr/bin/pip3", line 9, in <module> from pip import main ImportError: cannot import name 'main'
Solution:
sudo pip install pip --upgrade
sudo python3 -m pip uninstall pip && sudo apt install python3-pip --reinstall
If you use any other solution, make sure you are actually updating or modifying the pip version that is being used in installing the Howdy program. A mistake that I made was that I was just changing pip and and not pip3.
- update and upgrade:
Make sure you run apt-get update and apt-get upgrade before installing Howdy.
All the best! Hope you have fun.
Comments
Post a Comment