Method and apparatus for verification of a computer user's identification, based on keystroke characteristics
First Claim
1. A method for verifying whether a user of a system is authorized using keystroke information, comprising the steps:
- creating user training signals from keystroke characteristics of the user, each of said user training signals including a plurality of different portions constructed from keystrokes;
purifying said user training signals by determining variances of the portions of the user training signals, and discarding a same portion of each of said user training signals when the variance of said same portion is above a predetermined threshold;
inputting a signal to be tested containing keystroke data;
determining a similarity between the input signal to be tested and the purified user training signals; and
allowing access to the system if said input signal to be tested and said purified user training signals are determined to have at least a predetermined threshold of similarity.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for determining whether a user of a system is an authorized user or an imposter by examining the keystroke characteristics of the user. The authorized user initially enters a number of user training samples on a keyboard. The user training samples are then purified to eliminate training samples which are different from other training samples. The purification can be performed by a self-organizing neural network which has input thereto, authorized user training samples, or both authorized training samples and imposter training samples. The purified user training samples are then compared to a sample to be tested to determine whether the sample is from an authorized user or an imposter. The comparison of the purified samples with the sample to be tested can be performed by a neural network such as a back propagation trained network, an ADALINE unit, a distance method or a linear classifier, discriminate function, or piecewise linear classifier. The result of this testing step indicates whether the user is authorized or an imposter and the user can be granted or denied access to the system.
-
Citations
51 Claims
-
1. A method for verifying whether a user of a system is authorized using keystroke information, comprising the steps:
-
creating user training signals from keystroke characteristics of the user, each of said user training signals including a plurality of different portions constructed from keystrokes; purifying said user training signals by determining variances of the portions of the user training signals, and discarding a same portion of each of said user training signals when the variance of said same portion is above a predetermined threshold; inputting a signal to be tested containing keystroke data; determining a similarity between the input signal to be tested and the purified user training signals; and allowing access to the system if said input signal to be tested and said purified user training signals are determined to have at least a predetermined threshold of similarity. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. An apparatus for verifying whether a user of a system is authorized using keystroke information, comprising:
-
a keyboard; means for creating user training samples from keystroke characteristics of the user, including at least one of a timer for determining timing characteristics of keystrokes and pressure sensors for detecting pressure characteristics of keystrokes, each of said user training samples including a plurality of different portions constructed from keystrokes; means for purifying said user training samples by determining variances of the portions of the user training samples, and discarding a same portion of each of said user training samples when the variance of said same portion is above a predetermined threshold; means for inputting a sample to be tested containing keystroke characteristics; means for determining a similarity between the input sample to be tested and the purified user training samples; and means for allowing access to the system if said input sample to be tested and said purified user training samples are determined to have at least a predetermined threshold of similarity. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A method for verifying whether a user of a system is authorized using keystroke information, comprising the steps:
-
creating user training signals from keystroke characteristics of the user, each of said user training signals including a plurality of different portions constructed from keystrokes; creating imposter training signals from a keystroke source; purifying said user training signals by determining variances of the portions of the user training signals, and discarding a same portion of each of said user training signals when the variance of said same portion is above a predetermined threshold; training an ADALINE processing element using said user training signals and said imposter training signals; inputting a signal to be tested contain keystroke data; determining a similarity between the input signal to be tested and the purified user training signals using said trained ADALINE processing element; and allowing access to the system if said input signal to be tested and said purified user training signals are determined to have at least a predetermined threshold of similarity using said trained ADALINE processing element. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29)
-
-
30. An apparatus for verifying whether a user of a system is authorized using keystroke information, comprising:
-
a keyboard; means for creating user training samples from keystroke characteristics of the user, including at least one of a timer for determining timing characteristics of keystrokes, pressure sensors for detecting pressure characteristics of keystrokes, and accelerometers for detecting acceleration characteristics of keystrokes, each of said user training samples including a plurality of different portions constructed from keystrokes; means for creating imposter training samples from a keystroke source; means for purifying said user training samples by determining variances of the portions of the user training samples, and discarding a same portion of each of said user training samples when the variance of said same portion is above a predetermined threshold; means for training an ADALINE processing element using said user training samples and said imposter training samples; means for inputting a sample to be tested containing keystroke characteristics; means for determining a similarity between the input sample to be tested and the purified user training samples, said means for determining including said trained ADALINE processing element; and means for allowing access to the system if said input sample to be tested and said purified user training samples are determined to have at least a predetermined threshold of similarity by said means for determining including said trained ADALINE processing element. - View Dependent Claims (31, 32, 33, 34, 35, 36)
-
-
37. A method for verifying whether a user of a system is authorized using keystroke information, comprising the steps:
-
creating user training signals from keystroke characteristics of the user, each of said user training signals including a plurality of different portions constructed from keystrokes; creating imposter training signals from a keystroke source; purifying said user training signals by determining variances of the portions of the user training signals, and discarding a same portion of each of said user training signals when the variance of said same portion is above a predetermined threshold; training a back propagation neural network using said user training signals and said imposter training signals; inputting a signal to be tested containing keystroke characteristics; determining a similarity between the input signal to be tested and the purified user training signals using said trained back propagation neural network; and allowing access to the system if said input signal to be tested and said purified user training signals are determined to have at least a predetermined threshold of similarity using said trained back propagation neural network. - View Dependent Claims (38, 39, 40, 41, 42, 43, 44)
-
-
45. An apparatus for verifying whether a user of a system is authorized using keystroke information, comprising:
-
a keyboard; means for creating user training samples from keystroke characteristics of the user including at least one of a timer for determining timing characteristics of keystrokes and pressure sensors for detecting pressure characteristics of keystrokes, each of said user training samples including a plurality of different portions constructed from keystrokes; means for creating imposter training samples from a keystroke source; means for purifying said user training samples by determining variances of the portions of the user training samples, and discarding a same portion of each of said user training samples when the variance of said same portion is above a predetermined threshold; means for training a back propagation neural network using said user training samples and said imposter training samples; means for inputting a sample to be tested containing keystroke characteristics; means for determining a similarity between the input sample to be tested and the purified user training samples, said means for determining including said trained back propagation neural network; and means for allowing access to the system if said input sample to be tested and said purified user training samples are determined to have at least a predetermined threshold of similarity by said means for determining including said trained back propagation neural network. - View Dependent Claims (46, 47, 48, 49, 50, 51)
-
Specification