The pam_usbng package has been written to make everyday use of Linux systems more comfortable and more secure. It allows users to transparently authenticate through commodity storage devices, while its primary focus is on USB flash drives. It's capable of multiuser/multitoken authentication, physical device dependency, one-time-passwords, recovery devices, 2-factor authentication, and much more. With an easy-to-use wizard and an expandable event-based scripting interface, you can easily handle much more than normal authentication.