CN111367532A - Local deployment method, device, equipment and storage medium for software license - Google Patents

Local deployment method, device, equipment and storage medium for software license Download PDF

Info

Publication number
CN111367532A
CN111367532A CN202010090295.1A CN202010090295A CN111367532A CN 111367532 A CN111367532 A CN 111367532A CN 202010090295 A CN202010090295 A CN 202010090295A CN 111367532 A CN111367532 A CN 111367532A
Authority
CN
China
Prior art keywords
software
machine code
license
file
deployed
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
Application number
CN202010090295.1A
Other languages
Chinese (zh)
Inventor
杨哲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
OneConnect Financial Technology Co Ltd Shanghai
Original Assignee
OneConnect Financial Technology Co Ltd Shanghai
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by OneConnect Financial Technology Co Ltd Shanghai filed Critical OneConnect Financial Technology Co Ltd Shanghai
Priority to CN202010090295.1A priority Critical patent/CN111367532A/en
Publication of CN111367532A publication Critical patent/CN111367532A/en
Priority to PCT/CN2021/072806 priority patent/WO2021159931A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication

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)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention relates to the technical field of information security, and discloses a method, a device, equipment and a storage medium for local deployment of software license, which are used for reducing the cost of local deployment of software. The method comprises the following steps: reading a license file, a license verification file and a machine code of a unit to be deployed in the software installation file; analyzing the license file to obtain a corresponding software key and a corresponding machine code file; decoding the software key to obtain a corresponding private key; decrypting the machine code file according to the private key to obtain a target machine code; judging whether the target machine code is the same as the machine code of the unit to be deployed; and if the target machine code is the same as the machine code of the unit to be deployed, loading the service corresponding to the software, and judging that the local deployment of the software license of the unit to be deployed is successful.

Description

Local deployment method, device, equipment and storage medium for software license
Technical Field
The invention relates to the technical field of identity authentication of information security, in particular to a local deployment method, a local deployment device, local deployment equipment and a storage medium for software license.
Background
At present, most of methods for locally deploying software need to build a private server and perform networking to realize local verification and authorization, so that locally installed software needs to occupy additional server resources and network resources, and in addition, professional technicians need to maintain the built private server, so that the problem of high cost exists in the process of locally deploying software at present.
Disclosure of Invention
The invention mainly aims to solve the problem of high cost in the local deployment process of software at present.
To achieve the above object, a first aspect of the present invention provides a software license local deployment method, including:
reading a license file, a license verification file and a machine code of a unit to be deployed in the software installation file;
analyzing the license file to obtain a corresponding software key and a corresponding machine code file;
decoding the software key to obtain a corresponding private key;
decrypting the machine code file according to the private key to obtain a target machine code;
judging whether the target machine code is the same as the machine code of the unit to be deployed;
and if the target machine code is the same as the machine code of the unit to be deployed, loading the service corresponding to the software, and judging that the local deployment of the software license of the unit to be deployed is successful.
Optionally, in another implementation manner of the first aspect of the present invention, the software license local deployment method further includes:
and if the target machine code is different from the machine code of the unit to be deployed, stopping loading the service corresponding to the software, and judging that the software of the unit to be deployed allows local deployment to fail.
Optionally, in another implementation manner of the first aspect of the present invention, after the loading a service corresponding to software and determining that the local deployment of the software license of the unit to be deployed is successful if the target machine code is the same as the machine code of the unit to be deployed, the local deployment method of the software license further includes:
acquiring corresponding software license use duration;
calculating the residual time length of the software licensed for the unit to be deployed according to the software licensed use time length;
judging whether the residual time length of the licensed software is zero or not;
if the residual time of the licensed software is zero, judging that the software license certificate of the unit to be deployed is expired;
sending out the notification information of the expired certificate according to a preset asynchronous message mechanism;
and killing the current process of the software by using a kill command, and exiting the software.
Optionally, in another implementation manner of the first aspect of the present invention, after the determining whether the remaining time duration of the licensed software is zero, the local software deployment method further includes:
if the residual time length of the software which is permitted to use is not zero, continuously judging whether the residual time length of the software which is permitted to use is within a set time period threshold value;
if the residual time of the software permitted to be used is within the set time period threshold, a preset asynchronous message mechanism sends out notification information that the residual time and the certificate of the software permitted to be used are out of date.
Optionally, in another implementation manner of the first aspect of the present invention, before reading the license file, the license check file, and the machine code of the unit to be deployed in the software installation file, the software license local deployment method further includes:
and configuring a license file in the software installation file, wherein the license file comprises the use duration of the software license, an interface mask list, a software license certificate and a software key generation path.
Optionally, in another implementation manner of the first aspect of the present invention, before reading the license file, the license check file, and the machine code of the unit to be deployed in the software installation file, the software license local deployment method further includes:
and configuring a license check file in the installation file, wherein the license check file comprises a software license certificate storage path, a software key storage path and a timed task scanning interval time.
Optionally, in another implementation manner of the first aspect of the present invention, before reading the license file, the license check file, and the machine code of the unit to be deployed in the software installation file, the software license local deployment method further includes:
acquiring a machine code of a unit to be installed through a machine code acquisition tool;
performing salt adding encryption processing on the machine code to generate a corresponding machine code file;
generating a corresponding software key and a software serial number according to the machine code file, wherein the software key comprises a public key and a private key;
binding the software key and the software serial number into a software license certificate.
A second aspect of the present invention provides a software license local deployment apparatus, including:
the machine code reading module is used for reading the license file, the license verification file and the machine code of the unit to be deployed in the software installation file;
the analysis module is used for analyzing the license file to obtain a corresponding software key and a corresponding machine code file;
the decoding module is used for decoding the software secret key to obtain a corresponding private key;
the target machine code acquisition module is used for decrypting the machine code file according to the private key to obtain a target machine code;
the judging module is used for judging whether the target machine code is the same as the machine code of the unit to be deployed or not;
and the loading module is used for loading the service corresponding to the software if the target machine code is the same as the machine code of the unit to be deployed and judging that the local deployment of the software license of the unit to be deployed is successful.
Optionally, in another implementation manner of the second aspect of the present invention, the software license local deployment apparatus further includes:
and the loading stopping module is used for stopping loading the service corresponding to the software and judging that the software of the unit to be deployed permits local deployment to fail if the target machine code is different from the machine code of the unit to be deployed.
Optionally, in another implementation manner of the second aspect of the present invention, the software license local deployment apparatus further includes:
the software permitted use time length acquisition module is used for acquiring corresponding software permitted use time length;
the residual time length calculation module is used for calculating the residual time length of the software licensed for the unit to be deployed according to the software licensed use time length;
the residual duration judging module is used for judging whether the residual duration of the licensed software is zero or not;
the certificate expiration judging module is used for judging that the software license certificate of the unit to be deployed is expired if the residual time of the licensed software is zero;
the expiration informing module is used for sending out the informing information of the expiration of the certificate according to a preset asynchronous message mechanism;
and the process killing module is used for killing the current process of the software by using a kill command and quitting the software.
Optionally, in another implementation manner of the second aspect of the present invention, the software license local deployment apparatus further includes:
a remaining duration continuous judging module, configured to continuously judge whether the remaining duration of the licensed software is within a set time period threshold if the remaining duration of the licensed software is not zero;
and the soon-to-expire informing module is used for sending out informing information that the remaining time length and the certificate of the software allowed to be used are about to expire by a preset asynchronous message mechanism if the remaining time length of the software allowed to be used is within a set time period threshold.
Optionally, in another implementation manner of the second aspect of the present invention, the software license local deployment apparatus further includes:
and the license file configuration module is used for configuring a license file in the software installation file, wherein the license file comprises software license use duration, an interface mask list, a software license certificate and a software key generation path.
Optionally, in another implementation manner of the second aspect of the present invention, the software license local deployment apparatus further includes:
and the permission check file configuration module is used for configuring a permission check file in the installation file, wherein the permission check file comprises a software permission certificate storage path, a software key storage path and a timed task scanning interval time.
Optionally, in another implementation manner of the second aspect of the present invention, the software license local deployment apparatus further includes:
the machine code acquisition module is used for acquiring the machine code of the unit to be installed through the machine code acquisition tool;
the salt adding encryption processing module is used for carrying out salt adding encryption processing on the machine code to generate a corresponding machine code file;
the software key and serial number generation module is used for generating a corresponding software key and a corresponding software serial number according to the machine code file, wherein the software key comprises a public key and a private key;
a binding module for binding the software key and the software serial number to a software license certificate.
A third aspect of the present invention provides a software license local deployment device, comprising: a memory having instructions stored therein and at least one processor, the memory and the at least one processor interconnected by a line; the at least one processor invokes the instructions in the memory to cause the software licensed local deployment device to perform the method of the first aspect.
A fourth aspect of the present invention provides a computer-readable storage medium having stored therein instructions which, when run on a computer, cause the computer to perform the method of the first aspect described above.
In the technical scheme provided by the invention, a license file, a license check file and a machine code of a unit to be deployed in a software installation file are read; analyzing the license file to obtain a corresponding software key and a corresponding machine code file; decoding the software key to obtain a corresponding private key; decrypting the machine code file according to the private key to obtain a target machine code; judging whether the target machine code is the same as the machine code of the unit to be deployed; if the target machine code is the same as the machine code of the unit to be deployed, the service corresponding to the software is loaded, and the fact that the local deployment of the software license of the unit to be deployed is successful is judged.
Drawings
FIG. 1 is a diagram of one embodiment of a method for local deployment of software licenses in an embodiment of the invention;
FIG. 2 is a schematic diagram of another embodiment of a local deployment method of software licenses in an embodiment of the invention;
FIG. 3 is a schematic diagram of one embodiment of a software license local deployment device in an embodiment of the invention;
FIG. 4 is a schematic diagram of another embodiment of a software license local deployment device in an embodiment of the invention;
FIG. 5 is a diagram of one embodiment of a software license local deployment device in an embodiment of the invention.
Detailed Description
The embodiment of the invention provides a method, a device, equipment and a storage medium for local deployment of software license, which are used for reducing the cost of local deployment of software.
In order to make the technical field of the invention better understand the scheme of the invention, the embodiment of the invention will be described in conjunction with the attached drawings in the embodiment of the invention.
The terms "first," "second," "third," "fourth," and the like in the description and in the claims, as well as in the drawings, if any, are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It will be appreciated that the data so used may be interchanged under appropriate circumstances such that the embodiments described herein may be practiced otherwise than as specifically illustrated or described herein. Furthermore, the terms "comprises," "comprising," or "having," and any variations thereof, are intended to cover non-exclusive inclusions, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
For ease of understanding, a specific flow of an embodiment of the present invention is described below, and referring to fig. 1, an embodiment of a local deployment method for software licenses in an embodiment of the present invention includes:
101. and reading the license file, the license check file and the machine code of the unit to be deployed in the software installation file.
Specifically, after the unit to be deployed starts software, the local computer first reads a license file, a license check file, and a machine code of the unit to be deployed in an installation file of the software.
Further, before step 101, the method comprises:
and configuring a license file in the software installation file, wherein the license file comprises the use duration of the software license, the interface mask list, the software license certificate and the software key generation path.
Specifically, when the server receives a request for registering and installing software from a user through the unit to be deployed, configuring a license file in an installation file of the software, wherein the license file comprises information such as the use duration of the software license, an interface mask list, a software license certificate and a software key generation path, wherein, when developing software, it needs to define the interfaces that need to be shielded and called, the interface shielding lists corresponding to these interface lists that need to be shielded must be set in the license file, when a registration installation request comes in, annotating and checking whether a relevant interface of the current registration installation request is in an interface screening list through Aspect Oriented Programming (AOP), if so, triggering a preset asynchronous message machine to make corresponding processing, the preset asynchronous message mechanism is not limited herein, and provides a basis for local deployment and verification of software licenses by pre-configuring a license file in a software installation file.
Further, before step 101, the method further includes:
and configuring a permission check file in the installation file, wherein the permission check file comprises a software permission certificate storage path, a software key storage path and a timed task scanning interval time.
Specifically, when receiving a request for registering and installing software from a user through a unit to be deployed, a server configures a verification file in an installation file of the software, wherein the permission verification file comprises information such as a software license certificate storage path, a software key storage path, a timing task scanning interval time, a timing task scanning interval unit and the like. The timed task scanning interval time is the interval time that tasks for scanning and calculating the residual time of the software which is allowed to be used need to be operated regularly, and a basis is provided for local deployment and verification of software license by pre-configuring a license verification file in a software installation file.
Further, before step 101, the method further includes:
and acquiring the machine code of the unit to be installed through a machine code acquisition tool.
And performing salt adding encryption processing on the machine code to generate a corresponding machine code file.
And generating a corresponding software key and a software serial number according to the machine code file, wherein the software key comprises a public key and a private key.
The software key and software serial number are bound into a software license certificate.
Specifically, the server acquires the machine code of the unit to be installed through a machine code acquisition tool, wherein the unit to be installed is all computer terminals applying for permission to use software; and performing salting encryption processing on the obtained machine code to generate a corresponding machine code file. Specifically, machine codes can be encrypted and salted through a Message digest algorithm 5(MD5Message-digest algorithm Five, MD5) or a Bcrypt encryption algorithm, a character string is generated through encryption and salting processing and stored in a text file, and a corresponding machine code file is obtained, so that the concealment and complexity of the machine codes are enhanced, and the security of a local software license verification mechanism through machine verification is improved.
Further, the server also generates a corresponding software key and a corresponding software serial number according to the machine code file, wherein the software key comprises a public key and a private key, the public key is used for encryption when the server issues a software license certificate to the unit to be deployed, the software license is decrypted by the private key when the local deployment and installation are permitted, and the server generates a corresponding unique identification code according to the acquired machine code when receiving a request of a user for registering and installing software through the unit to be deployed, and the unique identification code is the software serial number. Furthermore, salt adding encryption processing can be carried out on the software serial number, so that the safety of the software serial number is improved, and the software of the current user is prevented from being stolen by other users. The invention realizes the concealment and the complexity of the machine code by the machine code acquisition and encryption processing mode, and improves the safety of the local software license verification mechanism realized by machine verification.
102. And analyzing the license file to obtain the corresponding software key and the corresponding machine code file.
Specifically, after the license file, the license check file, and the machine code of the unit to be deployed in the software installation file are read, the local computer further analyzes the license file to obtain the key of the software to be installed and the corresponding machine code file.
103. And decoding the software key to obtain a corresponding private key.
Specifically, after the software key and the machine code file are obtained, the local computer decodes the software key, obtains a private key corresponding to the software to be installed, and obtains a corresponding software license certificate through decryption of the private key when the software license is locally deployed and installed.
104. And decrypting the machine code file according to the private key to obtain the target machine code.
Specifically, after the private key is obtained, the local computer decrypts the machine code file according to the private key to obtain a target machine code, wherein the target machine code is a machine code in the machine code file obtained by the remote server through salt adding encryption in advance.
105. And judging whether the target machine code is the same as the machine code of the unit to be deployed.
Specifically, the local computer further determines whether the target machine code is the same as the machine code of the unit to be deployed.
106. And if the target machine code is the same as the machine code of the unit to be deployed, loading the service corresponding to the software, and judging that the local deployment of the software license of the unit to be deployed is successful.
Specifically, if the local computer determines that the target machine code is the same as the machine code of the unit to be deployed, the local computer loads the service corresponding to the software and determines that the local deployment is permitted by the software of the unit to be deployed. The loaded software corresponding service is the software service range corresponding to the license of the software license certificate in the license file according to all or part of the software functional modules selected or purchased by the user.
Further, after step 105, comprising:
and if the target machine code is different from the machine code of the unit to be deployed, stopping loading the service corresponding to the software, and judging that the software of the unit to be deployed allows local deployment to fail.
Specifically, the local computer stops loading the service corresponding to the software if the target machine code is judged to be different from the machine code of the unit to be deployed, and judges that the software of the unit to be deployed allows local deployment to fail. And when the local judgment shows that the target machine code is different from the machine code of the unit to be deployed, stopping loading the service corresponding to the software, and judging that the software of the unit to be deployed allows local deployment to fail.
Therefore, the verification in the local deployment process of the software license is realized by comparing whether the decrypted target machine code is the same as the machine code of the local unit to be deployed and stopping loading the service corresponding to the software when the comparison result shows that the target machine code is different from the machine code of the local unit to be deployed, so that the verification method is simple and effective, and the machine cost and the labor maintenance cost for building the private authorization server are saved.
Further, referring to fig. 2, in another embodiment of the local software license deployment method according to the embodiment of the present invention, the method further includes:
201. and reading the license file, the license check file and the machine code of the unit to be deployed in the software installation file.
202. And analyzing the license file to obtain the corresponding software key and the corresponding machine code file.
203. And decoding the software key to obtain a corresponding private key.
204. And decrypting the machine code file according to the private key to obtain the target machine code.
205. And judging whether the target machine code is the same as the machine code of the unit to be deployed.
206. And if the target machine code is the same as the machine code of the unit to be deployed, loading the service corresponding to the software, and judging that the local deployment of the software license of the unit to be deployed is successful.
The specific implementation and details of steps 201 to 206 of this embodiment are the same as those of steps 101 to 106, and are not described herein again.
207. And acquiring the corresponding software license use time length.
Specifically, after the local end finishes loading the service corresponding to the software, the local computer obtains the corresponding software permitted use duration.
208. And calculating the residual time length of the unit to be deployed for using the software according to the software licensed use time length.
Specifically, the local computer further calculates the remaining time for the unit to be deployed to permit use of the software according to the software permitted use time, for example, the authorized software permitted use time is 365 days, the use of the software is already 100 days, and the remaining time for permitting use of the software is 165 days.
209. It is determined whether the remaining time period for which the software is licensed is zero.
Specifically, the local computer determines whether the remaining time period for using the software license is zero, for example, the authorized software license is 365 days, the software is used for 365 days, the remaining time period for using the software license is 0 day, and the remaining time period for using the software license is zero.
210. And if the residual time length of the software which is allowed to be used is zero, judging that the software license certificate of the unit to be deployed is expired.
Specifically, when the remaining time for using the software is zero, the local computer determines that the software license certificate of the unit to be deployed is expired.
211. Sending out the notification information of the expired certificate according to a preset asynchronous message mechanism;
specifically, after determining that the software license of the unit to be deployed is expired, the corresponding notification information is sent according to a preset asynchronous message mechanism, where the preset asynchronous message mechanism may be completed through an asynchronous message creation message according to a specific information notification requirement, which is not limited herein.
212. And killing the current process of the software by using a kill command, and exiting the software.
Specifically, after the notification information is sent to prompt the user, the local computer uses a kill command to kill the current process of the software and quit the software, so that the software quit cannot be used, and the steps can be further set as a default processing mode of the expired software license certificate.
Further, after step 209, the method further includes:
and if the residual time length of the software which is allowed to be used is not zero, continuously judging whether the residual time length of the software which is allowed to be used is within the set time period threshold value.
If the residual time of the software which is allowed to be used is within the set time period threshold, a preset asynchronous message mechanism sends out notification information that the residual time and the certificate of the software which is allowed to be used are out of date.
Specifically, if the local computer determines that the remaining time length of the unit to be deployed for permitting the use of the software is not zero, the local computer continues to determine whether the remaining time length of the unit to be deployed for permitting the use of the software is within a set time period threshold, if so, the local computer triggers sending of a certificate, namely, notification information about expiration is triggered, and if not, the software can continue to be used normally. For example, the set time period threshold is 0-40 days, the calculated remaining time of the software for permitted use is 30 days, and the remaining time of the software for permitted use is in the time period, the remaining time of the software for permitted use and the notification message that the certificate will be expired are sent out to prompt the current user of the software. Here, the preset asynchronous message mechanism may be completed by creating a message through an asynchronous message according to the specific information notification requirement, which is not limited herein. Another way of verifying the use of local side software licenses is achieved by verifying the time of use of software license certificates.
As can be seen from the above, the present embodiment implements double verification of local software license usage by using both machine code and time verification for a software license certificate, and the present invention does not require a local deployment server or a dedicated person for maintenance by using a double verification processing manner of machine code and time, thereby reducing the cost of local deployment of a software system and also improving the security of a local software license verification mechanism.
With reference to fig. 3, the above describes a local software license deployment method in an embodiment of the present invention, and a local software license deployment device in an embodiment of the present invention is described below, where an embodiment of the local software license deployment device in an embodiment of the present invention includes:
and the machine code reading module 301 is configured to read the license file, the license check file, and the machine code of the unit to be deployed in the software installation file.
The parsing module 302 is configured to parse the license file to obtain a corresponding software key and a corresponding machine code file.
The decoding module 303 is configured to decode the software key to obtain a corresponding private key.
And the target machine code obtaining module 304 is configured to decrypt the machine code file according to the private key to obtain the target machine code.
The determining module 305 is configured to determine whether the target machine code is the same as the machine code of the unit to be deployed.
The loading module 306 is configured to load a service corresponding to the software if the target machine code is the same as the machine code of the unit to be deployed, and determine that the local deployment of the software license of the unit to be deployed is successful.
Optionally, in another implementation manner of the second aspect of the present invention, the software license local deployment apparatus further includes:
and the loading stopping module is used for stopping loading the service corresponding to the software and judging that the software of the unit to be deployed allows local deployment to fail if the target machine code is different from the machine code of the unit to be deployed.
Optionally, in another implementation manner of the software license local deployment apparatus according to the present invention, as shown in fig. 4, the software license local deployment apparatus includes:
and the machine code reading module 301 is configured to read the license file, the license check file, and the machine code of the unit to be deployed in the software installation file.
The parsing module 302 is configured to parse the license file to obtain a corresponding software key and a corresponding machine code file.
The decoding module 303 is configured to decode the software key to obtain a corresponding private key.
And the target machine code obtaining module 304 is configured to decrypt the machine code file according to the private key to obtain the target machine code.
The determining module 305 is configured to determine whether the target machine code is the same as the machine code of the unit to be deployed.
The loading module 306 is configured to load a service corresponding to the software if the target machine code is the same as the machine code of the unit to be deployed, and determine that the local deployment of the software license of the unit to be deployed is successful.
A software permitted use duration obtaining module 307, configured to obtain a corresponding software permitted use duration.
And a remaining time length calculating module 308, configured to calculate a remaining time length for the unit to be deployed to permit use of the software according to the software permitted use time length.
A remaining time length judging module 309, configured to judge whether the remaining time length of the software permitted to be used is zero.
The certificate expiration determining module 310 is configured to determine that the software license of the unit to be deployed expires if the remaining time for using the software license is zero.
And an expiration notifying module 311, configured to send notification information of the expiration of the certificate according to a preset asynchronous message mechanism.
And a process killing module 312, configured to kill the current process of the software using a kill command, and quit the software.
Optionally, in another implementation manner of the software license local deployment apparatus according to the present invention, the software license local deployment apparatus further includes:
and the residual duration continuous judging module is used for continuously judging whether the residual duration of the software which is allowed to be used is within the set time period threshold value or not if the residual duration of the software which is allowed to be used is not zero.
And the soon-to-expire informing module is used for sending out informing information that the remaining time length of the software allowed to be used and the certificate are about to expire by a preset asynchronous message mechanism if the remaining time length of the software allowed to be used is within a set time period threshold.
Optionally, in another implementation manner of the software license local deployment apparatus according to the present invention, the software license local deployment apparatus further includes:
and the license file configuration module is used for configuring a license file in the software installation file, wherein the license file comprises the use duration of the software license, an interface mask list, a software license certificate and a software key generation path.
Optionally, in another implementation manner of the software license local deployment apparatus according to the present invention, the software license local deployment apparatus further includes:
and the permission check file configuration module is used for configuring a permission check file in the installation file, wherein the permission check file comprises a software permission certificate storage path, a software key storage path and a timed task scanning interval time.
Optionally, in another implementation manner of the software license local deployment apparatus according to the present invention, the software license local deployment apparatus further includes:
and the machine code acquisition module is used for acquiring the machine code of the unit to be installed through the machine code acquisition tool.
And the salt adding encryption processing module is used for performing salt adding encryption processing on the machine code to generate a corresponding machine code file.
And the software key and serial number generation module is used for generating a corresponding software key and a corresponding software serial number according to the machine code file, wherein the software key comprises a public key and a private key.
And the binding module is used for binding the software key and the software serial number into the software license certificate.
Fig. 3 and 4 above describe the software license local deployment device in the embodiment of the present invention in detail from the perspective of the modular functional entity, and the software license local deployment device in the embodiment of the present invention is described in detail from the perspective of hardware processing.
Fig. 5 is a schematic structural diagram of a software license local deployment device according to an embodiment of the present invention, where the software license local deployment device 500 may have a relatively large difference due to different configurations or performances, and may include one or more processors (CPUs) 501 (e.g., one or more processors) and a memory 509, and one or more storage media 508 (e.g., one or more mass storage devices) for storing applications 507 or data 506. Memory 509 and storage medium 508 may be, among other things, transient storage or persistent storage. The program stored on storage medium 508 may include one or more modules (not shown), each of which may include a sequence of instruction operations in a local deployment to a software license. Still further, the processor 501 may be configured to communicate with a storage medium 508 to execute a series of instruction operations in the storage medium 508 on the software licensed local deployment device 500.
Software licensing the local deployment device 500 may also include one or more power supplies 502, one or more wired or wireless network interfaces 503, one or more input-output interfaces 504, and/or one or more operating systems 505, such as Windows Server, Mac OS X, Unix, Linux, FreeBSD, etc. Those skilled in the art will appreciate that the software license local deployment device architecture illustrated in FIG. 5 does not constitute a limitation on the software license local deployment device and may include more or fewer components than illustrated, or some components in combination, or a different arrangement of components.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the embodiments provided in the present invention, it should be understood that the disclosed system, 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 invention 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 invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: various media capable of storing program codes, 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 above-mentioned embodiments are only used for illustrating the technical solutions of the present invention, and not for limiting the same; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.

Claims (10)

1. A method of local deployment of software licenses, comprising:
reading a license file, a license verification file and a machine code of a unit to be deployed in the software installation file;
analyzing the license file to obtain a corresponding software key and a corresponding machine code file;
decoding the software key to obtain a corresponding private key;
decrypting the machine code file according to the private key to obtain a target machine code;
judging whether the target machine code is the same as the machine code of the unit to be deployed;
and if the target machine code is the same as the machine code of the unit to be deployed, loading the service corresponding to the software, and judging that the local deployment of the software license of the unit to be deployed is successful.
2. The software license local deployment method of claim 1, the method further comprising:
and if the target machine code is different from the machine code of the unit to be deployed, stopping loading the service corresponding to the software, and judging that the software of the unit to be deployed allows local deployment to fail.
3. The method according to claim 1, wherein after the loading a service corresponding to software if the target machine code is the same as the machine code of the unit to be deployed and determining that the local deployment of the software license of the unit to be deployed is successful, the method includes:
acquiring corresponding software license use duration;
calculating the residual time length of the software licensed for the unit to be deployed according to the software licensed use time length;
judging whether the residual time length of the licensed software is zero or not;
if the residual time of the licensed software is zero, judging that the software license certificate of the unit to be deployed is expired;
sending out the notification information of the expired certificate according to a preset asynchronous message mechanism;
and killing the current process of the software by using a kill command, and exiting the software.
4. The method of claim 3, wherein after said determining whether the remaining time period for which the software is licensed is zero, the method further comprises:
if the residual time length of the software which is permitted to use is not zero, continuously judging whether the residual time length of the software which is permitted to use is within a set time period threshold value;
if the residual time of the software permitted to be used is within the set time period threshold, a preset asynchronous message mechanism sends out notification information that the residual time and the certificate of the software permitted to be used are out of date.
5. The method of claim 1, wherein prior to reading the license file, the license check file, and the machine code of the unit to be deployed in the software installation file, the method further comprises:
and configuring a license file in the software installation file, wherein the license file comprises the use duration of the software license, an interface mask list, a software license certificate and a software key generation path.
6. The method of claim 1, wherein prior to reading the license file, the license check file, and the machine code of the unit to be deployed in the software installation file, the method further comprises:
and configuring a license check file in the installation file, wherein the license check file comprises a software license certificate storage path, a software key storage path and a timed task scanning interval time.
7. The local software license deployment method according to any one of claims 1 to 6, further comprising, before reading the license file, the license check file, and the machine code of the unit to be deployed in the software installation file:
acquiring a machine code of a unit to be installed through a machine code acquisition tool;
performing salt adding encryption processing on the machine code to generate a corresponding machine code file;
generating a corresponding software key and a software serial number according to the machine code file, wherein the software key comprises a public key and a private key;
binding the software key and the software serial number into a software license certificate.
8. A software license local deployment apparatus, comprising:
the machine code reading module is used for reading the license file, the license verification file and the machine code of the unit to be deployed in the software installation file;
the analysis module is used for analyzing the license file to obtain a corresponding software key and a corresponding machine code file;
the decoding module is used for decoding the software secret key to obtain a corresponding private key;
the target machine code acquisition module is used for decrypting the machine code file according to the private key to obtain a target machine code;
the judging module is used for judging whether the target machine code is the same as the machine code of the unit to be deployed or not;
and the loading module is used for loading the service corresponding to the software if the target machine code is the same as the machine code of the unit to be deployed and judging that the local deployment of the software license of the unit to be deployed is successful.
9. A software license local deployment device, the software license local deployment device comprising: a memory having instructions stored therein and at least one processor, the memory and the at least one processor interconnected by a line;
the at least one processor invokes the instructions in the memory to cause the software license local deployment device to perform the method of any of claims 1-7.
10. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the steps of the method according to any one of claims 1 to 7.
CN202010090295.1A 2020-02-13 2020-02-13 Local deployment method, device, equipment and storage medium for software license Pending CN111367532A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010090295.1A CN111367532A (en) 2020-02-13 2020-02-13 Local deployment method, device, equipment and storage medium for software license
PCT/CN2021/072806 WO2021159931A1 (en) 2020-02-13 2021-01-20 Method, apparatus and device for licensing and locally deploying software, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010090295.1A CN111367532A (en) 2020-02-13 2020-02-13 Local deployment method, device, equipment and storage medium for software license

Publications (1)

Publication Number Publication Date
CN111367532A true CN111367532A (en) 2020-07-03

Family

ID=71204489

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010090295.1A Pending CN111367532A (en) 2020-02-13 2020-02-13 Local deployment method, device, equipment and storage medium for software license

Country Status (2)

Country Link
CN (1) CN111367532A (en)
WO (1) WO2021159931A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112804094A (en) * 2020-12-30 2021-05-14 北京天融信网络安全技术有限公司 Equipment deployment method and device
WO2021159931A1 (en) * 2020-02-13 2021-08-19 深圳壹账通智能科技有限公司 Method, apparatus and device for licensing and locally deploying software, and storage medium
CN113672241A (en) * 2021-08-23 2021-11-19 北京优锘科技有限公司 Method, device, equipment and storage medium for 3D scene offline deployment
WO2022133923A1 (en) * 2020-12-24 2022-06-30 京东方科技集团股份有限公司 License authentication method and apparatus, electronic device, system, and storage medium

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7085742B2 (en) * 2000-10-30 2006-08-01 Xybo Systems, Inc. Authenticating software licenses
CN104700002B (en) * 2013-12-05 2018-02-27 航天信息软件技术有限公司 A kind of method of software protection, mandate and registration
WO2018119644A1 (en) * 2016-12-27 2018-07-05 深圳配天智能技术研究院有限公司 Software authorization method, system and device
CN107391971A (en) * 2017-06-13 2017-11-24 北京航天发射技术研究所 A kind of guard method of software license mandate
CN109284586B (en) * 2018-08-27 2020-05-19 武汉达梦数据库有限公司 Method and device for realizing software license
CN111367532A (en) * 2020-02-13 2020-07-03 深圳壹账通智能科技有限公司 Local deployment method, device, equipment and storage medium for software license

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021159931A1 (en) * 2020-02-13 2021-08-19 深圳壹账通智能科技有限公司 Method, apparatus and device for licensing and locally deploying software, and storage medium
WO2022133923A1 (en) * 2020-12-24 2022-06-30 京东方科技集团股份有限公司 License authentication method and apparatus, electronic device, system, and storage medium
CN112804094A (en) * 2020-12-30 2021-05-14 北京天融信网络安全技术有限公司 Equipment deployment method and device
CN112804094B (en) * 2020-12-30 2023-04-18 北京天融信网络安全技术有限公司 Equipment deployment method and device
CN113672241A (en) * 2021-08-23 2021-11-19 北京优锘科技有限公司 Method, device, equipment and storage medium for 3D scene offline deployment

Also Published As

Publication number Publication date
WO2021159931A1 (en) 2021-08-19

Similar Documents

Publication Publication Date Title
CN111367532A (en) Local deployment method, device, equipment and storage medium for software license
CN101305545B (en) Method and apparatus for managing digital rights of secure removable media
US8533859B2 (en) System and method for software protection and secure software distribution
KR101509585B1 (en) Counterfeiting preventing appratus, user device, method and system for mobile application
CN104639506B (en) Method, system and the terminal for carrying out management and control are installed to application program
KR20180075513A (en) Method and apparatus for realizing session identifier synchronization
JP2004295271A (en) Card and pass code generator
CN109284585B (en) Script encryption method, script decryption operation method and related device
JP2004213216A (en) Information security microcomputer and its program developing device and program development system
EP2869231A1 (en) Verification of authenticity of a maintenance means connected to a controller of a passenger transportation/access device of a building and provision and obtainment of a license key for use therein
CN110688660A (en) Method and device for safely starting terminal and storage medium
CN112887340B (en) Password resetting method and device, service management terminal and storage medium
CN114785514B (en) Method and system for application license authorization of industrial Internet of things terminal
JPH07110767A (en) Method for managing and controlling software utilization license
CN112383577A (en) Authorization method, device, system, equipment and storage medium
CN110619194B (en) Upgrade package encryption and decryption methods and devices
CN112231651A (en) Method for preventing decompiling and tampering copyright authorization
CN115795438A (en) Method and system for authorizing application program and readable storage medium
CN114692097A (en) Off-line software use authorization method
JP2007179357A (en) Method for installing computer program
JP2014016659A (en) Electronic authentication system, terminal, server, and electronic authentication program
KR101282504B1 (en) Software authentication method in network
CN111523128A (en) Information protection method, system, electronic device and medium
CN113051532A (en) Software authorization method and device, computer equipment and storage medium
KR101003242B1 (en) System for preventing illegal software copy from usb memory device and method of operating the stored software in the usb memory device

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