An activation code generation method, apparatus, and computer storage medium

CN116760541BActive Publication Date: 2026-06-30SHANGHAI QINGGAN INTELLIGENT TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHANGHAI QINGGAN INTELLIGENT TECH CO LTD
Filing Date
2019-04-16
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

Existing activation code generation methods are simplistic and easily cracked, resulting in low security.

Method used

By binding the vehicle identification number, the product serial number of the vehicle's infotainment system, and the International Mobile Subscriber Identity (IMSI), an activation code is generated, and the complexity of the activation code is increased by using permutation and combination and encryption algorithms.

Benefits of technology

This increases the difficulty of cracking activation codes and improves their security.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116760541B_ABST
    Figure CN116760541B_ABST
Patent Text Reader

Abstract

This invention discloses an activation code generation method, apparatus, and computer storage medium. The activation code generation method includes: obtaining a vehicle identification number (VIN), a vehicle infotainment system (VIS) serial number, and an International Mobile Subscriber Identity (IMSI); arranging and combining the VIN, VIS serial number, and IMSI to obtain a target string; and generating an activation code based on the target string according to a set activation code generation method. The activation code generation method, apparatus, and computer storage medium provided by this invention, by binding the vehicle identification number, VIS serial number, and IMSI to generate a corresponding activation code, increase the difficulty of cracking the activation code, thereby effectively improving the security of the activation code.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of vehicle networking technology, and in particular to an activation code generation method, apparatus, and computer storage medium. Background Technology

[0002] With the rapid development of the internet, in-vehicle infotainment systems, featuring multiple functions such as voice control, navigation, and entertainment, are widely installed in vehicles. To ensure the legitimate use of these systems, users typically need to activate them using an activation code before use. Therefore, the security of the activation code plays a crucial role in ensuring the legitimate use of the system. However, existing activation codes are mainly generated based on the vehicle identification number (VIN) or the system's serial number, a relatively simple method that makes them easier to crack, resulting in low security. Summary of the Invention

[0003] The purpose of this invention is to provide an activation code generation method, device, and computer storage medium. By binding the vehicle identification number, the product serial number of the vehicle's infotainment system, and the International Mobile Subscriber Identity (IMSI) to generate a corresponding activation code, the difficulty of cracking the activation code can be increased, thereby effectively improving the security of the activation code.

[0004] To achieve the above objectives, the technical solution of the present invention is implemented as follows:

[0005] In a first aspect, embodiments of the present invention provide an activation code generation method, applied to an activation code generation device, the method comprising:

[0006] Obtain the vehicle identification number, the in-vehicle infotainment system's product serial number, and the International Mobility Subscriber Identity (IMSI);

[0007] The vehicle identification number of the vehicle, the product serial number of the vehicle system and the International Mobile Subscriber Identity Serial Number are arranged and combined to obtain the target string generated after the arrangement and combination;

[0008] Based on the target string, an activation code is generated according to the set activation code generation method.

[0009] As one implementation method, generating an activation code based on the target string according to a set activation code generation method includes:

[0010] A first string is determined, and the correspondence between the last character of the first string and the second string is queried based on the last character of the first string to obtain the second string that matches the last character of the first string; the first string and the second string are one of the following strings: vehicle identification number, vehicle serial number and international mobile subscriber identification number;

[0011] The second string and the target string are encrypted according to the set encryption algorithm to generate a ciphertext string;

[0012] The encrypted string is extracted to obtain a string that matches the set length value as the activation code.

[0013] In one implementation, the first string includes the product serial number of the vehicle system. The step of querying the correspondence between the last character of the first string and the second string based on the last character of the first string to obtain the second string that matches the last character of the first string includes:

[0014] When the last character of the product serial number of the vehicle system is an even number, the second string is the vehicle identification number of the vehicle.

[0015] When the last character of the vehicle's product serial number is odd, if the last character of the vehicle's product serial number is a multiple of 3, then the second string is the International Mobile Subscriber Identity (IMSI); otherwise, the second string is the vehicle's product serial number.

[0016] As one implementation method, the step of encrypting the second string and the target string according to a set encryption algorithm to generate a ciphertext string includes:

[0017] The second string is encrypted using the set message digest algorithm to generate a key string;

[0018] The target string is encrypted using the set message digest algorithm to generate a plaintext string;

[0019] The key string and the plaintext string are encrypted using the set advanced encryption standard algorithm to generate a ciphertext string.

[0020] As one implementation method, the step of extracting characters from the ciphertext string to obtain a string that matches the set length value as the activation code includes:

[0021] Starting from the first character of the encrypted string, select strings of the set length value sequentially as activation codes.

[0022] As one implementation method, the step of extracting characters from the ciphertext string to obtain a string that matches the set length value as the activation code includes:

[0023] Starting from the first character of the ciphertext string, select strings of length 1 set to the first length value sequentially as the first activation code string;

[0024] Generate a string of the second set length value based on the difference between the current date and the set date value, and use it as the second activation code substring.

[0025] The first activation code substring and the second activation code substring are arranged and combined according to the set permutation and combination order to generate an activation code.

[0026] In one implementation, the step of arranging and combining the first activation code substring and the second activation code substring according to a set permutation and combination order to generate an activation code includes:

[0027] The first activation code substring, the second activation code substring, and the third activation code substring are arranged and combined according to the set permutation and combination order to generate an activation code. The third activation code substring is a random string with a length of the set third length value.

[0028] In one implementation, the activation code generation device is applied to a car remote service provider server, and the acquisition of the vehicle identification number, the vehicle's product serial number, and the International Mobile Subscriber Identity Serial Number includes:

[0029] The system receives an activation code retrieval request sent by the vehicle-mounted unit; the activation code retrieval request carries the vehicle identification number, the product serial number of the vehicle-mounted unit, and the International Mobile Subscriber Identity Serial Number (IMSI).

[0030] As one implementation method, after generating the activation code based on the target string according to the set activation code generation method, the method further includes:

[0031] Send a response message to the vehicle's infotainment system, carrying the activation code to be verified.

[0032] In one implementation, the activation code generation device is applied to the vehicle-mounted infotainment system. The process of obtaining the vehicle identification number, the infotainment system's product serial number, and the International Mobile Subscriber Identity Serial Number (IMSI) includes:

[0033] Receive activation request instructions for activating the vehicle's infotainment system;

[0034] In response to the activation request instruction, obtain the vehicle identification number, the product serial number of the vehicle's infotainment system, and the International Mobile Subscriber Identity Serial Number (IMSI).

[0035] As one implementation method, after obtaining the vehicle identification number, the product serial number of the vehicle's infotainment system, and the International Mobile Subscriber Identity (IMSI), the method further includes:

[0036] Send an activation code retrieval request to the vehicle remote service provider server; the activation code retrieval request carries the vehicle identification number of the vehicle, the product serial number of the vehicle system and the International Mobile Subscriber Identity Item (IMSI).

[0037] Receive a response message from the vehicle remote service provider server, which carries an activation code to be verified, based on the activation code acquisition request.

[0038] The activation code to be verified is verified based on the activation code generated by the vehicle system, and the vehicle system is activated when the verification is successful.

[0039] Secondly, embodiments of the present invention also provide an activation code generation apparatus, comprising: a processor and a memory for storing a computer program capable of running on the processor.

[0040] Wherein, when the processor is used to run the computer program, it implements the steps of the activation code generation method described in the first aspect.

[0041] Thirdly, embodiments of the present invention provide a computer storage medium storing a computer program, which, when executed by a processor, implements the steps of the activation code generation method as described in the first aspect.

[0042] The activation code generation method, apparatus, and computer storage medium provided in this invention obtain the vehicle identification number (VIN), the vehicle infotainment system's product serial number, and the International Mobile Subscriber Identity (IMSI); arrange and combine the VIN, the product serial number, and the IMSI to obtain a target string; and generate an activation code based on the target string according to a set activation code generation method. Thus, by binding the vehicle's VIN, the vehicle infotainment system's product serial number, and the IMSI to generate the corresponding activation code, the difficulty of cracking the activation code is increased, thereby effectively improving the security of the activation code. Attached Figure Description

[0043] Figure 1 This is a flowchart illustrating an activation code generation method provided in an embodiment of the present invention;

[0044] Figure 2 This is a schematic diagram illustrating the specific process of an activation code generation method provided in an embodiment of the present invention;

[0045] Figure 3 This is a schematic diagram of an activation code generation device provided in an embodiment of the present invention. Detailed Implementation

[0046] The technical solution of the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. 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 invention pertains. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the invention. The term "and / or" as used herein includes any and all combinations of one or more of the associated listed items.

[0047] See Figure 1 The present invention provides an activation code generation method, which can be applied to an activation code generation device for generating activation codes, and includes the following steps:

[0048] Step S101: Obtain the vehicle identification number, the product serial number of the vehicle's infotainment system, and the International Mobile Subscriber Identity (IMSI);

[0049] It should be noted that when the activation code generation device is applied to an in-vehicle infotainment system, obtaining the vehicle identification number, the product serial number of the in-vehicle infotainment system, and the International Mobile Subscriber Identity Serial Number (IMSI) includes:

[0050] Receive activation request instructions to activate the vehicle's infotainment system;

[0051] In response to the activation request instruction, the vehicle identification number, the product serial number of the vehicle system, and the International Mobile Subscriber Identity Serial Number (IMSI) are obtained.

[0052] Understandably, receiving the activation request instruction to activate the vehicle's infotainment system can refer to receiving an activation request from a user via a finger or stylus, such as detecting that the virtual activation button displayed on the infotainment system interface has been triggered. The vehicle identification number (VIN) is the vehicle's unique identification information, the product serial number of the infotainment system is the manufacturer's serial number for the system, and the International Mobile Subscriber Identity Module (SIM) is stored in the Subscriber Identity Module (SIM card), which is either located in the communication module within the infotainment system or in a vehicle-mounted T-BOX (Telematics BOX) linked to the infotainment system.

[0053] It should be noted that when the activation code generation device is applied to a Telematics Service Provider (TSP) server, obtaining the vehicle identification number, the in-vehicle infotainment system's product serial number, and the International Mobile Subscriber Identity (IMSI) includes:

[0054] The system receives an activation code retrieval request sent by the vehicle's infotainment system; the activation code retrieval request carries the vehicle identification number, the infotainment system's product serial number, and the International Mobile Subscriber Identity Serial Number (IMSI).

[0055] Here, when it is determined that the vehicle infotainment system needs to be activated, the vehicle infotainment system sends an activation code retrieval request to the TSP server. The activation code generation device receives the activation code retrieval request sent by the vehicle infotainment system and generates a corresponding activation code based on the vehicle identification number, the product serial number of the vehicle infotainment system and the International Mobile Subscriber Identity Serial Number carried in the activation code retrieval request. The device then returns the activation code to the vehicle infotainment system, thereby enabling the vehicle infotainment system to activate itself based on the activation code returned by the TSP server.

[0056] Step S102: Arrange and combine the vehicle identification number of the vehicle, the product serial number of the vehicle system and the International Mobile Subscriber Identity Serial Number to obtain the target string generated after the arrangement and combination;

[0057] Understandably, the vehicle identification number (VIN), the in-vehicle serial number (IMEI), and the international mobile subscriber identification number (IMIN) are each a string. When arranging and combining these three strings, multiple combinations can be generated depending on their position within the string, resulting in multiple target strings. Based on known principles of permutation and combination, arranging and combining the VIN, IMEI, and IIN can generate six different target strings. In this embodiment, the string obtained by arranging the VIN, IIN, and IMEI sequentially from front to back is used as an example of the target string.

[0058] Step S103: Generate an activation code based on the target string according to the set activation code generation method.

[0059] Here, the activation code generation method is used to generate an activation code by performing encryption and other operations on the target string, thereby generating an activation code based on the vehicle identification number (VIN) of the bound vehicle, the International Mobile Subscriber Identity (IMSI), and the product serial number of the vehicle's infotainment system. In practical applications, the activation code generation method can be set according to actual needs. The principle of generating an activation code based on the target string according to the set activation code generation method includes: selecting one of the vehicle identification number, IMSI, and product serial number of the vehicle as needed, encrypting it to generate a key string, encrypting the target string to generate a plaintext string, then generating a ciphertext string based on the key string and the plaintext string, and finally obtaining the activation code based on the ciphertext string, making the activation code more complex and increasing the difficulty of cracking it.

[0060] In summary, the activation code generation method, apparatus, and computer storage medium provided in the above embodiments obtain the vehicle identification number (VIN), the vehicle's serial number, and the International Mobile Subscriber Identity (IMSI); arbitrarily combine the VIN, the serial number, and the IMSI to obtain a target string; and generate an activation code based on the target string according to a set activation code generation method. Thus, by binding the vehicle's VIN, the vehicle's serial number, and the IMSI to generate the corresponding activation code, the difficulty of cracking the activation code is increased, thereby effectively improving the security of the activation code.

[0061] In one embodiment, generating an activation code based on the target string according to a set activation code generation method includes:

[0062] A first string is determined, and the correspondence between the last character of the first string and the second string is queried based on the last character of the first string to obtain the second string that matches the last character of the first string; the first string and the second string are one of the following strings: vehicle identification number, vehicle serial number and international mobile subscriber identification number;

[0063] The second string and the target string are encrypted according to the set encryption algorithm to generate a ciphertext string;

[0064] The encrypted string is extracted to obtain a string that matches the set length value as the activation code.

[0065] Understandably, the correspondence between the last character of the first string and the second string can be set according to actual needs. When the first string changes, the second string corresponding to the last character of the first string may also change accordingly. In one embodiment, the first string includes the product serial number of the vehicle system. The step of querying the correspondence between the last character of the first string and the second string based on the last character of the first string to obtain the second string that matches the last character of the first string includes: when the last character of the product serial number of the vehicle system is even, the second string is the vehicle identification number of the vehicle; when the last character of the product serial number of the vehicle system is odd, if the last character of the product serial number of the vehicle system is a multiple of 3, then the second string is the International Mobile Subscriber Identity (IMSI); otherwise, the second string is the product serial number of the vehicle system. For example, if the first string is the product serial number of the vehicle system and the product serial number of the vehicle system is P007001100000311, since the last character of the product serial number of the vehicle system is 1, which is odd and not a multiple of 3, then the second string is the product serial number of the vehicle system. In this way, by flexibly setting the relative relationship between the first and second strings, the flexibility of the activation code is improved.

[0066] Understandably, the encryption algorithm can be set according to actual needs, and the ciphertext string is usually obtained by encrypting the key string and plaintext string using the encryption algorithm. In one embodiment, encrypting the second string and the target string according to the set encryption algorithm to generate the ciphertext string includes: performing an encryption operation on the second string according to the set message digest algorithm to generate the key string; performing an encryption operation on the target string according to the set message digest algorithm to generate the plaintext string; and encrypting the key string and the plaintext string according to the set Advanced Encryption Standard (AES) algorithm to generate the ciphertext string. Thus, since the string encrypted by the message digest algorithm cannot be decrypted, the security of the ciphertext string can be ensured, thereby further improving the security of the activation code.

[0067] It should be noted that the step of extracting characters from the ciphertext string to obtain a string that matches the set length value as the activation code can be done by extracting all the characters that make up the activation code from the ciphertext string, or by extracting a portion of the characters that make up the activation code from the ciphertext string and generating the other portion based on factors such as the current date.

[0068] In one embodiment, the step of extracting characters from the ciphertext string to obtain a string that matches the set length value as the activation code includes:

[0069] Starting from the first character of the encrypted string, select strings of the set length value sequentially as activation codes.

[0070] Here, the length value can be set according to actual needs, such as a 16-digit hexadecimal number. For example, assuming the ciphertext string is a hexadecimal string 21 8D25 01 94 10C9 8C A14C 4D 74CE FF D4 CD, if the length value is a 16-digit hexadecimal number, then the activation code is 21 8D 25 01 9410C9 8C. Thus, selecting the activation code directly from the ciphertext string is simple and fast.

[0071] In one embodiment, the step of extracting characters from the ciphertext string to obtain a string that matches the set length value as the activation code includes:

[0072] Starting from the first character of the ciphertext string, select strings of length 1 set to the first length value sequentially as the first activation code string;

[0073] Generate a string of the second set length value based on the difference between the current date and the set date value, and use it as the second activation code substring.

[0074] The first activation code substring and the second activation code substring are arranged and combined according to the set permutation and combination order to generate an activation code.

[0075] Here, the first length value and the second length value can be set according to actual needs. For example, the first length value can be set to a 12-digit hexadecimal number, and the second length value can be set to a 4-digit hexadecimal number. The date value can be set according to actual needs, such as the production date of the vehicle system. It should be noted that the difference between the current date and the set date value refers to the number of days between the current date and the set date value. There are two different permutation and combination orders for the first activation code substring and the second activation code substring according to the set permutation and combination order. In this embodiment, the string obtained by arranging the second activation code substring and the first activation code substring from front to back is used as the activation code. For example, assuming the ciphertext string is a hexadecimal string 21 8D 25 01 94 10C9 8CA1 4C 4D 74CE FF D4 CD, the current date is November 29, 2018, the set date value is August 1, 2018, the first length is a 12-digit hexadecimal number and the second length is a 4-digit hexadecimal number, then the first activation code substring is 21 8D 25 01 94 10. Since the difference between the current date and the set date threshold is 120 days, represented in hexadecimal as 4 hexadecimal digits 00 78, the activation code is represented as 00 78 21 8D 25 01 94 10. Because the difference between the current date and the set date value is included in the activation code, the current date can be determined from the activation code if the set date value is known, and the current date is considered the generation date of the activation code. Since the activation code is used to activate the vehicle's infotainment system, the activation date of the system can be determined based on the activation code.

[0076] Thus, an activation code is generated based on the difference between the current date and the set date value, so that the activation code can be used to determine the date of its generation, i.e., the activation date of the vehicle system.

[0077] In one embodiment, the step of arranging and combining the first activation code substring and the second activation code substring according to a set permutation and combination order to generate an activation code includes:

[0078] The first activation code substring, the second activation code substring, and the third activation code substring are arranged and combined according to the set permutation and combination order to generate an activation code. The third activation code substring is a random string with a length of the set third length value.

[0079] Here, when arranging and combining the first, second, and third activation code substrings, multiple combinations can be generated depending on the position of each string, resulting in multiple activation codes. In this embodiment, the string obtained by arranging the second, first, and third activation code substrings sequentially from front to back is used as an example of the activation code. When the length of the activation code is fixed, the third length value needs to be determined based on the first and second length values. For example, the first length value can be set to 10 hexadecimal digits, the second length value to 4 hexadecimal digits, and the third length value to 2 hexadecimal digits. For example, assuming the ciphertext string is a hexadecimal string 21 8D 2501 94 10C9 8C A1 4C 4D 74CE FF D4 CD, the current date is November 29, 2018, the set date value is August 1, 2018, the first length is a 12-digit hexadecimal number, the second length is a 4-digit hexadecimal number, and the third length is a 2-digit hexadecimal number, then the first activation code substring is 21 8D 25 01 94. Since the difference between the current date and the set date threshold is 120 days, it is represented as a 4-digit hexadecimal number 00 78. When the random string is AB, the activation code can be represented as 00 78 21 8D 25 01 94AB.

[0080] In this way, by adding a random string to the activation code, the flexibility of the activation code is enhanced, and its security is further improved.

[0081] It should be noted that when the activation code generation device is applied to a TSP server, after generating the activation code based on the target string according to the set activation code generation method, it may further include:

[0082] Send a response message to the vehicle's infotainment system, carrying the activation code to be verified.

[0083] Understandably, after the activation code generating device generates a corresponding activation code based on the vehicle identification number, product serial number and international mobile subscriber identification number sent by the vehicle system, it sends the activation code to the vehicle system so that the vehicle system can activate the vehicle system in a timely manner based on the activation code.

[0084] It should be noted that when the activation code generation device is applied to an in-vehicle infotainment system, after obtaining the vehicle identification number, the product serial number of the in-vehicle infotainment system, and the International Mobile Subscriber Identity Serial Number (IMSI), the process may further include:

[0085] Send an activation code retrieval request to the vehicle remote service provider server; the activation code retrieval request carries the vehicle identification number of the vehicle, the product serial number of the vehicle system and the International Mobile Subscriber Identity Item (IMSI).

[0086] Receive a response message from the vehicle remote service provider server, which carries an activation code to be verified, based on the activation code acquisition request.

[0087] The activation code to be verified is verified using the activation code generated by the activation code generation device, and the vehicle system is activated when the verification is successful.

[0088] Understandably, to activate the in-vehicle infotainment system, an activation code for activation is required from the vehicle remote service provider's server. Therefore, an activation code retrieval request needs to be sent to the vehicle remote service provider's server, and an activation code to be verified needs to be received from the server based on the retrieval request. Then, the activation code to be verified is used against the activation code generated on the in-vehicle infotainment system to activate the system upon successful verification. It should be noted that the activation code generated on the in-vehicle infotainment system refers to the activation code generated by the activation code generation device used in the system.

[0089] Here, verifying the activation code to be verified using the activation code generated by the activation code generation device can mean verifying whether the activation code generated by the vehicle-mounted terminal is consistent with the activation code to be verified. If they are consistent, the verification is successful; otherwise, the verification fails. It should be noted that the consistency between the activation code generated by the vehicle-mounted terminal and the activation code to be verified can be any of the following: when the activation code is a string of length extracted sequentially from the encrypted string, the activation code generated by the vehicle-mounted terminal is detected to be the same as the activation code to be verified; when the activation code is composed of the first activation code substring and the second activation code substring, the activation code generated by the vehicle-mounted terminal is detected to be the same as the activation code to be verified; when the activation code is composed of the first activation code substring, the second activation code substring, and the third activation code substring, the portion of the activation code generated by the vehicle-mounted terminal and the activation code to be verified composed of the first activation code substring and the second activation code substring is detected to be the same, in which case the portion composed of the third activation code substring may be different.

[0090] In this way, the vehicle's infotainment system is activated by generating an activation code that binds the vehicle's vehicle identification number, the infotainment system's product serial number, and the International Mobile Subscriber Identity (IMSI), further ensuring the user's legitimate use of the infotainment system.

[0091] Based on the same inventive concept as the foregoing embodiments, this embodiment will provide a detailed description of the technical solutions of the foregoing embodiments through specific examples. Figure 2 This is a schematic diagram of a specific process for an activation code generation method provided in an embodiment of the present invention, including the following steps:

[0092] Step S201: Turn on the vehicle's infotainment system;

[0093] Here, the user turns on the vehicle's infotainment system after starting the vehicle.

[0094] Step S202: Click the system activation icon on the vehicle infotainment system interface;

[0095] Step S203: After the user service agreement pops up, click OK;

[0096] Here, when you click the system activation icon on the vehicle's infotainment system interface, the vehicle will display a user service agreement dialog box.

[0097] Step S204: Click to get the activation code;

[0098] Step S205: The vehicle-mounted unit sends an activation code acquisition request to the TSP server, which carries the vehicle identification number, the product serial number of the vehicle-mounted unit, and the International Mobile Subscriber Identity Serial Number.

[0099] Here, after the vehicle-mounted unit obtains the vehicle identification number (VIN), the product serial number (PDSN), and the international mobile subscriber identification number (IMSI) of the vehicle through controller local area network communication, it sends an activation code acquisition request carrying the vehicle identification number, the product serial number, and the international mobile subscriber identification number to the TSP server.

[0100] Step S206: After receiving the activation code acquisition request, the TSP server generates an activation code according to the activation code acquisition request and returns the activation code to the vehicle system;

[0101] Here, after receiving the activation code acquisition request, the TSP server generates an activation code based on the vehicle identification number, the product serial number of the vehicle's infotainment system, and the International Mobile Subscriber Identity Serial Number (IMSI), and returns the activation code to the vehicle's infotainment system.

[0102] Step S207: After the vehicle-mounted system verifies the activation code sent by the TSP server, the vehicle-mounted system is activated.

[0103] Here, the vehicle-mounted system generates an activation code based on the vehicle identification number, the product serial number of the vehicle-mounted system, and the International Mobile Subscriber Identity (IMSI). It then uses this activation code to verify the activation code sent by the TSP server and activates the vehicle-mounted system upon successful verification.

[0104] As described above, the activation code generation method provided in the above embodiments can process the binding relationship between the vehicle system, the vehicle, and the SIM card to obtain the activation code. It is applicable to external T-BOX solutions as well as solutions where the SIM card is integrated into the vehicle system.

[0105] The activation code generation process is explained in detail below with a specific example. First, the activation code format and encryption algorithm are defined. The activation code is a 16-character hexadecimal string consisting of characters from 0 to F. The encryption algorithm uses the Advanced Encryption Standard (ECB) algorithm in ECB mode. When the last digit of the PDSN is 0 / 2 / 4 / 8, the string generated by performing an MD5 hash on the VIN is used as the key; when the last digit of the PDSN is 3 / 6 / 9, the string generated by performing an MD5 hash on the IMSI is used as the key; when the last digit of the PDSN is 1 / 4 / 7, the string generated by performing an MD5 hash on the PDSN is used as the key. The string generated by performing an MD5 hash on the VIN, IMSI, and PDSN in sequence is used as the ciphertext. The first 5 bytes of the hexadecimal ciphertext are taken to form a 10-character string, denoted as string A. The number of days from the setting date to the current date is represented by 4 hexadecimal digits, denoted as string B. Place the 4 characters of string B together with string A to form a 14-character string, for example, by placing string B before string A, and finally add a 2-digit hexadecimal random string, for example, by placing it at the end of the string composed of strings A and B.

[0106] Assuming the VIN is LSJW26792CS990006, the IMSI is 460011418603055, and the PDSN is P007001100000311, the string formed by arranging the VIN, IMSI, and PDSN in sequence is LSJW26792CS990006460011418603055P007001100000311. The plaintext is the string 36CBBD057B0B80A0BBB02E7EF37B3F57 generated by performing an MD5 operation on this string. Since the last bit of the PDSN is 1, the key is the string 490BF05E3CF51B4AE3E00FBC895C1ED0 generated by performing an MD5 operation on the PDSN. The plaintext, encrypted using the AES algorithm with the key, yields the ciphertext 21 8D 25 01 94 10C9 8C A1 4C 4D 74CE FF D4CD. The first five bytes of the ciphertext, 21 8D 25 01 94, are denoted as string A. The current date is taken as November 29, 2018. The number of days since the set date, August 1, 2018, is represented in hexadecimal as 00 78, denoted as string B. Finally, a random string composed of CD is placed at the end of strings A and B, generating the activation code 00 78 21 8D 25 01 94CD.

[0107] Based on the same inventive concept as the foregoing embodiments, this embodiment of the invention provides an activation code generation device, such as... Figure 3 As shown, the device includes: a processor 310 and a memory 311 for storing computer programs capable of running on the processor 310; wherein, Figure 3 The processor 310 shown in the diagram does not indicate that there is only one processor 310, but only indicates the positional relationship of the processor 310 relative to other devices. In practical applications, there can be one or more processors 310; similarly, Figure 3 The memory 311 shown in the diagram has the same meaning, that is, it is only used to indicate the positional relationship of memory 311 relative to other devices. In practical applications, there can be one or more memories 311. When the processor 310 runs the computer program, it implements the activation code generation method as described above.

[0108] The device may also include at least one network interface 312. The various components of the device are coupled together via a bus system 313. It is understood that the bus system 313 is used to implement communication between these components. In addition to a data bus, the bus system 313 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 3 The general designated all buses as Bus System 313.

[0109] The memory 311 can be volatile memory or non-volatile memory, or both. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), ferromagnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disc, or compact disc read-only memory (CD-ROM); the magnetic surface memory can be disk storage or magnetic tape storage. The volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), SyncLink Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM).The memory 311 described in the embodiments of the present invention is intended to include, but is not limited to, these and any other suitable types of memory.

[0110] The memory 311 in this embodiment of the invention is used to store various types of data to support the operation of the device. Examples of such data include: any computer programs used to operate on the device, such as operating systems and applications; contact data; phonebook data; messages; pictures; videos, etc. The operating system includes various system programs, such as the framework layer, core library layer, driver layer, etc., used to implement various basic services and handle hardware-based tasks. Applications can include various applications, such as media players, browsers, etc., used to implement various application services. Here, the program implementing the method of this embodiment of the invention can be included in the application.

[0111] Based on the same inventive concept as the foregoing embodiments, this embodiment also provides a computer storage medium storing a computer program. The computer storage medium can be a magnetic random access memory (FRAM), a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a flash memory, a magnetic surface memory, an optical disc, or a compact disc read-only memory (CD-ROM), etc.; it can also be various devices including one or any combination of the above-mentioned memories, such as mobile phones, computers, tablet devices, personal digital assistants, etc. When the computer program stored in the computer storage medium is run by a processor, it implements the activation code generation method described above. For the specific steps implemented when the computer program is executed by the processor, please refer to [link to relevant documentation]. Figure 1 The description of the illustrated embodiments will not be repeated here.

[0112] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0113] In this document, the terms “comprising,” “including,” or any other variations thereof are intended to cover non-exclusive inclusion, which includes not only the elements listed but also other elements not expressly listed.

[0114] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.

Claims

1. An activation code generation method applied to an activation code generation device, characterized in that, The method includes: Obtain the vehicle identification number, the in-vehicle infotainment system's product serial number, and the International Mobility Subscriber Identity (IMSI); The vehicle identification number of the vehicle, the product serial number of the vehicle system and the International Mobile Subscriber Identity Serial Number are arranged and combined to obtain the target string generated after the arrangement and combination; Based on the target string, generate an activation code according to the set activation code generation method; The step of generating an activation code based on the target string according to the set activation code generation method includes: A first string is determined, and the correspondence between the last character of the first string and the second string is queried based on the last character of the first string to obtain the second string that matches the last character of the first string; the first string and the second string are one of the following strings: vehicle identification number, vehicle serial number and international mobile subscriber identification number; The second string and the target string are encrypted according to the set encryption algorithm to generate a ciphertext string; Extract characters from the encrypted string and obtain the string that matches the set length value as the activation code; The first string includes the product serial number of the vehicle system. The step of querying the correspondence between the last character of the first string and the second string based on the last character of the first string to obtain the second string that matches the last character of the first string includes: When the last character of the product serial number of the vehicle system is an even number, the second string is the vehicle identification number of the vehicle. When the last character of the vehicle's product serial number is odd, if the last character of the vehicle's product serial number is a multiple of 3, then the second string is the International Mobile Subscriber Identity (IMSI); otherwise, the second string is the vehicle's product serial number.

2. The method of claim 1, wherein, The step of encrypting the second string and the target string according to the set encryption algorithm to generate a ciphertext string includes: The second string is encrypted using the set message digest algorithm to generate a key string; The target string is encrypted using the set message digest algorithm to generate a plaintext string; The key string and the plaintext string are encrypted using the set advanced encryption standard algorithm to generate a ciphertext string.

3. The method according to claim 1, characterized in that, The step of extracting characters from the encrypted string to obtain a string that matches the set length value as the activation code includes: Starting from the first character of the encrypted string, select strings of the set length value sequentially as activation codes.

4. The method according to claim 1, characterized in that, The step of extracting characters from the encrypted string to obtain a string that matches the set length value as the activation code includes: Starting from the first character of the ciphertext string, select strings of length 1 set to the first length value sequentially as the first activation code substring; Generate a string of the second set length value based on the difference between the current date and the set date value, and use it as the second activation code substring. The first activation code substring and the second activation code substring are arranged and combined according to the set permutation and combination order to generate an activation code; The step of arranging and combining the first activation code substring and the second activation code substring according to a set permutation and combination order to generate an activation code includes: The first activation code substring, the second activation code substring, and the third activation code substring are arranged and combined according to the set permutation and combination order to generate an activation code. The third activation code substring is a random string with a length of the set third length value.

5. The method according to any one of claims 1 to 4, characterized in that, The activation code generation device is applied to the automotive remote service provider server. The acquisition of the vehicle identification number, the in-vehicle infotainment system's product serial number, and the International Mobile Subscriber Identity (IMSI) includes: The system receives an activation code retrieval request sent by the vehicle's infotainment system; the activation code retrieval request carries the vehicle identification number, the infotainment system's product serial number, and the International Mobile Subscriber Identity Serial Number (IMSI).

6. The method according to claim 5, characterized in that, After generating the activation code based on the target string according to the set activation code generation method, the process further includes: Send a response message to the vehicle's infotainment system, carrying the activation code to be verified.

7. The method according to any one of claims 1 to 4, characterized in that, The activation code generation device is applied to the vehicle infotainment system. The process of obtaining the vehicle identification number, the vehicle infotainment system's product serial number, and the International Mobile Subscriber Identity (IMSI) includes: Receive activation request instructions to activate the vehicle's infotainment system; In response to the activation request instruction, the vehicle identification number, the product serial number of the vehicle system, and the International Mobile Subscriber Identity Serial Number (IMSI) are obtained.

8. The method according to claim 7, characterized in that, After obtaining the vehicle identification number, the in-vehicle system's product serial number, and the International Mobile Subscriber Identity (IMSI), the process also includes: Send an activation code retrieval request to the vehicle remote service provider server; the activation code retrieval request carries the vehicle identification number of the vehicle, the product serial number of the vehicle system and the International Mobile Subscriber Identity Item (IMSI). Receive a response message from the vehicle remote service provider server, which carries an activation code to be verified, based on the activation code acquisition request. The activation code to be verified is verified using the activation code generated by the activation code generation device, and the vehicle system is activated when the verification is successful.

9. An activation code generation device, characterized in that, include: The processor and the memory used to store computer programs that can run on the processor. When the processor runs the computer program, it implements the activation code generation method according to any one of claims 1 to 8.

10. A computer storage medium, characterized in that, The device contains a computer program that, when executed by a processor, implements the activation code generation method according to any one of claims 1 to 8.