Mouse Movement Biometric System


By tracking the movement of the mouse trajectories through different arcs it should be possible to authenticate (verify) the identity of the user to some extent, although this is a rather weak biometric.

There are several applications that could utilize mouse movement biometric information. One is intrusion detection [1] and this is the motivation for this project. In particular, mouse movement biometrics can be used to enhance or augment keystroke and other biometrics, and our aim is to combine it with keystroke and stylometry biometrics.


The earlier work will be extended to verify the user's identity on arbitrary mouse movement input, and data available from the Fimbel keylogger will be supplied by Ned Bakelman.

Code Feature Vector

From the preliminary work in this area by an earlier project team [2] and others [3], develop code to obtain a vector of pattern recognition features characterizing each mouse movement trajectory from mouse button click to release. It will only be necessary to develop the biometric feature extraction component since other portions of the biometric system are available. The amount of code required is probably on the order of several pages.

Problem to resolve: Consider the scenario where a user is browsing the Web. In a browsing session he will likely have an interplay of keystrokes to enter text (e.g., Google search input) together with mouse movements and clicks (e.g., to view Google responses). As we do for text input, we would probably prefer to have one mouse feature vector per session file of user input. The problem then is how to combine each mouse movement trajectory from mouse button click to release. Propose a solution!

Each feature is standardized into the range 0-1 for processing by our generic biometric authentication system. The following pseudo-code will remove outliers more than two std from the mean and standardize the feature values into the range 0-1.

for i = 1 to number_of_features
     compute the mean and standard deviation of feature i: mean, std
     min = mean - 2 * std       {set min = minus two std from mean}
     max = mean + 2 * std       {set max = plus two std from mean}
     for j = 1 to number_of_samples       {clamp to range min-max}
          if feature_value (i,j) < min than feature_value (i,j) = min
          if feature_value (i,j) > max than feature_value (i,j) = max
     for j = 1 to number_of_samples       {standardize to range 0-1}
          feature_value (i,j) = (feature_value (i,j) - min) / (max - min)

Run Experiments

Learn how to run our generic biometric authentication classificaton system and conduct experiments to determine system performance (similar to projects 4, 5, and 6).

Possible Future Project (not this semester)

Another mouse biometric application is to verify that the person taking an online test is actually the student enrolled in the class [4]. While research has shown that keystroke biometrics can aid in verifying the identity of an individual, unfortunately many online tests are multiple choice or true/false and these tests typically require little typing because the user is selecting answers by moving to and clicking on a screen location.

An initial system and associated experiments will explore the potential of the mouse movement biometric by having all participants click on a sequence of number-pad buttons presented on the computer screen. This system and experiments will mimic the keystroke system being developed in project 3 and described in [5].


  1. John V. Monaco, Ned Bakelman, Sung-Hyuk Cha, and Charles C. Tappert, Developing a Keystroke Biometric System for Continual Authentication of Computer Users, EISIC Conf., Denmark, 2012.
  2. Nkem Ajufor, Antony Amalraj, Rafael Diaz, Mohammed Islam, Michael Lampe, Refinement of a Mouse Movement Biometric System, Proc. Research Day, CSIS, Pace University, 2007. Associated slides.
  3. Maja Pusara and Carla E. Brodley, User Re-Authentication via Mouse Movements, VizSEC/DMSEC'04, Washington DC, 2004.
  4. J.C. Stewart, J.V. Monaco, S. Cha, and C.C. Tappert (2011). An Investigation of Keystroke and Stylometry Traits. Proc. Int. Joint Conf. Biometrics (IJCB 2011), Wash. D.C., October 2011.
  5. Maxion, Roy A. and Killourhy, Kevin S. (2010). Keystroke Biometrics with Number-Pad Input. In IEEE/IFIP International Conference on Dependable Systems & Networks (DSN-10), pp. 201-210, Chicago, Illinois, 28 June to 01 July 2010. IEEE Computer Society Press, Los Alamitos, California, 2010.