W dzisiejszych czasach sporo mówi się na temat kryptografii oraz rozwiązań, które pozwalają użytkownikom mniej technicznym podnieść swój poziom bezpieczeństwa. Wielu czytelników z pewnością na co dzień wykorzystuje dwuskładnikowe uwierzytelnienie podczas wykonywania przelewów bankowych czy też logując się do portali społecznościowych. Równie łatwo możemy kupić moduły sprzętowe umożliwiające logowanie do zdalnych zasobów np. wykorzystujących standard SSH czy uwierzytelnianie użytkowników na lokalnych stacjach roboczych. Ci bardziej dociekliwi niejednokrotnie zastanawiali się, jak działają wykorzystywane przez nich zabezpieczenia oraz czy mechanizmy, z których korzystają, faktycznie podnoszą ich bezpieczeństwo. Czy ktokolwiek jednak zastanawiał się nad stworzeniem własnego modułu uwierzytelniającego?