Software authorization method and device, medium and program product
By analyzing and processing the authorization ciphertext code in the first electronic device, obtaining the authorization control item information and sending it to the second electronic device as a return instruction, the problem of low authorization security in the external electronic device authorization method is solved, and higher software authorization security is achieved.
Patent Information
- Application Number
- CN202411710685.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-26
- Publication Date
- 2025-03-07
AI Technical Summary
When using external electronic device authorization, the security of software authorization is low, which can easily lead to the leakage of authorization ciphertext code.
By storing the parsing algorithm in the first electronic device, the received application instruction is parsed, the authorization ciphertext code is parsed to obtain the authorization control item information, and sent it to the second electronic device as a return instruction, thereby realizing software authorization.
This method improves the security of software authorization, reduces the probability of authorized ciphertext code leakage, avoids the transmission of authorized ciphertext code, and enhances the security of the authorization process.
Smart Images

Figure CN119577704A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a software authorization method, device, medium and program product. Background Art
[0002] In actual applications, some software requires authorization before it can be started or the software module can be unlocked. Software authorization methods include file authorization and external electronic device authorization.
[0003] When authorizing software through file authorization, for example, you can obtain the authorization ciphertext code in the license file (such as license.dat file, etc.), determine the authorization control item by parsing the authorization ciphertext code in the software, and start the software or unlock the corresponding software module according to the authorization control item.
[0004] When authorizing software through external electronic device authorization, for example, you can first connect an external electronic device (such as a dongle) that stores the authorization ciphertext code to an electronic device that carries the software, and then use data transmission to allow the software to obtain the authorization ciphertext code stored in the external electronic device, and determine the authorization control item by parsing the authorization ciphertext code in the software, so as to start the software or unlock the corresponding software module according to the authorization control item. However, when authorizing through an external electronic device, the security of authorization is low. Summary of the invention
[0005] The present application provides a software authorization method, device, medium and program product, which are used to improve the security of authorization when the software is authorized by an external electronic device.
[0006] In a first aspect, the present application provides a software authorization method, which is applied to a first electronic device, wherein the first electronic device is connected to a second electronic device carrying the software, and the method includes:
[0007] receiving an application instruction sent by the second electronic device, wherein the application instruction is used to request authorization for the software;
[0008] According to the application instruction, the authorization ciphertext code stored in the first electronic device is parsed to obtain the authorization control item information; wherein the authorization ciphertext code is used to authorize the control item, and the authorization control item information is used to indicate the control item determined to be authorized in the control items of the software;
[0009] A return instruction obtained according to the authorization control item information is sent to the second electronic device, so that the software is authorized according to the return instruction.
[0010] Furthermore, in the method as described above, a parsing algorithm is stored in the first electronic device, and the parsing algorithm is used to parse the authorization ciphertext code; parsing the authorization ciphertext code stored in the first electronic device according to the application instruction includes:
[0011] According to the application instruction, the authorization ciphertext code stored in the first electronic device is parsed using the parsing algorithm.
[0012] Furthermore, in the above method, the application instruction includes a first key and a time ciphertext obtained by encrypting the system time of the second electronic device by the first key; and parsing the authorization ciphertext code stored in the first electronic device according to the application instruction includes:
[0013] Decrypting the time ciphertext according to the first key to obtain the system time of the second electronic device;
[0014] Determining whether to parse the authorization ciphertext code stored in the first electronic device according to the system time of the second electronic device;
[0015] If it is determined that the authorization ciphertext code stored in the first electronic device is to be parsed, the authorization ciphertext code stored in the first electronic device is parsed;
[0016] or,
[0017] The application instruction includes the system time of the second electronic device; and the parsing the authorization ciphertext code stored in the first electronic device according to the application instruction includes:
[0018] Determining whether to parse the authorization ciphertext code stored in the first electronic device according to the system time of the second electronic device;
[0019] In the case where it is determined to parse the authorization ciphertext code stored in the first electronic device, the authorization ciphertext code stored in the first electronic device is parsed.
[0020] Furthermore, in the above method, determining whether to parse the authorization ciphertext code stored in the first electronic device according to the system time of the second electronic device includes:
[0021] In the case that the system time is not stored in the first electronic device, the system time of the second electronic device is stored in the first electronic device, and it is determined to parse the authorization ciphertext code stored in the first electronic device.
[0022] Furthermore, in the above method, determining whether to parse the authorization ciphertext code stored in the first electronic device according to the system time of the second electronic device includes:
[0023] In the case where the system time is stored in the first electronic device, comparing the system time stored in the first electronic device with the system time of the second electronic device;
[0024] When the system time of the second electronic device is later than the system time stored in the first electronic device, it is determined that the authorization ciphertext code stored in the first electronic device is parsed; or, when the system time of the second electronic device is earlier than the system time stored in the first electronic device, it is determined not to parse the authorization ciphertext code stored in the first electronic device.
[0025] Furthermore, in the above method, the step of sending a return instruction obtained according to the authorization control item information to the second electronic device includes:
[0026] In the case where the application instruction includes a second key, encrypting the authorization control item information by using the second key to obtain first ciphertext information, and sending a return instruction including the first ciphertext information to the second electronic device;
[0027] or,
[0028] In the case that the application instruction does not include a key, a third key is generated, the authorization control item information is encrypted using the third key to obtain second ciphertext information, and a return instruction including the second ciphertext information is sent to the second electronic device.
[0029] A second aspect of the present application provides a software authorization device, which is applied to a first electronic device, the first electronic device is connected to a second electronic device carrying the software, and the authorization device includes:
[0030] A first receiving module, configured to receive an application instruction sent by the second electronic device, wherein the application instruction is used to request authorization for the software;
[0031] a parsing module, configured to parse the authorization ciphertext code stored in the first electronic device according to the application instruction to obtain authorization control item information; wherein the authorization ciphertext code is used to authorize the control item, and the authorization control item information is used to indicate the control item determined to be authorized in the control items of the software;
[0032] The first sending module is used to send a return instruction obtained according to the authorization control item information to the second electronic device, so that the software is authorized according to the return instruction.
[0033] Furthermore, in the above-mentioned device, a parsing algorithm is stored in the first electronic device, and the parsing algorithm is used to parse the authorization ciphertext code; the parsing module is specifically used to:
[0034] According to the application instruction, the authorization ciphertext code stored in the first electronic device is parsed using the parsing algorithm.
[0035] Furthermore, in the above-mentioned device, the application instruction includes a first key and a time ciphertext obtained by encrypting the system time of the second electronic device by using the first key; and the parsing module is specifically used to:
[0036] Decrypting the time ciphertext according to the first key to obtain the system time of the second electronic device;
[0037] Determining whether to parse the authorization ciphertext code stored in the first electronic device according to the system time of the second electronic device;
[0038] If it is determined that the authorization ciphertext code stored in the first electronic device is to be parsed, the authorization ciphertext code stored in the first electronic device is parsed;
[0039] or,
[0040] The application instruction includes the system time of the second electronic device; the parsing module is specifically used to:
[0041] Determining whether to parse the authorization ciphertext code stored in the first electronic device according to the system time of the second electronic device;
[0042] In the case where it is determined to parse the authorization ciphertext code stored in the first electronic device, the authorization ciphertext code stored in the first electronic device is parsed.
[0043] Furthermore, in the above-mentioned device, the parsing module is specifically used for:
[0044] In the case that the system time is not stored in the first electronic device, the system time of the second electronic device is stored in the first electronic device, and it is determined to parse the authorization ciphertext code stored in the first electronic device.
[0045] Furthermore, in the above-mentioned device, the parsing module is specifically used for:
[0046] In the case where the system time is stored in the first electronic device, comparing the system time stored in the first electronic device with the system time of the second electronic device;
[0047] When the system time of the second electronic device is later than the system time stored in the first electronic device, it is determined that the authorization ciphertext code stored in the first electronic device is parsed; or, when the system time of the second electronic device is earlier than the system time stored in the first electronic device, it is determined not to parse the authorization ciphertext code stored in the first electronic device.
[0048] Further, in the above device, the first sending module is specifically used for:
[0049] In the case where the application instruction includes a second key, encrypting the authorization control item information by using the second key to obtain first ciphertext information, and sending a return instruction including the first ciphertext information to the second electronic device;
[0050] or,
[0051] In the case that the application instruction does not include a key, a third key is generated, the authorization control item information is encrypted using the third key to obtain second ciphertext information, and a return instruction including the second ciphertext information is sent to the second electronic device.
[0052] A third aspect of the present application provides a software authorization method, which is applied to a second electronic device, where the second electronic device carries the software and is connected to a first electronic device, the method comprising:
[0053] Sending an application instruction to the first electronic device, wherein the application instruction is used to request authorization for the software;
[0054] receiving a return instruction sent by the first electronic device and obtained according to the authorization control item information, so that the software is authorized according to the return instruction;
[0055] Among them, the authorization control item information is obtained by the first electronic device parsing the authorization ciphertext code stored in the first electronic device according to the application instruction; the authorization ciphertext code is used to authorize the control item, and the authorization control item information is used to indicate the authorized control item determined in the control item of the software.
[0056] A fourth aspect of the present application provides a software authorization device, which is applied to a second electronic device, the second electronic device is loaded with the software, and the second electronic device is connected to a first electronic device, the authorization device comprising:
[0057] A second sending module, used for sending an application instruction to the first electronic device, wherein the application instruction is used for requesting authorization for the software;
[0058] A second receiving module is used to receive a return instruction sent by the first electronic device and obtained according to the authorization control item information, so that the software is authorized according to the return instruction;
[0059] Among them, the authorization control item information is obtained by the first electronic device parsing the authorization ciphertext code stored in the first electronic device according to the application instruction; the authorization ciphertext code is used to authorize the control item, and the authorization control item information is used to indicate the authorized control item determined in the control item of the software.
[0060] A fifth aspect of the present application provides a software authorization system, the authorization system comprising a second electronic device and a first electronic device connected to the second electronic device, the second electronic device carrying the software;
[0061] The second electronic device is used to send an application instruction to the first electronic device, wherein the application instruction is used to request authorization for the software;
[0062] The first electronic device is used to receive the application instruction sent by the second electronic device, and parse the authorization ciphertext code stored in the first electronic device according to the application instruction to obtain the authorization control item information; wherein the authorization ciphertext code is used to authorize the control item, and the authorization control item information is used to indicate the control item determined to be authorized in the control items of the software;
[0063] The first electronic device is further used to send a return instruction obtained according to the authorization control item information to the second electronic device, so that the software is authorized according to the return instruction;
[0064] The second electronic device is further used to receive a return instruction sent by the first electronic device.
[0065] A sixth aspect of the present application provides an electronic device, including: a memory and a processor;
[0066] The memory stores computer-executable instructions;
[0067] The processor executes the computer-executable instructions stored in the memory to implement the method as described in any one of the first aspects, or to implement the method as described in the third aspect.
[0068] In a seventh aspect, the present application provides a computer-readable storage medium, in which computer-executable instructions are stored. When the computer-executable instructions are executed by a processor, they are used to implement the method described in any one of the first aspects, or to implement the method described in the third aspect.
[0069] In an eighth aspect, the present application provides a computer program product, including a computer program, which, when executed by a processor, implements the method described in any one of the first aspects, or implements the method described in the third aspect.
[0070] The present application provides a software authorization method, device, medium and program product, the method is applied to a first electronic device, the first electronic device is connected to a second electronic device loaded with software, the method includes: receiving an application instruction sent by the second electronic device, the application instruction is used to request authorization for the software; according to the application instruction, parsing the authorization ciphertext code stored in the first electronic device to obtain authorization control item information; wherein the authorization ciphertext code is used to authorize the control item, and the authorization control item information is used to indicate the control item determined to be authorized in the control item of the software; sending a return instruction obtained according to the authorization control item information to the second electronic device, so that the software is authorized according to the return instruction. Based on this, after receiving the application instruction, the first electronic device will parse the authorization ciphertext code inside it, utilizing the computing power of the first electronic device, realizing a more secure parsing process, and also avoiding the operation of transmitting the authorization ciphertext code to the second electronic device, which can reduce the probability of leakage of the authorization ciphertext code; the authorization control item information is used for indication but not for authorization, and when the first electronic device sends the return instruction obtained according to the authorization control item information to the second electronic device, it will not cause the leakage of the authorization capability, so the method can improve the security of software authorization. BRIEF DESCRIPTION OF THE DRAWINGS
[0071] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0072] Figure 1 A schematic diagram of an application scenario for implementing an embodiment of the present application;
[0073] Figure 2 One of the flowcharts of the software authorization method provided in the embodiment of the present application;
[0074] Figure 3 The second flowchart of the software authorization method provided in the embodiment of the present application;
[0075] Figure 4 A flowchart of a second electronic device provided by an embodiment of the present application;
[0076] Figure 5 A flowchart of a first electronic device provided in an embodiment of the present application;
[0077] Figure 6 One of the structural diagrams of the software authorization device provided in the embodiment of the present application;
[0078] Figure 7 The second structural diagram of the software authorization device provided in the embodiment of the present application;
[0079] Figure 8 A schematic diagram of the structure of the software authorization system provided in the embodiment of the present application;
[0080] Fig. 9 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application.
[0081] The above drawings have shown clear embodiments of the present application, which will be described in more detail later. These drawings and text descriptions are not intended to limit the scope of the present application in any way, but to illustrate the concept of the present application to those skilled in the art by referring to specific embodiments. DETAILED DESCRIPTION
[0082] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present application. Instead, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the appended claims.
[0083] In the embodiments of the present application, words such as "first" and "second" are used to distinguish the same or similar items with substantially the same functions and effects. For example, the first electronic device and the second electronic device are only used to distinguish different electronic devices, and their order is not limited. Those skilled in the art can understand that words such as "first" and "second" do not limit the quantity and execution order, and words such as "first" and "second" do not necessarily limit them to be different.
[0084] It should be noted that in the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.
[0085] In the embodiments of the present application, "at least one" means one or more, and "more" means two or more. "And / or" describes the association relationship of the associated objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The character " / " generally indicates that the associated objects before and after are in an "or" relationship.
[0086] In the technical solutions of the embodiments of the present application, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved are in compliance with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0087] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and provide corresponding operation entrances for users to choose to authorize or refuse.
[0088] The technical solution of the present application is described in detail with specific embodiments below. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described below in conjunction with the accompanying drawings.
[0089] In order to clearly understand the technical solution of the present application, the solution of the prior art is first introduced.
[0090] In the existing related technologies, when the software is authorized by using an external electronic device, an application programming interface (API) can be called by the software in the electronic device, so that the external electronic device can send a stored authorization ciphertext code to the electronic device through the API. After the electronic device receives the authorization ciphertext code, the software parses the authorization ciphertext code to obtain an authorization control item, so as to start the software or unlock the corresponding software module according to the authorization control item.
[0091] The authorization ciphertext code can be understood as a tool with software authorization capabilities. Since the API used in the authorization method of external electronic devices is usually a universal interface with a high degree of publicity, the authorization ciphertext code is easily intercepted when it is transmitted through the API, which in turn causes the authorization ciphertext code to be leaked, resulting in reduced authorization security.
[0092] In view of this, the embodiment of the present application provides a software authorization method, which is applied to a first electronic device, and the first electronic device can be understood as an external electronic device. Through this method, after receiving an application instruction requesting authorization of software in the electronic device, the external electronic device parses the authorization ciphertext code in the external electronic device to obtain authorization control item information, and sends the return instruction obtained according to the authorization control item information to the electronic device to authorize the software. In this process, since the storage capacity and computing power of the external electronic device are fully utilized, the authorization ciphertext code is parsed inside the external electronic device, the transmission of the authorization ciphertext code is avoided, and the interception path of the authorization ciphertext code is cut off, which can reduce the probability of leakage of the authorization ciphertext code; and the authorization control item information obtained after parsing the authorization ciphertext code is used to indicate which control items will be authorized, and the authorization control item information does not have the ability to authorize, so the transmission of the authorization control item information will not cause the leakage of the authorization ability. Based on this, the method can be used to perform software authorization with a higher degree of security, and improve the security of software authorization.
[0093] Figure 1 A schematic diagram of an application scenario for implementing an embodiment of the present application is shown as follows: Figure 1 As shown, the second electronic device is a computer loaded with database management system software, and the first electronic device is a user key (user key, Ukey) for authorizing the startup of the database management system software. The Ukey has storage capacity and computing capacity and can perform operations on data. The first electronic device can be connected to the second electronic device through a universal serial bus interface (universal serial bus interface, USB) to read and transmit data, so as to realize the authorization startup or unlocking function module of the database management system software.
[0094] The embodiments of the present application are introduced below in conjunction with the drawings in the specification.
[0095] Figure 2 One of the flowcharts of the software authorization method provided in the embodiment of the present application. In the embodiment of the present application, the executor of the method is a first electronic device, which can be an electronic device with data storage and computing capabilities, such as an external electronic device such as a Ukey, a dongle or a dongle.
[0096] For example, Ukey can be understood as a small electronic device that is directly connected to a computer or other electronic device via USB, has a password verification function, is tamper-proof, has a certain storage space and computing power. Ukey can store the user's private key and digital certificate and perform a series of encryption and decryption logic operations.
[0097] The first electronic device is connected to a second electronic device loaded with software, and the connection may be, for example, a wired connection or a wireless connection, wherein the wired connection is, for example, connected via a USB, and the wireless connection may be, for example, connected via a wireless network. The second electronic device may be an electronic device capable of loading and running software, such as a mobile phone, a computer, and / or a server. The software may be any type of software including a computer program, such as database management system software for managing a database.
[0098] like Figure 2 As shown, the method includes:
[0099] S201, receiving an application instruction sent by a second electronic device, where the application instruction is used to request authorization for software.
[0100] Exemplarily, the application instruction may include a preset instruction code, and the instruction code may be used to request the first electronic device to authorize the software. After the first electronic device and the second electronic device are connected, the application instruction may be sent and received through the connected communication channel.
[0101] S202, according to the application instruction, parse the authorization ciphertext code stored in the first electronic device to obtain authorization control item information; wherein the authorization ciphertext code is used to authorize the control item, and the authorization control item information is used to indicate the authorized control item in the control item of the software.
[0102] Exemplarily, after receiving the application instruction, the first electronic device can read and process the application instruction through a preset computer program. For example, after confirming that the application instruction meets the parsing condition, the first electronic device can parse the authorization ciphertext code stored inside it to obtain the authorization control item information.
[0103] The authorization ciphertext code can be used to authorize the control item, and can be understood as a tool with software authorization capability. For example, the authorization ciphertext code can be an encrypted authentication certificate or authorization key that has the capability to authorize the software. The authorization ciphertext code can be a ciphertext code obtained by encrypting the authentication certificate or authorization file by the software provider.
[0104] The control item can be understood as a startup item and / or a functional module of the software, etc. For example, for a payment software, the control item can be a startup item that controls the startup of the payment software, or a recharge function module or a transfer function module in the payment software, etc.
[0105] The authorized control item information may be information for indicating the authorized control items in the control items of the software. The authorized control item information may be understood as a data code having only the indicating capability but not the capability of authorizing the control items.
[0106] For example, for a database management system software that includes ten control items including a startup item, a data table modification function module, a data table copy function module, and a data table deletion function module, the authorization control item information may indicate that among the ten control items, two control items, the startup item and the data table copy function module, are authorized. After obtaining the authorization control item information, the software may start running the software and unlock the data table copy function module in accordance with the instructions of the authorization control item information, so that the user can enter the database management system and use the data table copy function.
[0107] In one possible implementation, a parsing algorithm is stored in the first electronic device, and the parsing algorithm is used to parse the authorization ciphertext code; according to the application instruction, the authorization ciphertext code stored in the first electronic device is parsed, including: according to the application instruction, the authorization ciphertext code stored in the first electronic device is parsed by the parsing algorithm.
[0108] Exemplarily, the parsing algorithm can be understood as an algorithm including a code or program that can parse the authorization ciphertext code. Taking the first electronic device as Ukey as an example, during the production stage of Ukey, the authorization ciphertext code can be persistently stored in the storage area of Ukey, and the parsing algorithm of the authorization ciphertext code can be stored inside Ukey for parsing the authorization ciphertext code.
[0109] For example, Ukey is connected to a computer loaded with software to be authorized. When the user clicks on the software to start, the software can send an application instruction to Ukey. After receiving the application instruction, Ukey can perform a parsing operation on the stored authorization ciphertext code through a parsing algorithm pre-stored in Ukey. After parsing the authorization ciphertext code, information corresponding to the authorization ciphertext code can be generated, such as authorization control item information.
[0110] In this implementation, combined with the storage capacity and computing power of the first electronic device, a parsing algorithm can be executed within the first electronic device to parse the authorization ciphertext code, thereby avoiding transmission of the authorization ciphertext code to the second electronic device through an API or the like, thereby reducing the probability of leakage of the authorization ciphertext code and improving the security of software authorization.
[0111] S203: Send a return instruction obtained according to the authorization control item information to the second electronic device, so that the software is authorized according to the return instruction.
[0112] Exemplarily, the return instruction may be a data code including the authorization control item information. The return instruction may be sent to the second electronic device through a communication channel established between the first electronic device and the second electronic device. After the second electronic device receives the return instruction, the software to be authorized may execute software startup and / or control item unlocking operations for the control item indicated by the authorization control item information according to the return instruction.
[0113] For example, in some existing methods, the parsing operation of the authorization ciphertext code is usually performed by the software to be authorized on the computer. When implementing this method, it is not fully realized that there is a greater risk of leakage when the authorization ciphertext code is transmitted from Ukey to the computer; further, since it is not realized that the computing power of Ukey itself can be used for parsing operations, it is not conceived to perform the parsing operation of the authorization ciphertext code in Ukey, resulting in low security of software authorization.
[0114] In the method provided in the embodiment of the present application, after receiving the application instruction, the first electronic device will parse the authorization ciphertext code internally, utilizing the computing power of the first electronic device to achieve a more secure parsing process, and also avoiding the operation of transmitting the authorization ciphertext code to the second electronic device, thereby reducing the probability of leakage of the authorization ciphertext code; the authorization control item information is used for indication rather than authorization, and when the first electronic device sends the return instruction obtained according to the authorization control item information to the second electronic device, it will not cause the leakage of authorization capabilities. Therefore, this method can improve the security of software authorization.
[0115] In actual applications, when authorizing software, there may be a problem of over-authorization that is maliciously implemented beyond the authorization period. For example, some software users can modify the computer system time to make the software mistakenly believe that the current real time is within the validity period of the software. In this way, the purpose of starting the software or using the control items that require authorization beyond the validity period can be achieved even though the validity period of the software has expired.
[0116] In one possible implementation, an application instruction includes a first key and a time ciphertext encrypted with the first key to the system time of the second electronic device; according to the application instruction, the authorization ciphertext code stored in the first electronic device is parsed, including: decrypting the time ciphertext according to the first key to obtain the system time of the second electronic device; determining whether to parse the authorization ciphertext code stored in the first electronic device according to the system time of the second electronic device; and parsing the authorization ciphertext code stored in the first electronic device when it is determined that the authorization ciphertext code stored in the first electronic device is to be parsed.
[0117] Exemplarily, the first key may be any string or sequence of numbers used to convert data during encryption and decryption. The first key may be generated by the software to be authorized. For example, the software may generate a random number as the first key by calling a function. The random number may be a random number of any length and may include numbers, letters, and / or symbols. The random number may be a randomly generated number. Compared with a value obtained by a fixed algorithm, a random number has the characteristics of randomness and difficulty in obtaining. Therefore, when a random number is used as the first key, the confidentiality of the encrypted ciphertext may be improved.
[0118] The system time of the second electronic device may be the time of the operating system of the second electronic device, and the system time may include date and real time. For example, the software to be authorized may obtain the system time of the second electronic device by calling a date instruction.
[0119] For example, a symmetric encryption algorithm such as the Advanced Encryption Standard (AES) can be used according to the first key to perform encryption operation on the system time of the second electronic device to obtain a time ciphertext, which can be understood as encrypted data after the system time is encrypted. After obtaining the time ciphertext, the first key and the time ciphertext can be sent to the first electronic device as parameters through an application instruction.
[0120] When the application instruction received by the first electronic device includes the first key and the time ciphertext, the first electronic device may use a decryption algorithm corresponding to the encryption algorithm to decrypt the time ciphertext according to the first key to obtain the system time of the second electronic device, wherein the decryption algorithm may be pre-stored in the first electronic device. After obtaining the system time of the second electronic device, the first electronic device may determine whether to parse the authorization ciphertext code stored in the first electronic device according to the system time of the second electronic device, and if it is determined to parse the authorization ciphertext code stored in the first electronic device, the authorization ciphertext code stored in the first electronic device may be parsed by the parsing algorithm stored in the first electronic device.
[0121] In some implementations, in order to meet the compatibility or authorization timeliness requirements of the second electronic device or the software to be authorized, the application instruction may not include the first key and time ciphertext, but include the system time of the second electronic device, which can be understood as the unencrypted system time of the second electronic device.
[0122] In one possible implementation, the application instruction includes the system time of the second electronic device; according to the application instruction, the authorization ciphertext code stored in the first electronic device is parsed, including: according to the system time of the second electronic device, determining whether to parse the authorization ciphertext code stored in the first electronic device; if it is determined that the authorization ciphertext code stored in the first electronic device is to be parsed, parsing the authorization ciphertext code stored in the first electronic device.
[0123] The system time of the second electronic device is similar to that in the above embodiment and will not be described in detail here.
[0124] In an embodiment of the present application, the time ciphertext and the first key obtained by encrypting the system time of the second electronic device, or the system time of the second electronic device, can be sent to the first electronic device through an application instruction, so that the first electronic device can determine whether to parse the authorization ciphertext code based on the system time of the second electronic device, and then judge whether the system time exceeds the validity period of the software authorization, so as to reduce the probability of overdue authorization and improve the reliability of authorization.
[0125] In one possible implementation, determining whether to parse the authorization ciphertext code stored in the first electronic device is based on the system time of the second electronic device, including: if the system time is not stored in the first electronic device, storing the system time of the second electronic device in the first electronic device, and determining to parse the authorization ciphertext code stored in the first electronic device.
[0126] Exemplarily, when the system time is not stored in the first electronic device, it can be understood that the system time has not been stored in the first electronic device before. For example, before this software authorization, the first electronic device has not authorized the software, and this software authorization is the initial authorization of the first electronic device.
[0127] In the case where the system time is not stored in the first electronic device, the system time of the second electronic device can be stored in the first electronic device to record the current time for subsequent rounds of software authorization. During the initial authorization of the first electronic device, at the same time or after the system time of the second electronic device is persistently stored, it can be determined to parse the authorization ciphertext code stored in the first electronic device, and the steps of parsing and sending authorization control item information can be performed to complete or end the authorization.
[0128] In an embodiment of the present application, when the system time is not stored in the first electronic device, the system time of the second electronic device can be stored in the first electronic device, and a determination can be made to parse the authorization ciphertext code stored in the first electronic device, so as to subsequently determine whether to parse the authorization ciphertext code based on the system time stored this time.
[0129] In a possible implementation, determining whether to parse the authorization ciphertext code stored in the first electronic device according to the system time of the second electronic device includes:
[0130] When the system time is stored in the first electronic device, the system time stored in the first electronic device is compared with the system time of the second electronic device; when the system time of the second electronic device is later than the system time stored in the first electronic device, it is determined to parse the authorization ciphertext code stored in the first electronic device; or, when the system time of the second electronic device is earlier than the system time stored in the first electronic device, it is determined not to parse the authorization ciphertext code stored in the first electronic device.
[0131] Exemplarily, the case where the system time is stored in the first electronic device may be a case where the first electronic device is not authorized for the first time. In this case, the system time stored in the first electronic device may be the system time sent by the second electronic device during the last software authorization. The second electronic device used for the last software authorization may be the same second electronic device used for the current software authorization, or may be a second electronic device different from the second electronic device used for the current software authorization.
[0132] Compare the system time stored in the first electronic device with the system time of the second electronic device; if the system time of the second electronic device is later than the system time stored in the first electronic device, it indicates that the system time included in the application instruction for this authorization is reasonable, and it can be determined that the authorization ciphertext code stored in the first electronic device is to be parsed. If the system time of the second electronic device is earlier than the system time stored in the first electronic device, it indicates that the system time included in the application instruction for this authorization is unreasonable and may be a modified system time. Therefore, it can be determined that the authorization ciphertext code stored in the first electronic device is not to be parsed.
[0133] Exemplarily, when it is determined that the authorization ciphertext code stored in the first electronic device is to be parsed, the system time of the second electronic device obtained through the application instruction during this authorization can be stored in the first electronic device, or the current system time can replace the stored system time. When it is determined that the authorization ciphertext code stored in the first electronic device is not to be parsed, information about the authorization failure can be returned so that the user can be informed of the authorization failure through the information.
[0134] In an embodiment of the present application, when the system time is stored in the first electronic device, the system time stored in the first electronic device is compared with the system time of the second electronic device. When the system time of the second electronic device is earlier or later than the system time stored in the first electronic device, corresponding decisions can be made to solve the problem of overdue authorization caused by the system time sent in this authorization being a modified system time, thereby reducing the probability of overdue authorization and improving the reliability of authorization.
[0135] In order to further improve the security of authorization, the authorization control item information may be encrypted before being sent.
[0136] In a possible implementation, sending a return instruction obtained according to the authorization control item information to the second electronic device includes:
[0137] In the case where the application instruction includes the second key, the authorization control item information is encrypted by the second key to obtain the first ciphertext information, and a return instruction including the first ciphertext information is sent to the second electronic device.
[0138] Exemplarily, the second key may be any string or digital sequence used to convert data during encryption and decryption. The second key may be the first key or may not be the first key.
[0139] For example, when the application instruction includes the first key, the second key can be the first key, which is used to encrypt the authorization control item information when returning the instruction to obtain the first ciphertext information. The first ciphertext information can be understood as the data information after the authorization control item information is encrypted.
[0140] Alternatively, the application instruction may include a first key and may also include a second key different from the first key, for example, the first key is a and the second key is b, the first key a is used to encrypt and decrypt the system time, and the second key b is used to encrypt and decrypt the authorization control item information.
[0141] Exemplarily, similar to the first key, the second key may also be a key of a random number type, which will not be described in detail.
[0142] In a possible implementation, when the application instruction does not include a key, a third key is generated, the authorization control item information is encrypted using the third key to obtain second ciphertext information, and a return instruction including the second ciphertext information is sent to the second electronic device.
[0143] Exemplarily, the third key can be any string or digital sequence used to convert data during encryption and decryption. Similar to the first key or the second key, the third key can also be a key of a random number type, which will not be described in detail.
[0144] For example, when the application instruction does not include the first key, the first electronic device can generate a third key by calling a function to encrypt the authorization control item information to obtain the second ciphertext information, and the second ciphertext information can be understood as the data information after the authorization control item information is encrypted. The first ciphertext information and the second ciphertext information can also be understood as the authorization control item information ciphertext.
[0145] In an embodiment of the present application, the authorization control item information is encrypted by a second key to obtain the first ciphertext information, or the authorization control item information is encrypted by a third key to obtain the second ciphertext information, so that the authorization control item information can be encrypted, the security of the authorization control item information transmission can be improved, and the probability of it being copied, stolen or tampered with can be reduced, thereby improving the security of software authorization.
[0146] Next, through Figure 3 Another software authorization method provided in an embodiment of the present application is described, and the method is applied to a second electronic device, which can be an electronic device such as a mobile phone, a computer and / or a server that has the ability to load and run software. The second electronic device carries the software, and the second electronic device is connected to the first electronic device. The first electronic device, the second electronic device, and the software can refer to the description in the aforementioned embodiment, and will not be repeated here.
[0147] Figure 3 The second flowchart of the software authorization method provided in the embodiment of the present application is as follows: Figure 3 As shown, the method includes:
[0148] S301, sending an application instruction to a first electronic device, where the application instruction is used to request authorization for software.
[0149] S302, receiving a return instruction sent by the first electronic device and obtained according to the authorization control item information, so that the software is authorized according to the return instruction; wherein the authorization control item information is obtained by the first electronic device parsing the authorization ciphertext code stored in the first electronic device according to the application instruction; the authorization ciphertext code is used to authorize the control item, and the authorization control item information is used to indicate the authorized control item determined in the control item of the software.
[0150] Exemplarily, the application instruction may be an instruction for requesting the first electronic device to authorize the software to be authorized loaded in the second electronic device, and the application instruction may be generated and issued by the software to be authorized. The specific implementation of the embodiment of the present application may refer to the description in the above embodiments, and will not be repeated here.
[0151] In the embodiment of the present application, sending an application instruction to the first electronic device can start the process of authorizing the software; receiving a return instruction from the first electronic device can authorize the software according to the information indicated in the return instruction. Since the return instruction is obtained according to the authorization control item information, and the authorization control item information is obtained after parsing the authorization ciphertext code inside the first electronic device, the transmission of the authorization ciphertext code can be avoided during the entire authorization process, thereby reducing the risk of leakage of the authorization ciphertext code and improving the authorization security.
[0152] Combine the following Figure 4 and Figure 5 , and then describe the above-provided method from the first electronic device side and the second electronic device side through a specific embodiment. Figure 4 A flowchart of the second electronic device side provided in an embodiment of the present application, Figure 5 A flowchart of a first electronic device provided in an embodiment of the present application is provided. Figure 4 and Figure 5 The embodiment shown may be an example of a computer loaded with database management system software as the second electronic device and Ukey as the first electronic device. The database management system software is, for example, Kingbase ES software.
[0153] like Figure 4 As shown, during the authorization process, a computer loaded with database management system software opens the software to start authorization. A random number is generated as a key. The current system time of the computer is obtained and encrypted with the key of the random number to obtain a time ciphertext. The key of the random number and the time ciphertext are sent to Ukey as parameters in the application instruction. When the authorization control item information ciphertext returned by Ukey is successfully obtained, the authorization control item information ciphertext is decrypted with the key of the random number to obtain the authorization control item information, and then the database management system software can be authorized according to the authorization control item information. For example, after authorization, the software can be officially entered, and / or the corresponding functions or modules can be unlocked. If the authorization control item information ciphertext returned by Ukey is not successfully obtained, that is, the acquisition of the authorization control item information ciphertext fails, then the authorization fails. At this time, for example, the software may be exited or the authorization failure may be prompted.
[0154] like Figure 5As shown, after the authorization starts, Ukey receives the application instruction transmitted by the computer, which includes the key of the random number and the time ciphertext. The time ciphertext can be decrypted by the key of the random number to obtain the current system time of the computer. It can be determined whether this authorization is the first authorization of Ukey by determining whether the system time has been stored. If so, the current system time of the acquired computer is persistently stored in the Ukey storage area. After that, the authorization ciphertext code can be parsed and a return instruction can be sent. If not, that is, when it is determined that it is not the first authorization, the current system time of the acquired computer is compared with the system time in the Ukey storage area to determine whether the acquired system time is later than the stored system time. If not, that is, the acquired system time is earlier than the stored system time, it is suspected that the system time is maliciously tampered with to illegally obtain authorization, and an error message is returned, which may, for example, indicate authorization failure. If so, that is, the obtained system time is later than the stored system time, the authorization ciphertext code is parsed to obtain the authorization control item information, the authorization control item information is encrypted using a random number key to obtain the authorization control item information ciphertext, and the authorization control item information ciphertext is returned to the computer's database management system software to enable it to perform software authorization.
[0155] In the embodiment of the present application, by generating a random number in the software as a key for the encryption and decryption of the system time and the authorization control item information, dynamic encryption based on random numbers can be achieved, which can improve the data security during the instruction transmission process. With the support of the storage capacity and computing power of Ukey, the purpose of preventing users from tampering with and illegally obtaining the authorization ciphertext code is achieved, the leakage of the authorization ciphertext code is avoided, the illegal copying and illegal tampering of the authorization ciphertext code is prevented, and the authorization security is improved. Furthermore, by using the storage capacity of Ukey to store the system time and compare it with the current system time, it can prevent users from overusing the authorization by modifying the system time to a certain extent, thereby improving the reliability of authorization.
[0156] Figure 6 This is one of the structural diagrams of the software authorization device provided in the embodiment of the present application, such as Figure 6 As shown, an embodiment of the present application provides a software authorization device, which is applied to a first electronic device, and the first electronic device is connected to a second electronic device loaded with software, and the device includes:
[0157] The first receiving module 601 is used to receive an application instruction sent by the second electronic device, where the application instruction is used to request authorization for the software;
[0158] The parsing module 602 is used to parse the authorization ciphertext code stored in the first electronic device according to the application instruction to obtain the authorization control item information; wherein the authorization ciphertext code is used to authorize the control item, and the authorization control item information is used to indicate the control item determined to be authorized in the control item of the software;
[0159] The first sending module 603 is used to send a return instruction obtained according to the authorization control item information to the second electronic device, so that the software is authorized according to the return instruction.
[0160] Optionally, a parsing algorithm is stored in the first electronic device, and the parsing algorithm is used to parse the authorization ciphertext code; the parsing module 602 is specifically used to: parse the authorization ciphertext code stored in the first electronic device through the parsing algorithm according to the application instruction.
[0161] Optionally, the application instruction includes a first key and a time ciphertext encrypted with the first key for the system time of the second electronic device; the parsing module 602 is specifically used to: decrypt the time ciphertext according to the first key to obtain the system time of the second electronic device; determine whether to parse the authorization ciphertext code stored in the first electronic device according to the system time of the second electronic device; and parse the authorization ciphertext code stored in the first electronic device if it is determined that the authorization ciphertext code stored in the first electronic device is to be parsed; or, the application instruction includes the system time of the second electronic device; the parsing module 602 is specifically used to: determine whether to parse the authorization ciphertext code stored in the first electronic device according to the system time of the second electronic device; and parse the authorization ciphertext code stored in the first electronic device if it is determined that the authorization ciphertext code stored in the first electronic device is to be parsed.
[0162] Optionally, the parsing module 602 is specifically used to: when the system time is not stored in the first electronic device, store the system time of the second electronic device in the first electronic device, and determine to parse the authorization ciphertext code stored in the first electronic device.
[0163] Optionally, the parsing module 602 is specifically used to: when the system time is stored in the first electronic device, compare the system time stored in the first electronic device with the system time of the second electronic device; when the system time of the second electronic device is later than the system time stored in the first electronic device, determine to parse the authorization ciphertext code stored in the first electronic device; or, when the system time of the second electronic device is earlier than the system time stored in the first electronic device, determine not to parse the authorization ciphertext code stored in the first electronic device.
[0164] Optionally, the first sending module 603 is specifically used to: when the application instruction includes a second key, encrypt the authorization control item information by using the second key to obtain first ciphertext information, and send a return instruction including the first ciphertext information to the second electronic device; or, when the application instruction does not include a key, generate a third key, encrypt the authorization control item information by using the third key to obtain second ciphertext information, and send a return instruction including the second ciphertext information to the second electronic device.
[0165] The software authorization device provided in the embodiment of the present application can be used to execute the technical solution of the software authorization method applied to the first electronic device in any of the above embodiments of the present application. Its implementation principle and technical effect are similar, and this embodiment will not be repeated here.
[0166] Figure 7 The second structural diagram of the software authorization device provided in the embodiment of the present application is as follows: Figure 7 As shown, the embodiment of the present application also provides a software authorization device, which is applied to a second electronic device, the second electronic device is loaded with software, and the second electronic device is connected to the first electronic device, and the device includes:
[0167] The second sending module 701 is used to send an application instruction to the first electronic device, where the application instruction is used to request authorization for the software;
[0168] The second receiving module 702 is used to receive a return instruction sent by the first electronic device and obtained according to the authorization control item information, so that the software is authorized according to the return instruction;
[0169] The authorization control item information is obtained by the first electronic device parsing the authorization ciphertext code stored in the first electronic device according to the application instruction; the authorization ciphertext code is used to authorize the control item, and the authorization control item information is used to indicate the authorized control item in the control item of the software.
[0170] The software authorization device provided in the embodiment of the present application can be used to execute the technical solution of the software authorization method applied to the second electronic device in any of the above embodiments of the present application. Its implementation principle and technical effect are similar, and this embodiment will not be repeated here.
[0171] Figure 8 A schematic diagram of the structure of the software authorization system provided in the embodiment of the present application, such as Figure 8 As shown, the embodiment of the present application further provides a software authorization system, the authorization system includes a second electronic device 802 and a first electronic device 801 connected to the second electronic device 802, the second electronic device 802 is loaded with software;
[0172] The second electronic device 802 is used to send an application instruction to the first electronic device 801, where the application instruction is used to request authorization for the software;
[0173] The first electronic device 801 is used to receive the application instruction sent by the second electronic device 802, and parse the authorization ciphertext code stored in the first electronic device 801 according to the application instruction to obtain the authorization control item information; wherein the authorization ciphertext code is used to authorize the control item, and the authorization control item information is used to indicate the control item determined to be authorized in the control items of the software;
[0174] The first electronic device 801 is further configured to send a return instruction obtained according to the authorization control item information to the second electronic device 802, so that the software is authorized according to the return instruction;
[0175] The second electronic device 802 is further used to receive a return instruction sent by the first electronic device 801 .
[0176] In an embodiment of the present application, the first electronic device 801 can be used to implement the method executable by the first electronic device as described in the above embodiments, and the second electronic device 802 can be used to implement the method executable by the second electronic device as described in the above embodiments. The implementation principles and technical effects are similar and will not be repeated in this embodiment.
[0177] The embodiments of the present application also provide an electronic device, a computer-readable storage medium, and a computer program product.
[0178] Fig. 9 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application is shown in FIG. Fig. 9 As shown, the electronic device of this embodiment may include: at least one processor 901; and a memory 902 communicatively connected to the at least one processor; wherein the memory 902 stores instructions executable by the at least one processor 901, and the instructions are executed by the at least one processor 901 so that the electronic device executes the method described in any of the above embodiments.
[0179] Optionally, the memory 902 may be independent or integrated with the processor 901 .
[0180] The implementation principle and technical effects of the electronic device provided in this embodiment can be found in the aforementioned embodiments and will not be described in detail here.
[0181] An embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer-executable instructions. When a processor executes the computer-executable instructions, the method described in any of the above embodiments is implemented.
[0182] An embodiment of the present application further provides a computer program product, including a computer program, which implements the method described in any of the above embodiments when executed by a processor.
[0183] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic, for example, the division of the modules is only a logical function division, and there may be other division methods in actual implementation, such as multiple modules can be combined or integrated into another system, or some features can be ignored or not executed.
[0184] The above-mentioned integrated module implemented in the form of a software function module can be stored in a computer-readable storage medium. The above-mentioned software function module is stored in a storage medium, including a number of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to perform some steps of the method described in each embodiment of the present application.
[0185] It should be understood that the above-mentioned processor can be a processing unit (Central Processing Unit, CPU), or other general-purpose processors, digital signal processors (Digital Signal Processor, DSP), application-specific integrated circuits (Application Specific Integrated Circuit, ASIC), etc. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc. The steps of the method disclosed in the application can be directly embodied as being executed by a hardware processor, or can be executed by a combination of hardware and software modules in the processor. The memory may include RAM (Random Access Memory), and may also include NVM (Non-Volatile Memory), such as at least one disk storage, and can also be a USB flash drive, a mobile hard disk, a read-only memory, a disk or an optical disk, etc.
[0186] The above storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read only memory (EEPROM), erasable programmable read only memory (EPROM), programmable read only memory (PROM), read only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk. The storage medium can be any available medium that can be accessed by a general or special-purpose computer.
[0187] An exemplary storage medium is coupled to a processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can be located in a dedicated integrated circuit. Of course, the processor and the storage medium can also exist as discrete components in an electronic device or a main control device.
[0188] It should be noted that, in this article, the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "comprises a ..." does not exclude the existence of other identical elements in the process, method, article or device including the element.
[0189] The serial numbers of the above-mentioned embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.
[0190] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for a terminal device (which can be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in each embodiment of the present application.
[0191] The above are only preferred embodiments of the present application, and are not intended to limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the present application specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present application.
[0192] Those skilled in the art will readily come up with other implementations of the embodiments of the present application after considering the specification and practicing the application disclosed herein. The present application is intended to cover any modifications, uses or adaptations of the embodiments of the present application, which follow the general principles of the embodiments of the present application and include common knowledge or customary technical means in the art that are not disclosed in the embodiments of the present application.
[0193] It should be understood that the embodiments of the present application are not limited to the precise structures described above and shown in the drawings, and various modifications and changes can be made without departing from the scope thereof. The scope of the embodiments of the present application is limited only by the appended claims.
Claims
1. A software authorization method, characterized in that: Applied to a first electronic device, the first electronic device is connected to a second electronic device loaded with the software, the method comprising: receiving an application instruction sent by the second electronic device, wherein the application instruction is used to request authorization for the software; According to the application instruction, the authorization ciphertext code stored in the first electronic device is parsed to obtain the authorization control item information; wherein the authorization ciphertext code is used to authorize the control item, and the authorization control item information is used to indicate the control item determined to be authorized in the control items of the software; A return instruction obtained according to the authorization control item information is sent to the second electronic device, so that the software is authorized according to the return instruction.
2. The method according to claim 1, characterized in that The first electronic device stores a parsing algorithm, and the parsing algorithm is used to parse the authorization ciphertext code; the parsing of the authorization ciphertext code stored in the first electronic device according to the application instruction includes: According to the application instruction, the authorization ciphertext code stored in the first electronic device is parsed using the parsing algorithm.
3. The method according to claim 1 or 2, characterized in that: The application instruction includes a first key and a time ciphertext obtained by encrypting the system time of the second electronic device by using the first key; and parsing the authorization ciphertext code stored in the first electronic device according to the application instruction includes: Decrypting the time ciphertext according to the first key to obtain the system time of the second electronic device; Determining whether to parse the authorization ciphertext code stored in the first electronic device according to the system time of the second electronic device; If it is determined that the authorization ciphertext code stored in the first electronic device is to be parsed, the authorization ciphertext code stored in the first electronic device is parsed; or, The application instruction includes the system time of the second electronic device; and the parsing the authorization ciphertext code stored in the first electronic device according to the application instruction includes: Determining whether to parse the authorization ciphertext code stored in the first electronic device according to the system time of the second electronic device; In the case where it is determined to parse the authorization ciphertext code stored in the first electronic device, the authorization ciphertext code stored in the first electronic device is parsed.
4. The method according to claim 3, characterized in that The determining, according to the system time of the second electronic device, whether to parse the authorization ciphertext code stored in the first electronic device includes: In the case that the system time is not stored in the first electronic device, the system time of the second electronic device is stored in the first electronic device, and it is determined to parse the authorization ciphertext code stored in the first electronic device.
5. The method according to claim 3, characterized in that: The determining, according to the system time of the second electronic device, whether to parse the authorization ciphertext code stored in the first electronic device includes: In the case where the system time is stored in the first electronic device, comparing the system time stored in the first electronic device with the system time of the second electronic device; When the system time of the second electronic device is later than the system time stored in the first electronic device, it is determined that the authorization ciphertext code stored in the first electronic device is parsed; or, when the system time of the second electronic device is earlier than the system time stored in the first electronic device, it is determined not to parse the authorization ciphertext code stored in the first electronic device.
6. The method according to claim 1 or 2, characterized in that: The sending a return instruction obtained according to the authorization control item information to the second electronic device includes: In the case where the application instruction includes a second key, encrypting the authorization control item information by using the second key to obtain first ciphertext information, and sending a return instruction including the first ciphertext information to the second electronic device; or, In the case that the application instruction does not include a key, a third key is generated, the authorization control item information is encrypted using the third key to obtain second ciphertext information, and a return instruction including the second ciphertext information is sent to the second electronic device.
7. A software authorization method, characterized in that: Applied to a second electronic device, the second electronic device is loaded with the software, and the second electronic device is connected to the first electronic device, the method includes: Sending an application instruction to the first electronic device, wherein the application instruction is used to request authorization for the software; receiving a return instruction sent by the first electronic device and obtained according to the authorization control item information, so that the software is authorized according to the return instruction; Among them, the authorization control item information is obtained by the first electronic device parsing the authorization ciphertext code stored in the first electronic device according to the application instruction; the authorization ciphertext code is used to authorize the control item, and the authorization control item information is used to indicate the authorized control item determined in the control item of the software.
8. An electronic device, characterized in that: include: Memory and processor; The memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory to implement the method according to any one of claims 1 to 7.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, which are used to implement the method according to any one of claims 1 to 7 when executed by a processor.
10. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.