Biometric authentication

Biometric authentication

by Raphael Ruschel -
Number of replies: 3

Hello,


I'm a computer engineering student and for my senior project my professor asked me to develop a facial and fingerprint recognition authentication plugin for moodle.

I'm familiar with C++, Matlab, Java and some SQL. I'm also familiar with the image processing algorithms involved on the facial and fingerprints recognition, so that's no problem.


So my question is how hard is it to develop such plugin, and if there's any recommendation of what I should start studying to be able to implement that.


Thanks for the help!

Average of ratings: -
In reply to Raphael Ruschel

Re: Biometric authentication

by James McLean -

I'm not sure where the line is here when it comes to helping, and doing your homework for you though, so I will have to be wary smile

I would assume your professor has suggested this, but don't use biometrics as the first (i.e. only) factor of authentication, they should only be the second factor - make sure you implement 'something you know' as first factor (password), and 'something you have' as the second factor (biometrics). I believe that order would be considered important as a fingerprint would be much easier to 'brute force' than a password.

Fingerprints are especially weak (we leave them everywhere), so at the very least should be combined with another authentication factor. For this reason my personal feeling is they are more of a 'username' than a 'password'.

As for implementing the second factor, I have some experience implementing a two-factor token based authentication system in Moodle - I am seeking approval to release the source to the wider community but have not yet gained this approval. In the meantime, I can offer suggestions on the actual implementation steps required in the authentication plugin, as the development required is a bit of a hack due to Moodle shortcomings.

In reply to James McLean

Re: Biometric authentication

by Raphael Ruschel -

Yes, my professor has suggested that and biometrics wouldn't be the only way of authentication, it would be only used if the user wanted to. The way he suggested me was a normal login screen where the user can enter his username and password but there would be two extra buttons, one for fingerprints and one for facial recognition, that would be totally optional.

As far as I know the plans are not to actually incorporate that on the school's moodle if I succeed, he just suggest that so I'm able to apply my knowledge on image processing on a "real-life application", so the fact that fingerprints might be easier to brute force than a normal password is not a issue.

Also, my points on asking for help here is not to get my HW done by someone else, but to seek some guidance from the experienced Moodle developers on what should I start studying to be able to develop such plugin (i.e. PHP, HTML, authentication process on Moodle and so on).

So, I would be glad to read your suggestions on the implementation steps required for the authentication plugin.


In reply to Raphael Ruschel

Re: Biometric authentication

by Davo Smith -
Picture of Core developers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers

The best two starting points for writing a Moodle authentication plugin are, the Moodle developer docs ( https://docs.moodle.org/dev/Authentication_plugins ) and the code for the existing Moodle authentication plugins ( https://github.com/moodle/moodle/tree/master/auth ).

Any Moodle plugins will need to be written in PHP (outputting HTML, with CSS + javascript to provide styling / interaction).