Vehicle terminal remote debugging system and method
By using the vehicle-mounted terminal remote debugging system, a remote debugging channel is established through the network platform and intranet penetration module, which solves the problems of low debugging efficiency and poor security of existing vehicle-mounted terminals and realizes efficient and safe remote debugging.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-30
- Publication Date
- 2026-03-24
AI Technical Summary
The current vehicle-mounted terminal debugging mainly relies on on-site operation, which has low debugging efficiency, poor remote accessibility, and low security protection level.
A vehicle-mounted terminal remote debugging system is adopted, including a network platform, a message communication hub, an intranet penetration module, and a vehicle-mounted terminal module. The system obtains user connection requests through the network platform, verifies the legality of the startup command, establishes reverse proxy registration, obtains IP information, and establishes a remote debugging channel to achieve remote debugging.
It improves debugging efficiency, enhances security protection, breaks through the isolation barrier between the vehicle terminal equipment's internal network and the public network, and achieves efficient and secure remote debugging.
Smart Images

Figure CN121418452B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of automotive control technology, and more specifically, to a remote debugging system and method for an in-vehicle terminal. Background Technology
[0002] With the development of automotive intelligence, the complexity and number of in-vehicle terminal devices are increasing exponentially. Most existing cars are typically equipped with dozens or even hundreds of Electronic Control Units (ECUs), which are distributed in key components such as the powertrain and braking systems, forming a highly complex in-vehicle network system. Against this backdrop, the demands for debugging, configuring, and maintaining in-vehicle terminal devices are becoming increasingly frequent and sophisticated. This means that traditional automotive terminal debugging solutions can no longer meet the needs of modern vehicles for efficient, rapid, and remote terminal debugging.
[0003] Currently, vehicle terminal debugging mainly relies on on-site operation by professional debugging personnel. This requires professional debugging personnel to bring a large amount of professional equipment to the location of the vehicle to be debugged, connect the vehicle terminal equipment one by one through physical interfaces, and run local debugging software to perform debugging operations such as parameter reading and writing, log collection, and firmware upgrade.
[0004] However, debugging vehicle-mounted terminal equipment using on-site operation methods suffers from low debugging efficiency, poor remote accessibility, and low security protection levels. Therefore, there is an urgent need for an efficient, remote, and reliable vehicle-mounted terminal debugging solution. Summary of the Invention
[0005] The purpose of this application is to provide a remote debugging system and method for vehicle-mounted terminals, which can improve debugging efficiency, enhance security protection levels, and overcome the isolation barrier between the intranet and public network of vehicle-mounted terminal equipment, thereby achieving the effect of remote debugging of vehicle-mounted terminal equipment.
[0006] The embodiments of this application are implemented as follows:
[0007] A first aspect of this application provides a vehicle-mounted terminal remote debugging system. The vehicle-mounted terminal remote debugging system includes: a network platform, a message communication hub, an intranet penetration module, and a vehicle-mounted terminal module. The vehicle-mounted terminal module is deployed in a vehicle. The intranet penetration module and the message communication hub are both deployed on a public network server. The network platform establishes communication with the vehicle-mounted terminal module through the message communication hub and the intranet penetration module.
[0008] The network platform obtains the connection request input by the user and sends a start command to the vehicle terminal module through the message communication center. The start command is used to request the start of the remote connection service.
[0009] The vehicle terminal module verifies whether the startup command is valid. If it is, it starts the reverse proxy client and registers the reverse proxy with the reverse proxy server in the intranet penetration module to obtain the IP information of the vehicle terminal module and the reverse proxy registration result. The IP information includes: the first temporary password and port mapping information.
[0010] The vehicle terminal module returns response information to the network platform via the message communication center. The response information includes: reverse proxy registration result, port mapping information, and hash value of the first temporary password.
[0011] The connected platform verifies the authenticity of the response information based on a pre-set password book to determine whether the vehicle terminal module is in a ready state. If so, it establishes a remote debugging channel with the vehicle terminal module through the intranet penetration module and the message communication hub, and sends debugging instructions to the vehicle terminal module through the remote debugging channel so that the vehicle terminal module can debug according to the debugging instructions.
[0012] As one possible implementation, the aforementioned network platform includes: a web front-end module and an application server module. The web front-end module is deployed on the terminal device, and the application server module is deployed on the application server. The network platform obtains connection requests input by the user, including:
[0013] The web front-end module receives connection information entered by the user on the graphical user interface of the web front-end module and generates a connection request based on the connection information.
[0014] The web front-end module sends the connection request to the application server module.
[0015] As one possible implementation, the connected platform sends a start command to the vehicle terminal module via a message communication hub, including:
[0016] The application server module constructs a startup command based on the connection request and publishes the startup command to the corresponding topic based on a preset communication protocol. The startup command includes: the user's identity identifier, the identifier of the vehicle terminal module, a timestamp, and a digital signature.
[0017] The message communication hub receives and verifies the topic to determine the vehicle terminal module corresponding to the topic, and forwards the start command contained in the topic to the vehicle terminal module based on the long connection between the vehicle terminal module and the message communication hub.
[0018] As one possible implementation, the on-board terminal module verifies the validity of the received start command, including:
[0019] Obtain the user's identity, timestamp, and digital signature from the startup command;
[0020] Verify whether the user's identity is valid;
[0021] If so, then verify whether the digital signature is valid;
[0022] If so, verify whether the timestamp is within the preset valid window;
[0023] If so, then the startup command is valid.
[0024] As one possible implementation, the reverse proxy client is started and reverse proxy registration is performed with the reverse proxy server in the intranet penetration module to obtain the IP information corresponding to the vehicle terminal module and the reverse proxy registration result, including:
[0025] The vehicle terminal module sends a registration request to the intranet penetration module. The registration request includes: device identifier, device certificate, timestamp, and digital signature.
[0026] The intranet penetration module verifies whether the registration request is valid;
[0027] If so, the corresponding IP information is assigned to the vehicle terminal module, and the reverse proxy registration result is fed back to the vehicle terminal module.
[0028] As one possible implementation, the intranet penetration module verifies the validity of the registration request, including:
[0029] Verify the validity of the equipment certificate;
[0030] If so, then verify whether the digital signature is valid;
[0031] If so, verify whether the timestamp is within the preset valid window;
[0032] If so, then the registration request is deemed legitimate.
[0033] As one possible implementation, before starting the reverse proxy client and registering with the reverse proxy server in the intranet penetration module to obtain the IP information corresponding to the vehicle terminal module and the reverse proxy registration result, the following steps are also included:
[0034] The connected platform generates a corresponding second temporary password for the current remote connection session between the connected platform and the vehicle terminal module, and calculates the hash value of the second temporary password as the expected hash value corresponding to the current remote connection session;
[0035] Based on the connection request input by the user, the network platform determines the identifier of the vehicle terminal module and stores the identifier of the vehicle terminal module and the expected hash value corresponding to the current remote connection session in a pre-set password book.
[0036] As one possible implementation, the aforementioned reverse proxy registration result includes: the registered device identifier and the registration result. The network platform verifies the authenticity of the response information based on a pre-set password book to determine whether the vehicle terminal module is in a ready state, including:
[0037] The online platform determines whether the vehicle terminal module has been successfully registered based on the registration results;
[0038] If so, the network platform will look up the corresponding vehicle terminal module identifier and the expected hash value associated with the vehicle terminal module identifier in the pre-set password book based on the registered device identifier, and verify whether the hash value of the first temporary password in the response information is correct based on the expected hash value.
[0039] If so, then the vehicle terminal module is confirmed to be in a ready state.
[0040] As one possible implementation, the aforementioned remote debugging channel includes: an SSH encrypted channel and a WebSocket encrypted channel. The network platform establishes a remote debugging channel with the vehicle terminal module via an intranet penetration module and a message communication hub, and sends debugging commands to the vehicle terminal module through the remote debugging channel, including:
[0041] The web front-end module obtains the user's connection operation to the ready vehicle terminal device on the graphical user interface of the web front-end module, generates an API request based on the connection operation, and sends it to the application server module. The API request includes: the user's identity and the vehicle terminal module's identifier.
[0042] The application server module verifies user permissions based on API requests, and after successful verification, sends an SSH connection request to the intranet penetration module according to the port mapping information. The intranet penetration module then sends the SSH connection request to the vehicle terminal module.
[0043] The vehicle terminal module performs SSH authentication on the SSH connection request based on the first temporary key in the IP information, and after successful authentication, sends the SSH response information back to the application server module via the intranet penetration module, thus establishing an SSH encrypted channel between the application server module and the vehicle terminal module.
[0044] The application server module sends an SSH connection success notification to the web front-end module, and a WebSocket encrypted channel is established between the web front-end module and the application server module.
[0045] The web front-end module obtains the debugging commands input by the user and sends them to the vehicle terminal module through the WebSocket encrypted channel and the SSH encrypted channel.
[0046] As one possible implementation, the aforementioned vehicle-mounted terminal remote debugging system also includes: an intelligent security audit module, which is connected to the network platform to monitor the user's operation commands, login behavior and session logs in real time, and generates corresponding audit logs based on the operation commands, login behavior and session logs, and issues an alarm when the operation commands are abnormal.
[0047] A second aspect of this application provides a remote debugging method for an in-vehicle terminal, the method being applied to the remote debugging system for an in-vehicle terminal described in the first aspect above, the method comprising:
[0048] The network platform obtains the connection request input by the user and sends a start command to the vehicle terminal module through the message communication center. The start command is used to request the start of the remote connection service.
[0049] The vehicle terminal module verifies whether the startup command is valid. If it is, it starts the reverse proxy client and registers the reverse proxy with the reverse proxy server in the intranet penetration module to obtain the IP information of the vehicle terminal module and the reverse proxy registration result. The IP information includes: the first temporary password and port mapping information.
[0050] The vehicle terminal module returns response information to the network platform via the message communication center. The response information includes: reverse proxy registration result, port mapping information, and hash value of the first temporary password.
[0051] The connected platform verifies the authenticity of the response information based on a pre-set password book to determine whether the vehicle terminal module is in a ready state. If so, it establishes a remote debugging channel through the intranet penetration module and the message communication hub, and sends debugging instructions to the vehicle terminal module through the remote debugging channel so that the vehicle terminal module can debug according to the debugging instructions.
[0052] The beneficial effects of the embodiments of this application include:
[0053] This application provides a remote debugging system for vehicle-mounted terminals. It obtains a connection request input by a user through a network platform and generates a corresponding startup command based on the request to request the vehicle-mounted terminal module to start a remote connection service. The network platform sends the startup command to the corresponding vehicle-mounted terminal module via a message communication hub. The vehicle-mounted terminal module verifies the legality of the received startup command. If the vehicle-mounted terminal module determines that the currently received startup command is legitimate, it starts a reverse proxy client and initiates a reverse proxy registration request to the reverse proxy server in the intranet penetration module. The intranet penetration module returns a reverse proxy registration result to the vehicle-mounted terminal module based on the reverse proxy registration request sent by the vehicle-mounted terminal module, and allocates IP information to the vehicle-mounted terminal module upon successful reverse proxy registration. The vehicle-mounted terminal module then checks the first IP information... The temporary password is hashed to obtain the hash value of the first temporary password. Based on the hash value of the first temporary password, the port mapping information contained in the IP information, and the reverse proxy registration result, a response is generated and sent to the connected platform via the message communication hub. The connected platform verifies the accuracy of the response based on a pre-set password book to determine if the vehicle terminal module is ready. If so, the connected platform sends a corresponding remote debugging request to the vehicle terminal module via the message communication hub and the intranet penetration module to establish a remote debugging channel between the connected platform and the vehicle terminal module. The connected platform obtains the debugging command input by the user and sends it to the vehicle terminal module via the remote debugging channel. The vehicle terminal module performs remote debugging under the action of the debugging command and sends the debugging status data back to the connected platform via the remote debugging channel. This improves debugging efficiency, enhances security protection, and overcomes the isolation barrier between the vehicle terminal device's intranet and the public network, achieving the effect of remote debugging of the vehicle terminal device. Attached Figure Description
[0054] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0055] Figure 1 This is a schematic diagram of the structure of the first type of vehicle-mounted terminal remote debugging system provided in the embodiments of this application;
[0056] Figure 2 A communication interaction diagram of a first type of vehicle-mounted terminal remote debugging system provided in this application embodiment;
[0057] Figure 3This is a schematic diagram of the structure of the second type of vehicle-mounted terminal remote debugging system provided in the embodiments of this application;
[0058] Figure 4 This is a communication interaction diagram of a second type of vehicle-mounted terminal remote debugging system provided in an embodiment of this application;
[0059] Figure 5 A communication interaction diagram of a third type of vehicle-mounted terminal remote debugging system provided in this application embodiment;
[0060] Figure 6 This application provides a communication interaction diagram for a fourth type of vehicle-mounted terminal remote debugging system.
[0061] Figure 7 A communication interaction diagram of the fifth type of vehicle-mounted terminal remote debugging system provided in the embodiments of this application;
[0062] Figure 8 An interactive diagram illustrating the establishment of a remote debugging channel for the vehicle-mounted terminal remote debugging system provided in this application embodiment;
[0063] Figure 9 This is a schematic diagram of the structure of the third type of vehicle-mounted terminal remote debugging system provided in the embodiments of this application;
[0064] Figure 10 A schematic diagram of an intranet penetration module provided in this application embodiment;
[0065] Figure 11 A complete remote debugging interaction diagram of the vehicle terminal remote debugging system provided in the embodiments of this application;
[0066] Figure 12 This is a system architecture diagram of the vehicle-mounted terminal remote debugging system provided in the embodiments of this application.
[0067] Figure reference numerals: 10: Vehicle terminal remote debugging system; 101: Network platform; 1011: Web front-end module; 1012: Application server module; 102: Message communication hub; 103: Intranet penetration module; 104: Vehicle terminal module; 105: Intelligent security audit module. Detailed Implementation
[0068] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. The components of the embodiments of this application described and shown in the accompanying drawings can generally be arranged and designed in various different configurations.
[0069] Therefore, the following detailed description of the embodiments of this application provided in the accompanying drawings is not intended to limit the scope of the claimed application, but merely to illustrate selected embodiments of the application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without inventive effort are within the scope of protection of this application.
[0070] Currently, vehicle-mounted terminal debugging mainly relies on on-site operation by professional debugging personnel. This requires these personnel to carry a large amount of specialized equipment to the location of the vehicle to be debugged, connect to the vehicle-mounted terminal devices one by one through physical interfaces, and run local debugging software to perform debugging operations such as parameter reading and writing, log collection, and firmware upgrades. However, this approach suffers from problems such as low debugging efficiency, poor remote accessibility, and low security protection levels.
[0071] To address this, this application provides a remote debugging system for vehicle-mounted terminals. The system obtains a connection request from a user via a network platform and sends a start command to the selected vehicle-mounted terminal module via a message communication hub. Upon receiving the start command, the vehicle-mounted terminal module verifies its validity. If valid, it starts a reverse proxy client and registers with the reverse proxy server in the intranet penetration module to obtain the IP information and registration result. Simultaneously, the vehicle-mounted terminal module returns a response to the network platform via the message communication hub. The network platform verifies the authenticity of the response based on a pre-set password to determine if the vehicle-mounted terminal module is ready. If so, a remote debugging channel is established between the vehicle-mounted terminal module and the message communication hub, and debugging commands are sent to the vehicle-mounted terminal module through this channel, enabling remote debugging. This improves debugging efficiency, enhances security, and overcomes the isolation barrier between the vehicle-mounted terminal device's intranet and the public network, achieving remote debugging of the vehicle-mounted terminal device.
[0072] The following description, in conjunction with the accompanying drawings, provides a detailed explanation of the vehicle-mounted terminal remote debugging system provided in the embodiments of this application.
[0073] Figure 1 A schematic diagram of the structure of a vehicle-mounted terminal remote debugging system provided in this application is shown below. Figure 1 This application provides a vehicle-mounted terminal remote debugging system 10, including: a network platform 101, a message communication hub 102, an intranet penetration module 103, and a vehicle-mounted terminal module 104. The vehicle-mounted terminal module 104 is deployed in a vehicle, and the intranet penetration module 103 and the message communication hub 102 are both deployed on a public network server. The network platform 101 establishes communication with the vehicle-mounted terminal module 104 through the message communication hub 102 and the intranet penetration module 103.
[0074] Among them, the network platform 101 is deployed on the terminal equipment of professional debugging personnel. The terminal equipment can be the computer equipment, portable computer, etc. of professional debugging personnel, and this application does not make specific limitations in this regard.
[0075] Optionally, the network platform 101 is specifically used to provide a human-machine interface for professional debugging personnel. Professional debugging personnel can select the vehicle to be debugged and a certain vehicle terminal device on the vehicle to be debugged on the network platform 101. Based on the connection selection operation of the professional debugging personnel, the network platform 101 verifies whether the corresponding vehicle terminal module 104 has the conditions for remote debugging through the message communication hub 102 and the intranet penetration module 103. When the vehicle terminal module 104 specified by the professional debugging personnel is in a ready state, the network platform 101 establishes a remote debugging channel with the vehicle terminal module 104 through the message communication hub 102 and the intranet penetration module 103 to realize the remote debugging of the vehicle terminal module 104.
[0076] Optionally, the message communication hub 102 is deployed on a public network server. The message communication hub 102 is mainly used to solve the network reachability problem between the connected platform 101 and the vehicle terminal module 104. The core function of the message communication hub 102 is to provide reliable communication between the connected platform 101 and the vehicle terminal module 104.
[0077] Specifically, since the vehicle terminal module 104 is usually located in a mobile network or enterprise intranet and lacks a fixed public IP address, the vehicle terminal module 104 cannot be directly accessed by external network platforms. However, the vehicle terminal module 104 can actively initiate communication to connect to a public network server. By deploying the message communication hub 102 on the public network server, it can be ensured that the vehicle terminal module 104 actively and continuously establishes a persistent communication channel from the terminal to the cloud with the message communication hub 102.
[0078] Furthermore, the connected platform 101 can also establish a communication connection with the message communication hub 102 deployed on the public network server based on the preset communication protocol. This allows both the vehicle terminal module 104 and the connected platform 101 to connect to a unified network interface, thereby avoiding complex point-to-point network configuration.
[0079] Based on this, the vehicle terminal module 104 does not need to obtain the public IP address of the network platform 101; it only needs to publish messages to specific topics. Similarly, the network platform 101 does not need to know the public IP address of the vehicle terminal module 104; it only needs to subscribe to the desired topics to obtain the messages published by the vehicle terminal module 104. This achieves complete decoupling between the network platform 101 and the vehicle terminal module 104. Adding or removing devices will not affect other components, thereby improving the system's scalability.
[0080] Optionally, the intranet penetration module 103 is also deployed on a public network server. The intranet penetration module 103 can break through the network barrier of the enterprise intranet where the vehicle terminal module 104 is located, and create a virtual exit in the public network for the vehicle terminal module 104 located in the enterprise intranet that can be accessed by the external network platform 101, so as to solve the network island problem of the vehicle terminal module 104.
[0081] Specifically, the intranet penetration module 103 allows the intranet client of the vehicle terminal module 104 to actively connect to the public network server to establish a persistent reverse channel for bidirectional data transmission. Simultaneously, the intranet penetration module 103 can also assign IP information to the vehicle terminal module 104 that lacks a public IP address, thereby enabling automatic configuration and management of the vehicle terminal module 104 and ensuring the security and legitimacy of remote connections.
[0082] Optionally, most existing vehicles are equipped with at least one vehicle terminal module 104. The vehicle terminal module 104 may be an ECU, T-Box, gateway, or other vehicle terminal equipment in the vehicle. This application does not make any specific limitation in this regard.
[0083] In one alternative implementation, see [link to implementation details]. Figure 2 The specific interaction process of the vehicle-mounted terminal remote debugging system provided in this application embodiment is as follows:
[0084] S201. The network platform obtains the connection request input by the user and sends a start command to the vehicle terminal module through the message communication center. The start command is used to request the start of the remote connection service.
[0085] Optionally, after logging into their personal accounts on the network platform, professional commissioning personnel can perform input or selection operations on the graphical interactive interface provided by the network platform to determine the vehicle terminal module that they want to remotely commission.
[0086] Specifically, professional debugging personnel can enter the identifier of the vehicle terminal module they want to remotely debug on the network platform after logging in, or they can select the vehicle terminal module they want to remotely debug on the network platform after logging in using a mouse or button. This application does not make any specific limitations on this.
[0087] Optionally, the connection request is a combination of the identifier of the vehicle terminal module to be remotely debugged entered by the user on the network platform or the vehicle terminal module to be remotely debugged selected by the user on the network platform through a point-and-click operation. The connection request includes the user's identity identifier and the identifier of the vehicle terminal module to be remotely debugged selected by the user. The connection request is used to inform the network platform which user wants to remotely debug which vehicle terminal module.
[0088] Optionally, the connected platform generates a startup command based on the connection request input by the user, and forwards the startup command to the vehicle terminal module via the message communication center. The startup command is a control command sent by the connected platform to the vehicle terminal module to initiate the remote connection service. Its core function is to command the vehicle terminal module to enter a connectable state from standby mode, thus preparing for the establishment of a secure remote debugging channel later.
[0089] Specifically, the startup command is used to inform the vehicle terminal module B that user A now wants to remotely debug it, and the vehicle terminal module B needs to enter the connection preparation state.
[0090] It is worth noting that the user who initiates a remote connection to the vehicle terminal module through the network platform refers to a professional debugging personnel, not any natural person.
[0091] It should be noted that the connected platform has a login security mechanism that supports multiple authentication methods such as username and password, SMS verification code, and hardware token. Users are assigned roles at the button level according to their permissions, so that users with different roles can only access the functional modules and operation buttons within their authorized scope. This ensures the security of remote debugging and the data isolation of concurrent remote debugging of multiple vehicle terminal modules.
[0092] S202. The vehicle terminal module verifies whether the startup command is valid. If so, it starts the reverse proxy client and registers the reverse proxy with the reverse proxy server in the intranet penetration module to obtain the IP information of the vehicle terminal module and the reverse proxy registration result. The IP information includes: the first temporary password and port mapping information.
[0093] Optionally, the vehicle-mounted terminal module verifies the legitimacy of the received startup command based on an internally integrated verification algorithm to determine the legitimacy of the source of the currently received startup command and prevent replay attacks of old startup commands, thereby establishing a trust chain between the vehicle-mounted terminal module and the network platform. This effectively prevents malicious attackers from arbitrarily waking up and remotely connecting to the vehicle-mounted terminal module.
[0094] Optionally, after the vehicle terminal module determines that the received startup command is valid, the vehicle terminal module starts a Fast Reverse Proxy (FRP) client and registers with the FRP server in the intranet penetration module. Upon successful registration, it obtains the IP information and registration result corresponding to the vehicle terminal module. The IP information is a public IP address assigned to the vehicle terminal module by the intranet penetration module, enabling it to bypass intranet restrictions and communicate with the outside world. The registration result includes a registered device identifier and the registration result. The registered device identifier refers to the identifier of the vehicle terminal module that initiated the FRP registration request to the FRP server and the current registration time. The registration result indicates whether the reverse proxy registration process of the vehicle terminal module was successful.
[0095] Optionally, based on the registration request of the vehicle terminal module, after the vehicle terminal module's FRP registration is successful, the intranet penetration module assigns public IP information to the vehicle terminal module. This public IP information includes port mapping information and a first temporary password. The port mapping information and the first temporary password construct a temporary access credential packet for the vehicle terminal module. The port mapping information provides a temporary public IP address, allowing the network platform to determine the specific address of the vehicle terminal module under test on the public network. The first temporary password provides authentication and a secure session for the vehicle terminal module, ensuring a secure and reliable Secure Shell (SSH) connection between the network platform and the vehicle terminal module, and effectively preventing intrusion by malicious attackers.
[0096] It should be noted that the port mapping information is not only used to provide a public network address for the vehicle terminal module, but also to provide a reverse tunnel between the FRP client in the vehicle terminal module and the FRP server in the intranet server. When the network platform connects to this port of the FRP server, the data will be automatically transmitted to the FRP client in the vehicle terminal module corresponding to the port mapping information.
[0097] It should also be noted that the first temporary password is a one-time password dynamically generated by the FRP server based on the FRP client's registration request. It is only valid in the current debugging session. If the current debugging session ends, the first temporary password will also become invalid.
[0098] It is worth noting that, see Figure 10 Port mapping is implemented based on the FRP intranet penetration configuration integrated in the intranet penetration module to achieve real-time communication between the public network platform and the intranet vehicle terminal module.
[0099] S203. The vehicle terminal module returns response information to the network platform via the message communication center. The response information includes: reverse proxy registration result, port mapping information, and hash value of the first temporary password.
[0100] Optionally, after the vehicle terminal module successfully registers with FRP, the vehicle terminal module obtains the public IP information allocated by the FRP server and the FRP registration result. The vehicle terminal module generates response information based on the public IP information and the FRP registration result, and feeds back the response information to the connected platform through the message communication center.
[0101] The response information is used to inform the connected platform that the vehicle terminal module is ready to connect. In other words, the response information can be regarded as a readiness report or connection certificate sent by the vehicle terminal module to the connected platform.
[0102] Optionally, the response information is also used to transmit network reachability information and security verification credentials to the connected platform. The response information includes: reverse proxy registration result, port mapping information, and the hash value of the first temporary password. Specifically, the reverse proxy registration result includes the identifier of the vehicle terminal module and the successful reverse registration result of the vehicle terminal module; the port mapping information indicates the public IP address and port number of the vehicle terminal module; and the hash value of the first temporary password is an encrypted hash value obtained by the vehicle terminal module performing a hash operation on the first temporary password.
[0103] S204. The network platform verifies the authenticity of the response information based on a pre-set password book to determine whether the vehicle terminal module is in a ready state. If so, it establishes a remote debugging channel with the vehicle terminal module through the intranet penetration module and the message communication hub, and sends debugging instructions to the vehicle terminal module through the remote debugging channel so that the vehicle terminal module can debug according to the debugging instructions.
[0104] The pre-configured password book is a protected configuration file pre-deployed in the connected platform. Specifically, it's a database of encrypted credentials used to verify the legitimacy of system sessions. The pre-configured password book includes long-term static credentials and short-term dynamic credentials. Long-term static credentials are used for authentication and include static content such as the vehicle terminal module's identifier, pre-shared key, and digital certificate. These credentials are securely injected into the password book and the vehicle terminal module when it leaves the factory or is first registered with the FRP server. Short-term dynamic credentials ensure session security and include dynamic content such as dynamically generated temporary passwords, the corresponding encrypted hash values, and session identifiers. These credentials are dynamically generated and updated before each remote debugging session begins on the connected platform, providing temporary communication credentials for each session to ensure session security.
[0105] Optionally, the connected platform verifies the authenticity of the response information from the vehicle terminal module based on a pre-set password book. When the response information from the vehicle terminal module is confirmed to be genuine, it indicates that the vehicle terminal module is ready for remote connection. The connected platform establishes a remote debugging channel with the vehicle terminal module via an intranet penetration module and a message communication hub. Debugging commands input by the user through the connected platform are transmitted to the corresponding vehicle terminal module via the remote debugging channel. Simultaneously, the vehicle terminal module feeds back its status data during the debugging process to the connected platform via the remote debugging channel.
[0106] The remote debugging channel refers to the data channel through which the connected platform and the vehicle terminal module conduct remote debugging sessions. The remote debugging channel can transmit both remote debugging commands and debugging status data.
[0107] In this embodiment, a connection request input by the user is obtained through the network platform, and a corresponding startup command is generated based on the connection request to request the vehicle terminal module to start the remote connection service. The network platform sends the startup command to the corresponding vehicle terminal module via the message communication hub. The vehicle terminal module verifies the legality of the received startup command. If the vehicle terminal module determines that the source of the currently received startup command is legal, the vehicle terminal module starts the reverse proxy client and initiates a reverse proxy registration request to the reverse proxy server in the intranet penetration module. The intranet penetration module sends a reverse proxy registration result back to the vehicle terminal module based on the reverse proxy registration request sent by the vehicle terminal module, and allocates IP information to the vehicle terminal module when the reverse proxy registration is successful. The vehicle terminal module performs a hash check on the first temporary password in the IP information. The system performs a hash operation to obtain the hash value of the first temporary password. Based on the hash value, port mapping information contained in the IP information, and the reverse proxy registration result, it generates a response message and sends it back to the connected platform via the message communication hub. The connected platform verifies the accuracy of the response message against a pre-set password book to determine if the vehicle terminal module is ready. If so, the connected platform sends a corresponding remote debugging request to the vehicle terminal module via the message communication hub and the intranet penetration module to establish a remote debugging channel between the connected platform and the vehicle terminal module. The connected platform receives the debugging command input by the user and sends it to the vehicle terminal module via the remote debugging channel. The vehicle terminal module performs remote debugging under the action of the debugging command and sends the debugging status data back to the connected platform via the remote debugging channel. In this way, debugging efficiency can be improved, security protection level can be enhanced, and the isolation barrier between the vehicle terminal device's intranet and the public network can be broken, thereby achieving the effect of remote debugging of the vehicle terminal device.
[0108] In one alternative implementation, see [link to implementation details]. Figure 3The vehicle terminal remote debugging system 10 provided in this application embodiment includes a network platform 101 comprising a Web front-end module 1011 and an application server module 1012. The Web front-end module 1011 is deployed on the terminal device, and the application server module 1012 is deployed on the application server.
[0109] Optionally, the Web front-end module 1011 is deployed on the user's terminal device. The user can input connection information, configuration information, debugging commands, etc. through the graphical user interface provided by the Web front-end module 1011. This application does not make specific limitations on this.
[0110] Optionally, the application server module 1012 is deployed on the application server. The application server module 1012 is used to verify the requests sent by the Web front-end module 1011, and after the verification is successful, it generates the corresponding control command and sends it to the corresponding vehicle terminal module 104 via the message communication hub 102.
[0111] Among them, the Web front-end module 1011 can provide functions such as SSH connection interface, xterm.js terminal simulator, terminal display interface, device management interface and FRP configuration interface; the application server module 1012 can provide functions such as SSH proxy service, security authentication service, WebSocket communication service, session management service and command processing service; the message communication hub 102 can provide functions such as message routing, message queue, status management, command forwarding and connection monitoring; the intranet penetration module 103 can provide functions such as automatic configuration generation, fault transfer and automatic recovery, process management, port mapping and status monitoring. This application does not make specific limitations here.
[0112] In one alternative implementation, see [link to implementation details]. Figure 4 The specific interaction process of "the network platform obtaining the connection request input by the user" in step S201 above is as follows:
[0113] S401. The Web front-end module receives connection information entered by the user on the graphical user interface of the Web front-end module and generates a connection request based on the connection information.
[0114] Optionally, the connection information is the remote connection information of the vehicle terminal module entered by the user on the graphical user interface provided by the Web front-end module. The connection information can be the identifier of the vehicle terminal module or the icon information corresponding to the vehicle terminal module. This application does not make specific limitations on this.
[0115] Optionally, the web front-end module generates a corresponding connection request based on the connection information entered by the user in the graphical user interface. The connection request includes the user's identity identifier and the identifier of the vehicle terminal module specified by the user.
[0116] S402, The Web front-end module sends the connection request to the application server module.
[0117] Optionally, the web front-end module sends the generated connection request to the application server module, which can then verify user permissions for the connection request.
[0118] In this application embodiment, it is clarified that the network platform is a front-end and back-end separation architecture in which a web front-end module and an application server module cooperate with each other, which decouples user interaction from business logic processing. This brings a better user experience, higher system maintainability and scalability. Users can operate through any standard browser without installing a dedicated client.
[0119] In one alternative implementation, see [link to implementation details]. Figure 5 The specific interaction process of "the network platform sending a start command to the vehicle terminal module via the message communication center" in step S201 above is as follows:
[0120] S501 The application server module constructs a startup command based on the connection request and publishes the startup command to the corresponding topic based on the preset communication protocol. The startup command includes: the user's identity identifier, the identifier of the vehicle terminal module, the timestamp, and the digital signature.
[0121] Specifically, the preset communication protocol can be the Message Queuing Telemetry Transport (MQTT) protocol.
[0122] Optionally, when the application server module determines that the user in the connection request has access control permissions to the specified vehicle terminal module, the application server module constructs a startup command based on the connection request sent by the Web front-end module, and publishes the startup command to the corresponding topic in the message communication hub based on a preset communication protocol.
[0123] Optionally, the startup command constructed by the application server module includes: the user's identity token, the vehicle terminal module's identifier, a timestamp, and a digital signature. The user's identity token refers to the identity token of the user currently conducting a remote debugging session with the vehicle terminal module. The vehicle terminal module's identifier refers to the identity tag of the vehicle terminal module that the user wants to wake up for remote debugging. The timestamp refers to the timestamp of the application server module constructing the startup command or the timestamp of the application server module verifying the connection request. The digital signature refers to the verification tag of the startup command, used to ensure the integrity of data transmission.
[0124] S502. The message communication center receives and verifies the topic to determine the vehicle terminal module corresponding to the topic, and forwards the start command contained in the topic to the vehicle terminal module based on the long connection between the vehicle terminal module and the message communication center.
[0125] Optionally, after receiving a topic sent by the application server module, the message communication hub checks the received topic to determine the publisher and subscriber of the topic, and based on the communication connection between the subscriber and the message communication hub, sends the start command in the topic to the corresponding vehicle terminal module to complete the start command forwarding.
[0126] In this embodiment, a highly reliable and low-latency startup command transmission is achieved through a message communication hub and a topic publish / subscribe mechanism. Furthermore, even if the vehicle terminal is temporarily offline, the message communication hub can cache messages and send them to the vehicle terminal only after the vehicle terminal reconnects, significantly improving system reliability. Moreover, the connected platform does not need to know the specific network location of the vehicle terminal; it only needs to publish commands to a specific topic, with the message communication hub handling the routing. This greatly simplifies system design and decouples the connected platform from the vehicle terminal. In addition, the digital signature included in the startup command ensures data integrity and effectively prevents malicious tampering of the startup command during transmission.
[0127] In one optional implementation, the operation of "verifying whether the received start command is valid" in step S202 above can specifically be as follows:
[0128] Obtain the user's identity, timestamp, and digital signature from the startup command;
[0129] Verify whether the user's identity is valid;
[0130] If so, then verify whether the digital signature is valid;
[0131] If so, verify whether the timestamp is within the preset valid window;
[0132] If so, then the startup command is valid.
[0133] Optionally, the vehicle terminal module parses the user's identity, timestamp, and digital signature from the received startup command, and determines whether the user's identity is authentic and valid. If so, it further verifies whether the digital signature is valid. Finally, it further determines whether the timestamp of the startup command is valid. If all three conditions are met, the startup command currently received by the vehicle terminal module is determined to be valid.
[0134] The preset valid window is a time scale window set by the user. When the timestamp in the startup command exceeds the preset valid window, the current startup command is determined to be invalid.
[0135] In this embodiment, a rigorous triple verification is provided for the legitimacy of the startup command to determine whether the user has access control permissions and whether the source of the command is genuine and reliable. At the same time, the timestamp effectively defends against illegal replay attacks by attackers who intercept old legitimate commands and resend them, which can greatly improve the security of the system.
[0136] In one alternative implementation, see [link to implementation details]. Figure 6 The specific interaction process in step S202 above, "starting the reverse proxy client and registering with the reverse proxy server in the intranet penetration module to obtain the IP information corresponding to the vehicle terminal module and the reverse proxy registration result," is as follows:
[0137] S601, the vehicle terminal module sends a registration request to the intranet penetration module. The registration request includes: device identifier, device certificate, timestamp, and digital signature.
[0138] Optionally, the registration request is an FRP registration request message sent by the vehicle terminal module to the intranet penetration module when responding to the startup command. The registration request includes: device identifier, device certificate, timestamp, and digital signature. The device identifier refers to the identifier of the vehicle terminal module that initiated the FRP registration request to the intranet penetration module; the device certificate is a digital file issued by a trusted authority, containing the vehicle terminal module's identifier and public key, and digitally signed; the timestamp is the time stamp used to send the FRP registration request from the vehicle terminal module to the intranet penetration module; and the digital signature is an encrypted verification of the device certificate used to ensure the integrity of the registration request.
[0139] S602, the intranet penetration module verifies whether the registration request is valid.
[0140] Optionally, the intranet penetration module verifies the legitimacy of the received registration request to determine whether reverse proxy registration can be performed on the current vehicle terminal module.
[0141] S603. If so, assign the corresponding IP information to the vehicle terminal module and send the reverse proxy registration result back to the vehicle terminal module.
[0142] Optionally, when the intranet penetration module determines that the received registration request is legitimate, it assigns a public IP address to the sender of the registration request and sends back the corresponding reverse proxy registration result. It's worth noting that if the vehicle terminal module's FRP registration fails, only the reverse proxy registration result is received; no public IP address is assigned to the failed vehicle terminal module.
[0143] In this embodiment of the application, the process of reverse proxy registration of the vehicle terminal to the intranet penetration module is standardized by verifying the registration request, which can ensure the uniformity of the information exchange format.
[0144] In one optional implementation, step S502 can specifically be performed as follows:
[0145] Verify the validity of the equipment certificate;
[0146] If so, then verify whether the digital signature is valid;
[0147] If so, verify whether the timestamp is within the preset valid window;
[0148] If so, then the registration request is deemed legitimate.
[0149] In the embodiments of this application, a device-level identity authentication and anti-replay attack mechanism is established by verifying device certificates, digital signatures and timestamps. This ensures that only genuine vehicle terminals with valid certificates can successfully register, greatly improving the security of the intranet penetration process.
[0150] In an optional implementation, before step S202 above, which involves "starting the reverse proxy client and registering with the reverse proxy server in the intranet penetration module to obtain the IP information corresponding to the vehicle terminal module and the reverse proxy registration result," the method further includes:
[0151] The connected platform generates a corresponding second temporary password for the current remote connection session between the connected platform and the vehicle terminal module, and calculates the hash value of the second temporary password as the expected hash value for the current remote connection session.
[0152] Optionally, the current remote connection session refers to the process in which the user enters connection information through the network platform at the current moment in order to establish a remote debugging session with the corresponding vehicle terminal module, and the second temporary password is a dynamic temporary password generated by the network platform for the current remote connection session.
[0153] Optionally, the expected hash value refers to the hash value obtained by the network platform through hashing the second temporary password using a cryptographic algorithm that works in collaboration with the vehicle terminal module.
[0154] Based on the connection request input by the user, the network platform determines the identifier of the vehicle terminal module and stores the identifier of the vehicle terminal module and the expected hash value corresponding to the current remote connection session in a pre-set password book.
[0155] Optionally, based on the connection request input by the user, the connected platform can determine the identifier of the vehicle terminal module selected by the user, and store the identifier of the vehicle terminal module and the expected hash value corresponding to the current remote connection session in a preset password book to form a mapping relationship between the vehicle terminal module and the current remote connection session.
[0156] In this embodiment of the application, the network platform dynamically generates a second temporary password and calculates its hash value, and then stores it in a preset password book. This ensures that each session of the network platform uses a different temporary credential, realizing "one-time password" and avoiding the risks brought by static passwords.
[0157] In an optional implementation, the reverse proxy registration result includes: a registered device identifier and a registration result. The specific operation in step S204, "the network platform verifies the authenticity of the response information based on a pre-set password book to determine whether the vehicle terminal module is in a ready state," includes:
[0158] The registered device identifier refers to the identifier of the vehicle terminal module that sent the response information, and the registration result is used to indicate whether the FRP registration of the vehicle terminal module was successful or not.
[0159] The online platform determines whether the vehicle terminal module has been successfully registered based on the registration results;
[0160] If so, the network platform will look up the corresponding vehicle terminal module identifier and the expected hash value associated with the vehicle terminal module identifier in the pre-set password book based on the registered device identifier, and verify whether the hash value of the first temporary password in the response information is correct based on the expected hash value.
[0161] If so, then the vehicle terminal module is confirmed to be in a ready state.
[0162] Optionally, the network platform searches for the corresponding vehicle terminal module identifier in the preset password book based on the registered device identifier in the received response information, and indexes the current remote connection session corresponding to the found vehicle terminal module identifier to determine whether the vehicle terminal module is ready based on the comparison result between the expected hash value and the encrypted hash value of the first temporary password.
[0163] In this embodiment, the vehicle terminal returns the hash value of the first temporary password, which is then compared with the expected hash value by the network platform. Both parties complete the matching using their respective temporary passwords, thus achieving implicit transmission of session credentials. Furthermore, since the hash value of the temporary password is transmitted over the network, even if maliciously intercepted by an attacker, the original password cannot be deduced, preventing security issues caused by password leakage. Moreover, after successful verification, both parties are certain that the other possesses the correct session key before establishing a remote debugging channel, laying a solid foundation for subsequent remote debugging and testing.
[0164] In one alternative implementation, see [link to implementation details]. Figure 7 The aforementioned remote debugging channels include: an SSH encrypted channel and a WebSocket encrypted channel. The network platform establishes a remote debugging channel with the vehicle terminal module via an intranet penetration module and a message communication hub, and sends debugging commands to the vehicle terminal module through the remote debugging channel, including:
[0165] S701, the Web front-end module obtains the user's connection operation to the ready vehicle terminal device on the graphical user interface of the Web front-end module, generates an API request based on the connection operation, and sends it to the application server module. The API request includes: the user's identity and the vehicle terminal module's identifier.
[0166] Optionally, once the vehicle terminal module is ready, the user selects a connection operation via a button on the graphical interface provided by the web front-end module. The web front-end module generates a corresponding API request based on the user's button interaction. The API request includes the user's identity identifier and the vehicle terminal module's identifier. The API request informs the vehicle terminal module that the connected platform currently wishes to perform remote debugging with it.
[0167] S702 The application server module verifies user permissions based on API requests, and after successful verification, sends an SSH connection request to the intranet penetration module according to the port mapping information. The intranet penetration module then sends the SSH connection request to the vehicle terminal module.
[0168] Optionally, the application server module verifies whether the user has access and control permissions to the specified vehicle terminal module based on the received API request. After determining that the user has user permissions to the specified vehicle terminal module, it sends an SSH connection request to the intranet penetration module according to the public IP address and port number indicated by the port mapping information corresponding to the vehicle terminal module. The intranet penetration module forwards the SSH request to the corresponding vehicle terminal module.
[0169] The SSH connection request is used to inform the vehicle terminal module that the connected platform wants to establish an SSH communication connection with the vehicle terminal module.
[0170] S703: The vehicle terminal module performs SSH authentication on the SSH connection request based on the first temporary key in the IP information. After successful authentication, it sends SSH response information back to the application server module via the intranet penetration module, and establishes an SSH encrypted channel between the application server module and the vehicle terminal module.
[0171] Optionally, the vehicle terminal module uses the first temporary key in the public IP information allocated by the intranet penetration module to verify the SSH connection request sent by the network platform. After successful verification, the intranet penetration module sends SSH response information back to the application server module, and the application server module and the vehicle terminal module successfully establish an SSH encrypted channel.
[0172] The SSH response information is used to inform the network platform that the vehicle terminal module has successfully established an SSH communication connection with the application server module.
[0173] S704. The application server module sends an SSH connection success notification to the web front-end module, and a WebSocket encrypted channel is established between the web front-end module and the application server module.
[0174] Optionally, after the application server module and the vehicle terminal module successfully establish an SSH communication connection, the application server module sends an SSH connection success notification to the web front-end module to inform the web front-end module that the application server module and the vehicle terminal module can now communicate via SSH. Based on this, the web front-end module establishes a WebSocket encrypted channel with the application server module.
[0175] The S705 and Web front-end modules obtain user-inputted debugging commands and send them to the vehicle terminal module via the WebSocket encrypted channel and the SSH encrypted channel.
[0176] Optionally, the user inputs debugging commands for the vehicle terminal module in the Web front-end module. The Web front-end module sends the debugging commands to the vehicle terminal module via the WebSocket encrypted channel and the SSH encrypted channel. At the same time, it also receives debugging status data fed back by the vehicle terminal module via the WebSocket encrypted channel and the SSH encrypted channel.
[0177] In this embodiment, remote debugging between the user and the vehicle terminal is achieved by establishing an SSH encrypted channel and a WebSocket encrypted channel. The SSH encrypted channel provides highly secure command-line access for executing low-level debugging commands, ensuring the confidentiality and integrity of data transmission. A WebSocket encrypted channel is established between the web front-end module and the application server module, allowing user input in the browser to be instantly transmitted to the back-end, and debugging results to be displayed on the user's front-end interface in real time, providing a smooth interactive experience. Therefore, the remote debugging channel combining the SSH and WebSocket encrypted channels ensures system security, achieves good human-computer interaction, and balances user experience with remote debugging functionality.
[0178] In one alternative implementation, see [link to implementation details]. Figure 8 The process of establishing a remote debugging channel in the vehicle terminal remote debugging system 10 provided in this application embodiment is as follows: 1. The user initiates an SSH connection request to the Web front-end module; 2. The Web front-end module forwards the received SSH connection request to the application server module; 3. The application server module synchronously sends a connection command to the message communication hub; 4. The message communication hub establishes a TCP tunnel with the intranet penetration module; 5. The intranet penetration module begins to connect to the vehicle terminal module; 6. After the vehicle terminal module establishes a connection with the intranet penetration module, it sends a connection confirmation signal to the intranet penetration module; 7. The intranet penetration module sends a signal indicating successful tunnel establishment to the message communication hub; 8. The message communication hub sends a connection status feedback to the application server module; 9. The application server module establishes a WebSocket connection with the Web front-end module based on the connection status feedback information; 10. The Web front-end module displays the vehicle terminal debugging interface to the user.
[0179] In one alternative implementation, see [link to implementation details]. Figure 9 The vehicle terminal remote debugging system 10 provided in this application embodiment also includes: an intelligent security audit module 105, which is communicatively connected to the network platform 101 and is used to monitor the user's operation instructions, login behavior and session logs in real time, generate corresponding audit logs based on the operation instructions, login behavior and session logs, and issue an alarm when the operation instructions are abnormal.
[0180] Optionally, the intelligent safety audit module 105 monitors user input commands, user login behavior, and user debugging operation logs on the connected platform in real time, and generates unalterable audit logs based on the monitored information to record each remote debugging operation by the user. Simultaneously, it can also interrupt the remote debugging channel between the connected platform and the vehicle interrupt module when the user inputs an abnormal command, and send an alarm to the connected platform to inform the user to pause the current debugging operation.
[0181] In this embodiment, an intelligent security audit module is introduced into the vehicle-mounted terminal remote debugging system. This module provides post-event traceability and real-time monitoring capabilities for the remote debugging process. The intelligent security audit module can completely record all remote operation logs, meeting enterprise audit requirements. Furthermore, by monitoring and analyzing operational behavior, the intelligent security audit module can issue alarms or even interrupt the session upon detecting abnormal commands, effectively preventing serious consequences caused by user misoperation or malicious attacks, thereby significantly improving system security.
[0182] In one alternative implementation, see [link to implementation details]. Figure 11After completing the remote debugging of the vehicle terminal, the vehicle terminal remote debugging system provided in this application also needs to notify the vehicle terminal module to close the remote connection service to prevent attacks from intruders. The specific implementation method is the same as the above communication interaction process, and will not be described in detail here.
[0183] In one alternative implementation, see [link to implementation details]. Figure 12 In the vehicle terminal remote debugging system provided in this application embodiment, the Web front-end module provides core services such as SSH connection, device management, and FRP configuration. The application server provides core services such as SSH proxy service, WebSocket communication service, and session management. The public network server provides core services such as intranet penetration, port mapping, and load balancing. The client network platform of the vehicle terminal remote debugging system establishes remote communication with the vehicle terminal module located in the intranet through the application server and the public network server to realize remote debugging of the vehicle terminal module.
[0184] In an optional implementation, this application also provides a remote debugging method for an in-vehicle terminal, which is applied to the aforementioned remote debugging system 10 for an in-vehicle terminal. The method includes:
[0185] The network platform obtains the connection request input by the user and sends a start command to the vehicle terminal module through the message communication center. The start command is used to request the start of the remote connection service.
[0186] The vehicle terminal module verifies whether the startup command is valid. If it is, it starts the reverse proxy client and registers the reverse proxy with the reverse proxy server in the intranet penetration module to obtain the IP information of the vehicle terminal module and the reverse proxy registration result. The IP information includes: the first temporary password and port mapping information.
[0187] The vehicle terminal module returns response information to the network platform via the message communication center. The response information includes: reverse proxy registration result, port mapping information, and hash value of the first temporary password.
[0188] The connected platform verifies the authenticity of the response information based on a pre-set password book to determine whether the vehicle terminal module is in a ready state. If so, it establishes a remote debugging channel through the intranet penetration module and the message communication hub, and sends debugging instructions to the vehicle terminal module through the remote debugging channel so that the vehicle terminal module can debug according to the debugging instructions.
[0189] Optionally, the above-mentioned operation of "the network platform obtaining the connection request input by the user" can be specifically as follows: the web front-end module receives the connection information input by the user on the graphical user interface of the web front-end module, and generates a connection request based on the connection information; the web front-end module sends the connection request to the application server module.
[0190] Optionally, the operation of "sending a start command to the vehicle terminal module via the message communication hub" can be specifically as follows: the application server module constructs a start command based on the connection request and publishes the start command to the corresponding topic based on a preset communication protocol. The start command includes: the user's identity identifier, the vehicle terminal module's identifier, a timestamp, and a digital signature; the message communication hub receives and verifies the topic to determine the vehicle terminal module corresponding to the topic, and forwards the start command contained in the topic to the vehicle terminal module based on the long connection between the vehicle terminal module and the message communication hub.
[0191] Optionally, the above-mentioned operation of "verifying whether the received start command is valid" can specifically be as follows: obtaining the user's identity identifier, timestamp, and digital signature from the start command; verifying whether the user's identity identifier is valid; if so, verifying whether the digital signature is valid; if so, verifying whether the timestamp is within a preset valid window; if so, determining that the start command is valid.
[0192] Optionally, the operation of "starting the reverse proxy client and registering with the reverse proxy server in the intranet penetration module to obtain the IP information and reverse proxy registration result corresponding to the vehicle terminal module" can be specifically as follows: the vehicle terminal module sends a registration request to the intranet penetration module, the registration request including: device identifier, device certificate, timestamp and digital signature; the intranet penetration module verifies whether the registration request is valid; if so, it assigns the corresponding IP information to the vehicle terminal module and feeds back the reverse proxy registration result to the vehicle terminal module.
[0193] Optionally, the above-mentioned operation of "verifying whether the received start command is valid" can specifically be: verifying whether the device certificate is valid; if so, verifying whether the digital signature is valid; if so, verifying whether the timestamp is within a preset valid window; if so, determining that the registration request is valid.
[0194] Optionally, the operations preceding the above-mentioned "starting the reverse proxy client and registering with the reverse proxy server in the intranet penetration module to obtain the IP information corresponding to the vehicle terminal module and the reverse proxy registration result" further include: the network platform generating a corresponding second temporary password for the current remote connection session between the network platform and the vehicle terminal module, and calculating the hash value of the second temporary password as the expected hash value corresponding to the current remote connection session; the network platform determining the identifier of the vehicle terminal module based on the connection request input by the user, and storing the identifier of the vehicle terminal module and the expected hash value corresponding to the current remote connection session in a preset password book.
[0195] Optionally, the specific operation of "the connected platform verifies the authenticity of the response information based on a pre-set password book to determine whether the vehicle terminal module is in a ready state" includes: the connected platform determines whether the vehicle terminal module has been successfully registered based on the registration result; if so, the connected platform searches for the corresponding vehicle terminal module identifier and the expected hash value associated with the vehicle terminal module identifier in the pre-set password book based on the registered device identifier, and verifies whether the hash value of the first temporary password in the response information is correct based on the expected hash value; if so, the vehicle terminal module is determined to be in a ready state.
[0196] Optionally, the operation described above, "the network platform establishes a remote debugging channel with the vehicle terminal module via the intranet penetration module and the message communication hub, and sends debugging commands to the vehicle terminal module through the remote debugging channel," can specifically be as follows: The web front-end module obtains the user's connection operation to the ready vehicle terminal device on the graphical user interface of the web front-end module, generates an API request based on the connection operation, and sends it to the application server module. The API request includes: the user's identity identifier and the identifier of the vehicle terminal module; the application server module verifies the user's permissions based on the API request, and after successful verification, sends an SSH connection request to the intranet penetration module based on the port mapping information. An SSH connection request is sent to the vehicle terminal module. The vehicle terminal module performs SSH authentication on the SSH connection request based on the first temporary key in the IP information. After successful authentication, it sends an SSH response to the application server module via the intranet penetration module, establishing an encrypted SSH channel between the application server module and the vehicle terminal module. The application server module sends an SSH connection success notification to the web front-end module, establishing an encrypted WebSocket channel between the web front-end module and the application server module. The web front-end module obtains the debugging commands input by the user and sends the debugging commands to the vehicle terminal module via the encrypted WebSocket channel and the encrypted SSH channel.
[0197] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
[0198] The above description is merely a preferred embodiment of this application and is not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A vehicle-mounted terminal remote debugging system, characterized in that, The vehicle-mounted terminal remote debugging system includes: a network platform, a message communication hub, an intranet penetration module, and a vehicle-mounted terminal module. The network platform includes: a web front-end module and an application server module. The vehicle-mounted terminal module is deployed in the vehicle. The intranet penetration module and the message communication hub are both deployed on a public network server. The network platform establishes communication with the vehicle-mounted terminal module through the message communication hub and the intranet penetration module. The network platform obtains the connection request input by the user and sends a start command to the vehicle terminal module via the message communication center. The start command is used to request the start of the remote connection service. The vehicle terminal module verifies whether the startup command is valid. If it is, it starts the reverse proxy client and registers the reverse proxy with the reverse proxy server in the intranet penetration module to obtain the IP information corresponding to the vehicle terminal module and the reverse proxy registration result. The IP information includes: a first temporary password and port mapping information. The vehicle terminal module returns response information to the network platform via the message communication center. The response information includes: the reverse proxy registration result, the port mapping information, and the hash value of the first temporary password. The network platform verifies the authenticity of the response information based on a pre-set password book to determine whether the vehicle terminal module is in a ready state. If so, it establishes a remote debugging channel with the vehicle terminal module through the intranet penetration module and the message communication hub, and sends debugging instructions to the vehicle terminal module through the remote debugging channel so that the vehicle terminal module can debug according to the debugging instructions. The remote debugging channel includes an SSH encrypted channel and a WebSocket encrypted channel. The network platform establishes a remote debugging channel with the vehicle terminal module via the intranet penetration module and the message communication hub, and sends debugging commands to the vehicle terminal module through the remote debugging channel, including: The Web front-end module obtains the user's connection operation to the ready vehicle terminal device on the graphical user interface of the Web front-end module, generates an API request based on the connection operation, and sends it to the application server module. The API request includes: the user's identity identifier and the identifier of the vehicle terminal module. The application server module verifies user permissions based on the API request, and after successful verification, sends an SSH connection request to the intranet penetration module according to the port mapping information. The intranet penetration module then sends the SSH connection request to the vehicle terminal module. The vehicle terminal module performs SSH authentication on the SSH connection request based on the first temporary key in the IP information, and after successful authentication, sends SSH response information back to the application server module via the intranet penetration module, thereby establishing an SSH encrypted channel between the application server module and the vehicle terminal module. The application server module sends an SSH connection success notification to the web front-end module, and a WebSocket encrypted channel is established between the web front-end module and the application server module; The web front-end module obtains the debugging instructions input by the user and sends the debugging instructions to the vehicle terminal module through the WebSocket encrypted channel and the SSH encrypted channel.
2. The vehicle-mounted terminal remote debugging system according to claim 1, characterized in that, The web front-end module is deployed on the terminal device, the application server module is deployed on the application server, and the network platform obtains the connection request input by the user, including: The Web front-end module receives connection information input by the user on the graphical user interface of the Web front-end module, and generates the connection request based on the connection information; The web front-end module sends the connection request to the application server module.
3. The vehicle-mounted terminal remote debugging system according to claim 2, characterized in that, The connected platform sends a start command to the vehicle terminal module via the message communication center, including: The application server module constructs a startup command based on the connection request and publishes the startup command to the corresponding topic based on a preset communication protocol. The startup command includes: the user's identity identifier, the identifier of the vehicle terminal module, a timestamp, and a digital signature. The message communication hub receives and verifies the topic to determine the vehicle terminal module corresponding to the topic, and forwards the start command contained in the topic to the vehicle terminal module based on the long connection between the vehicle terminal module and the message communication hub.
4. The vehicle-mounted terminal remote debugging system according to claim 3, characterized in that, The vehicle-mounted terminal module verifies the validity of the received start command, including: Obtain the user's identity, timestamp, and digital signature from the startup command; Verify whether the user's identity is valid; If so, verify whether the digital signature is valid; If so, verify whether the timestamp is within a preset valid window; If so, then the startup command is deemed valid.
5. The vehicle-mounted terminal remote debugging system according to claim 1, characterized in that, The process of launching the reverse proxy client and registering with the reverse proxy server in the intranet penetration module to obtain the IP information and reverse proxy registration result corresponding to the vehicle terminal module includes: The vehicle terminal module sends a registration request to the intranet penetration module. The registration request includes: device identifier, device certificate, timestamp, and digital signature. The intranet penetration module verifies whether the registration request is valid; If so, then the corresponding IP information is assigned to the vehicle terminal module, and the reverse proxy registration result is fed back to the vehicle terminal module.
6. The vehicle-mounted terminal remote debugging system according to claim 5, characterized in that, The intranet penetration module verifies the validity of the registration request, including: Verify that the device certificate is valid; If so, verify whether the digital signature is valid; If so, verify whether the timestamp is within a preset valid window; If so, then the registration request is deemed valid.
7. The vehicle-mounted terminal remote debugging system according to claim 1, characterized in that, Before starting the reverse proxy client and registering with the reverse proxy server in the intranet penetration module to obtain the IP information corresponding to the vehicle terminal module and the reverse proxy registration result, the process also includes: The connected platform generates a corresponding second temporary password for the current remote connection session between the connected platform and the vehicle terminal module, and calculates the hash value of the second temporary password as the expected hash value corresponding to the current remote connection session. The connected platform determines the identifier of the vehicle terminal module based on the connection request input by the user, and stores the identifier of the vehicle terminal module and the expected hash value corresponding to the current remote connection session in a preset password book.
8. The vehicle-mounted terminal remote debugging system according to claim 7, characterized in that, The reverse proxy registration result includes: the registered device identifier and the registration result. The network platform verifies the authenticity of the response information based on a pre-set password book to determine whether the vehicle terminal module is in a ready state, including: The network platform determines whether the vehicle terminal module has been successfully registered based on the registration result; If so, the network platform searches for the corresponding vehicle terminal module identifier and the expected hash value associated with the vehicle terminal module identifier in the preset password book according to the registered device identifier, and verifies whether the hash value of the first temporary password in the response information is correct according to the expected hash value. If so, then the vehicle terminal module is determined to be in a ready state.
9. The vehicle-mounted terminal remote debugging system according to claim 1, characterized in that, The vehicle-mounted terminal remote debugging system also includes an intelligent security audit module, which is communicatively connected to the network platform and is used to monitor the user's operation instructions, login behavior and session logs in real time, generate corresponding audit logs based on the operation instructions, login behavior and session logs, and issue an alarm when the operation instructions are abnormal.
10. A method for remote debugging of a vehicle-mounted terminal, characterized in that, The method is applied to the vehicle-mounted terminal remote debugging system according to any one of claims 1-9, and the method includes: The network platform obtains the connection request input by the user and sends a start command to the vehicle terminal module via the message communication center. The start command is used to request the start of the remote connection service. The vehicle terminal module verifies whether the startup command is valid. If it is, it starts the reverse proxy client and registers the reverse proxy with the reverse proxy server in the intranet penetration module to obtain the IP information corresponding to the vehicle terminal module and the reverse proxy registration result. The IP information includes: a first temporary password and port mapping information. The vehicle terminal module returns response information to the network platform via the message communication center. The response information includes: the reverse proxy registration result, the port mapping information, and the hash value of the first temporary password. The network platform verifies the authenticity of the response information based on a pre-set password book to determine whether the vehicle terminal module is in a ready state. If so, a remote debugging channel is established through the intranet penetration module and the message communication hub, and debugging instructions are sent to the vehicle terminal module through the remote debugging channel so that the vehicle terminal module can perform debugging according to the debugging instructions.
Citation Information
Patent Citations
Vehicle remote diagnosis and debugging method and system
CN117826760A
Vehicle-mounted data automatic testing device and method
CN118784541A
Cited By
A secure remote control method and device for an intranet cluster device
CN122533870A