Client Device Fingerprinting via Browser Quirk Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Thin clients in online services cannot robustly authenticate client devices due to security concerns, limiting their access to device information, which allows malicious users to spoof system information and masquerade as other users.
Innovation Solution
Implementing digital fingerprint generation logic that exposes behavioral differences between system configurations, such as mathematical expressions and graphics primitives, to verify the authenticity of client devices by comparing results to expected values, even in thin client environments.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If thin clients are used to provide user convenience and centralized software maintenance, then ease of operation and device complexity are improved, but the ability to robustly authenticate client devices deteriorates due to limited access to device information
Solution Approach 1:
The patent introduces an intermediary mechanism that mediates between the thin client's limited access requirements and the authentication system's information needs. The system uses JavaScript code executed within the browser to indirectly query device information through available interfaces (canvas, audio context, WebGL) rather than directly accessing restricted system resources. This intermediary approach allows authentication while maintaining the thin client architecture's security and convenience benefits.
Solution Approach 2:
The patent replaces traditional mechanical/system-level authentication methods (direct hardware access, file system queries) with software-based alternatives that operate within browser constraints. Instead of accessing the device file system or hardware directly, the system uses JavaScript-based queries to canvas elements, audio contexts, and WebGL contexts to generate device fingerprints. This substitution maintains authentication reliability while preserving thin client security model.
2Object-affected harmful factors
If thin clients are restricted from accessing device information for security reasons, then client device security is improved, but the precision of system information verification deteriorates, allowing spoofing
Solution Approach 1:
The patent changes the parameters used for device identification from traditional system-level information (file system paths, hardware IDs) to browser-accessible parameters (canvas rendering characteristics, audio context properties, WebGL context details). These alternative parameters are queried through JavaScript and provide sufficient uniqueness for device fingerprinting while remaining accessible within the browser's security model, thus maintaining both security and verification precision.
Solution Approach 2:
The patent creates a software-based copy or representation of device characteristics that can be obtained within browser constraints. Instead of directly accessing the actual device hardware or file system, the system queries JavaScript interfaces that produce equivalent identifying information (e.g., canvas rendering output, audio processing characteristics). This copied information serves the authentication function while respecting the security restrictions of the thin client environment.
Data Source
AI summary
Digital fingerprint generation logic executed by a client device includes quirk-exposing logic configured to expose behavioral differences between various system configurations of client devices. The digital fingerprint generation logic queries a remote client device for system configuration, and generates a digital fingerprint of the client device that includes a system configuration characteristic reported by the client device in response to the query. Results of execution of the quirk-exposing logic are compared to expected results that are specific to the reported system configuration. If the results of execution do not match the expected results, the digital fingerprint is determined to have been spoofed.


