CN113868604A - Software authorization method, system, device and computer readable storage medium - Google Patents
Software authorization method, system, device and computer readable storage medium Download PDFInfo
- Publication number
- CN113868604A CN113868604A CN202111022779.3A CN202111022779A CN113868604A CN 113868604 A CN113868604 A CN 113868604A CN 202111022779 A CN202111022779 A CN 202111022779A CN 113868604 A CN113868604 A CN 113868604A
- Authority
- CN
- China
- Prior art keywords
- authorization
- data
- verification
- software
- result
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000013475 authorization Methods 0.000 claims abstract description 178
- 238000012795 verification Methods 0.000 claims abstract description 132
- 230000006870 function Effects 0.000 claims description 42
- 238000012545 processing Methods 0.000 claims description 20
- 230000015654 memory Effects 0.000 claims description 11
- 238000007781 pre-processing Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 13
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
The invention discloses a software authorization method, a system, a device and a computer readable storage medium. The method comprises the following steps: acquiring machine code data of terminal equipment corresponding to software to be authorized; generating an authorization file according to the machine code data; sending the authorization file to the terminal equipment according to a preset sending mode; on the terminal equipment, verifying the authorization file to obtain a verification result; and authorizing the software to be authorized according to the verification result. By way of example of this method: the authorization certificate can be sent to the terminal equipment through a preset sending mode, so that the software to be authorized on the terminal equipment is authorized.
Description
Technical Field
The present invention relates to the field of computer technologies, and in particular, to a software authorization method, system, device, and computer-readable storage medium.
Background
After the software developer completes the software development, the software developer needs to release or install the software into the environment of the user for use, and for the software delivered to the user, the software development company needs to make restrictions on their use, such as including use time, use authority, and the like, so as to avoid the software from being abused.
At present, some companies pay more and more attention to the problem of network security, the network does not support external connection, and software is generally used in an intranet, so that the software cannot be authorized in an internet mode.
In the related art, the networking online authorization mode is as follows: the user installs the system and then performs registration authorization through the network, and the registration mode requires networking of the terminal device for authorization, and when the terminal device is not connected with an external network, authorization cannot be performed.
In the related art, the USB dongle authorization mode: the lib library of an authorization algorithm manufacturer is quoted to inquire the USB equipment, the authorized lib library is communicated with the USB, a chip built in the USB informs whether the authorization is successful or not, however, the hardware cost of the USB dongle is high, and the built-in authorization algorithm is charged, so that the cost in the authorization process is overhigh.
Disclosure of Invention
The present invention is directed to solving at least one of the problems of the prior art. Therefore, the invention provides a software authorization method, a system, a device and a computer readable storage medium, which can transmit an authorization certificate to a terminal device through a preset transmission mode, so as to authorize software to be authorized on the terminal device.
The software authorization method according to the embodiment of the first aspect of the invention application comprises the following steps:
acquiring machine code data of terminal equipment corresponding to software to be authorized;
generating an authorization file according to the machine code data;
sending the authorization file to the terminal equipment according to a preset sending mode;
on the terminal equipment, verifying the authorization file to obtain a verification result;
and authorizing the software to be authorized according to the verification result.
The software authorization method provided by the embodiment of the invention at least has the following beneficial effects:
machine code data of the terminal device corresponding to the software to be authorized is obtained; generating an authorization file according to the machine code data; sending the authorization file to the terminal equipment according to a preset sending mode; on the terminal equipment, verifying the authorization file to obtain a verification result; and authorizing the software to be authorized according to the verification result, and sending the authorization certificate to the terminal equipment through a preset sending mode so as to authorize the software to be authorized on the terminal equipment.
According to some embodiments of the application, comprising:
acquiring parameter data of software to be authorized;
preprocessing the parameter data and the machine code data to obtain authorization certificate data;
and encrypting the authorization certificate data according to a preset encryption function to obtain an authorization file.
According to some embodiments of the application, comprising:
acquiring preset key data;
combining the key data and the authorization certificate data to obtain data to be encrypted;
and encrypting the data to be encrypted according to the encryption function to obtain the authorization file.
According to some embodiments of the application, comprising:
acquiring a preset decryption function;
decrypting the authorization file according to the decryption function to obtain authorization certificate data;
acquiring verification data of software to be authorized;
and verifying the authorization certificate data according to the verification data to obtain a verification result.
According to some embodiments of the application, comprising:
combining the key data and the authorization file to obtain data to be decrypted;
and decrypting the data to be decrypted according to the decryption function to obtain the authorization certificate data.
According to some embodiments of the application, comprising:
the verification data includes at least one of: verifying file path data, verifying machine code data, verifying name data and verifying authorization validity date data;
the verification result at least comprises one of the following: a first result, a second result, a third result, a fourth result;
verifying the authorization certificate data according to the verification data to obtain a verification result, comprising:
performing first verification processing on the authorization certificate data according to the verification file path data to obtain a first result;
if the first result is that the verification is successful, performing second verification processing on the authorization certificate data according to the verification machine code data to obtain a second result;
if the second result is that the verification is successful, performing third verification processing on the authorization certificate data according to the verification name data to obtain a third result;
if the third result is that the verification is successful, fourth verification processing is carried out on the authorization certificate data according to the verification authorization validity date data, and a fourth result is obtained.
According to some embodiments of the application, comprising:
and if the fourth result is verified successfully, authorizing the software to be authorized.
A software authorization system according to an embodiment of the second aspect of the present application includes:
the acquisition module is used for acquiring machine code data of the terminal equipment corresponding to the software to be authorized;
the generating module is used for generating an authorization file according to the machine code data;
the sending module is used for sending the authorization file to the terminal equipment according to a preset sending mode;
the verification module is used for verifying the authorization file on the terminal equipment to obtain a verification result;
and the authorization module is used for authorizing the software to be authorized according to the verification result.
A software authorization apparatus according to an embodiment of the third aspect of the present application, comprising:
a processor;
a memory for storing an executable program;
when the executable program is executed by the processor, it is obtained that the software authorization means implements the software authorization method according to the first aspect of the invention.
A computer-readable storage medium according to an embodiment of the fourth aspect of the present application stores executable instructions that are executable by a computer to cause the computer to perform the software authorization method according to the first aspect of the present invention.
Additional aspects and advantages of the invention will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the invention.
Drawings
The invention is further described with reference to the following figures and examples, in which:
FIG. 1 is a flowchart illustrating a software authorization method according to an embodiment of the present invention;
FIG. 2 is a flowchart illustrating a step S200 of the software authorization method according to the present invention;
FIG. 3 is a flowchart illustrating a step S230 of the software authorization method according to the present invention;
FIG. 4 is a flowchart illustrating a step S400 of the software authorization method according to the present invention;
FIG. 5 is a flowchart illustrating a step S420 of the software authorization method according to the present invention;
fig. 6 is a flowchart illustrating a specific process of step S440 in the software authorization method according to the present invention.
Detailed Description
Reference will now be made in detail to embodiments of the present invention, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to the same or similar elements or elements having the same or similar function throughout. The embodiments described below with reference to the accompanying drawings are illustrative only for the purpose of explaining the present invention, and are not to be construed as limiting the present invention.
In the description of the present invention, it should be understood that the orientation or positional relationship referred to in the description of the orientation, such as the upper, lower, front, rear, left, right, etc., is based on the orientation or positional relationship shown in the drawings, and is only for convenience of description and simplification of description, and does not indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and thus, should not be construed as limiting the present invention.
In the description of the present invention, the meaning of a plurality is one or more, the meaning of a plurality is two or more, and the above, below, exceeding, etc. are understood as excluding the present numbers, and the above, below, within, etc. are understood as including the present numbers. If the first and second are described for the purpose of distinguishing technical features, they are not to be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated or implicitly indicating the precedence of the technical features indicated.
In the description of the present invention, unless otherwise explicitly limited, terms such as arrangement, installation, connection and the like should be understood in a broad sense, and those skilled in the art can reasonably determine the specific meanings of the above terms in the present invention in combination with the specific contents of the technical solutions.
In the description of the present invention, reference to the description of the terms "one embodiment," "some embodiments," "an illustrative embodiment," "an example," "a specific example," or "some examples," etc., means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the present invention. In this specification, the schematic representations of the terms used above do not necessarily refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.
First, several terms referred to in the present application are resolved:
machine code data: also known as machine instruction code data, is a set of binary data used to control the operations and operand addresses that a computer should do.
Authorization file: the method refers to a self-protection mode adopted by a development company for preventing piracy of some application software. For example, sometimes some software is out of date and if it is to be used, an authorization file must be used.
Symmetric encryption algorithm: in the symmetric encryption algorithm, a data sender processes plaintext data and key data together through an encryption function of the encryption algorithm, and then the plaintext data and the key data are changed into complex ciphertext data to be sent out. After receiving the ciphertext data, the data receiver needs to decrypt the ciphertext data by using the key used for encryption and the inverse algorithm of the same algorithm to recover the ciphertext data into readable plaintext data if the data receiver wants to decode the original plaintext data.
Key data: is a character string composed of numbers, letters or special symbols, and is used for controlling the process of data encryption and decryption.
As shown in fig. 1, which is a schematic flow chart illustrating an implementation of a software authorization method provided in an embodiment of the present application, the software authorization method may include, but is not limited to, steps S100 to S500.
S100, acquiring machine code data of the terminal equipment corresponding to the software to be authorized;
s200, generating an authorization file according to the machine code data;
s300, sending the authorization file to the terminal equipment according to a preset sending mode;
s400, verifying the authorization file on the terminal equipment to obtain a verification result;
and S500, authorizing the software to be authorized according to the verification result.
In step S100 of some embodiments, machine code data of a terminal device corresponding to software to be authorized is obtained, and if a software developer needs to perform authorization management on the software to be authorized of a user, the machine code data of the terminal device to be installed of the software to be authorized needs to be obtained at a user end first, and is used to be sent to the software developer, so as to generate an authorization file.
In step S200 of some embodiments, generating the authorization file according to the machine code data specifically includes: at the software developer side, parameter data of software to be authorized is obtained, then the parameter data and machine code data are preprocessed to obtain authorization certificate data, and then the authorization certificate data are encrypted according to a preset encryption function to obtain an authorization file.
In some embodiments, referring to fig. 2, step S200 may include, but is not limited to, steps S210 to S230.
S210, acquiring parameter data of software to be authorized;
s220, preprocessing the parameter data and the machine code data to obtain authorization certificate data;
and S230, encrypting the authorization certificate data according to a preset encryption function to obtain an authorization file.
In step S210 of some embodiments, parameter data of the software to be authorized is obtained, where the parameter data includes at least one of: the authorization validity period, the name of the software to be authorized, whether permanent, the applicant, the authority group ID, the registration code, and the content decoding.
In step S220 of some embodiments, the parameter data and the machine code data are preprocessed to obtain the authorization certificate data, that is, according to the parameter data obtained in step S210, the machine code data of the terminal device corresponding to the software to be authorized, which is obtained from the user side by the software developer, are all filled in the authorization certificate generator, so as to obtain the authorization certificate data.
In step S230 of some embodiments, the authorization certificate data is encrypted according to a preset encryption function, so as to obtain an authorization file.
Optionally, the present application adopts an advanced encryption standard symmetric encryption algorithm, an encryption function of the algorithm is set as E, and the authorization certificate data obtained in step S220 is encrypted through the encryption function to obtain the authorization file.
In some embodiments, referring to fig. 3, step S230 may include, but is not limited to, steps S231 through S233.
S231, acquiring preset key data;
s232, combining the key data and the authorization certificate data to obtain data to be encrypted;
and S233, encrypting the data to be encrypted according to the encryption function to obtain an authorization file.
In step S231 of some embodiments, preset key data is obtained, and the key data is set to K.
In step S232 of some embodiments, the key data and the authorization certificate data are combined to obtain the data to be encrypted.
Optionally, the authorization certificate data is plaintext data P, and the key data obtained in step S231 and the authorization certificate data obtained in step S220 are combined to obtain data to be encrypted.
In step S233 of some embodiments, the data to be encrypted is encrypted according to the encryption function, so as to obtain the authorization file.
Optionally, the data to be encrypted obtained in step S232 is encrypted according to the preset encryption function in step S230 to obtain an authorization file, where the authorization file is ciphertext data obtained through encryption, and is defined as C.
Further, it is formulated as follows: c ═ E (K, P), where C is the authorization file, E (X) is the encryption function, X is the dependent variable of the encryption function, K is the key data, and P is the authorization certificate data.
In step S300 of some embodiments, the authorization file is sent to the terminal device according to a preset sending method, where the sending method at least includes one of the following: mail, third party communication tools, QQ, WeChat, etc.
Optionally, the authorization file is obtained in step S230, the software developer sends the authorization file to the user side in the above sending manner, and after the user side receives the authorization file, the user side decrypts the authorization file to obtain the authorization certificate data, and then copies the authorization certificate data to the corresponding terminal device in the usb disk manner.
In step S400 of some embodiments, the authentication processing is performed on the authorization file on the terminal device, and the obtained authentication result specifically includes: the method comprises the steps of firstly obtaining a preset decryption function, carrying out decryption processing on an authorization file according to the decryption function to obtain authorization certificate data, then obtaining verification data of software to be authorized, and carrying out verification processing on the authorization certificate data according to the verification data to obtain a verification result.
Optionally, the verification data includes at least one of: verifying file path data, verifying machine code data, verifying name data and verifying authorization validity date data.
Optionally, the verification result includes at least one of the following: a first result, a second result, a third result, and a fourth result.
Further, the verification of the file path data is to store the authorization certificate data in a file directory path which is the same as that of the software to be authorized in advance, and then verify the authorization certificate data, so that whether the file directory path of the authorization certificate is the same as that of the software to be authorized or not is judged.
Further, the verification machine code data is data for verifying whether the machine code data in the authorization certificate data is the same as the machine code data on the terminal device where the software to be authorized exists.
Further, the verification name data is data for verifying whether the software name data in the authorization certificate data is the same as the name data of the software to be authorized.
Further, the verification authorization validity period data is data used for verifying whether the validity period in the verification authorization certificate data is within the authorization validity period or not, and the log recording time when the software to be authorized is used is verified.
In some embodiments, referring to fig. 4, step S400 may include, but is not limited to, steps S410 to S440.
S410, acquiring a preset decryption function;
s420, decrypting the authorization file according to the decryption function to obtain authorization certificate data;
s430, acquiring verification data of software to be authorized;
and S440, verifying the authorization certificate data according to the verification data to obtain a verification result.
In step S410 of some embodiments, a preset decryption function is obtained.
Optionally, the present application adopts an advanced encryption standard symmetric encryption algorithm, and a decryption function of the algorithm is set to D.
In step S420 of some embodiments, the authorization file is decrypted according to the decryption function to obtain authorization certificate data, and the authorization file obtained in step S300 is decrypted according to the decryption function obtained in step S410 to obtain authorization certificate data.
Further, it is formulated as follows: p ═ D (K, C), where P is the certificate data, D (Y) is the decryption function, Y is the dependent variable of the decryption function, K is the key data, and C is the authorization file.
In step S430 of some embodiments, verification data of the software to be authorized is obtained, wherein the verification data includes at least one of the following: the verification file path data, the verification machine code data, the verification name data and the verification authorization validity date data are used for verifying the authorization certificate data in the step S420.
In step S440 of some embodiments, the authorization certificate data is verified according to the verification data to obtain a verification result, specifically: the method comprises the steps of firstly carrying out first verification processing on authorization certificate data according to verification file path data to obtain a first result, if the first result is successful verification, carrying out second verification processing on the authorization certificate data according to verification machine code data to obtain a second result, if the second result is successful verification, carrying out third verification processing on the authorization certificate data according to verification name data to obtain a third result, and if the third result is successful verification, carrying out fourth verification processing on the authorization certificate data according to verification authorization validity date to obtain a fourth result.
In some embodiments, referring to fig. 5, step S420 may include, but is not limited to, steps S421 to S422.
S421, combining the key data and the authorization file to obtain data to be decrypted;
s422, the data to be decrypted is decrypted according to the decryption function, and the authorization certificate data is obtained.
In step S421 of some embodiments, the key data and the authorization file are combined to obtain the data to be decrypted, specifically, the key data in step S231 and the authorization file obtained in step S300 are combined to obtain the file to be decrypted.
In step S422 of some embodiments, the data to be decrypted is decrypted according to the decryption function to obtain the authorization certificate data, and the data to be decrypted obtained in step S421 is decrypted according to the decryption function obtained in step S410 to obtain the authorization certificate data.
Alternatively, the following can be formulated: p ═ D (K, C), where P is the certificate data, D (Y) is the decryption function, Y is the dependent variable of the decryption function, K is the key data, and C is the authorization file.
In some embodiments, referring to fig. 6, step S440 includes, but is not limited to, at least one of steps S441 through S444.
S441, performing first verification processing on the authorization certificate data according to the verification file path data to obtain a first result;
s442, if the first result is that the verification is successful, performing second verification processing on the authorization certificate data according to the verification machine code data to obtain a second result;
s443, if the second result is that the verification is successful, performing third verification processing on the authorization certificate data according to the verification name data to obtain a third result;
and S444, if the third result is that the verification is successful, performing fourth verification processing on the authorization certificate data according to the verification authorization validity date to obtain a fourth result.
In step S441 of some embodiments, a first verification process is performed on the authorization certificate data according to the verification file path data to obtain a first result, and the first verification process is performed on the authorization certificate data obtained in step S420 according to the verification file path data of the software to be authorized, to verify whether the file directory path of the authorization certificate data is the same as the file directory path of the software to be authorized, if the file directory path of the authorization certificate data is the same as the file directory path of the software to be authorized, a prompt message indicating that the verification of the first result is successful is obtained, and if the verification of the first result is successful, step S442 is performed.
Optionally, whether the file directory path of the certificate data is verified to be the same as the file directory path of the software to be authorized is verified, if the file directory path of the certificate data is not the same as the file directory path of the software to be authorized, the prompt message that the verification fails is obtained, and the software authorization method process of the application exits.
In step S442 of some embodiments, if the first result is that the verification is successful, performing a second verification process on the certificate authority data according to the verification machine code data to obtain a second result, verifying the machine code data of the certificate authority data obtained in step S420 according to the verification machine code data, determining whether the machine code data in the certificate authority data is the same as the verification machine code data, if so, obtaining a prompt message that the verification is successful, and if so, executing step S443.
Optionally, if the machine code data in the authorization certificate data is different from the verification machine code data, a prompt message that the second result is verification failure is obtained, and the software authorization method process of the application is exited.
In step S443 of some embodiments, if the second result is that the verification is successful, a third verification process is performed on the authorization certificate data according to the verification name data to obtain a third result, if the verification success prompt information of the second result is obtained in step S442, it is determined whether the software name in the authorization certificate data is the same as the software name in the verification name data, if so, a prompt information that the verification of the third result is successful is obtained, and step S444 is performed.
Optionally, if the software name in the authorization certificate data is different from the software name in the verification name data, the third result is obtained as a prompt message indicating that the verification fails, and the software authorization method flow of the application exits.
In step S444 of some embodiments, if the third result is that the verification is successful, performing a fourth verification process on the authorization certificate data according to the verification authorization validity data to obtain a fourth result, obtaining the log time of the software to be authorized, performing a fourth verification process on the generation time of the authorization certificate data according to the verification authorization validity data, that is, the generation time of the authorization certificate data must be earlier than the time of the log record of the local area of the software to be authorized, and if the generation time of the authorization certificate is earlier than the time of the log record of the local area of the software to be authorized, obtaining a prompt that the verification of the fourth result is successful, and performing step S500.
Optionally, if the generation time of the authorization certificate data is later than the local log recording time of the software to be authorized, it indicates that the time of the local terminal device is tampered, the authorization is not performed, and the fourth result is the prompt information that the verification fails, and the software authorization method process of the present application is exited.
In step S500 of some embodiments, authorizing the software to be authorized according to the verification result may include:
if the fourth result is successfully verified, the software to be authorized is authorized, that is, the prompt information that the fourth result in the step S444 is successfully verified is obtained, and the software to be authorized is authorized.
In some embodiments, if the software to be authorized is authorized, the last time of using the authorized software each time still needs to be recorded and compared with the authorized validity period in the authorized certificate data, and if the time exceeds the time specified by the authorized validity period, the authorized software is not allowed to be used any more, and authorization needs to be requested again.
In some embodiments, if the software to be authorized is authorized, the users using the authorized software may be managed in groups according to the authorization ID in the authorization certificate data, for example, the users in group X only have authorization authority to use the authorized software a function, the users in group Y only have authorization authority to use the authorized software B function, and only the ID of the user is filled in the corresponding group, so that the users can enjoy the authorization authority of the corresponding function.
In some embodiments, the software to be authorized may be a battery management system to execute the software authorization method of the present application.
In some embodiments, a software authorization system, comprising: the acquisition module is used for acquiring machine code data of the terminal equipment corresponding to the software to be authorized; the generating module is used for generating an authorization file according to the machine code data; the sending module is used for sending the authorization file to the terminal equipment according to a preset sending mode; the verification module is used for verifying the authorization file on the terminal equipment to obtain a verification result; and the authorization module is used for authorizing the software to be authorized according to the verification result.
In some embodiments, a software authorization apparatus, comprising: a processor and a memory, wherein the memory is for storing an executable program which, when executed, performs the software authorization method as described above.
In some embodiments, the computer-readable storage medium stores executable instructions that are executable by a computer.
The memory, which is a non-transitory computer readable storage medium, may be used to store non-transitory software programs as well as non-transitory computer executable programs. Further, the memory may include high speed random access memory, and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid state storage device. In some embodiments, the memory optionally includes memory located remotely from the processor, and these remote memories may be connected to the processor through a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The embodiments described in the embodiments of the present disclosure are for more clearly illustrating the technical solutions of the embodiments of the present disclosure, and do not constitute a limitation to the technical solutions provided in the embodiments of the present disclosure, and it is obvious to those skilled in the art that the technical solutions provided in the embodiments of the present disclosure are also applicable to similar technical problems with the evolution of technology and the emergence of new application scenarios.
In the several embodiments provided in the present application, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be substantially implemented or contributed to by the prior art, or all or part of the technical solution may be embodied in a software product, which is stored in a storage medium and includes multiple instructions for causing a computer device (which may be a personal computer, a server, or a network device) to perform all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing programs, such as a usb disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
The preferred embodiments of the present disclosure have been described above with reference to the accompanying drawings, and therefore do not limit the scope of the claims of the embodiments of the present disclosure. Any modifications, equivalents and improvements within the scope and spirit of the embodiments of the present disclosure should be considered within the scope of the claims of the embodiments of the present disclosure by those skilled in the art.
Claims (10)
1. A software authorization method, comprising:
acquiring machine code data of terminal equipment corresponding to software to be authorized;
generating an authorization file according to the machine code data;
sending the authorization file to the terminal equipment according to a preset sending mode;
on the terminal equipment, verifying the authorization file to obtain a verification result;
and authorizing the software to be authorized according to the verification result.
2. The software authorization method of claim 1, wherein the generating an authorization file from the machine code data comprises:
acquiring parameter data of the software to be authorized;
preprocessing the parameter data and the machine code data to obtain authorization certificate data;
and encrypting the authorization certificate data according to a preset encryption function to obtain the authorization file.
3. The software authorization method according to claim 2, wherein the encrypting the authorization certificate data according to a preset encryption function to obtain the authorization file includes:
acquiring preset key data;
combining the key data and the authorization certificate data to obtain data to be encrypted;
and encrypting the data to be encrypted according to the encryption function to obtain the authorization file.
4. The software authorization method according to claim 3, wherein the verifying the authorization file on the terminal device to obtain a verification result includes:
acquiring a preset decryption function;
decrypting the authorization file according to the decryption function to obtain the authorization certificate data;
acquiring verification data of the software to be authorized;
and verifying the authorization certificate data according to the verification data to obtain the verification result.
5. The software authorization method according to claim 4, wherein the decrypting the authorization file according to the decryption function to obtain the authorization certificate data includes:
combining the key data and the authorization file to obtain data to be decrypted;
and decrypting the data to be decrypted according to the decryption function to obtain the authorization certificate data.
6. The software authorization method according to claim 4,
the verification data includes at least one of: verifying file path data, verifying machine code data, verifying name data and verifying authorization validity date data;
the verification result includes at least one of: a first result, a second result, a third result, a fourth result;
the verifying the authorization certificate data according to the verification data to obtain the verification result at least comprises one of the following steps:
performing first verification processing on the authorization certificate data according to the verification file path data to obtain a first result;
if the first result is that the verification is successful, performing second verification processing on the authorization certificate data according to the verification machine code data to obtain a second result;
if the second result is that the verification is successful, performing third verification processing on the authorization certificate data according to the verification name data to obtain a third result;
and if the third result is that the verification is successful, performing fourth verification processing on the authorization certificate data according to the verification authorization validity date data to obtain a fourth result.
7. The method for authorizing software according to claim 6, wherein the authorizing the software to be authorized according to the verification result comprises:
and if the fourth result is verified successfully, authorizing the software to be authorized.
8. A software authorization system, comprising:
the acquisition module is used for acquiring machine code data of the terminal equipment corresponding to the software to be authorized;
the generating module is used for generating an authorization file according to the machine code data;
the sending module is used for sending the authorization file to the terminal equipment according to a preset sending mode;
the verification module is used for verifying the authorization file on the terminal equipment to obtain a verification result;
and the authorization module is used for authorizing the software to be authorized according to the verification result.
9. A software authorization apparatus, comprising:
a processor;
a memory for storing an executable program;
when the executable program is executed by the processor, a software authorization apparatus is obtained to implement the software authorization method according to any one of claims 1 to 7.
10. Computer-readable storage medium, characterized in that it stores executable instructions that can be executed by a computer, causing the computer to perform the software authorization method according to any one of claims 1 to 7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111022779.3A CN113868604A (en) | 2021-09-01 | 2021-09-01 | Software authorization method, system, device and computer readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111022779.3A CN113868604A (en) | 2021-09-01 | 2021-09-01 | Software authorization method, system, device and computer readable storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113868604A true CN113868604A (en) | 2021-12-31 |
Family
ID=78989131
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111022779.3A Pending CN113868604A (en) | 2021-09-01 | 2021-09-01 | Software authorization method, system, device and computer readable storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113868604A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114912080A (en) * | 2022-04-21 | 2022-08-16 | 健帆生物科技集团股份有限公司 | Method for generating registration code, control method, terminal device and storage medium |
CN116070178A (en) * | 2023-04-06 | 2023-05-05 | 恒银金融科技股份有限公司 | Software authorization method and system based on mobile terminal code scanning |
CN117077184A (en) * | 2023-10-17 | 2023-11-17 | 西安热工研究院有限公司 | Method, system, equipment and medium for authorizing and keeping secret of upper computer software of DCS (distributed control system) |
-
2021
- 2021-09-01 CN CN202111022779.3A patent/CN113868604A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114912080A (en) * | 2022-04-21 | 2022-08-16 | 健帆生物科技集团股份有限公司 | Method for generating registration code, control method, terminal device and storage medium |
CN116070178A (en) * | 2023-04-06 | 2023-05-05 | 恒银金融科技股份有限公司 | Software authorization method and system based on mobile terminal code scanning |
CN117077184A (en) * | 2023-10-17 | 2023-11-17 | 西安热工研究院有限公司 | Method, system, equipment and medium for authorizing and keeping secret of upper computer software of DCS (distributed control system) |
CN117077184B (en) * | 2023-10-17 | 2024-01-30 | 西安热工研究院有限公司 | Method, system, equipment and medium for authorizing and keeping secret of upper computer software of DCS (distributed control system) |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4366037B2 (en) | System and method for controlling and exercising access rights to encrypted media | |
CN103067333B (en) | The method of proof machine top box access identity and certificate server | |
KR101254209B1 (en) | Apparatus and method for moving and copying right objects between device and portable storage device | |
US8660964B2 (en) | Secure device licensing | |
US8181266B2 (en) | Method for moving a rights object between devices and a method and device for using a content object based on the moving method and device | |
CN113868604A (en) | Software authorization method, system, device and computer readable storage medium | |
KR101944800B1 (en) | Method and apparatus for downloading drm module | |
KR100945650B1 (en) | Digital cable system and method for protection of secure micro program | |
JP3993385B2 (en) | Content distribution system, copyright protection system, and content receiving terminal | |
EP1754167A1 (en) | Method and apparatus for transmitting rights object information between device and portable storage | |
JP2009516243A (en) | SRM digital copyright management method and apparatus | |
US8214644B2 (en) | Method for installing rights object for content in memory card | |
JPH1185499A (en) | Data distribution system using open network for program or the like | |
CN101651714A (en) | Downloading method and related system and equipment | |
CN112417385A (en) | Safety control method and system | |
CN110661817A (en) | Resource access method and device and service gateway | |
CN113378119B (en) | Software authorization method, device, equipment and storage medium | |
EP1632943B1 (en) | Method of preventing multimedia copy | |
CN116419217B (en) | OTA data upgrading method, system, equipment and storage medium | |
JPH11355268A (en) | Device and method for information processing, information processing system and providing medium | |
CN114268502A (en) | Intelligent device activation method, server, terminal device and intelligent device | |
KR101241413B1 (en) | Apparatus and method for moving and copying right objects between device and portable storage device | |
JP2003348069A (en) | Method and device for distributing contents, storage medium and program | |
CN114143777B (en) | Certificate key downloading method and system of internet of things terminal based on SIM card | |
KR100827070B1 (en) | Apparatus for management license data and method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |