CN115017475A - Method for software off-line authorization - Google Patents
Method for software off-line authorization Download PDFInfo
- Publication number
- CN115017475A CN115017475A CN202210748537.0A CN202210748537A CN115017475A CN 115017475 A CN115017475 A CN 115017475A CN 202210748537 A CN202210748537 A CN 202210748537A CN 115017475 A CN115017475 A CN 115017475A
- Authority
- CN
- China
- Prior art keywords
- software
- module
- registration code
- computer
- configuration file
- 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 18
- 238000013475 authorization Methods 0.000 title claims abstract description 13
- 230000002159 abnormal effect Effects 0.000 claims description 6
- 230000003993 interaction Effects 0.000 claims description 4
- 238000012423 maintenance Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 6
- 238000009434 installation Methods 0.000 description 2
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
-
- 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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2137—Time limited access, e.g. to a computer or data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
The invention provides a software offline authorization method, wherein a configuration file is loaded into software in a registration code importing mode, so that the opening of software function authority is realized, and subsequent software function expansion only needs to update the registration code and does not need to update the software, so that the user experience is good, and the management and maintenance cost of a software provider is reduced. The software functional authority is opened, and the subsequent software functional expansion only needs to update the registration code without updating the software.
Description
Technical Field
The invention relates to the technical field of software authorization, in particular to a software offline authorization method.
Background
Software authorization generally adopts a mode of issuing a registration code to a user to realize the binding of software and a computer, the opening of functional authority and the limitation of service life.
At present, the off-line authorization function of software on the market only can support the binding between the software and a computer and limit the service life, a better control method is not provided for the opening and the expansion of the software function authority, and if a user needs to add a certain function of the software in use, the user may need to purchase a software package with the added function again, so that the user experience is not good. According to different functions, the same software is divided into a plurality of versions, and the cost of software version management and upgrading maintenance is multiplied for software vendors.
Disclosure of Invention
In order to solve the problems, the invention provides a software offline authorization method, wherein a configuration file is loaded into software in a registration code importing mode, so that the opening of software function permission is realized, and subsequent software function expansion only needs to update the registration code but not the software, so that the user experience is good, and the management and maintenance cost of a software vendor is reduced.
A method for offline authorization of software, comprising: the software functional authority is opened when the configuration file is encrypted and added into a registration code file according to functions and authorities required by a user when a registration code is generated, and the subsequent software functional expansion only needs to update the registration code without updating the software.
It is further characterized in that:
the software has a plurality of matching modules, a plurality of matching sub-modules are integrated in each module, each module has support for various sub-modules, each module has an independent configuration file, the software realizes the functions of each module by loading the configuration files, the configuration files define the interaction protocols of each functional module and each controller, and the configuration files increase and decrease the functions in the software by adding and deleting protocol information of the controllers;
each sub-module is internally provided with support for each sub-function, the sub-functions of each sub-module are provided with independent configuration files, and software realizes the opening and closing of the sub-functions of the sub-modules in the module by loading the configuration files;
a user needs to provide a computer unique code for installing software, function requirements and use duration limitation so as to generate a registration code;
the unique computer code is obtained by splicing a serial number and cpu serial number information of a computer mainboard and then performing AES encryption and base64 encryption, wherein the function requirement is specifically to start a corresponding module and a corresponding controller function in the module;
the registration code structure is composed of the following parts: the software configuration method comprises the following steps of (1) a computer unique code, the starting time of the service life of software, the last software running time, the software service duration, a software unique code GUID and function configuration information;
the computer unique code is used for detecting whether the computer is matched with the registration code; the last software running time is specifically updated every time the software is opened to closed, whether the current time is later than the recording time or not is checked when the software is opened, if the current time is earlier than the recording time, the software is considered to be abnormal, and the software is forbidden to run;
the software use duration, the starting time of the software use duration and the last software running time are combined to limit the use time, and the authorized use time is ensured not to exceed the time purchased by a user;
the software unique code GUID is a 128-bit long key automatically generated by the registrar for encrypting the configuration file;
the function configuration information is used for controlling the software function;
the registration code is generated by a computer, the registration code is sent to a user for importing through software prompt after being generated, functional configuration information is extracted from the registration code after being imported, AES and base64 encryption is carried out by taking a unique software code GUID in the registration code as a secret key, the encrypted content is output as a configuration file and stored in a software configuration file directory, and the software runs after the registration code meets the following requirements:
a, the unique code of the computer read by the software is consistent with the unique code of the computer recorded by the configuration file;
b. the current time of the computer is earlier than the starting time of the service life of the software in the configuration file plus the service life of the software;
c. the current time of the machine is later than the last software running time;
d. and after the software runs, reading the encrypted configuration file, initializing each functional module if the decryption is normal, and considering that the configuration file is damaged if the decryption is abnormal, and forbidding the corresponding functional module.
After the method and the device are adopted, the configuration file is not attached to the installation package when the software is released, the configuration file is encrypted according to functions and authorities required by a user and is added to the registration code file when the registration code is generated, the configuration file is loaded into the software in a registration code importing mode, so that the opening of the functional authorities of the software is realized, the subsequent software function expansion only needs to update the registration code without updating the software, the user experience is good, and the management and maintenance cost of a software vendor is reduced.
Drawings
FIG. 1 is a block diagram of a module interface according to an embodiment of the present invention;
FIG. 2 is a second block diagram of a module interface according to an embodiment of the present invention;
FIG. 3 is a block diagram of a module interface of an embodiment of the present invention;
FIG. 4 is a block diagram of a module interface of the exemplary embodiment of the present invention;
FIG. 5 is a block diagram of a module interface in accordance with an embodiment of the present invention;
FIG. 6 shows a sixth block diagram of a module interface according to an embodiment of the invention.
Detailed Description
A method for software offline authorization: the software functional authority is opened when the configuration file is encrypted and added into a registration code file according to functions and authorities required by a user when a registration code is generated, and the subsequent software functional expansion only needs to update the registration code without updating the software.
The software has a plurality of matching modules, a plurality of matching sub-modules are integrated in each module, each module has support for various sub-modules, each module has an independent configuration file, the software realizes the functions of each module by loading the configuration files, the configuration files define the interaction protocols of each functional module and each controller, and the configuration files increase and decrease the functions in the software by adding and deleting protocol information of the controllers;
each sub-module is internally provided with support for each sub-function, the sub-functions of each sub-module are provided with independent configuration files, and software realizes the opening and closing of the sub-functions of the sub-modules in the module by loading the configuration files;
a user needs to provide a computer unique code for installing software, function requirements and use duration limitation so as to generate a registration code;
the unique code of the computer is obtained by splicing a serial number and cpu serial number information of a computer mainboard and then carrying out AES encryption and base64 encryption, wherein the function requirement is specifically to start a corresponding module and a corresponding controller function in the module;
the registration code structure consists of the following parts: the software configuration method comprises the following steps of (1) a computer unique code, the starting time of the service life of software, the last software running time, the software service duration, a software unique code GUID and function configuration information;
the computer unique code is used for detecting whether the computer is matched with the registration code; the last software running time is specifically updated every time the software is opened to closed, whether the current time is later than the recording time or not is checked when the software is opened, if the current time is earlier than the recording time, the software is considered to be abnormal, and the software is forbidden to run;
the software use duration, the starting time of the software use duration and the last software running time are combined to limit the use time, so that the authorized use time is ensured not to exceed the time purchased by a user;
the software unique code GUID is a 128-bit long key automatically generated by the registrar for encrypting the configuration file;
the function configuration information is used for managing and controlling software functions.
The registration code is generated by a computer, the registration code is sent to a user for importing through software prompt after being generated, functional configuration information is extracted from the registration code after being imported, AES and base64 encryption is carried out by taking a unique software code GUID in the registration code as a secret key, the encrypted content is output as a configuration file and stored in a software configuration file directory, and the software runs after the registration code meets the following requirements:
a, the unique code of the computer read by the software is consistent with the unique code of the computer recorded by the configuration file;
b. the current time of the computer is earlier than the starting time of the service life of the software in the configuration file plus the service life of the software;
c. the current time of the machine is later than the last software running time;
d. and after the software runs, reading the encrypted configuration file, initializing each functional module if the decryption is normal, and considering that the configuration file is damaged if the decryption is abnormal, and forbidding the corresponding functional module.
In the specific embodiment, the software has A, B, C, D four modules, each module has a corresponding sub-module, each sub-module has a corresponding sub-function, each module has support for multiple sub-modules, each module has an independent configuration file, the software realizes functions of each module by loading the configuration files, the configuration files define interaction protocols of each functional module and each controller, and the configuration files can increase and decrease functions in the software by adding and deleting protocol information of the controllers.
Taking the module a as an example, when the configuration file has the following contents:
the module interface display of the module A in the software is shown in figures 1 and 2.
When a certain submodule needs to be disabled, part of configuration in the configuration file can be deleted, for example, all functions of the submodule 2 are deleted, and the contents of the configuration file are as follows:
the module interface display of module A in software is shown in FIG. 3.
When a certain sub-function needs to be disabled, such as disabling sub-function 1-1 of sub-module 1, the contents of the configuration file are as follows:
the module interface display of module A in software is shown in FIG. 4.
When the entire sub-functionality needs to be disabled, the configuration file is as follows:
the module interface display of the module A in the software is shown in FIG. 5, and no corresponding sub-function option exists.
When the whole module A function needs to be disabled, the configuration file content is as follows:
[
null
]
the module interface display of module A in the software is shown in FIG. 6.
The principle is as follows: when software is released, the configuration file is not attached to the installation package, when a registration code is generated, the configuration file is encrypted according to functions and authorities required by a user and is added to the registration code file, the configuration file is loaded into the software in a registration code importing mode, opening of software function authorities is achieved, subsequent software function expansion only needs to update the registration code without updating the software, user experience is good, and management and maintenance cost of a software vendor is reduced. .
It will be evident to those skilled in the art that the invention is not limited to the details of the foregoing illustrative embodiments, and that the present invention may be embodied in other specific forms without departing from the spirit or essential attributes thereof. The present embodiments are therefore to be considered in all respects as illustrative and not restrictive, the scope of the invention being indicated by the appended claims rather than by the foregoing description, and all changes which come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein. Any reference sign in a claim should not be construed as limiting the claim concerned.
Furthermore, it should be understood that although the present description refers to embodiments, not every embodiment may contain only a single embodiment, and such description is for clarity only, and those skilled in the art should integrate the description, and the embodiments may be combined as appropriate to form other embodiments understood by those skilled in the art.
Claims (6)
1. A method for offline authorization of software, comprising: the software functional authority is opened when the configuration file is encrypted and added into a registration code file according to functions and authorities required by a user when a registration code is generated, and the subsequent software functional expansion only needs to update the registration code without updating the software.
2. A method for offline authorization of software according to claim 1, wherein: the software has a plurality of matching modules, a plurality of matching sub-modules are integrated in each module, each module has support for various sub-modules, each module has an independent configuration file, the software realizes the functions of each module by loading the configuration files, the configuration files define the interaction protocols of each functional module and each controller, and the configuration files increase and decrease the functions in the software by adding and deleting protocol information of the controllers.
3. A method for offline authorization of software according to claim 2, wherein: each sub-module is internally provided with support for each sub-function, the sub-functions of each sub-module are provided with independent configuration files, and software realizes the opening and closing of the sub-functions of the sub-modules in the module by loading the configuration files.
4. A method for offline authorization of software according to claim 2, wherein: a user needs to provide a computer unique code for installing software, function requirements and use duration limitation so as to generate a registration code;
the unique code of the computer is obtained by splicing a serial number of a computer mainboard and CPU serial number information and then carrying out AES encryption and base64 encryption, wherein the function requirement is specifically to start a corresponding module and a corresponding controller function in the module.
5. The method of claim 4, wherein the registration code structure comprises: the software configuration method comprises the following steps of (1) a computer unique code, the starting time of the service life of software, the last software running time, the software service duration, a software unique code GUID and function configuration information;
the computer unique code is used for detecting whether the computer is matched with the registration code; the last software running time is specifically updated every time the software is opened to closed, whether the current time is later than the recording time or not is checked when the software is opened, if the current time is earlier than the recording time, the software is considered to be abnormal, and the software is forbidden to run;
the software use duration, the starting time of the software use duration and the last software running time are combined to limit the use time, so that the authorized use time is ensured not to exceed the time purchased by a user;
the software unique code GUID is a 128-bit long key automatically generated by the registrar for encrypting the configuration file;
the function configuration information is used for managing and controlling software functions.
6. The method for software offline authorization according to claim 5, wherein the registration code is generated by a computer, the registration code is generated and then sent to a user for importing through a software prompt, the function configuration information is extracted from the registration code after importing, AES and base64 encryption are performed with a unique software code GUID in the registration code as a key, the encrypted content is output as a configuration file and stored in a software configuration file directory, and the software runs after the registration code meets the following requirements:
a, the unique code of the computer read by the software is consistent with the unique code of the computer recorded by the configuration file;
b. the current time of the computer is earlier than the starting time of the service life of the software in the configuration file plus the service life of the software;
c. the current time of the machine is later than the last software running time;
d. and after the software runs, reading the encrypted configuration file, initializing each functional module if the decryption is normal, and considering that the configuration file is damaged if the decryption is abnormal, and forbidding the corresponding functional module.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210748537.0A CN115017475A (en) | 2022-06-29 | 2022-06-29 | Method for software off-line authorization |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210748537.0A CN115017475A (en) | 2022-06-29 | 2022-06-29 | Method for software off-line authorization |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115017475A true CN115017475A (en) | 2022-09-06 |
Family
ID=83077953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210748537.0A Pending CN115017475A (en) | 2022-06-29 | 2022-06-29 | Method for software off-line authorization |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115017475A (en) |
-
2022
- 2022-06-29 CN CN202210748537.0A patent/CN115017475A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11178121B2 (en) | Secure software updates | |
US9626513B1 (en) | Trusted modular firmware update using digital certificate | |
CN102289627B (en) | Many owners of firmware images dispose | |
JP5556895B2 (en) | Content data reproducing apparatus, update management method, and update management program | |
EP3700243A1 (en) | Security data processing device | |
US20060168580A1 (en) | Software-management system, recording medium, and information-processing device | |
EP2628125B1 (en) | Method and apparatus for downloading drm module | |
US9547757B2 (en) | User terminal, server and controlling method thereof | |
US20100063996A1 (en) | Information processing device, information recording device, information processing system, program update method, program, and integrated circuit | |
US20090089881A1 (en) | Methods of licensing software programs and protecting them from unauthorized use | |
EP0993631A1 (en) | Processing apparatus and method | |
KR20080037048A (en) | Changing product behavior in accordance with license | |
EP2051181A1 (en) | Information terminal, security device, data protection method, and data protection program | |
US20120213370A1 (en) | Secure management and personalization of unique code signing keys | |
US20120047074A1 (en) | Methods of protecting software programs from unauthorized use | |
WO2006106689A1 (en) | Upgrade module, application program, server, and upgrade module distribution system | |
CN115017475A (en) | Method for software off-line authorization | |
US9363081B2 (en) | License administration device and license administration method | |
CN101552770B (en) | Method for managing digital resources and relevant digital resource managing system | |
AU2011202785B2 (en) | Secure software updates | |
US8095793B1 (en) | Digital rights management apparatus and method | |
CN113282889A (en) | license authorization method, device and system |
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 |