How to get the time between two key presses on keyboard while typing?

2 views (last 30 days)
I am trying to develop a program to get the keystroke dynamics data from different users. My objective is to record the the total time to write a word, the time between two key presses, and the time between the press and release of a key. I do not know if this can be done via MATLAB. Can anyone please point me in the right direction?

Answers (2)

Jan
Jan on 25 Oct 2017
Di you want to record this during the user types in an uicontrol - edit field? Or do you want to scan the keys while other programs are active? The later would be a keyboard sniffer and such programs are used for illegal attacks usually. Therefore I will not support a solution.
Note that such data are specific for persons and that you can recognize somebody, while he is using an anonymous internet access point. Microsoft was accused to run such recordings in the beta versions of Win10. In the official releases this feature should have been removed.
  2 Comments
Mehran Mustafa
Mehran Mustafa on 25 Oct 2017
Thank you for your concern, but I am not looking to scan the keys. I am gathering timing data of a user from the keyboard. All I need to record is the time it takes for a particular user to press and release a key, the time between releasing first key and pressing the second key. This is keystroke dynamics biometric and is being used for securing passwords. This is a project I'm doing for Neural Network. I can do the ANN part, but gathering these parameters is a problem.
Walter Roberson
Walter Roberson on 25 Oct 2017
Some of the volunteers are reluctant to work on biometrics routines, because of various commercial and human rights abuses.
There was a paper last year (I think it was) that showed that given roughly 4 easily found but not personally-identifying pieces of information about a person (for example, which suburb they lived in), and ability to time key responses, that individuals could be tracked with a better than 95% success rate, even if they were blocking cookies and blocking javascript.
For example if a dissident is posting anonymously from a library and the dissident's key timings can be measured, and the dissident also posts (for example) Amazon reviews publicly (going about normal every day life) and the key timings for those can be measured, then the timings and very general location can be matched to identify the individual.
I summarize this by saying that if you write a biometrics program that works, then the program will be used for human rights abuses (unless something better is already available), and so the only way to avoid having your biometrics program used for human rights abuses is to deliberately make be a bad program.

Sign in to comment.


Walter Roberson
Walter Roberson on 25 Oct 2017

Categories

Find more on Language Fundamentals in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!