In my previous post I created a web dashboard, connected to a webcam and based on your face, you would get personalized information. you can find it here.
This was not a way to authenticate, you could easily show a picture of a person, and the webcam would detect it, the reason for this is that we need an infrared camera to prevent spoofing (holding a picture of a person). This is not possible in a web environment as this could be shown on a mobile device or a desktop that does not have an infrared sensor.
But I wanted to authenticate without entering a password, so this is what I did:
I added some features to the dashboard.
- Speaker Identification: with the help of the Speaker recognition API from the cognitive services, I could authenticate people only with their voice. No need for an infrared camera 🙂
- Adding a bot: I added a bot to give commands via your voice, while we are using our voice to authenticate, why not use it to give commands, for example: I want to see the file of John Smith
- Facial recognition: We can now use speech and face to authenticate, it’s almost two factor authentication, and the webcam is also being used to keep the session active, as soon as the person goes away from the screen, he will automatically be logged out.
The screen has been adjusted as following:
A simple architecture of the most important components:
You can see it in action here:
Here you can see an invalid authentication flow: