CN112149066A - Activation verification method and device for software - Google Patents

Activation verification method and device for software Download PDF

Info

Publication number
CN112149066A
CN112149066A CN202011012271.0A CN202011012271A CN112149066A CN 112149066 A CN112149066 A CN 112149066A CN 202011012271 A CN202011012271 A CN 202011012271A CN 112149066 A CN112149066 A CN 112149066A
Authority
CN
China
Prior art keywords
activation
software
unique identifier
verification
environment
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
CN202011012271.0A
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.)
DeepBlue AI Chips Research Institute Jiangsu Co Ltd
Original Assignee
DeepBlue AI Chips Research Institute Jiangsu Co Ltd
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 DeepBlue AI Chips Research Institute Jiangsu Co Ltd filed Critical DeepBlue AI Chips Research Institute Jiangsu Co Ltd
Priority to CN202011012271.0A priority Critical patent/CN112149066A/en
Publication of CN112149066A publication Critical patent/CN112149066A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/125Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/73Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)

Abstract

The invention provides a method and a device for verifying activation of software, wherein the method comprises the following steps: detecting the current running environment of the software; when the current running environment of the software is a physical machine environment, locally stored activation information is acquired; decrypting the locally stored activation information to obtain a unique identifier of the terminal device, wherein the unique identifier comprises: the universal unique identification code of the mainboard, the mainboard serial number and the BIOS serial number; acquiring a unique identifier of local terminal equipment; and when the unique identifier in the activation information is consistent with the unique identifier of the local terminal equipment, judging that the software verification is successful. According to the activation verification method, when the running environment of the software is judged to be a physical machine, the unique identifier of the terminal equipment is obtained, the unique identifier is prevented from being copied and modified in the virtual machine environment, the combination of the universal unique identification code of the mainboard, the mainboard serial number and the BIOS serial number is used as the unique identifier, and the unique identifier can only be read and cannot be modified when being used, so that the method is more convenient and safer.

Description

Activation verification method and device for software
Technical Field
The present invention relates to the field of computer technologies, and in particular, to a software activation verification method, a software activation verification apparatus, a computer device, a non-transitory computer-readable storage medium, and a computer program product.
Background
The existing software activation verification has the situations of safety risk and complex verification steps, for example, a terminal does not have enough safety measures for acquiring self hardware information, part of hardware information may be the same on different devices, a malicious attacker may also generate two terminals with completely the same hardware information in a copying or modifying mode, and meanwhile, the verification steps are complex and are not suitable for verification of terminal devices without a networking environment.
Disclosure of Invention
The invention provides a software activation verification method for solving the technical problems, which is characterized in that when the operating environment of software is judged to be a physical machine, the unique identifier of the terminal equipment is obtained, the unique identifier is prevented from being copied and modified in the virtual machine environment, and the combination of the universal unique identification code of the main board, the main board serial number and the BIOS (Basic Input Output System) serial number is used as the unique identifier code, and the unique identifier code can only be read and cannot be modified when being used, so that the software activation verification method is more convenient and safer.
The technical scheme adopted by the invention is as follows:
a method for verifying activation of software, comprising the steps of: detecting the current running environment of the software; when the current running environment of the software is a physical machine environment, locally stored activation information is acquired; decrypting the locally stored activation information to obtain a unique identifier of the terminal device, wherein the unique identifier comprises: the universal unique identification code of the mainboard, the mainboard serial number and the BIOS serial number; acquiring a unique identifier of local terminal equipment; and when the unique identifier in the activation information is consistent with the unique identifier of the local terminal equipment, judging that the software verification is successful.
According to an embodiment of the present invention, the activation verification method for software further includes: when the software is activated for the first time, acquiring a current activation environment; and performing activation verification on the software according to the current activation environment.
According to one embodiment of the invention, the activation verification of the software according to the current activation environment comprises: when the current activation environment is an online environment and the current running environment of the software is a physical machine environment, acquiring a unique identifier of the current terminal equipment; acquiring a unique verification code generated by a server; encrypting the unique verification code and the unique identifier and sending the encrypted unique verification code and the unique identifier to the server; receiving encrypted verification information sent by the server; and decrypting the encrypted verification information, and encrypting the unique identifier of the terminal equipment as activation information when the verification information passes verification.
According to an embodiment of the present invention, when the verification information is invalid, it is determined that the initial activation has failed.
According to one embodiment of the invention, the activation verification of the software according to the current activation environment comprises: when the current activation environment is an offline environment, acquiring a unique identifier of the current terminal equipment; and encrypting the unique identifier of the current terminal equipment to be used as the activation information.
According to one embodiment of the invention, when the current running environment of the software is a virtual machine environment, the verification is judged to be failed.
Corresponding to the method, the invention also provides a device for activating and verifying the software, which comprises the following steps: the detection module is used for detecting the current running environment of the software; the first acquisition module is used for acquiring locally stored activation information when the current running environment of the software is a physical machine environment; a decryption module, configured to decrypt the locally stored activation information to obtain a unique identifier of the terminal device, where the unique identifier includes: the universal unique identification code of the mainboard, the mainboard serial number and the BIOS serial number; the second acquisition module is used for acquiring the unique identifier of the local terminal equipment; and the judging module is used for judging that the software verification is successful when the unique identifier in the activation information is consistent with the unique identifier of the local terminal equipment.
The invention also provides a computer device, which comprises a memory, a processor and a computer program which is stored on the memory and can run on the processor, wherein when the processor executes the program, the activation verification method of the software is realized.
In response to the above method, the present invention also provides a non-transitory computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements the above method for verifying activation of software.
In response to the above method, the present invention further provides a computer program product, wherein when instructions in the computer program product are executed by a processor, the activation verification method of the software is performed.
The invention has the beneficial effects that:
according to the invention, when the running environment of the software is judged to be a physical machine, the unique identifier of the terminal equipment is obtained, the unique identifier is prevented from being copied and modified in the virtual machine environment, and the combination of the universal unique identification code of the mainboard, the mainboard serial number and the BIOS serial number is used as the unique identifier code, so that the unique identifier code can only be read and cannot be modified when being used, and the method is more convenient and safer.
Drawings
FIG. 1 is a flow chart of a method for verifying activation of software according to an embodiment of the present invention;
FIG. 2 is a flow diagram of a method for activation verification of software according to one embodiment of the invention;
FIG. 3 is a block diagram of an activation verification device for software according to an embodiment of the present invention;
fig. 4 is a block diagram of an activation verification device for software according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Fig. 1 is a flowchart of a method for verifying activation of software according to an embodiment of the present invention.
As shown in fig. 1, the activation verification method of software according to an embodiment of the present invention may include the following steps:
and S1, detecting the current running environment of the software.
It will be appreciated that since the virtual machine environment is very susceptible to copying and modification, it is very insecure to obtain the device identification in the virtual machine. Whether in a software activation flow or a software verification flow, the current running environment of the software needs to be detected first, and if the current running environment of the software is a virtual machine, the failure of software activation and verification is directly judged. That is, in one embodiment of the invention, the verification is determined to have failed when the current execution environment of the software is a virtual machine environment.
And S2, when the current running environment of the software is the physical machine environment, acquiring the locally stored activation information.
In one embodiment of the invention, the locally stored activation information is activation information stored when the software is activated prior to initial use.
S3, decrypting the locally stored activation information to obtain the unique identifier of the terminal device, where the unique identifier includes: the universal unique identification code of the mainboard, the serial number of the mainboard and the serial number of the BIOS.
And S4, acquiring the unique identification of the local terminal equipment.
And S5, when the unique identifier in the activation information is consistent with the unique identifier of the local terminal equipment, judging that the software verification is successful.
Specifically, when software is started, whether the current running environment is a physical machine environment is detected, if the current running environment is a virtual machine environment, verification failure is judged, and the software is closed; if the current operating environment is a physical machine environment, locally stored activation information is obtained. And decrypting the locally stored activation information to obtain the unique identifier of the terminal equipment, wherein the unique identifier of the terminal equipment comprises a universal unique identification code of the mainboard, a mainboard serial number and a BIOS serial number. Then obtaining a unique identifier of the local terminal equipment, wherein the unique identifier also comprises a universal unique identification code of the mainboard, a mainboard serial number and a BIOS serial number, comparing the obtained unique identifier of the local terminal with the unique identifier of the terminal equipment in the activation information, and judging that the software verification is successful if the unique identifier of the local terminal and the unique identifier of the terminal equipment in the activation information are completely consistent; if not, judging that the software fails to be verified, and closing the software.
In some embodiments of the present invention, the unique identifier of the terminal device includes a universal unique identifier of the motherboard, a serial number of the motherboard, and a BIOS serial number, and these identifiers are set and unique when the terminal device leaves a factory, and can only be read but cannot be modified during the use of the computer. Compared with the existing schemes which use media access control addresses, central processing unit serial numbers, hard disk serial numbers and the like as the unique device identification, the unique device identification has higher security.
Before the software is verified in use, whether the software is activated or not is judged, namely the software needs to be activated in the first use. When activating, the activation environment of the software needs to be judged first. In an embodiment of the present invention, the activation verification method of software further includes: when the software is activated for the first time, acquiring a current activation environment; and performing activation verification on the software according to the current activation environment.
According to one embodiment of the invention, the activation verification of the software according to the current activation environment comprises the following steps: when the current activation environment is an online environment and the current running environment of the software is a physical machine environment, acquiring a unique identifier of the current terminal equipment; acquiring a unique verification code generated by a server; encrypting the unique verification code and the unique identifier and sending the encrypted unique verification code and the unique identifier to a server; receiving encrypted verification information sent by a server; and decrypting the encrypted verification information, and encrypting the unique identifier of the terminal equipment as activation information when the verification information is verified to be passed.
Further, in one embodiment of the present invention, when the authentication information is invalid for authentication, it is determined that the initial activation has failed.
Specifically, when the current activation environment is an online environment, detecting whether the current running environment of the software is a physical machine environment, and if the current running environment is a virtual machine environment, judging that the activation fails; if the current operating environment is a physical machine environment, the unique identifier of the current terminal equipment is obtained, the unique identifier comprises a universal unique identification code of the mainboard, a mainboard serial number and a BIOS serial number, the identifier formed by the information is the unique identifier of the terminal equipment, and the unique identifier cannot be changed on the premise of not replacing the mainboard. When a user purchases a product, a verification code acquisition requirement instruction is sent, the server generates a unique verification code and sends the unique verification code to the terminal equipment, the user inputs the unique verification code, and the unique verification code and the unique identifier of the terminal equipment are sent to the server through software. The server decrypts and verifies whether the obtained unique verification code is valid or not and whether the obtained unique identifier of the terminal equipment already exists or not, if the unique verification code is valid and the unique identifier of the terminal equipment does not exist, the verification is judged to be passed, the server stores the unique identifier of the terminal equipment and sends an encrypted verification passing message to the client; otherwise, the server encrypts an invalid verification message and sends the encrypted invalid verification message back to the client. The client software decrypts the received returned message, encrypts the unique identifier of the terminal when the decrypted message passes verification, stores the unique identifier as activation information to the local, and successfully activates the unique identifier; and when the decrypted information is invalid for verification, judging that the software activation fails.
According to another embodiment of the invention, the activation verification of the software according to the current activation environment comprises the following steps: when the current activation environment is an offline environment, acquiring a unique identifier of the current terminal equipment; and encrypting the unique identifier of the current terminal equipment to be used as the activation information.
Specifically, because a computer is not connected to an external network in many cases in an industrial production environment, a software manufacturer is required to arrange a worker to activate the computer on site, and the worker only needs to carry the activation software to obtain a unique identifier of current terminal equipment on a specified terminal, encrypt the unique identifier and store the encrypted unique identifier as activation information locally, so that the activation is successful.
As a specific example of the present invention, as shown in fig. 2, the activation verification method of software of the present invention may include the steps of:
and S101, the current activation environment of the software is an online environment.
And S102, judging whether the current running environment of the software is a physical machine. If yes, step S104 is performed, and if no, step S103 is performed.
And S103, failing to activate.
And S104, acquiring the unique identifier of the current terminal equipment.
And S105, acquiring the unique verification code generated by the server.
And S106, encrypting the unique verification code and the unique identifier and sending the encrypted unique verification code and the unique identifier to the server.
S107, the encrypted verification information sent by the server is received.
And S108, judging whether the verification information is verified. If yes, step S109 is executed, and if no, the process returns to step S103.
And S109, taking the unique identifier of the terminal equipment as the activation information and storing the unique identifier in local.
And S110, successfully activating.
And S111, verifying the software when the software is used.
And S112, judging whether the current running environment of the software is a physical machine. If yes, step S114 is performed, and if no, step S113 is performed.
And S113, failing to verify, and closing the software.
S114, the locally stored activation information is obtained, and the locally stored activation information is decrypted to obtain the unique identifier of the terminal equipment.
And S115, acquiring the unique identifier of the local terminal equipment.
S116, judging whether the unique identifier in the activation information is consistent with the unique identifier of the local terminal equipment. If yes, go to step S117, otherwise return to step S113.
And S117, successfully verifying the software and starting the software.
In summary, in the process of software activation and verification, the present invention first detects whether the current operating environment of the software is a physical machine, and then obtains the unique identifier of the current terminal when the current operating environment is the physical machine, wherein the unique identifier selects a form of a combination of a universal unique identification code of the motherboard, a motherboard serial number, and a BIOS serial number, and these identifiers are set and unique when the device comes out, and can only be read but cannot be modified during the use of the computer, and cannot be changed due to the replacement of external devices such as a hard disk, a network card, and the like, which is more convenient and safer.
Corresponding to the software activation verification method of the above embodiment, the invention also provides a software activation verification device.
Fig. 3 is a block diagram of an activation verification apparatus for software according to an embodiment of the present invention.
As shown in fig. 3, the activation verification apparatus for software according to an embodiment of the present invention may include: a detection module 10, a first obtaining module 20, a decryption module 30, a second obtaining module 40 and a decision module 50.
The detection module 10 is used for detecting the current running environment of the software. The first obtaining module 20 is configured to obtain the locally stored activation information when the current running environment of the software is a physical machine environment. The decryption module 30 is configured to decrypt the locally stored activation information to obtain a unique identifier of the terminal device, where the unique identifier includes: the universal unique identification code of the mainboard, the serial number of the mainboard and the serial number of the BIOS. The second obtaining module 40 is configured to obtain a unique identifier of the local terminal device. The determination module 50 is configured to determine that the software verification is successful when the unique identifier in the activation information is consistent with the unique identifier of the local terminal device.
According to an embodiment of the present invention, as shown in fig. 4, the activation verification apparatus for software described above further includes: a third obtaining module 60, configured to obtain a current activation environment when the software is activated for the first time; and an activation verification module 70 for performing activation verification on the software according to the current activation environment.
According to an embodiment of the present invention, the activation verification module 70 performs activation verification on the software according to a current activation environment, specifically, when the current activation environment is an online environment and a current operating environment of the software is a physical machine environment, obtains a unique identifier of a current terminal device; acquiring a unique verification code generated by a server; encrypting the unique verification code and the unique identifier and sending the encrypted unique verification code and the unique identifier to a server; receiving encrypted verification information sent by a server; and decrypting the encrypted verification information, and encrypting the unique identifier of the terminal equipment as activation information when the verification information is verified to be passed.
The activation verification module 70 is further configured to determine that the initial activation has failed when the verification information is invalid for verification according to an embodiment of the present invention.
According to an embodiment of the present invention, the activation verification module 70 performs activation verification on software according to a current activation environment, specifically, when the current activation environment is an offline environment, obtains a unique identifier of a current terminal device; and encrypting the unique identifier of the current terminal equipment to be used as the activation information.
According to an embodiment of the present invention, the determination module 50 is further configured to determine that the verification fails when the current running environment of the software is a virtual machine environment.
It should be noted that, for details that are not disclosed in the software activation verification apparatus according to the embodiment of the present invention, please refer to details that are disclosed in the software activation verification method according to the embodiment of the present invention, and details are not described here again.
According to the invention, when the running environment of the software is judged to be a physical machine, the unique identifier of the terminal equipment is obtained, the unique identifier is prevented from being copied and modified in the virtual machine environment, and the combination of the universal unique identification code of the mainboard, the mainboard serial number and the BIOS serial number is used as the unique identifier code, so that the unique identifier code can only be read and cannot be modified when being used, and the method is more convenient and safer.
The invention further provides a computer device corresponding to the embodiment.
The computer device of the embodiment of the invention comprises a memory, a processor and a computer program which is stored on the memory and can run on the processor, and when the processor executes the computer program, the activation verification method of the software according to the embodiment of the invention can be realized.
According to the computer equipment provided by the embodiment of the invention, when the processor executes the computer program stored on the memory and judges that the running environment of the software is a physical machine, the unique identifier of the terminal equipment is obtained, the unique identifier is prevented from being copied and modified in the virtual machine environment, and the combination of the universal unique identification code of the mainboard, the mainboard serial number and the BIOS serial number is used as the unique identifier code, so that the unique identifier code can only be read and cannot be modified when being used, and the computer equipment is more convenient and safer.
The invention also provides a non-transitory computer readable storage medium corresponding to the above embodiment.
A non-transitory computer-readable storage medium of an embodiment of the present invention has stored thereon a computer program that, when executed by a processor, can implement the activation verification method of software according to the above-described embodiment of the present invention.
According to the non-transitory computer-readable storage medium of the embodiment of the invention, when the processor executes the computer program stored thereon, the unique identifier of the terminal device is acquired only when the running environment of the software is judged to be a physical machine, the unique identifier is prevented from being copied and modified in a virtual machine environment, and the combination of the universal unique identification code of the mainboard, the mainboard serial number and the BIOS serial number is used as the unique identifier, so that the unique identifier can only be read and cannot be modified when being used, and the computer-readable storage medium is more convenient and safer.
The present invention also provides a computer program product corresponding to the above embodiments.
When the instructions in the computer program product of the embodiment of the present invention are executed by the processor, the activation verification method of the software according to the above-described embodiment of the present invention can be performed.
According to the computer program product of the embodiment of the invention, when the processor executes the instruction, the unique identifier of the terminal equipment is obtained only when the running environment of the software is judged to be a physical machine, the unique identifier is prevented from being copied and modified in the virtual machine environment, and the combination of the universal unique identification code of the mainboard, the mainboard serial number and the BIOS serial number is used as the unique identifier, so that the unique identifier can only be read and cannot be modified when being used, and the computer program product is more convenient and safer.
In the description of the present invention, the terms "first" and "second" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implying any number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. The meaning of "plurality" is two or more unless specifically limited otherwise.
In the description herein, references to the description of the term "one embodiment," "some embodiments," "an example," "a specific example," or "some examples," etc., mean 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 invention. In this specification, the schematic representations of the terms used above are not necessarily intended to 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. Furthermore, various embodiments or examples and features of different embodiments or examples described in this specification can be combined and combined by one skilled in the art without contradiction.
Any process or method descriptions in flow charts or otherwise described herein may be understood as representing modules, segments, or portions of code which include one or more executable instructions for implementing specific logical functions or steps of the process, and alternate implementations are included within the scope of the preferred embodiment of the present invention in which functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those reasonably skilled in the art of the present invention.
The logic and/or steps represented in the flowcharts or otherwise described herein, e.g., an ordered listing of executable instructions that can be considered to implement logical functions, can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions. For the purposes of this description, a "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of the computer-readable medium would include the following: an electrical connection (electronic device) having one or more wires, a portable computer diskette (magnetic device), a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber device, and a portable compact disc read-only memory (CDROM). Additionally, the computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via for instance optical scanning of the paper or other medium, then compiled, interpreted or otherwise processed in a suitable manner if necessary, and then stored in a computer memory.
It should be understood that portions of the present invention may be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, the various steps or methods may be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, any one or combination of the following techniques, which are known in the art, may be used: a discrete logic circuit having a logic gate circuit for implementing a logic function on a data signal, an application specific integrated circuit having an appropriate combinational logic gate circuit, a Programmable Gate Array (PGA), a Field Programmable Gate Array (FPGA), or the like.
It will be understood by those skilled in the art that all or part of the steps carried by the method for implementing the above embodiments may be implemented by hardware related to instructions of a program, which may be stored in a computer readable storage medium, and when the program is executed, the program includes one or a combination of the steps of the method embodiments.
In addition, functional units in the embodiments of the present invention may be integrated into one processing module, or each unit may exist alone physically, or two or more units are integrated into one module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. The integrated module, if implemented in the form of a software functional module and sold or used as a stand-alone product, may also be stored in a computer readable storage medium.
The storage medium mentioned above may be a read-only memory, a magnetic or optical disk, etc. Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention, and that variations, modifications, substitutions and alterations can be made to the above embodiments by those of ordinary skill in the art within the scope of the present invention.

Claims (10)

1. A method for verifying activation of software, comprising the steps of:
detecting the current running environment of the software;
when the current running environment of the software is a physical machine environment, locally stored activation information is acquired;
decrypting the locally stored activation information to obtain a unique identifier of the terminal device, wherein the unique identifier comprises: the universal unique identification code of the mainboard, the mainboard serial number and the BIOS serial number;
acquiring a unique identifier of local terminal equipment;
and when the unique identifier in the activation information is consistent with the unique identifier of the local terminal equipment, judging that the software verification is successful.
2. The activation verification method for software according to claim 1, further comprising:
when the software is activated for the first time, acquiring a current activation environment;
and performing activation verification on the software according to the current activation environment.
3. The method for verifying activation of software according to claim 2, wherein verifying activation of the software according to the current activation environment comprises:
when the current activation environment is an online environment and the current running environment of the software is a physical machine environment, acquiring a unique identifier of the current terminal equipment;
acquiring a unique verification code generated by a server;
encrypting the unique verification code and the unique identifier and sending the encrypted unique verification code and the unique identifier to the server;
receiving encrypted verification information sent by the server;
and decrypting the encrypted verification information, and encrypting the unique identifier of the terminal equipment as activation information when the verification information passes verification.
4. The activation verification method for software according to claim 3, wherein,
and when the verification information is invalid, judging that the initial activation fails.
5. The method for verifying activation of software according to claim 2, wherein verifying activation of the software according to the current activation environment comprises:
when the current activation environment is an offline environment, acquiring a unique identifier of the current terminal equipment;
and encrypting the unique identifier of the current terminal equipment to be used as the activation information.
6. The activation verification method of software according to claim 1,
and when the current running environment of the software is the virtual machine environment, judging that the verification fails.
7. An activation verification apparatus for software, comprising:
the detection module is used for detecting the current running environment of the software;
the first acquisition module is used for acquiring locally stored activation information when the current running environment of the software is a physical machine environment;
a decryption module, configured to decrypt the locally stored activation information to obtain a unique identifier of the terminal device, where the unique identifier includes: the universal unique identification code of the mainboard, the mainboard serial number and the BIOS serial number;
the second acquisition module is used for acquiring the unique identifier of the local terminal equipment;
and the judging module is used for judging that the software verification is successful when the unique identifier in the activation information is consistent with the unique identifier of the local terminal equipment.
8. A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, characterized in that the processor, when executing the program, implements a method of activation verification of software according to any of claims 1-6.
9. A non-transitory computer-readable storage medium on which a computer program is stored, the program, when executed by a processor, implementing an activation verification method for software according to any one of claims 1-6.
10. A computer program product, characterized in that instructions in the computer program product, when executed by a processor, perform the activation verification method of software according to any of claims 1-6.
CN202011012271.0A 2020-09-23 2020-09-23 Activation verification method and device for software Pending CN112149066A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011012271.0A CN112149066A (en) 2020-09-23 2020-09-23 Activation verification method and device for software

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011012271.0A CN112149066A (en) 2020-09-23 2020-09-23 Activation verification method and device for software

Publications (1)

Publication Number Publication Date
CN112149066A true CN112149066A (en) 2020-12-29

Family

ID=73896461

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011012271.0A Pending CN112149066A (en) 2020-09-23 2020-09-23 Activation verification method and device for software

Country Status (1)

Country Link
CN (1) CN112149066A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112784221A (en) * 2021-01-22 2021-05-11 京东数字科技控股股份有限公司 Application program checking method and device and electronic equipment
WO2022242035A1 (en) * 2021-05-21 2022-11-24 长扬科技(北京)有限公司 Software secure application method and apparatus
CN116975794A (en) * 2023-06-27 2023-10-31 深圳市青葡萄科技有限公司 Software activation method, device and storage medium
CN117389614A (en) * 2023-11-20 2024-01-12 镁佳(北京)科技有限公司 Method and device for activating vehicle software, computer equipment and storage medium
CN117494077A (en) * 2023-11-09 2024-02-02 杭州医策科技有限公司 Equipment offline activation method and device based on asymmetric encryption

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104504308A (en) * 2014-12-11 2015-04-08 国云科技股份有限公司 License verification method for forbidding virtual machine to use software
CN109086578A (en) * 2017-06-14 2018-12-25 中兴通讯股份有限公司 A kind of method that soft ware authorization uses, equipment and storage medium
CN111538961A (en) * 2020-04-26 2020-08-14 云知声智能科技股份有限公司 Software activation method, device, equipment and storage medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104504308A (en) * 2014-12-11 2015-04-08 国云科技股份有限公司 License verification method for forbidding virtual machine to use software
CN109086578A (en) * 2017-06-14 2018-12-25 中兴通讯股份有限公司 A kind of method that soft ware authorization uses, equipment and storage medium
CN111538961A (en) * 2020-04-26 2020-08-14 云知声智能科技股份有限公司 Software activation method, device, equipment and storage medium

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112784221A (en) * 2021-01-22 2021-05-11 京东数字科技控股股份有限公司 Application program checking method and device and electronic equipment
WO2022242035A1 (en) * 2021-05-21 2022-11-24 长扬科技(北京)有限公司 Software secure application method and apparatus
CN116975794A (en) * 2023-06-27 2023-10-31 深圳市青葡萄科技有限公司 Software activation method, device and storage medium
CN117494077A (en) * 2023-11-09 2024-02-02 杭州医策科技有限公司 Equipment offline activation method and device based on asymmetric encryption
CN117389614A (en) * 2023-11-20 2024-01-12 镁佳(北京)科技有限公司 Method and device for activating vehicle software, computer equipment and storage medium

Similar Documents

Publication Publication Date Title
CN112149066A (en) Activation verification method and device for software
US11258792B2 (en) Method, device, system for authenticating an accessing terminal by server, server and computer readable storage medium
US8161285B2 (en) Protocol-Independent remote attestation and sealing
CN107077574B (en) Trust service for client devices
CN102347837B (en) The right method of challenge response and motor is generated in motor
JP4912879B2 (en) Security protection method for access to protected resources of processor
CN110326266B (en) Data processing method and device
CN110177111B (en) Information verification method, system and device
CN110688660A (en) Method and device for safely starting terminal and storage medium
JP5183517B2 (en) Information processing apparatus and program
US20230069877A1 (en) Methods for restricting read access to supply chips
CN112468294A (en) Access method and authentication equipment for vehicle-mounted TBOX
CN110837643B (en) Activation method and device of trusted execution environment
CN112346785A (en) Data processing method, device, system, storage medium and computer equipment
JP7296390B2 (en) Integrity testing of electronic devices
CN111988146B (en) Identity verification method, device, equipment and machine readable storage medium
CN112825093B (en) Security baseline checking method, host, server, electronic device and storage medium
CN112020065B (en) Information processing method, terminal equipment, server and storage medium
CN111600732B (en) Method and device for automatically activating and adding front-end equipment by front-end management equipment
CN113572716B (en) Equipment detection method and system
CN117614622A (en) Authorization verification method and device, electronic equipment and storage medium
CN117633765A (en) Offline authorization method, device and equipment
CN117751361A (en) Method for protecting the use of software
CN115001749A (en) Device authorization method, device and medium
CN113094060A (en) Electronic device and software updating method

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20201229

RJ01 Rejection of invention patent application after publication