Lock to USB Key

Can you introduce a security feature that unlocks the console to a defined user on inserting an USB drive? (and have it log out when you remove the drive)

the USB key can have a file containing the user+pwd(hash) so it can be copied to multiple usb keys too

offcourse logging in manually with the password should remain intact as well.