Dynamic Keystrokes, Endless Possibilities

Keystroke dynamics are tiny patterns and variations that occur naturally while typing on a keyboard. A subject’s typing rhythm varies from day to day and also varies within a given day due to fatigue, switching computers/keyboards, mood, etc.

The present invention provides a method and apparatus for dynamically adjusting the meaning and/or appearance of a key on a displayed keyboard in response to a predicted need for that symbol.

Keyboard Layout

The manner and rhythm with which a person types on a keyboard or keypad is unique to that individual. There exists software that analyzes this behavior to develop a biometric template for authentication purposes. This is based on the timing of keystrokes (flight time) and the duration of the press of a particular key (dwell time).

A dynamic keystroke keyboard may have more than one meaning, for example at times it is a hyphen, and at other times it is an apostrophe. The input method detects user-activity, such as taps on a display, and sends a virtual-key code to a prediction engine, which predicts the next character to be typed by the user.

The application receives the WM_KEYDOWN and/or WM_SYSKEYDOWN keystroke messages that contain this information, passes them to its TranslateMessage function in the thread message loop, which translates the virtual-key code into a character message that is placed at the top of the queue for dispatch to the window procedure. This function can also take the KLF_REPLACELANG flag to replace a keyboard layout, without changing the language.

Keyboard Actuation

A keystroke dynamics-based authentication system relies on a user’s typing pattern to verify their identity. It can detect whether the user has pressed keys with one or two hands, with one or more fingers, and in what position the keyboard is being used.

The type of keyboard you use also influences your typing speed and accuracy. For example, faster typists prefer light and responsive mechanical switches with a low actuation point.

A keyboard switch is made up of a housing, a stem and a spring. The actuation point is the distance from the top of the stem that the switch must travel to register an input with the computer.

A quality switch has a low actuation point to reduce ghosting and noise. However, this can make it more difficult to press keys with precision and may cause fatigue after long typing sessions. This can be overcome by using a higher actuation force, but this has its own drawbacks.

Keyboard Symbols

Keyboard symbols enable users to communicate, navigate through applications, and perform various functions on their computers or other electronic devices. These symbols can include letters, numbers, punctuation marks, special characters and function symbols, as well as icons and graphics.

The manner and rhythm in which a subject types on a keyboard can be used to develop a biometric template that is unique to each individual. This is an effective authentication measure that reduces the reliance on static credentials such as passwords, and also aligns with strict cybersecurity regulations.

The primary symbols available with each alphanumeric key are usually engraved on the physical keycaps, but some keys may access additional symbols via the Alt code or the NumPad. Other keystroke dynamics-based techniques can use these additional symbols to distinguish a subject from other individuals. These systems are not as reliable as physiological biometrics, however, since a subject’s typing patterns can vary significantly depending on the behavioural condition of the subject at any given time.

Keyboard Configuration

Give dynamic keystroke keyboards a try! Keyboard dynamics is a nonintrusive behavioral biometric that extracts quantitative information about the rhythm characteristics of a subject typing on a keyboard interface. Unlike physiological biometrics, keyboard dynamics can capture and analyze data during longer periods of time without requiring additional hardware or adding to the subject’s workload.

The invention provides a keyboard 66 with at least one dynamic key 74 (FIG. 9) that adjusts its meaning and/or displayed representation in response to a predicted need for the dynamic key. To facilitate user data entry, the change in meaning and/or display preferably occurs on the keyboard itself, rather than in some prediction window isolated from the keyboard elsewhere on the display.

For example, when the keyboard displays and represents a capital letter “T” in FIG. 15, the predictive engine determines that a punctuation symbol will likely follow, such as a hyphen, so the dynamic key 74 changes to represent a hyphen in FIG. 15. The user then taps the displayed hyphen, causing it to be transmitted to the application and entered into the typing buffer 82.