A method and system for upgrading firmware of a USB device in a windows operating system

By utilizing the bootloader and temporary drivers (such as WinUSB) of USB devices under Windows 11 for authentication and encrypted packet upgrades, the problem of older USB devices being unable to be upgraded was solved, enabling secure and reliable firmware upgrades and improving the user experience.

CN116048637BActive Publication Date: 2026-06-05AISINO CORPORATION

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
AISINO CORPORATION
Filing Date
2022-12-30
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

Under the Windows 11 operating system, the bootloader of older USB devices cannot be enumerated properly, which prevents application firmware from being upgraded, affects the user experience, and poses a risk of data leakage.

Method used

The application firmware mode is automatically started by the bootloader of the USB device, which reads the device and operating system version numbers, installs temporary drivers (such as WinUSB), performs authentication and encrypted packet upgrades, and uses the bootloader to decrypt and upgrade the firmware.

Benefits of technology

It enables firmware upgrades for older USB devices running Windows 11, avoiding factory returns for upgrades, improving user experience, and ensuring security.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116048637B_ABST
    Figure CN116048637B_ABST
Patent Text Reader

Abstract

The application discloses a kind of method and system for USB device in windows operating system upgrade application firmware, belong to USB device application technical field.The method of the application, comprising: reading the version number VERA of the USB device and the internal version number VERB of the windows operating system;If the version number VERA is less than first setting value, and the internal version number VERB is greater than or equal to second setting value, install temporary driver on the windows operating system;Identity authentication is carried out to the USB device;The to-be-upgraded application firmware is upgraded based on the ciphertext packet of decryption.This application dynamically loads WinUSB driver for old USB device, solves the problem that these devices cannot be recognized under windows11 system, resulting in application firmware upgrade cannot be carried out, and is realized by modifying the firmware upgrade program of host computer, simple to use, safe and reliable, avoids the use cost increase caused by user equipment return factory upgrade bootloader.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of USB device application technology, and more specifically, to a method and system for upgrading application firmware of USB devices on a Windows operating system. Background Technology

[0002] Typical USB devices, such as tax control disks, used on Windows computers generally employ the mass storage communication protocol and utilize the operating system's built-in device driver. The system operates the USB device through the driver. The device's internal program is divided into a bootloader and an application firmware area. Both the bootloader and application firmware are enumerated as USB devices. Upon power-up, the bootloader runs first, responsible for secure boot and upgrading the application firmware. To prevent application firmware and user data leakage, the bootloader cannot be updated or upgraded in the user's environment. If an upgrade is needed, the user data must be formatted and the device returned to the factory for processing. With continuous upgrades and optimizations to the Windows system, Windows 11 (including some newer versions of Windows 10) has developed a lack of support for the bootloaders of some older USB devices, making application firmware upgrades impossible.

[0003] Returning the device to the manufacturer for a bootloader upgrade would significantly impact the user experience. Upgrading the bootloader in the user's environment would require finding a computer capable of recognizing the bootloader, raising concerns about feasibility and posing a risk of leaking application firmware and user data.

[0004] Due to a Windows update, the bootloader for an older USB-interface tax control disk failed to enumerate the default device driver on Windows 11, preventing firmware upgrades and impacting user experience. It was found that upgrades were impossible for devices with a Windows build number greater than or equal to "2004" and a device version less than "220810". Summary of the Invention

[0005] To address the above problems, this invention proposes a method for upgrading application firmware on a USB device using a Windows operating system, comprising:

[0006] After the USB device is connected to the Windows operating system and powered on, the USB device bootloader automatically starts the USB device to run in application firmware mode and reads the version number VERA of the USB device and the internal version number VERB of the Windows operating system.

[0007] If the version number VERA is less than a first set value, and the internal version number VERB is greater than or equal to a second set value, a temporary driver is installed on the Windows operating system.

[0008] The interface function provided by the temporary driver is called to open the USB device and send a jump command to the application firmware of the USB device. Based on the jump command, the application firmware of the USB device to be upgraded is controlled to jump to bootloader mode to authenticate the USB device.

[0009] After successful authentication, the interface function provided by the temporary driver is called to send the encrypted packet of the application firmware to be upgraded to the bootloader. The bootloader decrypts the encrypted packet and upgrades the application firmware based on the decrypted encrypted packet.

[0010] Optionally, authenticating the USB device includes: identifying the bootloader of the USB device through a temporary driver, calling the interface functions provided by the temporary driver, and authenticating the USB device based on the bootloader of the USB device.

[0011] Optionally, the method further includes: if the version number VERA is greater than or equal to a first preset value, and the internal version number VERB is less than a second preset value, then the firmware of the USB device is upgraded based on the conventional firmware upgrade method.

[0012] Optionally, the method further includes: after upgrading the firmware of the application to be upgraded, automatically deleting the temporary driver and restoring the default driver.

[0013] Optionally, the temporary driver is the WinUSB driver.

[0014] Optional, the Windows operating system is Windows 11.

[0015] Optionally, the method also includes: refusing to upgrade the application firmware of the USB device if authentication fails.

[0016] Furthermore, this invention also proposes a system for upgrading application firmware of USB devices on a Windows operating system, comprising:

[0017] The reading unit is used to automatically start the USB device in application firmware mode through the USB device bootloader after the USB device is connected to the Windows operating system and powered on, and to read the version number VERA of the USB device and the internal version number VERB of the Windows operating system.

[0018] The comparison unit is used to install a temporary driver on the Windows operating system when the version number VERA is less than a first preset value and the internal version number VERB is greater than or equal to a second preset value.

[0019] The authentication unit is used to call the interface functions provided by the temporary driver, open the USB device, and send a jump command to the application firmware of the USB device. Based on the jump command, it controls the application firmware of the USB device to be upgraded to jump to bootloader mode in order to authenticate the USB device.

[0020] The upgrade unit is used to call the interface function provided by the temporary driver after successful authentication, send the encrypted packet of the application firmware to be upgraded to the bootloader, decrypt the encrypted packet based on the bootloader, and upgrade the application firmware based on the decrypted encrypted packet.

[0021] Optionally, authenticating the USB device includes: identifying the bootloader of the USB device through a temporary driver, calling the interface functions provided by the temporary driver, and authenticating the USB device based on the bootloader of the USB device.

[0022] Optionally, the comparison unit is further configured to: upgrade the firmware of the USB device based on a conventional firmware upgrade method when the version number VERA is greater than or equal to a first preset value and the internal version number VERB is less than a second preset value.

[0023] Optionally, the upgrade unit is also used to: automatically delete the temporary driver and restore the default driver after upgrading the firmware of the application to be upgraded.

[0024] Optionally, the temporary driver is the WinUSB driver.

[0025] Optional, the Windows operating system is Windows 11.

[0026] Optionally, the authentication unit is also used to: refuse to upgrade the application firmware of the USB device after authentication failure.

[0027] In another aspect, the present invention also provides a computing device, comprising: one or more processors;

[0028] A processor is used to execute one or more programs;

[0029] When the one or more programs are executed by the one or more processors, the method described above is implemented.

[0030] In another aspect, the present invention also provides a computer-readable storage medium having a computer program stored thereon, which, when executed, implements the method described above.

[0031] Compared with the prior art, the beneficial effects of the present invention are as follows:

[0032] This invention provides a method for upgrading application firmware on a USB device within a Windows operating system. The method includes: after the USB device is connected to the Windows operating system and powered on, automatically starting the USB device in application firmware mode via the USB device bootloader, and reading the version number VERA of the USB device and the internal version number VERB of the Windows operating system; if the version number VERA is less than a first preset value, and the internal version number VERB is greater than or equal to a second preset value, installing a temporary driver on the Windows operating system; calling an interface function provided by the temporary driver to open the USB device, and sending a jump command to the application firmware of the USB device, controlling the application firmware to be upgraded to jump to bootloader mode based on the jump command to authenticate the USB device; after successful authentication, calling an interface function provided by the temporary driver to send an encrypted packet of the application firmware to be upgraded to the bootloader, decrypting the encrypted packet based on the bootloader, and upgrading the application firmware based on the decrypted encrypted packet. This invention dynamically loads WinUSB drivers for older USB devices, solving the problem of Windows 11 systems being unable to recognize these devices, thus preventing application firmware upgrades. This invention achieves its purpose by modifying the host computer firmware upgrade program. It is simple to use, safe and reliable, and avoids the increased cost of user equipment being sent back to the factory for bootloader upgrades. Attached Figure Description

[0033] The above and other objects, features, and advantages of the present invention will become more apparent from the more detailed description of the embodiments of the invention in conjunction with the accompanying drawings. The drawings are provided to further illustrate the embodiments of the invention and form part of the specification. They are used together with the embodiments of the invention to explain the invention and do not constitute a limitation thereof. In the drawings, the same reference numerals generally represent the same parts or steps.

[0034] Figure 1 This is a flowchart illustrating a method for upgrading application firmware of a USB device on a Windows operating system according to the present invention.

[0035] Figure 2 This is a structural diagram of a system for upgrading application firmware of a USB device on a Windows operating system, according to the present invention. Detailed Implementation

[0036] Hereinafter, exemplary embodiments according to the present invention will be described in detail with reference to the accompanying drawings. Obviously, the described embodiments are merely some embodiments of the present invention, and not all embodiments of the present invention. It should be understood that the present invention is not limited to the exemplary embodiments described herein.

[0037] It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values ​​of the components and steps described in these embodiments do not limit the scope of the invention.

[0038] The embodiments of this invention can be applied to electronic devices such as terminal devices, computer systems, and servers, and can operate together with a wide range of other general-purpose or special-purpose computing system environments or configurations. Well-known examples of terminal devices, computing systems, environments, and / or configurations suitable for use with electronic devices such as terminal devices, computer systems, and servers include, but are not limited to: personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputer systems, mainframe computer systems, and distributed cloud computing environments including any of the above systems, etc.

[0039] Electronic devices such as terminal devices, computer systems, and servers can be described in the general context of computer system executable instructions (such as program modules) executed by a computer system. Typically, program modules can include routines, programs, object programs, components, logic, data structures, etc., which perform specific tasks or implement specific abstract data types. Computer systems / servers can be implemented in distributed cloud computing environments, where tasks are executed by remote processing devices linked through communication networks. In distributed cloud computing environments, program modules can reside on local or remote computing system storage media, including storage devices.

[0040] Example 1:

[0041] This invention proposes a method for upgrading application firmware on USB devices within a Windows operating system, such as... Figure 1 As shown, it includes:

[0042] After the USB device is connected to the Windows operating system and powered on, the USB device bootloader automatically starts the USB device to run in application firmware mode and reads the version number VERA of the USB device and the internal version number VERB of the Windows operating system.

[0043] If the version number VERA is less than a first set value, and the internal version number VERB is greater than or equal to a second set value, a temporary driver is installed on the Windows operating system.

[0044] The interface function provided by the temporary driver is called to open the USB device and send a jump command to the application firmware of the USB device. Based on the jump command, the application firmware of the USB device to be upgraded is controlled to jump to bootloader mode to authenticate the USB device.

[0045] After successful authentication, the interface function provided by the temporary driver is called to send the encrypted packet of the application firmware to be upgraded to the bootloader. The bootloader decrypts the encrypted packet and upgrades the application firmware based on the decrypted encrypted packet.

[0046] The authentication of the USB device includes: identifying the bootloader of the USB device through a temporary driver, calling the interface functions provided by the temporary driver, and authenticating the USB device based on the bootloader of the USB device.

[0047] If the version number VERA is greater than or equal to a first preset value, and the internal version number VERB is less than a second preset value, then the firmware of the USB device is upgraded based on the conventional firmware upgrade method.

[0048] After upgrading the firmware of the application to be upgraded, the temporary driver is automatically deleted and the default driver is restored.

[0049] The temporary driver is the WinUSB driver.

[0050] The Windows operating system in question is Windows 11.

[0051] If authentication fails, the application firmware upgrade for the USB device will be refused.

[0052] This invention uses a replaced driver to enumerate USB devices and upgrade application firmware under Windows 11. After the upgrade is complete, the temporary driver is uninstalled, and the original device driver is restored. The entire upgrade process is completed automatically by the software, requiring no manual intervention or device return to the factory, greatly improving the user experience. The temporary driver used in this invention is WinUSB, a universal driver for USB devices included in all versions of Windows since Windows Vista. It contains a kernel-mode driver (Winusb.sys) and a user-mode dynamic link library (Winusb.dll) containing the WinUSB functions described in the header file winusb.h. With these functions, users can manage and operate USB devices in user mode, complete driver loading and unloading, and upgrade application firmware.

[0053] The specific implementation steps include:

[0054] After the device is powered on, the bootloader automatically starts the device in application firmware mode.

[0055] The upgrade program reads the device version VERA and the current operating system's internal version VERB.

[0056] The upgrade program determines if the Windows operating system version VERB is greater than or equal to "2004" and the device version VERA is less than "220810". If so, it installs the WinUSB driver in application firmware mode; otherwise, no installation is required, and the application firmware is upgraded according to the normal procedure.

[0057] The upgrade program calls the interface functions provided by WinUSB to open the device and sends a jump command to the application firmware, causing the device to jump to the bootloader.

[0058] Windows 11 can normally recognize the device's bootloader through WinUSB, and then calls the WinUSB interface functions to perform authentication.

[0059] After successful authentication, the WinUSB interface function is called to send the encrypted application firmware to be upgraded to the bootloader. The bootloader then decrypts the encrypted data and updates the application firmware.

[0060] The upgrade program sends a jump command, causing the device to jump to run the updated application firmware.

[0061] The upgrade process, in firmware mode, uninstalls WinUSB, restores the device's default drivers, and completes the firmware upgrade.

[0062] This invention dynamically loads WinUSB drivers for older USB devices, resolving the issue of Windows 11 systems being unable to recognize these devices, thus preventing application firmware upgrades. This invention achieves this by modifying the host computer firmware upgrade program, making it simple, easy to use, safe, and reliable, avoiding the increased costs associated with sending user devices back to the factory for bootloader upgrades.

[0063] Example 2:

[0064] The present invention also proposes a system 200 for upgrading application firmware of USB devices on a Windows operating system, as shown in Figure 2, comprising:

[0065] The reading unit 201 is used to automatically start the USB device in application firmware mode through the USB device bootloader after the USB device is connected to the Windows operating system and powered on, and read the version number VERA of the USB device and the internal version number VERB of the Windows operating system.

[0066] The comparison unit 202 is used to install a temporary driver on the Windows operating system when the version number VERA is less than a first set value and the internal version number VERB is greater than or equal to a second set value.

[0067] The authentication unit 203 is used to call the interface function provided by the temporary driver, open the USB device, and send a jump command to the application firmware of the USB device. Based on the jump command, the application firmware of the USB device to be upgraded is controlled to jump to bootloader mode to authenticate the USB device.

[0068] The upgrade unit 204 is used to call the interface function provided by the temporary driver after the identity authentication is successful, send the encrypted packet of the application firmware to be upgraded to the bootloader, decrypt the encrypted packet based on the bootloader, and upgrade the application firmware to be upgraded based on the decrypted encrypted packet.

[0069] The authentication of the USB device includes: identifying the bootloader of the USB device through a temporary driver, calling the interface functions provided by the temporary driver, and authenticating the USB device based on the bootloader of the USB device.

[0070] The comparison unit 202 is further configured to: upgrade the firmware of the USB device based on the conventional firmware upgrade method when the version number VERA is greater than or equal to a first preset value and the internal version number VERB is less than a second preset value.

[0071] The upgrade unit 204 is also used to: automatically delete the temporary driver and restore the default driver after upgrading the firmware of the application to be upgraded.

[0072] The temporary driver is the WinUSB driver.

[0073] The Windows operating system in question is Windows 11.

[0074] The authentication unit 203 is also used to refuse to upgrade the application firmware of the USB device after authentication fails.

[0075] This invention dynamically loads WinUSB drivers for older USB devices, resolving the issue of Windows 11 systems being unable to recognize these devices, thus preventing application firmware upgrades. This invention achieves this by modifying the host computer firmware upgrade program, making it simple, easy to use, safe, and reliable, avoiding the increased costs associated with sending user devices back to the factory for bootloader upgrades.

[0076] Example 3:

[0077] Based on the same inventive concept, this invention also provides a computer device, which includes a processor and a memory. The memory stores a computer program, which includes program instructions. The processor executes the program instructions stored in the computer storage medium. The processor may be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. It is the computing and control core of the terminal, suitable for implementing one or more instructions, specifically suitable for loading and executing one or more instructions in the computer storage medium to implement corresponding method flows or corresponding functions, thereby implementing the steps of the methods in the above embodiments.

[0078] Example 4:

[0079] Based on the same inventive concept, this invention also provides a storage medium, specifically a computer-readable storage medium (Memory), which is a memory device in a computer device used to store programs and data. It is understood that the computer-readable storage medium here can include both the built-in storage medium in the computer device and extended storage media supported by the computer device. The computer-readable storage medium provides storage space that stores the terminal's operating system. Furthermore, this storage space also stores one or more instructions suitable for loading and execution by a processor. These instructions can be one or more computer programs (including program code). It should be noted that the computer-readable storage medium here can be high-speed RAM or non-volatile memory, such as at least one disk storage device. The processor can load and execute one or more instructions stored in the computer-readable storage medium to implement the steps of the method in the above embodiments.

[0080] The computer program product can be written in any combination of one or more programming languages ​​to perform the operations of the embodiments of this disclosure. The programming languages ​​include object-oriented programming languages ​​such as Java and C++, as well as conventional procedural programming languages ​​such as C or similar languages. The program code can be executed entirely on a user's computing device, partially on a user's computing device, as a standalone software package, partially on a user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0081] Furthermore, embodiments of this disclosure may also be computer-readable storage media having computer program instructions stored thereon, which, when executed by a processor, cause the processor to perform the steps in the methods according to various embodiments of this disclosure described in the "Exemplary Methods" section above.

[0082] The computer-readable storage medium may be any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may, for example, include, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: electrical connections having one or more wires, portable disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0083] The basic principles of this disclosure have been described above with reference to specific embodiments. However, it should be noted that the advantages, benefits, and effects mentioned in this disclosure are merely examples and not limitations, and should not be considered as essential features of each embodiment of this disclosure. Furthermore, the specific details disclosed above are for illustrative and facilitative purposes only, and are not limitations. These details do not limit the scope of this disclosure to the necessity of employing the aforementioned specific details for implementation.

[0084] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For system embodiments, since they largely correspond to method embodiments, the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.

[0085] The block diagrams of devices, apparatuses, devices, and systems disclosed herein are merely illustrative examples and are not intended to require or imply that they must be connected, arranged, or configured in the manner shown in the block diagrams. As those skilled in the art will recognize, these devices, apparatuses, devices, and systems can be connected, arranged, and configured in any manner. Words such as “comprising,” “including,” “having,” etc., are open-ended terms meaning “including but not limited to,” and are used interchangeably with them. The terms “or” and “and” as used herein refer to the terms “and / or,” and are used interchangeably with them unless the context clearly indicates otherwise. The term “such as” as used herein refers to the phrase “such as but not limited to,” and is used interchangeably with it.

[0086] The methods and apparatus of this disclosure may be implemented in many ways. For example, they may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware. The above-described order of steps for the methods is for illustrative purposes only, and the steps of the methods of this disclosure are not limited to the order specifically described above unless otherwise specifically stated. Furthermore, in some embodiments, this disclosure may also be implemented as a program recorded on a recording medium, the program including machine-readable instructions for implementing the methods according to this disclosure. Thus, this disclosure also covers recording media storing programs for performing the methods according to this disclosure.

[0087] It should also be noted that in the apparatus, devices, and methods of this disclosure, the components or steps are decomposable and / or recombinable. Such decomposition and / or recombination should be considered equivalent to the present disclosure. The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use this disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein can be applied to other aspects without departing from the scope of this disclosure. Therefore, this disclosure is not intended to be limited to the aspects shown herein, but rather to be carried out within the widest scope consistent with the principles and novel features disclosed herein.

[0088] The above description has been given for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of this disclosure to the forms disclosed herein. Although numerous exemplary aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations therein.

Claims

1. A method for upgrading application firmware of a USB device on a Windows operating system, characterized in that, The method includes: After the USB device is connected to the Windows operating system and powered on, the USB device bootloader automatically starts the USB device to run in application firmware mode and reads the version number VERA of the USB device and the internal version number VERB of the Windows operating system. If the version number VERA is less than a first set value, and the internal version number VERB is greater than or equal to a second set value, a temporary driver is installed on the Windows operating system. The interface function provided by the temporary driver is called to open the USB device and send a jump command to the application firmware of the USB device. Based on the jump command, the application firmware of the USB device to be upgraded is controlled to jump to bootloader mode to authenticate the USB device. After successful authentication, the interface function provided by the temporary driver is called to send the encrypted packet of the application firmware to be upgraded to the bootloader. The bootloader decrypts the encrypted packet and upgrades the application firmware based on the decrypted encrypted packet. The authentication of the USB device includes: identifying the bootloader of the USB device through a temporary driver, calling the interface functions provided by the temporary driver, and authenticating the USB device based on the bootloader of the USB device; If the version number VERA is greater than or equal to the first set value, and the internal version number VERB is less than the second set value, then the firmware of the USB device is upgraded based on the conventional firmware upgrade method. After upgrading the firmware of the application to be upgraded, the temporary driver is automatically deleted and the default driver is restored. The temporary driver is a WinUSB driver; The Windows operating system in question is Windows 11.

2. The method according to claim 1, characterized in that, The method further includes: if authentication fails, refusing to upgrade the application firmware of the USB device.

3. A system for upgrading application firmware of USB devices on a Windows operating system, characterized in that, The system includes: The reading unit is used to automatically start the USB device in application firmware mode through the USB device bootloader after the USB device is connected to the Windows operating system and powered on, and to read the version number VERA of the USB device and the internal version number VERB of the Windows operating system. The comparison unit is used to install a temporary driver on the Windows operating system when the version number VERA is less than a first preset value and the internal version number VERB is greater than or equal to a second preset value. The authentication unit is used to call the interface functions provided by the temporary driver, open the USB device, and send a jump command to the application firmware of the USB device. Based on the jump command, it controls the application firmware of the USB device to be upgraded to jump to bootloader mode in order to authenticate the USB device. The upgrade unit is used to call the interface function provided by the temporary driver after the identity authentication is passed, send the encrypted packet of the application firmware to be upgraded to the bootloader, decrypt the encrypted packet based on the bootloader, and upgrade the application firmware to be upgraded based on the decrypted encrypted packet. The authentication of the USB device includes: identifying the bootloader of the USB device through a temporary driver, calling the interface functions provided by the temporary driver, and authenticating the USB device based on the bootloader of the USB device; The comparison unit is further configured to: upgrade the firmware of the USB device based on the conventional firmware upgrade method when the version number VERA is greater than or equal to a first preset value and the internal version number VERB is less than a second preset value; The upgrade unit is also used to: automatically delete the temporary driver and restore the default driver after upgrading the firmware of the application to be upgraded; The temporary driver is a WinUSB driver; The Windows operating system in question is Windows 11.

4. The system according to claim 3, characterized in that, The authentication unit is also used to refuse to upgrade the application firmware of the USB device after authentication fails.

5. A computer device, characterized in that, include: One or more processors; A processor is used to execute one or more programs; When the one or more programs are executed by the one or more processors, the method described in any one of claims 1-2 is implemented.

6. A computer-readable storage medium, characterized in that, It contains a computer program, which, when executed, implements the method as described in any one of claims 1-2.