Information security processing method and device for automobile software and electronic equipment

By employing dual encryption and packing techniques on the automotive software, the security issues of Dex files during the upgrade process are resolved, ensuring secure processing of vehicle information, preventing tampering and reverse engineering, guaranteeing vehicle information security, resolving the security issues of Dex files during the upgrade process, and ensuring the legitimacy of Dex files, thus achieving vehicle information security.

CN120930149APending Publication Date: 2025-11-11CHERY NEW ENERGY AUTOMOBILE TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511068842.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-31
Publication Date
2025-11-11

AI Technical Summary

Technical Problem

Dex files are easily tampered with and decompiled during the download or upgrade of automotive software, making it difficult to guarantee information security.

Method used

The target file package is double-encrypted using symmetric and asymmetric encryption algorithms. It is then combined with the unpacked file to form a packed file package. The integrity and legitimacy of the file are ensured by digital signature, and the file is decrypted and installed on the vehicle.

Benefits of technology

This effectively prevented the software from being cracked, ensured the information security of the vehicle-side software upgrade package, and guaranteed the integrity and legality of the files.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120930149A_ABST
    Figure CN120930149A_ABST
Patent Text Reader

Abstract

The invention discloses an information security processing method and device for automobile software and electronic equipment, and the method comprises the steps: responding to the received target demand information, and determining a target file package corresponding to the target demand information; the target demand information comprises an upgrading software package and a corresponding upgrading execution script; performing first encryption processing and second encryption processing on the target file package to obtain a target encrypted package; the target encrypted packet comprises a storage record table, a software encrypted packet obtained by the first encryption and a digital signature obtained by the second encryption; combining the obtained unpacked file of the vehicle end with the target encrypted packet to obtain a packed file packet; and sending the packed file package to the vehicle end, so that the vehicle end performs software installation based on a target file package obtained by decryption of the packed file package. According to the method, the decompilation condition in the vehicle software upgrading process is reduced in combination with an encryption algorithm and shell adding and unpacking, and the information security of the vehicle end application software application package is guaranteed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of information security technology, and in particular to an information security processing method, apparatus and electronic device for automotive software. Background Technology

[0002] As the complexity of automotive electronic control systems increases, so too does the risk of network information security. Information security has become a key factor affecting the transition from traditional automobiles to intelligent connected vehicles. Over-the-air (OTA) technology in electronic control systems remotely manages and controls in-vehicle SIM card information and applications through the air interface of mobile communication. It not only provides data services for products but also offers new service downloads and updates. The in-vehicle infotainment system (ICM) is a primary OTA target, and ICMs are mainly developed based on the Android platform. Dex files are bytecode files generated from Android platform source code files (such as Java or Kotlin) after compilation, refactoring, rearrangement, compression, and obfuscation; they are a unique executable file format of the Android system. However, Dex files are easily tampered with and decompiled during download or upgrades, making it difficult to guarantee the information security of automotive software. Summary of the Invention

[0003] This disclosure provides a method, apparatus, device, and storage medium for information security processing of automotive software, to at least solve the above-mentioned technical problems existing in the prior art.

[0004] According to a first aspect of this application, a method for information security processing of automotive software is provided, the method comprising: In response to receiving target requirement information, a target file package corresponding to the target requirement information is determined; the target requirement information includes an upgrade software package and a corresponding upgrade execution script. The target file package is subjected to a first encryption process and a second encryption process respectively to obtain a target encrypted package; the target encrypted package includes a storage record table, a software encrypted package obtained by the first encryption, and a digital signature obtained by the second encryption. The unpacked file from the vehicle end is merged with the target encrypted package to obtain a packed file package; The encrypted file package is sent to the vehicle, enabling the vehicle to install software based on the target file package obtained by decrypting the encrypted file package.

[0005] In one possible implementation, in response to receiving target requirement information, a target file package corresponding to the target requirement information is determined; Upon receiving target requirement information, determine the latest file package that matches the required vehicle model; The latest file package that matches the required vehicle model is identified as the target file package.

[0006] In one embodiment, the target file package includes source program files and a storage record table; the step of performing a first encryption process and a second encryption process on the target file package to obtain a target encrypted package includes: The target file package is allocated to a distribution queue; the distribution queue is used to distribute the file package to the vehicle according to the scheduling order. The source program file is encrypted using a symmetric encryption algorithm to obtain a software encryption package; Perform a hash calculation on the source program file to obtain a digest value; The digest value is encrypted using a private key using an asymmetric encryption algorithm to obtain a digital signature; The software encryption package, the digital signature, and the storage record table are packaged together to obtain the target encryption package.

[0007] In one possible implementation, merging the obtained unpacked file from the vehicle end with the target encrypted package to obtain a packed file package includes: Obtain and store the unpacked file from the vehicle terminal; the unpacked file can decrypt the target encrypted packet; The unpacked file is merged with the target encrypted package to obtain a merged file; A length field is set on the merged file to identify its size, thus obtaining an identifier file; Modify the header data of the identifier file to obtain the packed file package.

[0008] In one possible implementation, the storage record table includes vehicle metadata, used to verify whether the source program file is a target file package for the vehicle; the vehicle-side performs software installation based on the target file package obtained by decrypting the packed file package, including: The encrypted file package is received by the vehicle's controller; In response to receiving an installation command from the user, the packed file package is decrypted to obtain the target file package; Installation is performed based on the source program files in the target file package.

[0009] In one possible implementation, decrypting the packed file package to obtain the target file package includes: The digital signature in the encrypted file package is decrypted using an asymmetric encryption algorithm with a public key to obtain a hash value; wherein, the public key is preset in the vehicle terminal; Determine whether the hash value and the digest value are consistent; In response to the digest value matching the hash value, the software encryption package in the packed file package is decrypted using a symmetric encryption algorithm to obtain the target file package.

[0010] In one possible implementation, before the vehicle-side performs software installation based on the target file package obtained by decrypting the packed file package, it further includes: Upon receiving the packed file package, verify the integrity of the packed file package; When verifying the integrity of the packed file package, the storage record table is used to verify the consistency between the packed file package and the vehicle.

[0011] In one possible implementation, the length field is a 4-byte field.

[0012] According to a second aspect of this application, an information security processing apparatus for automotive software is provided, comprising: The determination module is used to determine the target file package corresponding to the target requirement information in response to receiving target requirement information; the target requirement information includes the upgrade software package and the corresponding upgrade execution script. An encryption module is used to perform a first encryption process and a second encryption process on the target file package to obtain a target encrypted package; the target encrypted package includes a storage record table, a software encrypted package obtained by the first encryption, and a digital signature obtained by the second encryption. The merging module is used to merge the obtained unpacked file from the vehicle end with the target encrypted package to obtain a packed file package; The sending module is used to send the packed file package to the vehicle terminal, so that the vehicle terminal can perform software installation based on the target file package obtained by decrypting the packed file package.

[0013] According to a third aspect of this application, an electronic device is provided, comprising: At least one processor; and A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method described in this application.

[0014] According to a fourth aspect of this application, a non-transitory computer-readable storage medium is provided storing computer instructions for causing the computer to perform the methods described in this application.

[0015] According to a fifth aspect of this application, a computer file product is provided, including a computer file or instructions that, when executed by a processor, implement the method described in this application.

[0016] Using the technical solution of this application, the upgrade software program can be protected during the transmission of vehicle-side software upgrades, preventing the software from being cracked and ensuring the information security of the vehicle-side software upgrade package.

[0017] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this application, nor is it intended to limit the scope of this application. Other features of this application will become readily apparent from the following description. Attached Figure Description

[0018] The above and other objects, features, and advantages of exemplary embodiments of this application will become readily apparent from the following detailed description taken in conjunction with the accompanying drawings. Several embodiments of this application are illustrated in the drawings by way of example and not limitation, in which: In the accompanying drawings, the same or corresponding reference numerals indicate the same or corresponding parts.

[0019] Figure 1 This application illustrates a schematic diagram of the implementation flow of an information security processing method for automotive software, as shown in an embodiment of this application. Figure 1 ; Figure 2 This application illustrates a schematic diagram of the implementation flow of an information security processing method for automotive software, as shown in an embodiment of this application. Figure 2 ; Figure 3 This application illustrates a schematic diagram of the implementation flow of an information security processing method for automotive software, as shown in an embodiment of this application. Figure 3 ; Figure 4 This invention illustrates a schematic diagram of the information security processing device for automotive software in an embodiment of this application. Figure 5 A schematic diagram of the composition structure of the electronic device in an embodiment of this application is shown. Detailed Implementation

[0020] To make the objectives, features, and advantages of this application more apparent and understandable, the technical solutions in 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. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0021] To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings. The described embodiments should not be regarded as limitations on this application. All other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0022] In the following description, references are made to “some embodiments,” which describe a subset of all possible embodiments. However, it is understood that “some embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.

[0023] In the following description, the terms "first" and "second" are used merely to distinguish similar objects and do not represent a specific ordering of objects. It is understood that "first" and "second" may be interchanged in a specific order or sequence where permitted, so that the embodiments of this application described herein can be implemented in an order other than that illustrated or described herein.

[0024] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.

[0025] It should be understood that in the various embodiments of this application, the sequence number of each implementation process does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0026] like Figure 1 As shown, the information security processing method for automotive software provided in this application includes: S101, in response to receiving target requirement information, determine the target file package corresponding to the target requirement information; the target requirement information includes an upgrade software package and a corresponding upgrade execution script; It should be noted that the information security processing method for automotive software provided in this application can be implemented through a server in an Over-The-Air (OTA) system. The server is deployed in the cloud and is responsible for core logic such as managing upgrade packages, pushing upgrade commands, and monitoring the upgrade process. The server stores the vehicle's software upgrade packages (such as in-vehicle systems, electronic control unit firmware, etc.) and sends upgrade notifications and data to eligible vehicles via the network. The vehicle terminal can be hardware installed in the vehicle, responsible for receiving upgrade commands, downloading upgrade packages, performing upgrade operations, and reporting the upgrade status to the server. The vehicle terminal can include devices such as the vehicle's in-vehicle terminal T-BOX. The vehicle terminal and the server are interconnected. The T-BOX first receives the upgrade package from the server and then forwards it to the vehicle's OTA Manager, which completes the local upgrade process.

[0027] In this application, users can interact with the vehicle's display screen, thereby receiving the user's operation commands and generating target requirement information. Specifically, when a user performs a software upgrade via the display screen, the vehicle receives the software upgrade command, generates the required upgrade package and corresponding upgrade execution script, and sends this target requirement information to the server.

[0028] After receiving the target requirement information, the server selects the target file package that matches the vehicle model in the server's upgrade package management module.

[0029] S102, the target file package is subjected to a first encryption process and a second encryption process respectively to obtain a target encrypted package; the target encrypted package includes a storage record table, a software encrypted package obtained by the first encryption, and a digital signature obtained by the second encryption. After determining the target file package, this application encrypts it using two different encryption algorithms. The target file package includes source program files and a storage record table. One encryption algorithm encrypts the source program files to obtain a software encryption package. The other encryption algorithm encrypts the source program files to obtain a digital signature. The storage record table, the software encryption package, and the digital signature constitute the target encryption package.

[0030] S103, merge the obtained unpacked file from the vehicle end with the target encrypted package to obtain a packed file package; The vehicle-side software includes a decryption file (classes.dex file). This decryption file can be used to decrypt encrypted files sent from the server when upgrading in-vehicle applications (such as navigation apps on ICM screens), and can be considered a "vehicle-side decryption tool." This application obtains a packed file package by merging the decryption file with the target encrypted package. In this application, the server-side packages the "vehicle-side decryption tool" and the "encrypted content" for convenient unified processing on the vehicle-side.

[0031] S104, the packed file package is sent to the vehicle terminal, so that the vehicle terminal can install software based on the target file package obtained by decrypting the packed file package.

[0032] After the application sends the packed file package to the vehicle terminal, the vehicle terminal can decrypt the packed file package to obtain the source program file and install the source program file.

[0033] The information security processing method for automotive software provided in this application, such as Figure 2As shown, after receiving the target requirement information, the server determines the target file package that matches the vehicle model and encrypts the target file package twice to obtain the target encrypted package. The obtained unpacked file is then merged with the target encrypted package to obtain the packed file package. Finally, the packed file package is sent to the vehicle, where the decrypted target file package is installed. This application reduces the possibility of decompilation during vehicle software upgrades by combining encryption algorithms and packing / unpacking techniques, preventing software from being cracked and ensuring the information security of the software application package requested by the vehicle.

[0034] In some embodiments, the step of responding to receiving target requirement information involves determining a target file package corresponding to the target requirement information; Upon receiving target requirement information, determine the latest file package that matches the required vehicle model; The latest file package that matches the required vehicle model is identified as the target file package.

[0035] This application's server-side can manage vehicle software upgrade plans in batches (e.g., filtering upgrade program files for target vehicles by model, region, and version). Specifically, the vehicle sends a request to the server, specifying its upgrade requirements, such as the upgrade package and corresponding upgrade execution script; this is equivalent to the vehicle placing an order with the server. After receiving the target requirement information from the vehicle, the server confirms the latest file package stored on the server that matches the vehicle model; this latest file package is the latest upgrade package.

[0036] In some embodiments, such as Figure 3 As shown, the target file package includes source program files and a storage record table; the step of performing a first encryption process and a second encryption process on the target file package to obtain a target encrypted package includes: The target file package is allocated to a distribution queue; the distribution queue is used to distribute the file package to the vehicle according to the scheduling order. The source program file is encrypted using a symmetric encryption algorithm to obtain a software encryption package; Perform a hash calculation on the source program file to obtain a digest value; The digest value is encrypted using a private key using an asymmetric encryption algorithm to obtain a digital signature; The software encryption package, the digital signature, and the storage record table are packaged together to obtain the target encryption package.

[0037] In this application, the server can add the source program files to be distributed to the distribution queue according to the priority of the target file package, vehicle model batch and other rules, to ensure orderly resource scheduling (avoid server pressure or transmission chaos caused by concurrent requests).

[0038] The source code file is then encrypted using the SM4 symmetric encryption algorithm to obtain the encrypted software package. The same key is used for both SM4 encryption and decryption, thus protecting the confidentiality of the source code file's contents. After encryption, even if the upgrade package is intercepted during transmission, attackers cannot directly read sensitive information such as code and resources from the APK (decryption requires the SM4 key stored on the vehicle's end).

[0039] Furthermore, asymmetric encryption and hash digests are used to ensure the integrity and legitimacy of the target file package. Specifically, the source program file is hashed (e.g., using SHA-256) to obtain a fixed-length digest value (equivalent to the package's "digital fingerprint"; even minor changes in content will result in a completely different digest value). Then, the digest value is encrypted using the server's private key to generate a "digital signature Z*" (SM2 is a Chinese national standard asymmetric encryption algorithm; the private key is kept by the manufacturer and used only for signing; the public key is pre-installed on the vehicle and used for signature verification). Subsequently, the vehicle can decrypt the signature using the SM2 public key to obtain the hash value, which is then compared with the digest value. If they match, it indicates that the package has not been tampered with and indeed comes from a legitimate server (preventing the installation of maliciously forged upgrade packages).

[0040] Finally, the software encryption package, digital signature, and storage record table are packaged together to obtain the target encryption package.

[0041] This application uses a symmetric encryption algorithm to encrypt the content of the source program file, and employs asymmetric encryption to provide a double encryption mechanism for identity and the integrity of the target file package. This can prevent the target file package from being stolen and tampered with. Digital signatures can ensure that the target file package comes from a legitimate vendor's server, rather than from a malicious attacker.

[0042] In some embodiments, merging the obtained unpacked file from the vehicle end with the target encrypted package to obtain a packed file package includes: Obtain and store the unpacked file from the vehicle terminal; the unpacked file can decrypt the target encrypted packet; The unpacked file is merged with the target encrypted package to obtain a merged file; A length field is set on the merged file to identify its size, thus obtaining an identifier file; Modify the header data of the identifier file to obtain the packed file package.

[0043] In this application, the essence of software packing is to bind the decryption logic (unpacked file) with the encrypted target content (target encrypted package) to form a self-contained, secure execution unit. This application first obtains the unpacked file from the vehicle-side and then stores it in the server-side memory. Then, the unpacked file and the target encrypted package are merged to obtain a merged file. Specifically, the merging method involves using the unpacked file as the front-end code and the target encrypted package as the back-end data, concatenating them sequentially into a binary file. A 4-byte field is added to the end of the merged file to record the size of the encrypted package (in bytes), used to quickly locate the boundaries of the encrypted package during unpacking. The header data of the identification file is modified because the header contains metadata such as the checksum (Adler32), SHA-1 signature, and file size, used to verify file integrity and prevent tampering.

[0044] This application uses a packing technique to bundle the "front-end decryption logic and back-end encrypted content," which not only ensures the security of the upgrade package but also simplifies the vehicle-side execution process.

[0045] In some embodiments, the storage record table includes vehicle metadata, used to verify whether the source program file is the vehicle's target file package; the vehicle-side performs software installation based on the target file package obtained by decrypting the packed file package, including: The encrypted file package is received by the vehicle's controller; In response to receiving an installation command from the user, the packed file package is decrypted to obtain the target file package; Installation is performed based on the source program files in the target file package.

[0046] Continue as Figure 3 As shown, the vehicle's metadata includes version number, vehicle model compatibility information, size, etc. The vehicle receives the packed file package sent by the server via T-BOX; if it receives an installation command from the user, i.e., an installation command generated by the user's interactive operation through the vehicle's display screen, it creates a source program file instance, performs object initialization, decrypts the obtained packed file package to obtain the target file package, and then performs installation based on the source program files in the target file package.

[0047] In some embodiments, decrypting the packed file package to obtain the target file package includes: The digital signature in the encrypted file package is decrypted using an asymmetric encryption algorithm with a public key to obtain a hash value; wherein, the public key is preset in the vehicle terminal; Determine whether the hash value and the digest value are consistent; In response to the digest value matching the hash value, the software encryption package in the packed file package is decrypted using a symmetric encryption algorithm to obtain the target file package.

[0048] It is understood that the packed file package in this application includes a software encryption package, a digital signature, and a storage record table. In this application, the digital signature Z* is first decrypted using the SM2 public key pre-installed on the vehicle to obtain a hash value. A hash value (such as SHA-256) is then calculated for the software encryption package in memory and compared with the decrypted digest value. If the digest value matches the hash value, it indicates that the source program file has not been tampered with and its origin is legitimate. The packed file is then further decrypted using the SM4 key pre-stored on the vehicle (usually bound to the vehicle ID) to obtain the target file package.

[0049] In some embodiments, before the vehicle-side performs software installation based on the target file package obtained by decrypting the packed file package, the process further includes: Upon receiving the packed file package, verify the integrity of the packed file package; When verifying the integrity of the packed file package, the storage record table is used to verify the consistency between the packed file package and the vehicle.

[0050] In this application, after receiving the encrypted file from the server, the vehicle-side system first checks whether all data (software encryption package, digital signature, and storage record table) has been completely downloaded to the OTA Manager's storage unit (such as a specific partition or file system). If the download is incomplete, the task is cancelled. If the download is complete, the system compares the unique identifier (such as UUID or version number) in the storage record table to confirm that it matches the target to be upgraded locally (to prevent accidental upgrades to incompatible vehicle models). After successful verification, the data is distributed to the corresponding ICM controller. If the verification finds that the data has been tampered with, a signal is sent to the T-Box to re-acquire the encrypted file package.

[0051] like Figure 4 As shown, this application provides an information security processing device for automotive software, comprising: The determination module 401 is used to determine the target file package corresponding to the target requirement information in response to receiving the target requirement information; the target requirement information includes the upgrade software package and the corresponding upgrade execution script. The encryption module 402 is used to perform a first encryption process and a second encryption process on the target file package respectively to obtain a target encrypted package; the target encrypted package includes a storage record table, a software encrypted package obtained by the first encryption, and a digital signature obtained by the second encryption. The merging module 403 is used to merge the obtained unpacked file from the vehicle end with the target encrypted package to obtain a packed file package; The sending module 404 is used to send the packed file package to the vehicle terminal, so that the vehicle terminal can perform software installation based on the target file package obtained by decrypting the packed file package.

[0052] This application provides an information security processing device for automotive software. A determining module 401, in response to receiving target requirement information, determines a target file package corresponding to the target requirement information. The target requirement information includes an upgrade software package and a corresponding upgrade execution script. An encryption module 402 performs a first encryption process and a second encryption process on the target file package to obtain a target encrypted package. The target encrypted package includes a storage record table, a software encrypted package obtained from the first encryption, and a digital signature obtained from the second encryption. A merging module 403 merges the unpacked file obtained from the vehicle with the target encrypted package to obtain a packed file package. A sending module 404 sends the packed file package to the vehicle, enabling the vehicle to install software based on the target file package obtained by decrypting the packed file package.

[0053] According to embodiments of this application, this application also provides an electronic device and a readable storage medium.

[0054] The electronic device includes at least one processor and a memory communicatively connected to the at least one processor. The memory stores instructions executable by the at least one processor, which, when executed, enable the at least one processor to perform the information security processing method for automotive software described in this application. The computer instructions are used to cause the computer to perform the information security processing method for automotive software described in this application.

[0055] This application also provides a computer file product, including computer files / instructions, which, when executed by a processor, implement the information security processing method for automotive software of this application.

[0056] Figure 5 A schematic block diagram of an example electronic device 800 that can be used to implement embodiments of this application is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the application described and / or claimed herein.

[0057] like Figure 5As shown, device 800 includes a computing unit 801, which can perform various appropriate actions and processes based on computer files stored in read-only memory (ROM) 802 or computer files loaded from storage unit 808 into random access memory (RAM) 803. RAM 803 may also store various files and data required for the operation of device 800. The computing unit 801, ROM 802, and RAM 803 are interconnected via bus 804. Input / output (I / O) interface 805 is also connected to bus 804.

[0058] Multiple components in device 800 are connected to I / O interface 805, including: input unit 806, such as keyboard, mouse, etc.; output unit 807, such as various types of monitors, speakers, etc.; storage unit 808, such as disk, optical disk, etc.; and communication unit 809, such as network card, modem, wireless transceiver, etc. Communication unit 809 allows device 800 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0059] The computing unit 801 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 801 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 801 performs the various methods and processes described above, such as information security processing methods for automotive software. For example, in some embodiments, the information security processing methods for automotive software can be implemented as computer software files tangibly contained in a machine-readable medium, such as storage unit 808. In some embodiments, part or all of the computer file can be loaded and / or installed on device 800 via ROM 802 and / or communication unit 809. When the computer file is loaded into RAM 803 and executed by the computing unit 801, one or more steps of the information security processing methods for automotive software described above can be performed. Alternatively, in other embodiments, the computing unit 801 may be configured by any other suitable means (e.g., by means of firmware) to perform information security processing methods for automotive software.

[0060] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations may include implementations in one or more computer files that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transferring data and instructions to the storage system, the at least one input device, and the at least one output device.

[0061] The documentation code used to implement the methods of this application may be written in any combination of one or more programming languages. This documentation code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing device, such that when executed by the processor or controller, the functions / operations specified in the flowcharts and / or block diagrams are implemented. The documentation code may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0062] In the context of this application, a machine-readable medium can be a tangible medium that may contain or store documents for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. Machine-readable media can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0063] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0064] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.

[0065] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact via communication networks. Client-server relationships are established through computer files running on the respective computers and having a client-server relationship with each other. Servers can be cloud servers, servers in distributed systems, or servers incorporating blockchain technology.

[0066] The above description is merely a specific embodiment 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.

Claims

1. A method for information security processing in automotive software, characterized in that, include: In response to receiving target requirement information, determine the target file package corresponding to the target requirement information; The target requirement information includes the upgrade software package and the corresponding upgrade execution script; The target file package is subjected to a first encryption process and a second encryption process respectively to obtain a target encrypted package; the target encrypted package includes a storage record table, a software encrypted package obtained by the first encryption, and a digital signature obtained by the second encryption. The unpacked file from the vehicle end is merged with the target encrypted package to obtain a packed file package; The encrypted file package is sent to the vehicle, enabling the vehicle to install software based on the target file package obtained by decrypting the encrypted file package.

2. The method according to claim 1, characterized in that, In response to receiving target requirement information, the target file package corresponding to the target requirement information is determined; Upon receiving target requirement information, determine the latest file package that matches the required vehicle model; The latest file package that matches the required vehicle model is identified as the target file package.

3. The method according to claim 1, characterized in that, The target file package includes source program files and a storage record table; the step of performing a first encryption process and a second encryption process on the target file package to obtain a target encrypted package includes: The target file package is allocated to a distribution queue; the distribution queue is used to distribute the file package to the vehicle according to the scheduling order. The source program file is encrypted using a symmetric encryption algorithm to obtain a software encryption package; Perform a hash calculation on the source program file to obtain a digest value; The digest value is encrypted using a private key using an asymmetric encryption algorithm to obtain a digital signature; The software encryption package, the digital signature, and the storage record table are packaged together to obtain the target encryption package.

4. The method according to claim 1, characterized in that, The process of merging the obtained unpacked file from the vehicle end with the target encrypted package to obtain a packed file package includes: Obtain and store the unpacked file from the vehicle terminal; the unpacked file can decrypt the target encrypted packet; The unpacked file is merged with the target encrypted package to obtain a merged file; A length field is set on the merged file to identify its size, thus obtaining an identifier file; Modify the header data of the identifier file to obtain the packed file package.

5. The method according to claim 3, characterized in that, The storage record table includes vehicle metadata and is used to verify whether the source program file is a target file package of the vehicle. The vehicle-side software installation is performed based on the target file package obtained by decrypting the packed file package, including: The encrypted file package is received by the vehicle's controller; In response to receiving an installation command from the user, the packed file package is decrypted to obtain the target file package; Installation is performed based on the source program files in the target file package.

6. The method according to claim 5, characterized in that, The process of decrypting the packed file package to obtain the target file package includes: The digital signature in the encrypted file package is decrypted using an asymmetric encryption algorithm with a public key to obtain a hash value; wherein, the public key is preset in the vehicle terminal; Determine whether the hash value and the digest value are consistent; In response to the digest value matching the hash value, the software encryption package in the packed file package is decrypted using a symmetric encryption algorithm to obtain the target file package.

7. The method according to claim 5, characterized in that, Before the vehicle-side installs the software based on the target file package obtained by decrypting the packed file package, it also includes: Upon receiving the packed file package, verify the integrity of the packed file package; When verifying the integrity of the packed file package, the storage record table is used to verify the consistency between the packed file package and the vehicle.

8. The method according to claim 4, characterized in that, The length field is a 4-byte field.

9. An information security processing device for automotive software, characterized in that, include: The determination module is used to determine the target file package corresponding to the target requirement information in response to receiving the target requirement information; The target requirement information includes the upgrade software package and the corresponding upgrade execution script; An encryption module is used to perform a first encryption process and a second encryption process on the target file package to obtain a target encrypted package; the target encrypted package includes a storage record table, a software encrypted package obtained by the first encryption, and a digital signature obtained by the second encryption. The merging module is used to merge the obtained unpacked file from the vehicle end with the target encrypted package to obtain a packed file package; The sending module is used to send the packed file package to the vehicle terminal, so that the vehicle terminal can perform software installation based on the target file package obtained by decrypting the packed file package.

10. An electronic device, characterized in that, At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 8.