Vehicle data packet processing method and device and storage medium

By decoding and parsing vehicle data packets using preset encryption methods and preset password files to generate target data packets, the problems of low security and high cost in existing technologies are solved, and efficient and secure data transmission is achieved.

CN115913604BActive Publication Date: 2026-06-05ZHEJIANG ZEEKR INTELLIGENT TECH CO LTD +1

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
ZHEJIANG ZEEKR INTELLIGENT TECH CO LTD
Filing Date
2022-08-24
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

Existing vehicle data packet encryption methods have low security and high transmission costs. Furthermore, intelligent vehicles generate massive amounts of data, occupying significant storage space and impacting data processing speed.

Method used

Vehicle data packets are decoded using a preset encryption method. The decoded data packets are then parsed using a preset password file to generate target data packets, including the correspondence between device names and device data. Data security is ensured through legality and integrity checks.

Benefits of technology

It improves the security and efficiency of data transmission, reduces transmission costs, and ensures the integrity and security of data even if attackers break the first layer of encryption.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115913604B_ABST
    Figure CN115913604B_ABST
Patent Text Reader

Abstract

The present disclosure relates to a vehicle data packet processing method, device and storage medium. The vehicle data packet processing method comprises: obtaining first packet data sent by a vehicle, the first packet data being packet data processed based on a preset encryption mode; decoding the first packet data based on the preset encryption mode to obtain second packet data, the second packet data comprising device data collected by a plurality of target devices and a flag bit, the flag bit representing whether the device data is empty; and performing device data analysis on the second packet data based on a preset password file to obtain target packet data, the target packet data comprising a correspondence between a device name of the target device and the device data. The present disclosure parses the packet sent by the vehicle through the preset password book, reduces the space occupied by the packet, and ensures the security of the packet.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of data processing technology, and in particular to methods, apparatus and storage media for processing vehicle data messages. Background Technology

[0002] With the development of intelligent new energy vehicles, there is a need to collect vehicle data and conduct big data analysis to upgrade the overall intelligence level of the vehicle. However, the rapid development of the Internet has brought many challenges to data transmission security. Furthermore, the data generated by the onboard sensors of intelligent vehicles is enormous, occupying a large amount of storage space and affecting data processing speed. Existing onboard data packet encryption methods have low security and high transmission costs. Summary of the Invention

[0003] To address at least one of the aforementioned technical problems, this disclosure provides a method, apparatus, storage medium, and electronic device for processing vehicle data messages.

[0004] According to one aspect of this disclosure, a vehicle data message processing method is provided, comprising:

[0005] Obtain the first message data sent by the vehicle, wherein the first message data is message data encrypted based on a preset encryption method;

[0006] The first message data is decoded based on the preset encryption method to obtain the second message data. The second message data includes device data collected by multiple target devices and a flag bit, wherein the flag bit indicates whether the device data is empty.

[0007] Based on the preset password file, the second message data is parsed to obtain target message data, which includes the correspondence between the device name of the target device and the device data.

[0008] In some possible implementations, the second message data is parsed using a preset password file to obtain the target message data, including:

[0009] Identify each segment to be parsed from the second message data;

[0010] Each segment to be parsed is segmented based on a preset delimiter to obtain a device data group corresponding to each type of target device in each segment to be parsed. The device data group includes at least one device data and a flag bit corresponding to the device data.

[0011] The parsing code segment corresponding to each device data group is determined from the preset password file, and the parsing code segment includes the device name group;

[0012] Based on the device name group, determine the device name that matches each device data in each device data group;

[0013] Based on each device data group and the matched device name, a target data group corresponding to each type of target device is generated, and the target message data is obtained.

[0014] In some possible implementations, the parsing code segment further includes a loop identifier, wherein determining the device name that matches each piece of device data in each device data group based on the device name group includes:

[0015] When the cycle identifier indicates that the cycle is not cyclic, the device data in the device data group and the device names in the device name group are matched one by one to obtain the device name corresponding to each device data. The device data in the device data group and the device names in the device name group correspond one-to-one.

[0016] In some possible implementations, the method further includes:

[0017] When the loop identifier indicates a loop, the device data in the device data group is sequentially matched with the device names in the device name group in a loop until all device data in the device data group has been matched to obtain the device name corresponding to each device data.

[0018] In some possible implementations, determining the device name that matches each piece of device data in each device data group based on the device name group includes:

[0019] During the device data group matching process, if the flag bit of the current device data indicates that the device data is empty, the current device data is marked based on the preset empty value identifier.

[0020] In some possible implementations, the second message data further includes a checksum. Before parsing the second message data based on the preset password file to obtain the target message data, the following steps are also included:

[0021] The validity of the second message data is verified based on the preset delimiter and the number of parsed code segments in the preset password file, and the validity verification result is obtained.

[0022] If the legality verification result is successful, the verification code is subjected to integrity verification processing to obtain the integrity verification result of the second message data;

[0023] The step of triggering device data parsing of the second message data based on the integrity verification result to obtain the target message data is based on the preset password file.

[0024] In some possible implementations, the second message data further includes the number of message fields, and the step of triggering device data parsing of the second message data based on the preset password file based on the integrity verification result to obtain the target message data includes:

[0025] If the integrity verification result is successful, the preset password file and the second message data are matched based on the number of message fields and the number of device names in the preset password file to obtain a matching result;

[0026] If the matching result is a match, the step of parsing the second message data based on the preset password file to obtain the target message data is triggered.

[0027] In some possible implementations, the method further includes:

[0028] If the validity verification result is a failure, an error message is sent to the vehicle to notify the vehicle that the on-board equipment corresponding to the error message has malfunctioned.

[0029] According to a second aspect of this disclosure, a vehicle data packet processing apparatus is provided, the apparatus comprising:

[0030] The first message data acquisition module is used to acquire the first message data sent by the vehicle. The first message data is message data encrypted based on a preset encryption method.

[0031] The second message data acquisition module is used to decode the first message data based on the preset encryption method to obtain the second message data. The second message data includes device data collected by multiple target devices and a flag bit, wherein the flag bit indicates whether the device data is empty.

[0032] The target message data determination module is used to parse the second message data based on a preset password file to obtain target message data, wherein the target message data includes the correspondence between the device name of the target device and the device data.

[0033] According to a third aspect of this disclosure, an electronic device is provided, including at least one processor and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the at least one processor implements the vehicle data packet processing method as described in any one of the first aspects by executing the instructions stored in the memory.

[0034] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure.

[0035] Implementing this disclosure will have the following beneficial effects:

[0036] The message data sent by the vehicle is decoded based on a preset encryption method. The message is parsed for the first time using this preset encryption method to ensure data security. The message data is represented only using device data and flag bits, simplifying the transmitted data, improving transmission efficiency, and saving transmission costs. Based on the preset cryptographic file, the decoded message data is parsed to obtain the correspondence between the target device's device name and the device data. The complete message requires a second parsing based on the preset cryptographic file, making the transmitted data packets more secure. Even if an attacker breaks the first layer of encryption, without the server-side cryptographic file for comparison, the true correspondence between the device and its data cannot be obtained.

[0037] Other features and aspects of this disclosure will become clear from the following detailed description of exemplary embodiments with reference to the accompanying drawings. Attached Figure Description

[0038] To more clearly illustrate the technical solutions and advantages in the embodiments or prior art of this specification, the drawings used in the description of the embodiments or prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this specification. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0039] Figure 1 A flowchart illustrating a vehicle data packet processing method according to an embodiment of the present disclosure is shown.

[0040] Figure 2 A flowchart illustrating a method for matching a second preset message and a preset password file according to an embodiment of this disclosure is shown.

[0041] Figure 3 A flowchart illustrating the legality verification method and the integrity verification method according to embodiments of this disclosure is shown.

[0042] Figure 4 A flowchart illustrating a method for matching a second preset message and a preset password file according to an embodiment of this disclosure is shown.

[0043] Figure 5 A schematic diagram of the structure of a vehicle data packet processing apparatus according to an embodiment of the present disclosure is shown.

[0044] Figure 6A block diagram of an electronic device according to an embodiment of the present disclosure is shown;

[0045] Figure 7 A block diagram of another electronic device according to an embodiment of the present disclosure is shown. Detailed Implementation

[0046] The technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this specification, and not all embodiments. Based on the embodiments in this specification, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this invention.

[0047] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or server that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or devices.

[0048] Various exemplary embodiments, features, and aspects of this disclosure will now be described in detail with reference to the accompanying drawings. The same reference numerals in the drawings denote elements that have the same or similar functions. Although various aspects of the embodiments are shown in the drawings, they are not necessarily drawn to scale unless specifically indicated otherwise.

[0049] The term “exemplary” as used herein means “serving as an example, embodiment, or illustration.” Any embodiment illustrated herein as “exemplary” is not necessarily to be construed as superior to or better than other embodiments.

[0050] In this document, the term "and / or" is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent three cases: A alone, A and B simultaneously, and B alone. Furthermore, the term "at least one" in this document means any combination of at least two of any one or more elements. For example, including at least one of A, B, and C can mean including any one or more elements selected from the set consisting of A, B, and C.

[0051] Furthermore, to better illustrate this disclosure, numerous specific details are set forth in the following detailed description. Those skilled in the art will understand that this disclosure can be practiced without certain specific details. In some instances, methods, means, components, and circuits well known to those skilled in the art have not been described in detail in order to highlight the main points of this disclosure.

[0052] Figure 1 This diagram illustrates a flowchart of a vehicle data packet processing method according to an embodiment of the present disclosure. Figure 1 As shown, the above method includes:

[0053] S101. Obtain the first message data sent by the vehicle. The first message data is message data encrypted based on a preset encryption method.

[0054] The vehicle's electronic control unit sends message data collected by sensors or on-board equipment to the Tri-State Content Addressable Memory (TCAM) for integration and processing. After encryption using a preset encryption method, the first message data is obtained and then sent to the server via the TCAM. For example, the preset encryption method can be an encryption method based on 64 printable characters to represent binary data (Base64). The server receives the first message data sent by the vehicle.

[0055] The server performs the first parsing of the messages sent by the vehicle using a preset encryption method to ensure the security of the message data.

[0056] S102. Decode the first message data based on a preset encryption method to obtain the second message data. The second message data includes device data collected by multiple target devices and a flag bit. The flag bit indicates whether the device data is empty.

[0057] After receiving the first message data sent by the vehicle, the server decrypts it using a preset encryption method to obtain the second message data. The second message data represents the specific message content through a combination of multiple device data and flag bits. However, the target device for collecting device data cannot be determined based solely on the second message data.

[0058] The structure of the second message data includes a message header and a message body. The message header includes the vehicle identification number (VIN), the message header timestamp (TIME), the number of message body fields (PORT), the message source type (ConfigID), and the message version number (Version). The message body includes the message body timestamp, the actual message content, and a checksum. For example, the checksum can be a Cyclic Redundancy Check (CRC). The actual message content includes a combination of device data and flag bits. The flag bits indicate whether the device data is empty. For example, the flag bits can be 0 or 1, where 0 indicates empty device data and 1 indicates not empty device data. For instance, if the actual message content is "0,1", the second 1 indicates that the device data is not empty, and the first 0 represents the device data. If the actual message content is "0,0", the second 0 indicates that the device data is empty, i.e., the device data does not exist, and the first 0 indicates that the device data is empty, not that the device data is the specific number "0".

[0059] The message data is represented only using device data and flag bits, simplifying the transmitted message data and improving transmission efficiency.

[0060] S103. Based on the preset password file, the second message data is parsed to obtain the target message data, which includes the correspondence between the device name and the device data of the target device.

[0061] The server determines the preset password file based on the message header in the second message data. The preset password file is set according to the vehicle's onboard sensor embedding information, and different preset password files correspond to different messages transmitted by the vehicle. Based on the preset password file and the second message data, the server determines the correspondence between the device name and the device data.

[0062] The server determines the preset password file based on the vehicle identification number, message source type, and message version number. The preset password file includes the device classification number. The device parses the second message data based on the preset password text to extract the target device name of the data collection device and obtain the target message data.

[0063] The server performs a second parsing of the message data based on a preset password file, which makes the message data more secure. Even if an attacker cracks the first parsing, without the password file specified by the server for comparison, it is still impossible to obtain the real correspondence between the device and the device data.

[0064] Please see Figure 2 In some embodiments, the second message data is parsed using a preset password file to obtain the target message data, including:

[0065] S1031. Identify each segment to be parsed from the second message data;

[0066] S1032. Based on the preset delimiter, each segment to be parsed is segmented into data to obtain the device data group corresponding to each type of target device in each segment to be parsed.

[0067] The device data set includes at least one device data and a corresponding flag bit for the device data;

[0068] S1033. Determine the parsing code segment corresponding to each device data group from the preset password file. The parsing code segment includes the device name group.

[0069] S1034. Determine the device name that matches each device data in each device data group according to the device name group;

[0070] S1035. Generate the target data group corresponding to each type of target device based on each device data group and the matched device name, and obtain the target message data.

[0071] The preset password file includes device classification information and device names. The second message data includes a preset separator. The server determines the device name corresponding to each type of target device in the preset password file based on the device classification information, and determines the device data corresponding to each type of target device in the second message data based on the preset separator. The server matches the device name corresponding to each type of target device in the preset password file with the device data in the second message data to obtain the final target message data.

[0072] Specifically, the message body of the second message data includes at least one combination of message body timestamp, specific message content, and checksum. The server identifies the specific message content corresponding to the message body timestamp and checksum based on the message body timestamp and checksum, and uses it as the message segment to be parsed. Each message segment to be parsed in the second message data is determined. The message segment to be parsed includes at least one combination of device data and flag bits. For example, the message segment to be parsed is "0,1; 0,0, 2,1,1,1,5,1, 1,1, 0,0,8,1,6,1;", where every two numbers form a set of device data and the corresponding flag bits. The first number combination of the message segment to be parsed is "0,1", the second number 1 indicates that the device data is not empty, and the first number indicates that the value of the device data is 1.

[0073] The specific message content of the second message also includes a preset delimiter. For example, the preset delimiter can be a semicolon ";". The server divides each message segment to be parsed into device data groups based on the preset delimiter, corresponding to each type of target device. For example, if the message segment to be parsed is "0,1;0,0,2,1,1,1,5,1,1,1,0,0,8,1,6,1;", and the preset delimiter is a semicolon ";", the message segment to be parsed is divided into device data groups based on the preset delimiter, resulting in "0,1" and "0,0,2,1,1,1,5,1,1,1,0,0,8,1,6,1".

[0074] The preset password file includes at least one code parsing segment. The code parsing segment includes device classification information and device name group. The server sequentially determines the code parsing segment corresponding to the segment to be parsed, determines the device name group corresponding to the device data group, and matches the device data group in each segment to be parsed with the device name group in the corresponding parsing code segment to obtain the target segment data. The target segment data includes the correspondence between device name and device data.

[0075] The server uses a pre-set password file to compare and parse the second message data, generating visualized data for enhanced security. Even if the pre-set encryption method is cracked, the data cannot be deciphered without the server's password book for comparison. The parsing rules are handed over to the message receiving server for parsing, preventing data leakage.

[0076] In some embodiments, the parsing segment further includes a loop identifier to determine the device name that matches each piece of device data in each device data group, including:

[0077] S10341. When the cyclic identifier indicates that the cyclic is not cyclic, the device data in the device data group and the device name in the device name group are matched one by one in sequence to obtain the device name corresponding to each device data.

[0078] The device data in the device data group corresponds one-to-one with the device names in the device name group.

[0079] The code parsing segment of the preset password file also includes a loop flag (loopFlag), which indicates whether the target device corresponding to the device name group in the parsing code segment needs to be parsed cyclically. For example, the loop flag can be "true", i.e., "loopFlag": true, indicating that the device name group needs to be parsed cyclically, and the loop flag can be "false", i.e., "loopFlag: false", indicating that the device name group does not need to be parsed cyclically.

[0080] When the cycle flag indicates no cycle, the number of device data items in the device data group is the same as the number of device names in the corresponding device name group. The server sequentially matches the device data items in the device data group with the device names in the corresponding device name group one by one. For example, when the cycle flag is no cycle, the number of device data items in the device data group is 4, the device data group is "0,1,2,1,1,1,5,1", and the number of device names in the corresponding device name group is also 4. The code "hvBattCellUInfo_msgPackIdx,hvBattCellUInfo_msgPackIdxTotNr,hvBattCellUInfo_cellUNr,hvBattCellUInfo_cellU" performs a one-to-one match between the device data group and the device name group, resulting in "hvBattCellUInfo_msgPackIdx: 0,hvBattCellUInfo_msgPackIdxTotNr: 2,hvBattCellUInfo_cellUNr: 1,hvBattCellUInfo_cellU: 5".

[0081] In some embodiments, the method further includes:

[0082] S10343. In the case of a loop identifier indicating a loop, the device data in the device data group and the device name in the device name group are matched sequentially in a loop until all device data in the matching device data group are traversed and the device name corresponding to each device data is obtained.

[0083] When the loop identifier of the preset password book indicates that the device name group needs to be parsed in a loop, the number of device data in the device data group is an integer multiple of the number of device names in the device name group corresponding to the device data group. The server sequentially matches the device data in the device data group with the device names in the device name group corresponding to the device data group in a loop until all the device data in the device data group matches the device names corresponding to the device data.

[0084] For example, when the loop identifier indicates a loop, the number of device data items in the device data group is 4, and the device data group is "0,1,2,1,1,1,5,1". The number of device names in the corresponding device name group is also 2. "hvBattCellUInfo_msgPackIdx,hvBattCellUInfo_msgPackIdxTotNr" will be matched sequentially with the device data group and the device name group to obtain "hvBattCellUInfo_msgPackIdx:0,hvBattCellUInfo_msgPackIdxTotNr:2,hvBattCellUInfo_msgPackIdx:1,hvBattCellUInfo_msgPackIdxTotNr:5,".

[0085] By refining the parsing rules of message data through cyclic identifiers, the parsing of message data becomes more secure.

[0086] In some embodiments, determining the device name that matches each piece of device data in each device data group based on the device name group includes:

[0087] S10346. During the device data group matching process, if the flag bit of the current device data indicates that the device data is empty, the current device data is marked based on the preset empty value identifier.

[0088] When the server matches the device data in the device data group with the device names in the corresponding device name group, if the flag bit of the device data indicates a null value, the device name corresponding to the device data is matched with the preset null value identifier. This is to indicate that the target device has not collected device data and the device data is empty.

[0089] For example, the preset null identifier can be "null", the device data group is "0,1,0,0", the second 0 in the second data group "0,0" indicates that the device data is empty, and the device name group corresponding to the device name group is "hvBattCellUInfo_msgPackIdx,hvBattCellUInfo_cellU". The device data of the device data group is matched with the device name group and the device name. Since the device data corresponding to the second device name is empty, the second device name "hvBattCellUInfo_cellU" matches null, that is, the device data corresponding to the second device name is set to the preset identifier "null".

[0090] By using flags to indicate whether the target device data exists, the amount of text occupied by the message data is greatly reduced, thus reducing the size of the message data and facilitating transmission.

[0091] Please see Figure 3 In some embodiments, the second message data further includes a checksum. Before performing device data parsing on the second message data based on a preset password file to obtain the target message data, the following steps are also included:

[0092] S201. Perform a validity check on the second message data based on the number of parsed code segments in the preset delimiter and preset password file, and obtain the validity check result;

[0093] S202. If the legality verification result is successful, perform integrity verification on the verification code to obtain the integrity verification result of the second message data.

[0094] S203, the step of triggering device data parsing of the second message data based on the integrity verification result and obtaining the target message data by using a preset password file.

[0095] The server segments each specific message content of the second message data based on a preset delimiter, obtaining segmented device data groups. It determines the number of device data groups in the second message data and the number of parsing code segments based on device classification information in a preset password file. The server then verifies the validity of the second message data based on the number of device data groups and the number of parsing code segments. If the number of device data groups and the number of parsing code segments are the same, the validity verification result is successful. At this point, the server performs an integrity verification on the second message data based on the checksum in the second message data. If the integrity verification result is unsuccessful, the server records the error information and stores it on disk. If the integrity verification result is successful, the server continues parsing the second message data. For example, the checksum can be a Cyclic Redundancy Check (CRC) checksum, using the principle of division and remainders for data error detection.

[0096] The second message data is first validated for legality and integrity using a pre-set password book. If the validation fails, message parsing is stopped, saving computational resources for parsing erroneous message data and ensuring the legality, integrity, and security of the message data parsing.

[0097] Please see Figure 4 In some embodiments, the second message data also includes the number of message fields. The step of triggering device data parsing of the second message data based on a preset password file based on the integrity verification result to obtain the target message data includes:

[0098] S2031. If the integrity verification result is successful, the preset password file and the second message data are matched based on the number of message fields and the number of device names in the preset password file to obtain the matching result.

[0099] S2032. If the matching result is a match, trigger the step of parsing the second message data based on the preset password file to obtain the target message data.

[0100] The second message data includes a header, which specifies the number of message fields. This number indicates the amount of device data within the second message data. The number of message fields is matched against the number of device names in a preset password file. If the number of message fields is not an integer multiple of the number of device names in the preset password file, the match fails, and the server records an error message and stores it on disk. If the number of message fields is an integer multiple of the number of device names in the preset password file, the match succeeds. In this case, the device data in the second message data is parsed based on the preset password file to obtain the target message data.

[0101] The server first matches the second message data with a preset password book. If the match fails, the message parsing stops, saving the computing power of parsing erroneous message data and ensuring the integrity and security of the message data.

[0102] In some embodiments, the method further includes:

[0103] If the validity verification fails, an error message is sent to the vehicle to notify the vehicle that the on-board equipment corresponding to the error message has malfunctioned.

[0104] If the number of device data groups and the number of parsed code segments in the second message data are different, it indicates that the second message data and the preset password book do not correspond. Therefore, the validity check of the second message data fails. In this case, the server analyzes the reason for the failure, obtains an error message, and sends the error message to the vehicle to notify the vehicle that the on-board equipment corresponding to the error message has malfunctioned. If the verification fails, further parsing of the second message data is stopped, saving computational resources spent on parsing erroneous message data.

[0105] Please see Figure 5 According to a second aspect of this disclosure, a vehicle data message processing apparatus is provided, the apparatus comprising:

[0106] The first message data acquisition module 10 is used to acquire the first message data sent by the vehicle. The first message data is message data encrypted based on a preset encryption method.

[0107] The second message data acquisition module 20 is used to decode the first message data based on a preset encryption method to obtain the second message data. The second message data includes device data collected by multiple target devices and a flag bit, where the flag bit indicates whether the device data is empty.

[0108] The target message data determination module 30 is used to parse the second message data based on a preset password file to obtain the target message data, which includes the correspondence between the device name of the target device and the device data.

[0109] In some embodiments, the functions or modules of the apparatus provided in this disclosure can be used to perform the methods described in the above method embodiments. The specific implementation can be referred to the description of the above method embodiments, and for the sake of brevity, it will not be repeated here.

[0110] This disclosure also proposes a computer-readable storage medium storing at least one instruction or at least one program segment, which, when loaded and executed by a processor, implements the aforementioned method. The computer-readable storage medium may be a non-volatile computer-readable storage medium.

[0111] This disclosure also proposes an electronic device, including: a processor; and a memory for storing processor-executable instructions; wherein the processor is configured for the method described above.

[0112] Electronic devices can be provided as terminals, servers, or other forms of devices.

[0113] Figure 6 This diagram illustrates a block diagram of an electronic device according to an embodiment of the present disclosure. For example, the electronic device 800 may be a mobile phone, computer, digital broadcasting terminal, messaging device, game console, tablet device, medical device, fitness equipment, personal digital assistant, or other terminal.

[0114] Reference Figure 6 The electronic device 800 may include one or more of the following components: a processing component 802, a memory 804, a power supply component 806, a multimedia component 808, an audio component 810, an input / output (I / O) interface 812, a sensor component 814, and a communication component 816.

[0115] Processing component 802 typically controls the overall operation of electronic device 800, such as operations associated with display, telephone calls, data communication, camera operation, and recording operations. Processing component 802 may include one or more processors 820 to execute instructions to complete all or part of the steps of the methods described above. Furthermore, processing component 802 may include one or more modules to facilitate interaction between processing component 802 and other components. For example, processing component 802 may include a multimedia module to facilitate interaction between multimedia component 808 and processing component 802.

[0116] Memory 804 is configured to store various types of data to support the operation of electronic device 800. Examples of this data include instructions for any application or method operating on electronic device 800, contact data, phonebook data, messages, pictures, videos, etc. Memory 804 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.

[0117] Power supply component 806 provides power to various components of electronic device 800. Power supply component 806 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to electronic device 800.

[0118] Multimedia component 808 includes a screen that provides an output interface between the aforementioned electronic device 800 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touchscreen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors may sense not only the boundaries of touch or swipe actions but also the duration and pressure associated with the touch or swipe operation. In some embodiments, multimedia component 808 includes a front-facing camera and / or a rear-facing camera. When the electronic device 800 is in an operating mode, such as a shooting mode or a video mode, the front-facing camera and / or the rear-facing camera may receive external multimedia data. Each front-facing camera and rear-facing camera may be a fixed optical lens system or have focal length and optical zoom capabilities.

[0119] Audio component 810 is configured to output and / or input audio signals. For example, audio component 810 includes a microphone (MIC) configured to receive external audio signals when electronic device 800 is in an operating mode, such as call mode, recording mode, and voice recognition mode. The received audio signals may be further stored in memory 804 or transmitted via communication component 816. In some embodiments, audio component 810 also includes a speaker for outputting audio signals.

[0120] I / O interface 812 provides an interface between processing component 802 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to, home buttons, volume buttons, power buttons, and lock buttons.

[0121] Sensor assembly 814 includes one or more sensors for providing state assessments of various aspects of electronic device 800. For example, sensor assembly 814 can detect the on / off state of electronic device 800, the relative positioning of components such as the display and keypad of electronic device 800, changes in position of electronic device 800 or a component of electronic device 800, the presence or absence of user contact with electronic device 800, orientation or acceleration / deceleration of electronic device 800, and temperature changes of electronic device 800. Sensor assembly 814 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. Sensor assembly 814 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, sensor assembly 814 may also include an accelerometer, gyroscope, magnetometer, pressure sensor, or temperature sensor.

[0122] Communication component 816 is configured to facilitate wired or wireless communication between electronic device 800 and other devices. Electronic device 800 can access wireless networks based on communication standards, such as WiFi, 2G, 3G, 4G, 5G, or combinations thereof. In one exemplary embodiment, communication component 816 receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, the aforementioned communication component 816 also includes a near-field communication (NFC) module to facilitate short-range communication. For example, the NFC module may be implemented based on radio frequency identification (RFID) technology, Infrared Data Association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.

[0123] In an exemplary embodiment, the electronic device 800 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the methods described above.

[0124] In an exemplary embodiment, a non-volatile computer-readable storage medium is also provided, such as a memory 804 including computer program instructions that can be executed by a processor 820 of an electronic device 800 to perform the above-described method.

[0125] Figure 7 A block diagram of another electronic device according to an embodiment of the present disclosure is shown. For example, electronic device 1900 may be provided as a server. (Refer to...) Figure 7 The electronic device 1900 includes a processing component 1922, which further includes one or more processors, and memory resources represented by memory 1932 for storing instructions, such as application programs, that can be executed by the processing component 1922. The application programs stored in memory 1932 may include one or more modules, each corresponding to a set of instructions. Furthermore, the processing component 1922 is configured to execute instructions to perform the methods described above.

[0126] Electronic device 1900 may also include a power supply component 1926 configured to perform power management of electronic device 1900, a wired or wireless network interface 1950 configured to connect electronic device 1900 to a network, and an input / output (I / O) interface 1958. Electronic device 1900 can operate on an operating system stored in memory 1932, such as Windows Server™, Mac OS X™, Unix™, Linux™, FreeBSD™, or similar.

[0127] In an exemplary embodiment, a non-volatile computer-readable storage medium is also provided, such as a memory 1932 including computer program instructions that can be executed by a processing component 1922 of an electronic device 1900 to perform the above-described method.

[0128] This disclosure can be a system, method, and / or computer program product. A computer program product may include a computer-readable storage medium having computer-readable program instructions loaded thereon for causing a processor to implement various aspects of this disclosure.

[0129] Computer-readable storage media can be tangible devices capable of holding and storing instructions for use by an instruction execution device. Computer-readable storage media can be, for example—but not limited to—electrical storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination thereof. More specific examples (a non-exhaustive list) of computer-readable storage media include: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disc read-only memory (CD-ROM), digital multifunction disc (DVD), memory sticks, floppy disks, mechanical encoding devices, such as punch cards or recessed protrusions storing instructions thereon, and any suitable combination thereof. The computer-readable storage media used herein are not to be construed as transient signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or electrical signals transmitted through wires.

[0130] The computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to the computer-readable storage media in the respective computing / processing device.

[0131] Computer program instructions used to perform the operations of this disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, status setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Smalltalk, C+, etc., and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The computer-readable program instructions may execute entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuitry, such as programmable logic circuitry, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), is personalized by utilizing the status information of the computer-readable program instructions to implement various aspects of this disclosure.

[0132] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.

[0133] These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processor of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner; thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0134] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

[0135] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction, which includes one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions specified in the blocks may occur in a different order than those specified in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.

[0136] The various embodiments of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or technical improvements to the embodiments in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.

Claims

1. A method for processing vehicle data packets, characterized in that, The method includes: Obtain the first message data sent by the vehicle, wherein the first message data is message data encrypted based on a preset encryption method; The first message data is decoded based on the preset encryption method to obtain the second message data. The second message data includes device data collected by multiple target devices and a flag bit, wherein the flag bit indicates whether the device data is empty. The second message data is parsed based on a preset password file to obtain target message data. The preset password file is obtained based on the vehicle identification number, message source type and message version number. The target message data includes the correspondence between the device name of the target device and the device data. The step of parsing the second message data based on a preset password file to obtain the target message data includes: Identify each segment to be parsed from the second message data; Each segment to be parsed is segmented based on a preset delimiter to obtain a device data group corresponding to each type of target device in each segment to be parsed. The device data group includes at least one device data and a flag bit corresponding to the device data. The parsing code segment corresponding to each device data group is determined from the preset password file, and the parsing code segment includes the device name group; Based on the device name group, determine the device name that matches each device data in each device data group; Based on each device data group and the matched device name, a target data group corresponding to each type of target device is generated, and the target message data is obtained.

2. The method according to claim 1, characterized in that, The parsing code segment also includes a loop identifier, and the step of determining the device name that matches each device data in each device data group based on the device name group includes: When the cycle identifier indicates that the cycle is not cyclic, the device data in the device data group and the device names in the device name group are matched one by one to obtain the device name corresponding to each device data. The device data in the device data group and the device names in the device name group correspond one-to-one.

3. The method according to claim 2, characterized in that, The method further includes: When the loop identifier indicates a loop, the device data in the device data group is sequentially matched with the device names in the device name group in a loop until all device data in the device data group has been matched to obtain the device name corresponding to each device data.

4. The method according to claim 1, characterized in that, The step of determining the device name that matches each piece of device data in each device data group based on the device name group includes: During the device data group matching process, if the flag bit of the current device data indicates that the device data is empty, the current device data is marked based on the preset empty value identifier.

5. The method according to claim 1, characterized in that, The second message data also includes a checksum. Before parsing the second message data based on the preset password file to obtain the target message data, the process further includes: The validity of the second message data is verified based on the preset delimiter and the number of parsed code segments in the preset password file, and the validity verification result is obtained. If the legality verification result is successful, the verification code is subjected to integrity verification processing to obtain the integrity verification result of the second message data; The step of triggering device data parsing of the second message data based on the integrity verification result to obtain the target message data is based on the preset password file.

6. The method according to claim 5, characterized in that, The second message data also includes the number of message fields. The step of triggering device data parsing of the second message data based on the preset password file based on the integrity verification result to obtain the target message data includes: If the integrity verification result is successful, the preset password file and the second message data are matched based on the number of message fields and the number of device names in the preset password file to obtain a matching result; If the matching result is a match, the step of parsing the second message data based on the preset password file to obtain the target message data is triggered.

7. The method according to claim 5, characterized in that, The method further includes: If the validity verification result is a failure, an error message is sent to the vehicle to notify the vehicle that the on-board equipment corresponding to the error message has malfunctioned.

8. A vehicle data message processing device, characterized in that, The device includes: The first message data acquisition module is used to acquire the first message data sent by the vehicle. The first message data is message data encrypted based on a preset encryption method. The second message data acquisition module is used to decode the first message data based on the preset encryption method to obtain the second message data. The second message data includes device data collected by multiple target devices and a flag bit, wherein the flag bit indicates whether the device data is empty. The target message data determination module is used to parse the second message data based on a preset password file to obtain the target message data. The preset password file is obtained based on the vehicle identification number, message source type and message version number. The target message data includes the correspondence between the device name of the target device and the device data. The target message data determination module includes: Identify each segment to be parsed from the second message data; Each segment to be parsed is segmented based on a preset delimiter to obtain a device data group corresponding to each type of target device in each segment to be parsed. The device data group includes at least one device data and a flag bit corresponding to the device data. The parsing code segment corresponding to each device data group is determined from the preset password file, and the parsing code segment includes the device name group; Based on the device name group, determine the device name that matches each device data in each device data group; Based on each device data group and the matched device name, a target data group corresponding to each type of target device is generated, and the target message data is obtained.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores at least one instruction or at least one program, which is loaded and executed by a processor to implement the vehicle data message processing method as described in any one of claims 1-6.