Software security authentication method, device and storage medium
By generating and verifying the signature certificate during the software installation process, the security risk problems during software installation were solved, and the software's security certification and encrypted files were effectively validated, and the overall security and legitimacy were improved.
Patent Information
- Application Number
- CN202410361555.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-03-28
- Publication Date
- 2025-01-28
- Estimated Expiration
- 2044-03-28
AI Technical Summary
There are great security risks when installing the software, especially because the certificate may be stolen, resulting in the private key leakage, and the attacker can disguise himself as a legitimate user for malicious operations.
By receiving software registration requests, generate signature certificates, coded as certificate string, perform character interchange, obtain ciphertext, and backup it to the certificate database, execute file encryption and transfer file operation, and generate encrypted files. When receiving the software installation request, decrypt the encrypted files to verify, verify the certificate, and judge the credibility of the software.
Effectively prevent the signature certificate from being tampered with, improve the overall security of the software, prevent unauthorized software installation requests, reduce the risk of illegal dissemination of software, and ensure that the certificate used during the software installation process is legitimate and credible.
Smart Images

Figure CN118228210B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of data processing, and in particular to a software security authentication method, device and storage medium. Background Art
[0002] With the emergence of various software, it is difficult to distinguish which are high-quality software and which are rogue software. Rogue software may steal information from the device or remotely control the device, causing information security problems.
[0003] At present, trusted systems are used to identify software. The main function of the trusted system is to add software authentication functions to the system so that the trusted system can only accept the use of trusted software to achieve the purpose of protecting equipment and information. However, the trusted system relies on the trust chain and the digital certificate authority to verify the certificate. If the developer's terminal is hacked by an attacker, the certificate may be stolen, resulting in the leakage of the private key, so that the attacker can pretend to be a legitimate user to perform malicious operations. It can be seen that there are still great security risks when installing software, and a new technology is needed to solve the current problem. Summary of the invention
[0004] The main purpose of the present invention is to solve the technical problem of relatively large risks when installing software.
[0005] A first aspect of the present invention provides a software security authentication method, the software security authentication method comprising:
[0006] When receiving a software registration request, executing a certificate generation operation according to the software registration information carried in the software registration request to obtain a signed certificate;
[0007] Encode the signature certificate into a certificate string;
[0008] Taking the length of two characters as the swapping unit, performing a character swapping operation on the certificate character string to obtain a ciphertext, wherein when the number of characters in the certificate character string is odd, the last character does not participate in the swapping;
[0009] Backing up the ciphertext to a preset certificate database, and performing a file conversion operation on the ciphertext to obtain a certificate file;
[0010] Performing a file encryption operation on the certificate file to obtain an encrypted file;
[0011] Sending the encrypted file to the developer terminal and detecting whether a software installation request is received;
[0012] When receiving a software installation request, reading the encrypted file to be verified carried in the software installation request;
[0013] Performing a restoration operation on the encrypted file to be verified to obtain the ciphertext to be verified;
[0014] According to the certificate database, performing a certificate verification operation on the ciphertext to be verified to obtain a verification result;
[0015] The software installation request is responded to according to the verification result.
[0016] Optionally, in a first implementation manner of the first aspect of the present invention, the step of performing a certificate verification operation on the ciphertext to be verified according to the certificate database to obtain a verification result includes:
[0017] In the certificate database, a matching operation is performed on the ciphertext to be verified to determine whether there is a target ciphertext corresponding to the ciphertext to be verified;
[0018] If the target ciphertext exists in the certificate database, taking the software as credible as the verification result;
[0019] If the target ciphertext does not exist in the certificate database, the software is regarded as untrustworthy as a verification result.
[0020] Optionally, in a second implementation of the first aspect of the present invention, the step of performing a restoration operation on the encrypted file to be verified to obtain the ciphertext to be verified includes:
[0021] Perform a decryption operation on the encrypted file to be verified according to a preset password to obtain a certificate file to be verified;
[0022] The character string recorded in the preset text document in the certificate file to be verified is extracted to obtain the ciphertext to be verified.
[0023] Optionally, in a third implementation of the first aspect of the present invention, the step of responding to the software installation request according to the verification result includes:
[0024] When the verification result shows that the software is credible, outputting a prompt message allowing installation to respond to the software installation request;
[0025] When the verification result shows that the software is untrustworthy, a warning prompt message is output to respond to the software installation request.
[0026] Optionally, in a fourth implementation of the first aspect of the present invention, before the step of performing a certificate generation operation according to the software registration information to obtain a signature certificate, the method further includes:
[0027] Detecting the internal transmission status of the software registration information;
[0028] When the internal transmission state is transmitting, performing a character encryption operation on the software registration information to obtain a ciphertext of the software registration information;
[0029] When the internal transmission state is a non-transmission state and the software registration information is encrypted into the software registration information ciphertext, a character decryption operation is performed on the software registration information.
[0030] Optionally, in a fifth implementation of the first aspect of the present invention, the step of performing a character encryption operation on the software registration information includes:
[0031] Encoding the software registration information into an information string;
[0032] Dividing the information string into a plurality of sub-information strings of a preset length, wherein when the character length of the last group of sub-information strings is less than the preset length, the last group of sub-information strings is divided into a separate group;
[0033] Cross-exchange the first and last characters between two adjacent groups of the multiple sub-information character strings to obtain multiple target sub-information character strings, wherein when the number of the sub-information character strings is an odd number, the last group of sub-information character strings does not participate in the character exchange, and when the number of the sub-information character strings is an even number and the characters of the last group of sub-information character strings are less than the preset length, the last two groups of sub-information character strings do not participate in the character exchange;
[0034] Recombine multiple target sub-information character strings to obtain the software registration information ciphertext.
[0035] Optionally, in a sixth implementation manner of the first aspect of the present invention, the step of performing a file encryption operation on the certificate file to obtain an encrypted file includes:
[0036] Generate a random number with a preset number of digits;
[0037] The random number is used as a preset password, and a file encryption operation is performed on the certificate file to obtain an encrypted file.
[0038] Optionally, after the step of sending the encrypted file to the developer terminal and detecting whether a software installation request is received, the method further includes:
[0039] Detect whether a certificate acquisition request initiated by an authorized terminal is received;
[0040] If the certificate acquisition request is detected, query the certificate database for the ciphertext to be decrypted corresponding to the software unique identifier carried in the certificate acquisition request;
[0041] According to a preset decryption algorithm, the ciphertext to be decrypted is restored to a signature certificate to be output;
[0042] The to-be-output signed certificate is sent to the authorized terminal in response to the certificate acquisition request.
[0043] A second aspect of the present invention provides a software security authentication device, comprising: a memory and at least one processor, wherein instructions are stored in the memory, and the memory and the at least one processor are interconnected via lines; the at least one processor calls the instructions in the memory so that the software security authentication device executes the above-mentioned software security authentication method.
[0044] A third aspect of the present invention provides a computer-readable storage medium, wherein the computer-readable storage medium stores instructions, which, when executed on a computer, enable the computer to execute the above-mentioned software security authentication method.
[0045] In an embodiment of the present invention, the software security authentication device can effectively prevent the signature certificate from being tampered with through operations such as certificate generation, encoding, and encryption, thereby improving the overall security of the software. The use of encrypted file sending and verification operations can effectively prevent unauthorized software installation requests, reduce the illegal dissemination of software, and protect the legitimate rights and interests of software developers. By performing certificate verification operations on the ciphertext to be verified, the validity of the certificate can be accurately judged to ensure that the certificate used in the software installation process is legal and credible, further improving the security of software installation. In actual applications, even if the encrypted file is stolen, the thief cannot restore the signature certificate. Therefore, the data security of user privacy is also improved. When the method is used to install software, the security risks of developer privacy leakage and illegal software installation are reduced. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] Figure 1 A schematic diagram of an embodiment of a software security authentication method in an embodiment of the present invention;
[0047] Figure 2 A schematic diagram of a specific embodiment of step 105 of the software security authentication method in an embodiment of the present invention;
[0048] Figure 3 It is a schematic diagram of a specific embodiment after step 110 of the software security authentication method in an embodiment of the present invention;
[0049] Figure 4 A schematic diagram of a specific embodiment of step 114 of the software security authentication method in an embodiment of the present invention;
[0050] Figure 5 The figure is a schematic diagram of an embodiment of a software security authentication device in an embodiment of the present invention. DETAILED DESCRIPTION
[0051] The embodiments of the present invention provide a software security authentication method, device and storage medium.
[0052] The embodiments disclosed in the present invention will be described in more detail below with reference to the accompanying drawings. Although certain embodiments disclosed in the present invention are shown in the accompanying drawings, it should be understood that the present invention can be implemented in various forms and should not be construed as being limited to the embodiments described herein, which are instead provided for a more thorough and complete understanding of the present invention. It should be understood that the drawings and embodiments disclosed in the present invention are only for exemplary purposes and are not intended to limit the scope of protection disclosed in the present invention.
[0053] In the description of the embodiments disclosed in the present invention, the term "including" and similar terms should be understood as open inclusion, that is, "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The terms "first", "second", etc. may refer to different or the same objects. Other explicit and implicit definitions may also be included below.
[0054] For ease of understanding, the specific process of the embodiment of the present invention is described below. Figure 1 , an embodiment of the software security authentication method in the embodiment of the present invention includes:
[0055] 101. When receiving a software registration request, perform a certificate generation operation according to the software registration information carried in the software registration request to obtain a signed certificate;
[0056] Specifically, the software registration information includes software information and developer information. The trusted system will obtain the software information and developer information in the software registration information, and then generate a unique signature certificate based on this information.
[0057] Optional, software information includes but is not limited to:
[0058] Software Name: The name of the software to be signed.
[0059] Version number: The version number of the software, used to identify the differences between different versions.
[0060] Publisher: refers to the developer, publisher or company name of the software.
[0061] Release Date: The date the software was released.
[0062] Digital fingerprint: A unique identifier used to verify the integrity of software.
[0063] Optional, developer information includes but is not limited to:
[0064] Company Name: The name of the company to which the developer belongs.
[0065] Department: The name of the developer's department.
[0066] Country / Region: Information about the country or region where the developer is located.
[0067] City: Information about the city where the developer is located.
[0068] Contact information: developer’s phone number, email address, and other contact information.
[0069] Other certificate information: such as certificate validity period.
[0070] 102. Encode the signature certificate into a certificate string;
[0071] Specifically, the signature certificate is uniformly processed with Base64 to obtain a certificate string. Base64 is an encoding method for converting binary data into text data. In Base64 encoding, the original data is encoded and processed into a text string composed of characters such as AZ, az, 0-9, +, and / . In network transmission, some transmission protocols or systems only support the transmission of text data and cannot directly transmit binary data. Therefore, it is necessary to convert binary data into text data for transmission. At this time, Base64 encoding can be used. Although Base64 encoding is not an encryption algorithm, it confuses the original data, making it difficult to directly identify the original data, so it is sometimes used for simple data "hiding" purposes.
[0072] 103. Perform a character swap operation on the certificate character string with a length of 2 characters as a swap unit to obtain a ciphertext, wherein when the number of characters in the certificate character string is odd, the last character does not participate in the swap;
[0073] Specifically, assuming that the certificate string is "QUFCQkNDREQ=", swap the first and second digits, the third and fourth digits, and so on, to obtain the string: "UQCFkQDNER=Q", which is the ciphertext.
[0074] 104. Backing up the ciphertext to a preset certificate database, and performing a file conversion operation on the ciphertext to obtain a certificate file;
[0075] Specifically, the certificate database is used to perform certificate authentication for subsequent software installations.
[0076] 105. Perform a file encryption operation on the certificate file to obtain an encrypted file;
[0077] Specifically, the ciphertext is converted to a file, and a password is set for the obtained file (a new text is created, a string is put into the text, and the text is set as encrypted text) to obtain the encrypted file.
[0078] Specifically, refer to Figure 2 , Figure 2 105 is a schematic diagram of a specific embodiment of the software security authentication method in an embodiment of the present invention. Step 105 includes the following specific implementation methods:
[0079] 1051. Generate a random number with a preset number of digits;
[0080] 1052. Use the random number as a preset password and perform a file encryption operation on the certificate file to obtain an encrypted file.
[0081] In steps 1051-1052, the encrypted certificate file will not leak plain text information even if it is attacked during the transmission process, thereby improving the security of the transmission process.
[0082] 106. Send the encrypted file to the developer terminal, and detect whether a software installation request is received;
[0083] Specifically, the developer can restore the signature certificate based on the encrypted file to sign the software to be installed.
[0084] 107. When receiving a software installation request, reading the encrypted file to be verified carried in the software installation request;
[0085] Specifically, when a software installation request is received, the encrypted file to be verified carried in the software installation request is read.
[0086] 108. Perform a restoration operation on the encrypted file to be verified to obtain the ciphertext to be verified;
[0087] Specifically, the encrypted file to be verified is decrypted to obtain the ciphertext to be verified.
[0088] Specifically, step 108 includes the following specific implementation methods:
[0089] 1081. Perform a decryption operation on the encrypted file to be verified according to a preset password to obtain a certificate file to be verified;
[0090] 1082. Extract the character string recorded in the preset text document in the certificate file to be verified to obtain the ciphertext to be verified.
[0091] In steps 1081-1082, a character string is extracted from the certificate file to be verified as the ciphertext to be verified for use in a subsequent verification process, such as matching with the target ciphertext in the certificate database to determine the credibility of the software.
[0092] 109. Perform a certificate verification operation on the ciphertext to be verified according to the certificate database to obtain a verification result;
[0093] Specifically, in the certificate database, a matching operation is performed on the ciphertext to be verified to determine whether there is a target ciphertext corresponding to the ciphertext to be verified; if the target ciphertext exists in the certificate database, the software is trusted as a verification result; if the target ciphertext does not exist in the certificate database, the software is untrustworthy as a verification result.
[0094] 110. Respond to the software installation request according to the verification result.
[0095] Specifically, step 110 also includes the following specific implementations:
[0096] 111. When the verification result shows that the software is credible, output a prompt message allowing installation to respond to the software installation request;
[0097] 112. When the verification result is that the software is untrustworthy, output a warning prompt message to respond to the software installation request.
[0098] In steps 111-112, by outputting different prompt information, the risk of malware or virus transmission can be effectively reduced, damage to the system caused by installing untrusted software can be avoided, and the overall security and stability of the system can be improved.
[0099] Specifically, refer to Figure 3 , Figure 3 This is a schematic diagram of a specific embodiment after step 110 of the software security authentication method in an embodiment of the present invention, and the following specific implementation methods are included after step 110:
[0100] 113. Detecting the internal transmission status of the software registration information;
[0101] 114. When the internal transmission state is transmitting, perform character encryption operation on the software registration information to obtain ciphertext of the software registration information;
[0102] Specifically, refer to Figure 4 , Figure 4 1 is a schematic diagram of a specific embodiment of step 114 of the software security authentication method in an embodiment of the present invention. Step 114 also includes the following specific implementation methods:
[0103] 1141. Encode the software registration information into an information string;
[0104] 1142. Divide the information string into a plurality of sub-information strings of a preset length, wherein when the character length of the last group of sub-information strings is less than the preset length, divide the last group of sub-information strings into a separate group;
[0105] 1143. Cross-exchange the first and last characters between two adjacent groups of the multiple sub-information character strings to obtain multiple target sub-information character strings, wherein when the number of the sub-information character strings is an odd number, the last group of sub-information character strings does not participate in the character exchange, and when the number of the sub-information character strings is an even number and the characters of the last group of sub-information character strings are less than the preset length, the last two groups of sub-information character strings do not participate in the character exchange;
[0106] 1144. Reassemble multiple target sub-information character strings to obtain software registration information ciphertext.
[0107] It is assumed that the software registration information is encoded as "e+i9r+S7tuS / oeaBr++8mjEyMzQ1Nn0="
[0108] Separate the characters into groups of 5, that is:
[0109] "e+i9r";
[0110] "+S7tu";
[0111] "S / oea";
[0112] "Br++8";
[0113] "mjEyM";
[0114] "zQ1Nn";
[0115] “0=”.
[0116] Replace the first and last characters of two adjacent groups of characters alternately (the last group with less than 5 characters is ignored, and the last group with an odd number of characters is ignored), that is:
[0117] "u+i9+";
[0118] "rS7te";
[0119] "8 / oeB";
[0120] "ar++S";
[0121] "njEyz";
[0122] "MQ1Nm";
[0123] “0=.
[0124] Then combine the data to get the ciphertext of software registration information.
[0125] When you need to use software registration information, you only need to arrange the data in groups of 5 characters, and then cross the characters at the beginning and end in groups of two.
[0126] In steps 1041-1044, the software registration information is encrypted as long as it is in the transmission state, and is decrypted when it is not in the transmission state. This improves the internal confidentiality of the software registration information without affecting the normal use of the data. For example, if the data is intercepted, the software's security authentication device cannot decrypt it in time, and the intercepted data will be frozen in the encrypted state. If the transmission state is stopped normally, the user does not need to manually decrypt it.
[0127] 115. When the internal transmission state is a non-transmission state and the software registration information is encrypted into the software registration information ciphertext, perform a character decryption operation on the software registration information.
[0128] In steps 113-115, by detecting and encrypting the software registration information in transmission, it is possible to effectively prevent the data from being maliciously stolen or tampered with during the transmission process, thereby ensuring the confidentiality and integrity of the registration information and improving data security.
[0129] Optionally, detect whether a certificate acquisition request initiated by an authorized terminal is received; if the certificate acquisition request is detected, query the certificate database for the ciphertext to be decrypted corresponding to the software unique identifier carried in the certificate acquisition request; restore the ciphertext to be decrypted to a signature certificate to be output according to a preset decryption algorithm; send the signature certificate to be output to the authorized terminal in response to the certificate acquisition request. Among them, by detecting the certificate acquisition request initiated by the authorized terminal, the system can verify the legitimacy of the request and avoid unauthorized access, thereby enhancing the security of the system. The ciphertext to be decrypted is queried in the certificate database according to the software unique identifier carried in the certificate acquisition request, and is restored to the signature certificate to be output through a preset decryption algorithm, which effectively protects the confidentiality of the certificate data and prevents the leakage of sensitive information.
[0130] In an embodiment of the present invention, the software security authentication device can effectively prevent the signature certificate from being tampered with through operations such as certificate generation, encoding, and encryption, thereby improving the overall security of the software. The use of encrypted file sending and verification operations can effectively prevent unauthorized software installation requests, reduce the illegal dissemination of software, and protect the legitimate rights and interests of software developers. By performing certificate verification operations on the ciphertext to be verified, the validity of the certificate can be accurately judged to ensure that the certificate used in the software installation process is legal and credible, further improving the security of software installation. In actual applications, even if the encrypted file is stolen, the thief cannot restore the signature certificate. Therefore, the data security of user privacy is also improved. When the method is used to install software, the security risks of developer privacy leakage and illegal software installation are reduced.
[0131] Figure 5 : is a structural diagram of a software security authentication device provided by an embodiment of the present invention. The software security authentication device 500 may have relatively large differences due to different configurations or performances, and may include one or more processors (central processing units, CPU) 510 (for example, one or more processors) and a memory 520, and one or more storage media 530 (for example, one or more mass storage devices) storing application programs 533 or data 532. Among them, the memory 520 and the storage medium 530 can be short-term storage or permanent storage. The program stored in the storage medium 530 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations in the software security authentication device 500. Furthermore, the processor 510 can be configured to communicate with the storage medium 530 to execute a series of instruction operations in the storage medium 530 on the software security authentication device 500.
[0132] The software-based security authentication device 500 may also include one or more power supplies 540, one or more wired or wireless network interfaces 550, one or more input and output interfaces 560, and / or one or more operating systems 531, such as Windows Serve, Mac OS X, Unix, Linux, Free BSD, etc. It will be appreciated by those skilled in the art that Figure 5 The software security authentication device structure shown does not constitute a limitation on the software-based security authentication device, and may include more or fewer components than shown in the figure, or a combination of certain components, or a different arrangement of components.
[0133] The present invention also provides a computer-readable storage medium, which may be a non-volatile computer-readable storage medium or a volatile computer-readable storage medium. Instructions are stored in the computer-readable storage medium. When the instructions are executed on a computer, the computer executes the steps of the software security authentication method.
[0134] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0135] In addition, although each operation is described in a specific order, this should be understood as requiring such operation to be performed in the specific order shown or in a sequential order, or requiring that all illustrated operations should be performed to obtain desired results. Under certain circumstances, multitasking and parallel processing may be advantageous. Similarly, although some specific implementation details are included in the above discussion, these should not be interpreted as limiting the scope of the present disclosure. Some features described in the context of a separate embodiment can also be implemented in a single implementation in combination. On the contrary, the various features described in the context of a single implementation can also be implemented in multiple implementations individually or in any suitable sub-combination mode.
[0136] Although the subject matter has been described in language specific to structural features and / or methodological logical actions, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. On the contrary, the specific features and actions described above are merely example forms of implementing the claims.
Claims
1. A software security authentication method, characterized in that: The software security authentication method includes: When receiving a software registration request, executing a certificate generation operation according to the software registration information carried in the software registration request to obtain a signed certificate; Encoding the signature certificate into a certificate string; encoding the signature certificate into a certificate string includes: performing a unified Base64 process on the signature certificate to obtain a certificate string, wherein the Base64 is used to convert binary data into text data so that the original data is not easily directly recognized; The character swap operation is performed on the certificate string with a length of 2 characters as a swap unit to obtain a ciphertext, wherein when the number of characters in the certificate string is odd, the last character does not participate in the swap; the character swap operation is performed on the certificate string with a length of 2 characters as a swap unit to obtain a ciphertext comprising: swapping the first and second bits of the certificate string, swapping the third and fourth bits, and so on, to obtain the ciphertext; Backing up the ciphertext to a preset certificate database, and performing a file conversion operation on the ciphertext to obtain a certificate file; Performing a file encryption operation on the certificate file to obtain an encrypted file; Sending the encrypted file to the developer terminal and detecting whether a software installation request is received; When receiving a software installation request, reading the encrypted file to be verified carried in the software installation request; Performing a restoration operation on the encrypted file to be verified to obtain the ciphertext to be verified; According to the certificate database, performing a certificate verification operation on the ciphertext to be verified to obtain a verification result; responding to the software installation request according to the verification result; Before the step of performing a certificate generation operation according to the software registration information to obtain a signature certificate, the method further includes: Detecting the internal transmission status of the software registration information; When the internal transmission state is transmitting, performing a character encryption operation on the software registration information to obtain a ciphertext of the software registration information; When the internal transmission state is a non-transmission state and the software registration information is encrypted as the software registration information ciphertext, performing a character decryption operation on the software registration information; The step of performing character encryption operation on the software registration information comprises: Encoding the software registration information into an information string; Dividing the information string into a plurality of sub-information strings of a preset length, wherein when the character length of the last group of sub-information strings is less than the preset length, the last group of sub-information strings is divided into a separate group; Cross-exchange the first and last characters between two adjacent groups of the multiple sub-information character strings to obtain multiple target sub-information character strings, wherein when the number of the sub-information character strings is an odd number, the last group of sub-information character strings does not participate in the character exchange, and when the number of the sub-information character strings is an even number and the characters of the last group of sub-information character strings are less than the preset length, the last two groups of sub-information character strings do not participate in the character exchange; Recombine multiple target sub-information character strings to obtain the software registration information ciphertext.
2. The software security authentication method according to claim 1, characterized in that: The step of performing a certificate verification operation on the ciphertext to be verified according to the certificate database to obtain a verification result comprises: In the certificate database, performing a matching operation on the ciphertext to be verified to determine whether there is a target ciphertext corresponding to the ciphertext to be verified; If the target ciphertext exists in the certificate database, taking the software as credible as the verification result; If the target ciphertext does not exist in the certificate database, the software is regarded as untrustworthy as a verification result.
3. The software security authentication method according to claim 1, characterized in that: The step of performing a restoration operation on the encrypted file to be verified to obtain the ciphertext to be verified comprises: Perform a decryption operation on the encrypted file to be verified according to a preset password to obtain a certificate file to be verified; The character string recorded in the preset text document in the certificate file to be verified is extracted to obtain the ciphertext to be verified.
4. The software security authentication method according to claim 1, characterized in that: The step of responding to the software installation request according to the verification result comprises: When the verification result shows that the software is credible, outputting a prompt message allowing installation to respond to the software installation request; When the verification result shows that the software is untrustworthy, a warning prompt message is output to respond to the software installation request.
5. The software security authentication method according to claim 1, characterized in that: The step of performing a file encryption operation on the certificate file to obtain an encrypted file comprises: Generate a random number with a preset number of digits; The random number is used as a preset password, and a file encryption operation is performed on the certificate file to obtain an encrypted file.
6. The software security authentication method according to claim 1, characterized in that: After the step of sending the encrypted file to the developer terminal and detecting whether a software installation request is received, the method further includes: Detect whether a certificate acquisition request initiated by an authorized terminal is received; If the certificate acquisition request is detected, query the certificate database for the ciphertext to be decrypted corresponding to the software unique identifier carried in the certificate acquisition request; According to a preset decryption algorithm, the ciphertext to be decrypted is restored to a signature certificate to be output; The to-be-output signed certificate is sent to the authorized terminal in response to the certificate acquisition request.
7. A software security authentication device, characterized in that: The software security authentication device comprises: a memory and at least one processor, the memory stores instructions, and the memory and the at least one processor are interconnected via a line; The at least one processor calls the instruction in the memory so that the software security authentication device executes the software security authentication method as described in any one of claims 1-6.
8. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the software security authentication method according to any one of claims 1 to 6 is implemented.
Citation Information
Patent Citations
Method and device for installing application software
CN103577206A
Software authorization and protection device and method based on asymmetric cryptographic algorithm
CN104361267A
Software authorization method in offline state, server and readable storage medium
CN110968844A