WebUSB Device Operation Without Local Driver Installation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for operating complex USB devices require local installation of drivers and software, which is time-consuming and error-prone, especially over insecure networks, and lack secure authentication mechanisms.

Innovation Solution

A method using a WebUSB interface for USB devices that involves server-side authentication of the device ID, establishing a protected communication channel, and operating the device only after successful authentication, without requiring user interaction or local software installation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If local drivers and software are installed on the user computer system, then USB devices can be operated, but the installation process is time-consuming and error-prone

Engineering Contradiction:
Improveease of USB device operationVSAvoidtime for driver installation
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

A server computer system acts as an intermediary between the user computer system and the USB device. The server hosts the operating software and device drivers, receiving requests from the user system and delivering the appropriate software components. This eliminates the need for users to manually install drivers, as the server automatically provides the necessary software through the WebUSB interface.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The server computer system provides universal support for multiple USB devices and operating systems through a single centralized platform. Instead of requiring separate driver installations for each device type and OS combination, the server maintains a repository of compatible drivers and software, automatically selecting and delivering the appropriate components based on the user's system configuration and the connected USB device.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If data is transmitted over an insecure network, then remote USB device operation is enabled, but security risks increase

Engineering Contradiction:
Improvecross-platform USB device operationVSAvoiddata transmission security
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system performs preliminary authentication and authorization checks before allowing data transmission or device operation. The server verifies the credentials of both the user computer system and the USB device, establishing security credentials in advance. This preliminary security measure prevents unauthorized access and ensures that only authenticated entities can communicate over the network, mitigating security risks before data transmission begins.

Inventive Principle:
Principle #9Preliminary anti-action

Solution Approach 2:

The system implements continuous feedback mechanisms to monitor and verify the security status of network communications. Authentication tokens are exchanged and validated between the server, user system, and USB device, with the server providing feedback on authorization status. This ongoing verification ensures that security requirements are maintained throughout the operation, allowing the system to detect and respond to potential security breaches.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If device drivers are adapted for different operating systems, then USB device compatibility is improved, but software development effort increases

Engineering Contradiction:
Improveoperating system compatibilityVSAvoidsoftware adaptation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The server computer system serves as an intermediary that abstracts away the complexities of multi-platform software adaptation. Instead of requiring the USB device to have separate driver implementations for each operating system, the server maintains a centralized repository of drivers and software components compatible with various operating systems. The server automatically selects and delivers the appropriate driver version based on the user's operating system, eliminating the need for users to manually adapt software and reducing development complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If USB devices are authenticated before operation, then unauthorized use is prevented, but authentication processes add complexity

Engineering Contradiction:
Improveunauthorized use preventionVSAvoidauthentication process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The server computer system acts as an intermediary that manages the authentication process, reducing the complexity burden on the USB device and user system. The server hosts the authentication logic and credential verification mechanisms, receiving authentication requests from the user system and the USB device. By centralizing authentication management on the server, the complexity of implementing secure authentication protocols is shifted from the distributed client-device system to the centralized server, simplifying the overall system architecture while maintaining strong security.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP3920061B1System for operating a USB device
Publication Date: 2025.10.01 BUNDESDRUCKEREI GMBH
  • EP3920061B1 patent drawingFigure 1
  • EP3920061B1 patent drawingFigure 2
  • EP3920061B1 patent drawingFigure 3

AI summary

The invention relates to a method for operating a local USB device (116), comprising: - providing (202) a user computer system (104) with a WebUSB-enabled browser (108) and a local USB interface (114).1) connected USB device; - Provisioning (204) of a server computer system (118) with a server application (124); - Downloading (206) of a client application (110) by the browser; - Automatically receiving (208) a device ID from the USB device by the client application; - Transmitting (210) the received device ID from the client application to the server application to authenticate (212) the USB device to the server application as one of the registered USB devices; and/or authenticating a user of the USB device to the server application; - In the event of successful authentication, sending (214) a release signal from the server application to the client application; - Operation (216) of the local USB device by the client application in interoperation with the server application only in response to receiving the release signal.