Keystroke Dynamics for Account Sharing Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for detecting account sharing in licensed software services are ineffective in determining the actual number of users accessing resources, leading to difficulties in preventing revenue loss and ensuring compliance with licensing agreements.
Innovation Solution
The use of keystroke dynamics authentication, which analyzes keyboard input timing factors and secondary factors such as time of day, machine identification, and IP address, to group data samples and identify multiple users accessing a single account, thereby detecting account sharing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If traditional license verification methods are used, then license compliance checking is simple, but account sharing cannot be detected and revenue loss occurs
Solution Approach 1:
The patent replaces traditional mechanical/license-based verification systems with a biometric-based detection system using keystroke dynamics. Instead of relying on static license keys or user credentials that can be shared, the system captures and analyzes dynamic typing patterns (dwell time, flight time, pressing sequences) to uniquely identify each user, thereby detecting account sharing while maintaining ease of operation.
Solution Approach 2:
The patent introduces keystroke dynamics analysis as an intermediary layer between the user and the license verification system. This intermediary captures subtle behavioral characteristics during typing, creating a unique fingerprint for each user without requiring additional hardware or significantly changing the user interface, thus resolving the contradiction between detection accuracy and system complexity.
2Measurement precision
If keystroke dynamics analysis is implemented, then account sharing detection accuracy improves, but processing complexity increases
Solution Approach 1:
The patent extracts only the essential keystroke dynamics features (dwell time, flight time, pressing sequences) needed for user identification, rather than analyzing all possible typing data. This extraction approach maintains high detection accuracy while significantly reducing processing complexity by focusing on the most discriminative features that capture individual typing patterns.
Solution Approach 2:
The patent transforms raw keystroke data into standardized parameters (dwell time in milliseconds, flight time in milliseconds, normalized sequences) that facilitate efficient comparison and analysis. By changing the parameter representation of typing patterns, the system achieves high detection accuracy while enabling computationally efficient processing through consistent parameter formatting and scaling.
3Reliability
If multiple factors are analyzed for grouping, then user identification reliability improves, but computational requirements increase
Solution Approach 1:
The patent segments the user identification process into distinct phases: data collection (capturing keystroke events), feature extraction (calculating dwell and flight times), and comparison (matching patterns against stored profiles). This segmentation allows the system to process multiple factors systematically, improving reliability by thorough analysis while managing computational energy through structured, incremental processing rather than simultaneous complex calculations.
Data Source
AI summary
Apparatus and methods are described for detecting sharing of electronic or online accounts based on grouping of data samples that include keyboard input timing factors and optionally secondary factors. The data samples can be received from various computers having various keyboards of a certain type and may be input by more than one user. The data samples are grouped based on distances and ratios of mathematical combinations of distances between input timing of key events such as dwell and flight time, as well as optionally based on at least one secondary factor related to the keyboard input timing factors. Example secondary factors include a time of day of the input; and/or a machine identification, location, and IP address of the computer used to input the sample.


