Step 1: Harware
The schematic only consist of tree simple pullup resistor conections like this one.
VCC - R(100Ohm) - ARDUINO PIN - SWITCH - GND
The thrid one is used for a switch to manually tell the arduino to send the data to the computer.
Step 2: Software
1) An arduino sketch to interface between the dial pad and the PC via serial comm
2) A small shell script that reads the dialed number and compares it agaist the stored password.
On linux the authentication process is done with something called PAM modules which are executed based on certain predefined roules defined on /etc/pam.conf and /etc/pam.d/
To enable de athentication just add the following line at the beginning /etc/pam.d/sudo :
auth sufficient pam_exec.so /PATH TO SCRIPT/serial_auth
Step 3: Disclaimer
This instructable was intended as a simple proof of concept rather than a secure altenate login mechanism.