This page exists for backup purpose. Official content is no more available; an archive is present here: https://web.archive.org/web/20181101124951/http://www.epaymentbiometrics.ensicaen.fr/greyc-web-based-keystroke-dynamics-dataset.

Presentation

This webpage presents a new keystroke dynamics dataset. It is a supplement of the paper “Web-Based Benchmark for Keystroke Dynamics Biometric Systems: A statistical Analysis”, by Romain Giot, Mohamad EL-Abed and Christophe Rosenberger, published in the proceedings of the IIHMSP 2012 conference. Note that the dataset as been updated since the writing of the paper (there are more users). It is the first public dataset containing one different password per user.

We have removed users using their email address as a login. Thus the dataset contains 118 different users. Data collection has been done in a timespan larger than 1 year (note that not all users participated all the time).

One time per week users were able to participate to one session (more details in the paper). Each session is splitted in three parts:

  • Part 1: Input of an imposed login and password
  • Part 2: Input of the login and password created by the user
  • Part 3: Input of the login and password of other users

This there are 118 different passwords in this dataset (or 118*2 if you also use the logins), which is the biggest number of different passwords for a public dataset.

This dataset can be used for:

  • Common password studies
  • Different passwords per user studies
  • Template ageing for keystroke dynamics

Dataset

The dataset is stored in flat files organised per directory.

Users

The ‘user’ directory contains one file per user named user/user_xxx.txt, with xxx the id of the user. Each user file contains the following information (one information per line):

  • the user id
  • the login of the user
  • the name of the user
  • the gender of the user
  • the age of the user

Login and name are chosen by the user during the first session. Gender and age are filled during the account creation.

Common passphrases

The ‘passphrases’ directory contains the inputs when the users typed the imposed login and password. The is a sub-dataset similar to all the other public benchmarks: all the users types the same login and password. Samples of each users are stored in a directory named ‘passphrases\user_xxx’ where ‘xxx’ is the user id. The samples folder name is based on the timestamp of the sample. The list of samples is presented in the text file named ‘passphrases\user_xxx\captures.txt’. Each line is the folder name of one sample. The index file is ordered by chronological order. Unique passwords

The passwords directory contains the inputs of the sub-dataset where each user posses his own login and password. The genuine and impostors samples of user xxx are stored in folder passwords\user_xxx. Folder passwords\user_xxx\genuine contains the list of genuine samples and are indexed by passwords\user_xxx\genuine\captures.txt The genuine samples folder name is based on the timestamp of the sample. Folder passwords\user_xxx\impostor contains the list of impostors samples (other users trying to impersonate xxx). The samples are indexed in passwords\user_xxx\impostor\captures.txt. The impostors samples folder name are based on the id of the impostor and the timestamp of the sample. Thus, passwords\user_001\impostor\impostor_002_2010-10-18T11:39:14 if the sample of an impostor wanting to impersonate user 001. Sample Representation

Each sample is stored in a folder containing meta-data, raw data (in order to let researchers to compute theire own extracted features), extracted features commonly used in the literature.

Here is the description of each file:

  • userAgent.txt: The user agent string of the web brower used to type (can be use to analyse the browser habits of the user)
  • userid.txt: The id of the user who has typed the text
  • date.txt: The acquisition date of the sample
  • genuine.txt: A file containing 1 for a sample typed by the user and 0 for a sample typed by an impostor
  • login.txt: The string of the login
  • password.txt: The string of the password
  • l_raw_press.txt: The press events of the login. One event per line with: the code of the key, the timestamp of the event.
  • l_raw_release.txt: The release events of the login. One event per line with: the code of the key, the timestamp of the event.
  • p_raw_press.txt: The press events of the password. One event per line with: the code of the key, the timestamp of the event.
  • p_raw_release.txt: The release events of the password. One event per line with: the code of the key, the timestamp of the event.
  • l_pp.txt: The extracted press to press time of the login.
  • l_pr.txt: The extracted press to release time of the login.
  • l_rp.txt: The extracted release to press time of the login.
  • l_rr.txt: The extracted release to release time of the login.
  • l_release_codes.txt: The list of codes of keys released.
  • l_total.txt: The total typing time of the login.
  • p_pp.txt: The extracted press to press time of the password.
  • p_pr.txt: The extracted press to release time of the password.
  • p_rp.txt: The extracted release to press time of the password.
  • p_rr.txt: The extracted release to release time of the password.
  • p_release_codes.txt: The list of codes of keys released.
  • p_total.txt: The total typing time of the password.
NB of users: 118
NB of genuine sample: 9 087
NB of impostor samples: 10 043
NB of imposed samples: 9 346

Download here