CN114491423A - Software use authorization protection method - Google Patents

Software use authorization protection method Download PDF

Info

Publication number
CN114491423A
CN114491423A CN202210125541.1A CN202210125541A CN114491423A CN 114491423 A CN114491423 A CN 114491423A CN 202210125541 A CN202210125541 A CN 202210125541A CN 114491423 A CN114491423 A CN 114491423A
Authority
CN
China
Prior art keywords
authorization
software
generating
authorization file
value
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
CN202210125541.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.)
BEIJING TIP TECHNOLOGY CO LTD
Original Assignee
BEIJING TIP TECHNOLOGY 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 BEIJING TIP TECHNOLOGY CO LTD filed Critical BEIJING TIP TECHNOLOGY CO LTD
Priority to CN202210125541.1A priority Critical patent/CN114491423A/en
Publication of CN114491423A publication Critical patent/CN114491423A/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

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

Abstract

The invention discloses a software use authorization protection method, which comprises the following steps: s1, generating a machine code, and determining the uniqueness of the standard software installation machine through the machine code; s2, generating a software XML authorization file template, and generating and acquiring the software XML authorization file template through the configuration of a management platform; s3, signature value generation, namely generating a unique value of the machine code character string through a secure hash algorithm, then operating the unique value through an RSA algorithm to generate a signed value, and encoding the signed value through base64 encoding to generate a signature value; s4, based on the plaintext content of the authorization file template generated by S2 and S3, encrypting the content by an AES algorithm through a preset fixed password to generate a ciphertext authorization file; and S5, generating a final authorization file after the authorization file is decoded and authorized. The invention solves the problems of frequent embezzlement of the existing software, loss and safety risk.

Description

Software use authorization protection method
Technical Field
The invention relates to the technical field of software protection, in particular to a software use authorization protection method.
Background
With the development of network technology, software piracy and software embezzlement are more and more frequent, so that the income of a company is damaged, and potential safety hazards exist. In order to protect that the software of a company can be correctly installed but cannot be used under the condition that the software is not authorized by an authorization platform after being stolen unintentionally or intentionally, the software can be normally used only after an authorization file (license file) generated after the software is installed on a terminal (computer) is authorized by the authorization platform in the company, so that the software is well protected from being stolen or illegally used, the benefit of the company is well protected from being lost, the company resources are not leaked, the correct use of the company software is well protected, and the image and the credit of the company can be maintained from the side.
Disclosure of Invention
Therefore, the invention provides a software use authorization protection method to solve the problems of frequent software embezzlement, loss and security risk.
In order to achieve the above purpose, the invention provides the following technical scheme:
the invention discloses a software use authorization protection method, which comprises the following steps:
s1, generating a machine code, and determining the uniqueness of the standard software installation machine through the machine code;
s2, generating a software XML authorization file template, and generating and acquiring the software XML authorization file template through the configuration of a management platform;
s3, signature value generation, namely generating a unique value of the machine code character string through a secure hash algorithm, then operating the unique value through an RSA algorithm to generate a signed value, and encoding the signed value through base64 encoding to generate a signature value;
s4, based on the plaintext content of the authorization file template generated by S2 and S3, encrypting the content by an AES algorithm through a preset fixed password to generate a ciphertext authorization file;
and S5, generating a final authorization file after the authorization file is decoded and authorized.
Further, in the step S1, the machine code includes a CPU code ID, a hard disk serial number, and a network card mac address.
Further, in the step S2, the XML authorization file template includes a software version number, a software authorization point number, a software authorization start time, a software authorization end time, and a signature value.
Further, the signature value needs to be calculated and acquired, and the software version number, the software authorization point number, the software authorization starting time and the software authorization ending time are acquired through management platform configuration.
Further, in the step S4, the plaintext content of the authorization file template is generated according to the ciphertext signature value, the software authorization point number, the software authorization start time, the software authorization end time, and the software version number.
Further, in the step S5, the authorization file is uploaded to the authorization platform, and the authorization platform performs decoding authorization on the above process through reverse decoding, so as to generate a final authorization file.
Further, after the final authorization file is installed at the software end, the software function is unlocked and can be normally used, and the authorization platform is fed back to confirm that the authorization is successful.
The invention has the following advantages:
the invention discloses a software use authorization protection method, which comprises the steps of generating an authorization file, firstly generating a machine code, an authorization file template and a signature value, carrying out encryption processing by an AES algorithm through the plaintext content of the authorization file template to generate a ciphertext authorization file, uploading the authorization file to an authorization platform in a use stage, and carrying out decoding authorization on the processes through reverse decoding to generate a final authorization file; enabling authorized use of the software. The software is protected from being stolen or illegally used, the benefits of the company are better protected from being lost, the company resources are not leaked, the correct use of the company software is well protected, and the safety risk of the software is reduced.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below. It should be apparent that the drawings in the following description are merely exemplary, and that other embodiments can be derived from the drawings provided by those of ordinary skill in the art without inventive effort.
The structures, the proportions, the sizes, and the like shown in the specification are only used for matching with the contents disclosed in the specification, so that those skilled in the art can understand and read the present invention, and do not limit the conditions for implementing the present invention, so that the present invention has no technical essence, and any modifications of the structures, changes of the proportion relation, or adjustments of the sizes, should still fall within the scope of the technical contents disclosed in the present invention without affecting the efficacy and the achievable purpose of the present invention.
Fig. 1 is a flowchart of a method for protecting software usage authorization according to an embodiment of the present invention;
FIG. 2 is a flow chart of an AES algorithm provided by an embodiment of the invention;
Detailed Description
The present invention is described in terms of particular embodiments, other advantages and features of the invention will become apparent to those skilled in the art from the following disclosure, and it is to be understood that the described embodiments are merely exemplary of the invention and that it is not intended to limit the invention to the particular embodiments disclosed. 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.
Examples
Referring to fig. 1, the present embodiment discloses a software use authorization protection method, where the method includes:
s1, generating a machine code, and determining the uniqueness of the standard software installation machine through the machine code;
s2, generating a software XML authorization file template, and generating and acquiring the software XML authorization file template through the configuration of a management platform;
s3, signature value generation, namely generating a unique value of the machine code character string through a secure hash algorithm, then operating the unique value through an RSA algorithm to generate a signed value, and encoding the signed value through base64 encoding to generate a signature value;
s4, based on the plaintext content of the authorization file template generated by S2 and S3, encrypting the content by an AES algorithm through a preset fixed password to generate a ciphertext authorization file;
and S5, generating a final authorization file after the authorization file is decoded and authorized.
In step S1, the machine code includes a CPU code ID, a hard disk serial number, and a network card mac address, so as to determine the uniqueness of the machine code and avoid duplication or collision.
And generating a signature value after the machine code is generated, wherein in the step S2, the XML authorization file template comprises a software version number, software authorization points, software authorization starting time, software authorization ending time and a signature value. The signature value needs to be calculated and acquired, and the software version number, the software authorization point number, the software authorization starting time and the software authorization ending time are generated and acquired through management platform configuration.
In the process of generating the signature value, the machine code character string is firstly generated into a unique value through a secure hash algorithm, then the unique value is operated through an RSA algorithm to generate a signed value, and the signed value is encoded through base64 encoding to generate the signature value. Secure Hash Algorithm (SHA) is a commonly used data encryption algorithm. It was published by the National Institute of Standards and Technology (NIST) as the federal information processing standard in 1993 (i.e., the first SHA algorithm SHA-0). In 1995, its improved version SHA-1 was also promulgated (SHA-1 has higher security than SHA-0). The SHA-1 algorithm is currently the most commonly used secure hash algorithm and the most advanced encryption technique. The idea of the SHA-1 algorithm is to receive a piece of plaintext and then convert it into a (usually smaller) piece of ciphertext in an irreversible manner, which can also be simply understood as a process of taking a string of input codes and converting them into a short, fixed-bit-length output sequence, i.e. a hash value (called a message digest). The algorithm produces a 160-bit message digest output for messages of length no more than 2 to the power of 64, and the input is processed in 512-bit packets. The SHA-1 algorithm plays an extremely important role in cryptography, and can be used for realizing functions of data confidentiality, data change prevention, identity authentication and the like. A typical application is to extract hash values (called message digests) from data such as digital messages, IP packets, disk files, etc., and to perform authentication and integrity checks on the original data together with symmetric or asymmetric encryption techniques.
After the signature value is generated, a machine unique value is generated after SHA256 operation, the machine unique value is generated after RSA algorithm calculation, and the signed value is encoded through base64 to generate the signature value of the ciphertext.
Generating plaintext authorization file content by using the ciphertext signature value, the software authorization point number, the software authorization starting time, the software authorization ending time and the software version number, and generating ciphertext authorization file content by using a fixed password and performing AES algorithm operation.
The AES encryption algorithm involves 4 operations: byte substitution (SubBytes), row shifting (ShiftRows), column obfuscation (MixColumns), and round key addition (AddRoundKey). Fig. 2 shows the flow of AES encryption and decryption, and it can be seen from fig. 2 that: 1) each step of the decryption algorithm respectively corresponds to the inverse operation of the encryption algorithm, and 2) the sequence of all the operations of encryption and decryption is just opposite. It is because of these points (and the operational reversal of each step of the encryption algorithm and the decryption algorithm) that the correctness of the algorithm is guaranteed. And the key of each round in encryption and decryption is obtained by a seed key through a key expansion algorithm. The 16 bytes of plaintext, ciphertext and round keys in the algorithm are all represented by a 4x4 matrix.
The authorization file is uploaded to an authorization platform, decoding authorization is carried out on the processes through reverse decoding, and a final authorization file is generated; after the final authorization file is installed at the software end, the software function is unlocked, normal use can be carried out, the authorization platform is fed back, and the success of authorization is confirmed. The legal authorization of the software is realized, and the safety is ensured.
The software use authorization protection method disclosed by the embodiment generates an authorization file, generates a machine code, an authorization file template and a signature value, encrypts the authorization file by an AES algorithm through the plaintext content of the authorization file template to generate a ciphertext authorization file, uploads the authorization file to an authorization platform in a use stage, and decodes and authorizes the processes through reverse decoding to generate a final authorization file; enabling authorized use of the software. The software is protected from being stolen or illegally used, the benefits of the company are better protected from being lost, the company resources are not leaked, the correct use of the company software is well protected, and the safety risk of the software is reduced.
Although the invention has been described in detail above with reference to a general description and specific examples, it will be apparent to one skilled in the art that modifications or improvements may be made thereto based on the invention. Accordingly, such modifications and improvements are intended to be within the scope of the invention as claimed.

Claims (7)

1. A software use authorization protection method is characterized in that the method comprises the following steps:
s1, generating a machine code, and determining the uniqueness of the standard software installation machine through the machine code;
s2, generating a software XML authorization file template, and generating and acquiring the software XML authorization file template through the configuration of a management platform;
s3, signature value generation, namely generating a unique value of the machine code character string through a secure hash algorithm, then operating the unique value through an RSA algorithm to generate a signed value, and encoding the signed value through base64 encoding to generate a signature value;
s4, based on the plaintext content of the authorization file template generated by S2 and S3, encrypting the content by an AES algorithm through a preset fixed password to generate a ciphertext authorization file;
and S5, generating a final authorization file after the authorization file is decoded and authorized.
2. The method for protecting authority of software use according to claim 1, wherein in said step S1, the machine code includes a CPU code ID, a serial number of a hard disk, and a mac address of a network card.
3. The method for protecting authority of using software as claimed in claim 1, wherein in step S2, the XML authorization file template includes software version number, software authorization point number, software authorization start time, software authorization end time, and signature value.
4. A method for protecting the authorization of software usage according to claim 3, wherein the signature value is acquired by calculation, and the software version number, the number of software authorization points, the starting time of software authorization and the ending time of software authorization are acquired by the configuration of the management platform.
5. The method for protecting the authorization of software usage according to claim 1, wherein in step S4, the plaintext contents of the authorization file template are generated by the ciphertext signature value, the number of software authorization points, the software authorization start time, the software authorization end time, and the software version number.
6. The method for protecting authorization of software usage according to claim 1, wherein in step S5, the authorization file is uploaded to the authorization platform for decoding authorization by reverse decoding, and a final authorization file is generated.
7. The software use authorization protection method according to claim 6, characterized in that after the final authorization file is installed at the software end, the software function is unlocked and can be used normally, and the authorization platform is fed back to confirm the success of authorization.
CN202210125541.1A 2022-02-10 2022-02-10 Software use authorization protection method Pending CN114491423A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210125541.1A CN114491423A (en) 2022-02-10 2022-02-10 Software use authorization protection method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210125541.1A CN114491423A (en) 2022-02-10 2022-02-10 Software use authorization protection method

Publications (1)

Publication Number Publication Date
CN114491423A true CN114491423A (en) 2022-05-13

Family

ID=81479056

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210125541.1A Pending CN114491423A (en) 2022-02-10 2022-02-10 Software use authorization protection method

Country Status (1)

Country Link
CN (1) CN114491423A (en)

Similar Documents

Publication Publication Date Title
EP2691906B1 (en) Method and system for protecting execution of cryptographic hash functions
US9537657B1 (en) Multipart authenticated encryption
EP2290872B1 (en) Device for generating a message authentication code for authenticating a message
US9838198B2 (en) Splitting S-boxes in a white-box implementation to resist attacks
US20060265595A1 (en) Cascading key encryption
CA2373787C (en) Self authentication ciphertext chaining
US7254233B2 (en) Fast encryption and authentication for data processing systems
US9363244B2 (en) Realizing authorization via incorrect functional behavior of a white-box implementation
CN105812146A (en) MD5-based two-way encryption data protection method
CN114844728B (en) Serialized data secure communication method and big data platform
US9641337B2 (en) Interface compatible approach for gluing white-box implementation to surrounding program
EP2960891B1 (en) Method for introducing dependence of white-box implementationon a set of strings
US20150372989A1 (en) Method for introducing dependence of white-box implementation on a set of strings
CN111683061A (en) Block chain-based Internet of things equipment access control method and device
CN115102768A (en) Data processing method and device and computer equipment
CN114491423A (en) Software use authorization protection method
CN115022042A (en) Compliance code verification method for protecting data privacy and computer readable medium
JP6631989B2 (en) Encryption device, control method, and program
EP2940919B1 (en) Realizing authorization via incorrect functional behavior of a white-box implementation
WO2022237440A1 (en) Authenticated encryption apparatus with initialization-vector misuse resistance and method therefor
KR20110042419A (en) Mode of operation adapted to multimedia environments
Liu Software protection with encryption and verification
Sivakumar et al. A new symmetric cryptosystem using randomized parameters of SHA-512 and MD5 hash functions
CN116881865A (en) License generation method and system
CN117675189A (en) Data encryption method, data decryption device and electronic equipment

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