0

This question may not be directly related to Django, however, since my application is built with Django, I am looking solutions specific to Django.

My application has a check-in function that requires an employee to personally go to a specific machine and enter his/her ID and PSW to show his/her attendance. So, the website has to recognize every individual machine.

There are already some discussions, for examples: this and this.

But it seems software solutions are not quite feasible. So, I am looking for some hardware solutions. For example, is it possible to plug in some USB device on the machine which Django can recognize? In that case, the device (or the content in the device) can not be duplicated. Any feasible solutions, please?

Community
  • 1
  • 1
Randy Tang
  • 4,283
  • 12
  • 54
  • 112

1 Answers1

1

For hardware solution, you can use yubikeys. This is an piece of hardware plugged into USB port that will generate on demand tokens for double-factor authentication. They are constructed in way that you can't copy them, so each key will generate different tokens.

GwynBleidD
  • 20,081
  • 5
  • 46
  • 77
  • Thanks a lot. I checked with yubitkeys, but it requires the user to touch the key. I am afraid it might be stolen ;-) I would like to authenticate the machine, instead of the user. – Randy Tang Nov 10 '15 at 03:33
  • 1
    Yubikeys can work in more than one modes, I believe that there is a way to use them without need to press button on them to authenticate. If it's true, you can simply hide that yubikey inside machine. – GwynBleidD Nov 10 '15 at 11:27
  • I'll check it out. Thanks. – Randy Tang Nov 10 '15 at 14:29