Software security test system based on encryption technology

By designing a software security testing system based on encryption technology, the problem that existing systems fail to make full use of encryption technology is solved, and a comprehensive security assessment of software data transmission, storage, identity verification and authorization management is achieved.

CN119473890APending Publication Date: 2025-02-18GUANGZHOU RENHE SHICHUANG INFORMATION TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411555179.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-04
Publication Date
2025-02-18

AI Technical Summary

Technical Problem

The existing software security testing system fails to make full use of encryption technology, resulting in limited testing results and it is difficult to fully cover all aspects of software security.

Method used

Design a software security testing system based on encryption technology, including environment building module, encryption testing module and result comparison module. The plain text data of the test text is encrypted through an encryption algorithm, mapped text is generated, and the mapped text is securely verified based on the verification key.

Benefits of technology

By adjusting the test text and encryption parameters, the system can cover a variety of test scenarios, ensure the confidentiality and integrity of the data, provide a basis for data security, and achieve a comprehensive evaluation of the security of the software.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119473890A_ABST
    Figure CN119473890A_ABST
Patent Text Reader

Abstract

The invention provides a software security test system based on an encryption technology, and the system comprises an environment construction module which is used for obtaining a test text of a software security test; the encryption test module is used for encrypting plaintext data of the test text according to an encryption algorithm and generating a mapping text according to the encrypted test text, and the mapping text is a text formed by performing data mapping on the test text; and the result comparison module is used for determining a verification key according to the encryption algorithm and performing security verification on the mapping text based on the verification key. By adjusting the test text and the encryption parameters, the system can cover various test scenes including data transmission, data storage, data sharing and the like, and encryption measures effectively prevent unauthorized access and tampering of data in the transmission or storage process, so that the confidentiality and integrity of the data are ensured, a basis for data security is provided, and the test efficiency is improved. Therefore, the security of the software is comprehensively evaluated.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer software security testing technology, and specifically to a software security testing system based on encryption technology, which aims to conduct a comprehensive and in-depth security assessment of key links such as software data transmission, storage, identity authentication, and authorization management by integrating advanced encryption technology and automated testing methods. Background Art

[0002] With the rapid development of information technology, the security of software systems has become a focus of attention. Traditional software testing methods often focus on functional verification and performance evaluation, while neglecting in-depth testing of software security. As an important means to protect data confidentiality, integrity and availability, encryption technology plays a key role in software security testing. However, most existing software security testing systems fail to fully utilize the advantages of encryption technology, resulting in limited testing results and difficulty in fully covering all aspects of software security. Summary of the invention

[0003] The present invention provides a software security testing system based on encryption technology, which is used to solve the defects that most existing software security testing systems fail to fully utilize the advantages of encryption technology, resulting in limited testing effects and difficulty in fully covering all aspects of software security.

[0004] According to a first aspect of the present invention, a software security testing system based on encryption technology is provided, comprising:

[0005] Environment building module for obtaining test text for software security testing;

[0006] An encryption test module, used for encrypting the plain text data of the test text according to an encryption algorithm, and generating a mapping text according to the encrypted test text, wherein the mapping text is a text formed after data mapping of the test text;

[0007] The result comparison module is used to determine a verification key according to the encryption algorithm and perform security verification on the mapping text based on the verification key.

[0008] According to an embodiment of the present invention, obtaining the test text of the software security test specifically includes:

[0009] Obtaining the software's operating environment model and test nodes, wherein the operating environment model simulates the operating environment of the software in actual applications, and the test nodes are sensitive nodes in which the software performs any one or several tasks of data transmission, data storage, identity authentication, and authorization management in the operating environment model;

[0010] The test text is generated based on the operating environment model and the test node.

[0011] Specifically, this embodiment provides an implementation method for obtaining a test text for a software security test.

[0012] According to an implementation manner of the present invention, encrypting the plaintext data of the test text according to an encryption algorithm specifically includes:

[0013] Based on the operating environment model, obtaining a mapping protocol and plain text data of all the test nodes;

[0014] Encrypting the plaintext data based on the encryption algorithm to form ciphertext data;

[0015] Based on the mapping protocol and the ciphertext data, the mapping text is generated.

[0016] Specifically, this embodiment provides an implementation method for encrypting the plaintext data of the test text according to an encryption algorithm.

[0017] According to an implementation manner of the present invention, determining the verification key according to the encryption algorithm specifically includes:

[0018] In the case where the encryption algorithm for encrypting the test text is symmetric encryption, obtaining an encryption key for the plaintext data of the test text, and generating the verification key based on the encryption key;

[0019] In the case where the encryption algorithm uses asymmetric encryption to encrypt the test text, a key pair based on the encryption algorithm is obtained, and the verification key is generated based on the key pair. The key pair includes a pair of public keys and private keys, the public key is used to encrypt the plaintext data of the test text, and the private key is used to decrypt the mapping text.

[0020] Specifically, this embodiment provides an implementation method for determining a verification key according to the encryption algorithm.

[0021] According to an implementation manner of the present invention, the security verification of the mapping text based on the verification key specifically includes:

[0022] In the case where the mapping text is data migration of the test text based on encryption technology, obtaining ciphertext data of the mapping text, wherein the ciphertext data and the plaintext data are migration data obtained based on the encryption algorithm;

[0023] Based on the verification key, the ciphertext data is decrypted to obtain mapping data, and the security of the software is determined according to the mapping data and the plaintext data.

[0024] Specifically, this embodiment provides an implementation method for performing security verification on the mapping text based on the verification key.

[0025] According to an embodiment of the present invention, determining the security of the software according to the mapping data and the plaintext data specifically includes:

[0026] Acquire a test node in the plaintext data and a mapping node in the mapping data, wherein the mapping node is a test identifier corresponding to the test node in data migration based on a mapping protocol;

[0027] Based on the matching of the mapping node and the test node, the data migration security test of the software based on encryption technology passes;

[0028] Based on the mapping nodes and the test nodes, if it is determined that the mapping text has at least one of missing nodes, data tampering and disordered order, then the software fails the data migration security test based on encryption technology.

[0029] Specifically, this embodiment provides an implementation method for determining the security of the software according to the mapping data and the plaintext data.

[0030] According to an implementation manner of the present invention, the security verification of the mapping text based on the verification key specifically includes:

[0031] In the case where the mapping text is the identity authentication performed by the test text based on encryption technology, the ciphertext data in the mapping text is obtained, the ciphertext data at least includes identity information, content information and path information, the identity information is the object feature of the identity authentication, the content information is the set identity authentication content, and the path information is the verification logic of the identity authentication;

[0032] Based on the verification key, the ciphertext data is decrypted to obtain mapping data, and the security of the software is determined according to the mapping data and the plaintext data.

[0033] Specifically, this embodiment provides an implementation method for performing security verification on the mapping text based on the verification key.

[0034] According to an embodiment of the present invention, determining the security of the software according to the mapping data and the plaintext data specifically includes:

[0035] Acquire a test node in the plaintext data and a mapping node in the mapping data, wherein the mapping node is a test identifier corresponding to the test node in identity authentication based on a mapping protocol;

[0036] Based on the matching of the mapping node and the test node, the data migration security test of the software based on encryption technology passes;

[0037] If, based on the mapping node and the test node, it is determined that the mapping text has at least one of identity mismatch, content missing and path change, then the software fails the data migration security test based on encryption technology.

[0038] Specifically, this embodiment provides an implementation method for determining the security of the software according to the mapping data and the plaintext data.

[0039] According to an implementation manner of the present invention, the security verification of the mapping text based on the verification key specifically includes:

[0040] In the case where the mapping text is authorization management performed by the test text based on encryption technology, the ciphertext data of the mapping text is obtained, the ciphertext data includes a business object, an authorization token and a token pool, the business object is an authorization object in the authorization management, the authorization token is an authorization certificate generated by the business object during the authorization process, and the token pool is a collection of all the authorization tokens;

[0041] Based on the verification key, the ciphertext data is decrypted to obtain mapping data, and the security of the software is determined according to the mapping data and the plaintext data.

[0042] Specifically, this embodiment provides an implementation method for performing security verification on the mapping text based on the verification key.

[0043] According to an embodiment of the present invention, determining the security of the software according to the mapping data and the plaintext data specifically includes:

[0044] Acquire a test node in the plaintext data and a mapping node in the mapping data, wherein the mapping node is a test identifier corresponding to the test node during the authorization process based on a mapping protocol;

[0045] Based on the matching of the mapping node and the test node, the data migration security test of the software based on encryption technology passes;

[0046] Based on the mapping node and the test node, after determining that the business object is assigned the authorization token, the assigned authorization token is not removed from the token bucket, or the business object is not assigned the authorization token, then the data migration security test of the software based on encryption technology fails.

[0047] Specifically, this embodiment provides an implementation method for determining the security of the software according to the mapping data and the plaintext data.

[0048] The above one or more technical solutions in the present invention have at least one of the following technical effects: the present invention provides a software security testing system based on encryption technology. By adjusting the test text and encryption parameters, the system can cover a variety of test scenarios, including data transmission, data storage, data sharing, etc., and encryption measures effectively prevent unauthorized access and tampering of data during transmission or storage, ensure the confidentiality and integrity of the data, and provide a basis for data security to achieve a comprehensive assessment of the security of the software. BRIEF DESCRIPTION OF THE DRAWINGS

[0049] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0050] Figure 1 It is a structural schematic diagram of a software security testing system based on encryption technology provided by the present invention;

[0051] Figure 2 It is a structural schematic diagram of the electronic device provided by the present invention.

[0052] Reference numerals:

[0053] 10. Environment construction module; 20. Encryption test module; 30. Result comparison module;

[0054] 810, processor; 820, communication interface; 830, memory; 840, communication bus. DETAILED DESCRIPTION

[0055] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0056] The present invention is described in detail below in conjunction with the accompanying drawings of the specification. The specific operating method in the method embodiment can also be applied to the device embodiment or the system embodiment. In the description of the present invention, unless otherwise specified, "at least one" includes one or more. "Multiple" refers to two or more. For example, at least one of A, B and C includes: A exists alone, B exists alone, A and B exist at the same time, A and C exist at the same time, B and C exist at the same time, and A, B and C exist at the same time. In the present invention, " / " means or, for example, A / B can mean A or B; "and / or" in this article is only a kind of association relationship that describes the associated objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone.

[0057] The present invention will be described in detail below in conjunction with specific implementation modes.

[0058] In some specific embodiments of the present invention, Figure 1 As shown, this solution provides a software security testing system based on encryption technology, including:

[0059] An environment construction module 10, used to obtain a test text for software security testing;

[0060] The encryption test module 20 is used to encrypt the plain text data of the test text according to the encryption algorithm, and generate a mapping text according to the encrypted test text, where the mapping text is the text formed after the test text is mapped;

[0061] The result comparison module 30 is used to determine the verification key according to the encryption algorithm, and perform security verification on the mapping text based on the verification key.

[0062] In some possible implementations of the present invention, obtaining a test text of a software security test specifically includes:

[0063] Obtain the software's operating environment model and test nodes. The operating environment model simulates the operating environment of the software in actual applications. The test nodes are sensitive nodes in the software's operating environment model that perform any one or several tasks of data transmission, data storage, identity authentication, and authorization management.

[0064] Generate test text based on the running environment model and test nodes.

[0065] Specifically, this embodiment provides an implementation method for obtaining a test text for software security testing, which can ensure that the test scenario is as close to the real-world usage as possible by simulating the operating environment of the software in actual applications. This highly simulated test environment can expose problems that may be encountered in actual applications, including but not limited to data transmission delays, storage capacity limitations, identity authentication vulnerabilities, and the complexity of authorization management. Therefore, the test text generated based on this operating environment model can more accurately reflect the performance and stability of the software.

[0066] Furthermore, through in-depth testing of sensitive nodes, potential security vulnerabilities and performance bottlenecks can be discovered and fixed in a timely manner. This is crucial to improving the overall quality and security of the software. In addition, testing based on the operating environment model can also ensure the compatibility and stability of the software in different environments, providing strong guarantees for the widespread application of the software.

[0067] In some possible implementations of the present invention, encrypting the plaintext data of the test text according to an encryption algorithm specifically includes:

[0068] Based on the operating environment model, obtain the mapping protocol and the plaintext data of all test nodes;

[0069] Encrypting plaintext data based on an encryption algorithm to form ciphertext data;

[0070] Generate mapping text based on the mapping protocol and ciphertext data.

[0071] Specifically, this embodiment provides an implementation method for encrypting the plaintext data of the test text according to an encryption algorithm. By determining the plaintext data based on the mapping protocol and all test nodes, the generation of the mapping text is ensured. In addition, through the generation of the mapping protocol and the ciphertext data, the test text can be automatically generated, which simplifies the test process and improves the test efficiency.

[0072] It should be noted that the mapping text can be set according to different user requirements and test contents. For example, the mapping text can be data migration, identity authentication or authorization management.

[0073] Furthermore, the mapping text contains encrypted ciphertext data, which helps to verify the effectiveness of the encryption algorithm and the integrity of the data during the test process and ensure the accuracy of the test results.

[0074] In some possible implementations of the present invention, determining the verification key according to the encryption algorithm specifically includes:

[0075] When the encryption algorithm for the test text is symmetric encryption, an encryption key of the plain text data of the test text is obtained, and a verification key is generated based on the encryption key;

[0076] When the encryption algorithm uses asymmetric encryption for the test text, a key pair based on the encryption algorithm is obtained, and a verification key is generated based on the key pair. The key pair includes a pair of public keys and private keys. The public key is used to encrypt the plaintext data of the test text, and the private key is used to decrypt the mapping text.

[0077] Specifically, this embodiment provides an implementation method for determining a verification key according to an encryption algorithm, and encrypts plaintext data accordingly according to a specific encryption method of the encryption algorithm, such as symmetric encryption or asymmetric encryption, to obtain a verification key.

[0078] In some possible implementations of the present invention, security verification of the mapping text is performed based on the verification key, specifically including:

[0079] In the case where the mapping text is data migration based on encryption technology for the test text, the ciphertext data of the mapping text is obtained, and the ciphertext data and plaintext data are migration data obtained based on the encryption algorithm;

[0080] Based on the verification key, the ciphertext data is decrypted to obtain the mapping data, and the security of the software is determined based on the mapping data and the plaintext data.

[0081] Specifically, this embodiment provides an implementation method for securely verifying the mapping text based on the verification key, and migrates the data through encryption technology to ensure that the data is not tampered with or stolen during the transmission process. The existence of ciphertext data means that even if the data is intercepted during the transmission process, it cannot be directly interpreted by unauthorized parties, thereby protecting the confidentiality and integrity of the data.

[0082] Furthermore, the consistency verification between the decrypted mapped data and the original plaintext data is an important step in determining the security of the software. If the two are consistent, it means that the data has not been damaged or tampered with during the migration process, thereby enhancing the security and reliability of the software processing data.

[0083] It should be noted that the strength and security of the encryption algorithm used can be indirectly evaluated through the decryption process. If the encryption algorithm is strong enough, the ciphertext data can maintain its confidentiality and integrity even in the face of powerful attack methods.

[0084] In addition, the effectiveness of key management is an important part of the security of encryption technology. Through the decryption process, it is possible to verify whether the generation, distribution, storage and use of keys are safe and secure, thereby ensuring the overall security of encryption technology.

[0085] In some possible implementations of the present invention, determining the security of the software based on the mapping data and the plaintext data specifically includes:

[0086] Acquire the test node in the plaintext data and the mapping node in the mapping data, where the mapping node is a test identifier corresponding to the test node in data migration based on the mapping protocol;

[0087] Based on the matching of mapping nodes and test nodes, the software passes the data migration security test based on encryption technology;

[0088] Based on the mapping nodes and the test nodes, if it is determined that the mapping text has at least one of missing nodes, data tampering, and disordered order, the software fails the data migration security test based on encryption technology.

[0089] Specifically, this embodiment provides an implementation method for determining the security of software based on mapping data and plaintext data. By ensuring the precise match between mapping nodes and test nodes, it is possible to verify whether the integrity of data is maintained during data migration. This matching not only includes the existence of nodes, but may also involve comparisons of node attributes, associations, and other aspects, thereby providing comprehensive data integrity verification.

[0090] In a possible embodiment, for node loss detection, if the mapping nodes corresponding to certain test nodes are missing in the mapping data, it indicates that data loss may have occurred during the data migration process, which is a serious problem in the security of data migration.

[0091] In a possible embodiment, for data tampering detection, the specific contents of the test node and the mapping node can be compared to detect whether the data has been tampered with during the migration process. Any inconsistency may be a sign that the data has been illegally modified, which helps to promptly discover and handle security issues.

[0092] In a possible embodiment, for order disorder detection, for scenarios where data order needs to be maintained, by comparing the node order, it is possible to detect whether order disorder occurs during data migration, which is also related to the validity and security of the data.

[0093] In some possible implementations of the present invention, security verification of the mapping text is performed based on the verification key, specifically including:

[0094] In the case where the mapping text is the identity authentication performed based on the encryption technology for the test text, the ciphertext data in the mapping text is obtained, the ciphertext data at least includes identity information, content information and path information, the identity information is the object feature of the identity authentication, the content information is the set identity authentication content, and the path information is the verification logic of the identity authentication;

[0095] Based on the verification key, the ciphertext data is decrypted to obtain the mapping data, and the security of the software is determined based on the mapping data and the plaintext data.

[0096] Specifically, this embodiment provides an implementation method for security verification of the mapping text based on the verification key, and protects the ciphertext data in the mapping text, including identity information, content information and path information, through encryption technology, which can effectively prevent the data from being unauthorizedly accessed or tampered during transmission or storage. This encryption mechanism enhances the confidentiality and integrity of the data.

[0097] Furthermore, the combined use of identity information, content information, and path information makes the identity authentication process more refined and comprehensive. Identity information ensures the accuracy of the verification object, content information defines the specific content of the verification, and path information standardizes the logical process of the verification. This multi-dimensional verification mechanism improves the reliability and effectiveness of identity authentication.

[0098] In a possible embodiment, during the decryption process, the verification key is used to decrypt the ciphertext data, and after obtaining the mapping data, it is compared with the plaintext data, which can accurately evaluate the security of the software during data migration or identity authentication. This evaluation method based on actual data decryption and comparison is more convincing than simple theoretical analysis or simulation testing.

[0099] Understandably, problems found during the decryption and comparison process, such as decryption failures and data mismatches, can be promptly fed back to the software development team to help them optimize encryption algorithms, strengthen key management, improve verification logic and other security strategies. This feedback mechanism helps to continuously improve the security of the software.

[0100] In some possible implementations of the present invention, determining the security of the software based on the mapping data and the plaintext data specifically includes:

[0101] Obtaining a test node in the plaintext data and a mapping node in the mapping data, where the mapping node is a test identifier corresponding to the test node in identity authentication based on a mapping protocol;

[0102] Based on the matching of mapping nodes and test nodes, the software passes the data migration security test based on encryption technology;

[0103] Based on the mapping nodes and the test nodes, if it is determined that the mapping text has at least one of identity mismatch, content missing and path change, the software fails the data migration security test based on encryption technology.

[0104] Specifically, this embodiment provides an implementation method for determining the security of software based on mapping data and plaintext data, and by ensuring that the mapping node and the test node are accurately matched, the accuracy of identity authentication during data migration can be verified. This match not only verifies the correctness of the data itself, but also ensures that the data has not been tampered with or replaced during the migration process, thereby enhancing the reliability of identity authentication.

[0105] It should be noted that by detecting identity mismatches, missing content, path changes, and other situations, a multi-dimensional and comprehensive assessment of the security of data migration based on encryption technology can be conducted. This assessment method is more accurate and comprehensive and can identify potential security risks.

[0106] In a possible embodiment, for identity mismatch detection, if there is an identity mismatch between the mapping node and the test node during the identity authentication process, this may mean that confusion or tampering of identity information has occurred during the data migration process, which is a potential security risk.

[0107] In a possible embodiment, for content missing detection, content missing refers to the lack of complete information corresponding to the test node in the mapping data. This may be caused by data transmission errors, data loss during encryption and decryption, or improper software processing. Content missing will affect the integrity of identity authentication and thus the security of data migration.

[0108] In a possible embodiment, for path change detection, path change refers to the inconsistency between the logical relationship between nodes in the mapping data and the test data. This may be caused by a logical error or intentional tampering during data migration. Path change will disrupt the logical process of identity authentication and reduce the reliability of identity authentication.

[0109] In some possible implementations of the present invention, security verification of the mapping text is performed based on the verification key, specifically including:

[0110] In the case where the mapping text is authorization management based on encryption technology for the test text, the ciphertext data of the mapping text is obtained, the ciphertext data includes the business object, the authorization token and the token pool, the business object is the authorization object in the authorization management, the authorization token is the authorization certificate generated by the business object during the authorization process, and the token pool is the collection of all authorization tokens;

[0111] Based on the verification key, the ciphertext data is decrypted to obtain the mapping data, and the security of the software is determined based on the mapping data and the plaintext data.

[0112] Specifically, this embodiment provides an implementation method for security verification of mapping text based on verification keys, and the business objects, authorization tokens, and token pools in the ciphertext data are protected by encryption technology, effectively preventing unauthorized access and tampering. This encryption mechanism ensures the confidentiality and integrity of data in the authorization management process, thereby enhancing the security of authorization management.

[0113] In a possible embodiment, for authorization token verification, the identity and authority of the business object in the authorization process can be accurately verified by decrypting the authorization token in the mapping data. As the authorization proof of the business object, the validity and accuracy of the authorization token are directly related to the reliability of authorization management.

[0114] In a possible embodiment, for token pool management, the token pool is a collection of all authorization tokens, and its management and maintenance are crucial to ensure the orderly conduct of authorization management. By decrypting the token pool information, key attributes such as the validity and expiration time of the token can be checked to avoid token abuse or the use of expired tokens.

[0115] Understandably, based on the comparison of mapping data and plaintext data, the authorization management security of the software can be analyzed in multiple dimensions. This includes checking the key links such as the generation and distribution process of authorization tokens, the management and maintenance of token pools, and the permission allocation of business objects, so as to discover potential security risks.

[0116] In some possible implementations of the present invention, determining the security of the software based on the mapping data and the plaintext data specifically includes:

[0117] Obtaining a test node in the plaintext data and a mapping node in the mapping data, where the mapping node is a test identifier corresponding to the test node during the authorization process based on the mapping protocol;

[0118] Based on the matching of mapping nodes and test nodes, the software passes the data migration security test based on encryption technology;

[0119] Based on the mapping nodes and the test nodes, if it is determined that after the business object is assigned an authorization token, the assigned authorization token is not removed from the token bucket, or the business object is not assigned an authorization token, the software fails the data migration security test based on encryption technology.

[0120] Specifically, this embodiment provides an implementation method for determining the security of software based on mapping data and plaintext data. By ensuring that the mapping node and the test node are accurately matched, the node identity and status in the authorization process can be verified. Further, checking the management status of the business object authorization token can ensure the accuracy and integrity of the authorization operation.

[0121] Furthermore, by testing the matching of nodes with mapping nodes and checking the management status of authorization tokens, the authorization management process of the software can be reviewed and evaluated in depth. This evaluation not only focuses on the data integrity and confidentiality during data migration, but also goes deep into the logic level of authorization management to ensure the security and reliability of the entire process.

[0122] In a possible embodiment, for the card not removed problem, if it is found that the business object has not correctly removed the token from the token bucket after allocating the authorization token, this may mean that there is a risk of token leakage or reuse. This vulnerability will seriously affect the security and effectiveness of authorization management.

[0123] In a possible embodiment, for the token unassignment problem, if the business object should be assigned an authorization token but does not actually obtain one, this may be due to authorization logic errors, data synchronization problems, or software defects, etc. This situation will also undermine the accuracy and reliability of authorization management.

[0124] Understandably, during the data migration and authorization management process, ensuring the accuracy and security of authorization management is an important requirement for compliance with security standards. By implementing this testing method based on node matching and token management status check, it can be ensured that the software complies with relevant security standards and regulatory requirements in terms of authorization management.

[0125] Figure 2 An example of a physical structure diagram of an electronic device is shown in FIG. Figure 2 As shown, the electronic device may include: a processor 810, a communication interface 820, a memory 830 and a communication bus 840, wherein the processor 810, the communication interface 820 and the memory 830 communicate with each other via the communication bus 840. The processor 810 may call the logic instructions in the memory 830.

[0126] It should be noted that the electronic device in this embodiment can be a server, a PC, or other devices in specific implementation, as long as its structure includes the following: Figure 2 The processor 810, communication interface 820, memory 830 and communication bus 840 shown in the figure, wherein the processor 810, communication interface 820, memory 830 communicate with each other through the communication bus 840, and the processor 810 can call the logic instructions in the memory 830 to execute the above method. This embodiment does not limit the specific implementation form of the electronic device.

[0127] The server may be a single server or a server group. The server group may be centralized or distributed (for example, the server may be a distributed system).

[0128] In a possible embodiment, the server can be local or remote relative to the terminal. For example, the server can access information stored in the user terminal, database or any combination thereof via a network.

[0129] As another example, the server may be directly connected to at least one of the user terminal and the database to access information and / or data stored therein.

[0130] In a possible embodiment, the server may be implemented on a cloud platform; by way of example only, the cloud platform may include a private cloud, a public cloud, a hybrid cloud, a community cloud, a distributed cloud, an inter-cloud, a multi-cloud, etc., or any combination thereof.

[0131] In a possible embodiment, the server and the user terminal may be implemented on an electronic device having one or more components in the embodiments of the present invention.

[0132] Furthermore, the network may be used for the exchange of information and / or data.

[0133] In a possible embodiment, one or more components in the interactive scenario (eg, a server, a user terminal, and a database) may send information and / or data to other components.

[0134] In possible embodiments, the network may be any type of wired or wireless network, or a combination thereof. As examples only, the network may include a wired network, a wireless network, a fiber optic network, a telecommunications network, an intranet, the Internet, a local area network (LAN), a wide area network (WAN), a wireless local area network (WLAN), a metropolitan area network (MAN), a wide area network (WAN), a public switched telephone network (PSTN), a Bluetooth network, a ZigBee network, or a near field communication (NFC) network, or any combination thereof.

[0135] In a possible embodiment, the network may include one or more network access points. For example, the network may include a wired or wireless network access point, such as a base station and / or a network switching node, through which one or more components of the interactive scene may connect to the network to exchange data and / or information.

[0136] In addition, the logic instructions in the memory 830 described above may be implemented in the form of software functional units and when sold or used as independent products, may be stored in a computer-readable storage medium.

[0137] Based on such understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods of various embodiments of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc., various media that can store program codes.

[0138] In a possible embodiment, the embodiment of the present invention also provides a computer program product, which includes a computer program stored on a non-transitory computer-readable storage medium, and the computer program includes program instructions. When the program instructions are executed by a computer, the computer can execute the methods provided by the above-mentioned method embodiments.

[0139] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, i.e., they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Those of ordinary skill in the art may understand and implement it without creative effort.

[0140] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods of each embodiment or some parts of the embodiment.

[0141] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A software security testing system based on encryption technology, characterized in that: include: An environment building module (10) for obtaining a test text for software security testing; An encryption test module (20) is used to encrypt the plain text data of the test text according to an encryption algorithm, and generate a mapping text according to the encrypted test text, wherein the mapping text is a text formed after data mapping of the test text; A result comparison module (30) is used to determine a verification key according to the encryption algorithm, and perform security verification on the mapping text based on the verification key.

2. A software security testing system based on encryption technology according to claim 1, characterized in that: The obtaining of the test text of the software security test specifically includes: Obtaining the software's operating environment model and test nodes, wherein the operating environment model simulates the operating environment of the software in actual applications, and the test nodes are sensitive nodes in which the software performs any one or several tasks of data transmission, data storage, identity authentication, and authorization management in the operating environment model; The test text is generated based on the operating environment model and the test node.

3. A software security testing system based on encryption technology according to claim 2, characterized in that: The step of encrypting the plaintext data of the test text according to the encryption algorithm specifically includes: Based on the operating environment model, obtaining a mapping protocol and plain text data of all the test nodes; Encrypting the plaintext data based on the encryption algorithm to form ciphertext data; Based on the mapping protocol and the ciphertext data, the mapping text is generated.

4. A software security testing system based on encryption technology according to claim 2, characterized in that: Determining the verification key according to the encryption algorithm specifically includes: In the case where the encryption algorithm for encrypting the test text is symmetric encryption, obtaining an encryption key for the plaintext data of the test text, and generating the verification key based on the encryption key; In the case where the encryption algorithm uses asymmetric encryption to encrypt the test text, a key pair based on the encryption algorithm is obtained, and the verification key is generated based on the key pair. The key pair includes a pair of public keys and private keys, the public key is used to encrypt the plaintext data of the test text, and the private key is used to decrypt the mapping text.

5. A software security testing system based on encryption technology according to any one of claims 2 to 4, characterized in that: The performing security verification on the mapping text based on the verification key specifically includes: In the case where the mapping text is data migration of the test text based on encryption technology, obtaining ciphertext data of the mapping text, wherein the ciphertext data and the plaintext data are migration data obtained based on the encryption algorithm; Based on the verification key, the ciphertext data is decrypted to obtain mapping data, and the security of the software is determined according to the mapping data and the plaintext data.

6. A software security testing system based on encryption technology according to claim 5, characterized in that: Determining the security of the software according to the mapping data and the plaintext data specifically includes: Acquire a test node in the plaintext data and a mapping node in the mapping data, wherein the mapping node is a test identifier corresponding to the test node in data migration based on a mapping protocol; Based on the matching of the mapping node and the test node, the data migration security test of the software based on encryption technology passes; Based on the mapping nodes and the test nodes, if it is determined that the mapping text has at least one of missing nodes, data tampering and disordered order, then the software fails the data migration security test based on encryption technology.

7. A software security testing system based on encryption technology according to any one of claims 1 to 4, characterized in that: The performing security verification on the mapping text based on the verification key specifically includes: In the case where the mapping text is the identity authentication performed by the test text based on encryption technology, the ciphertext data in the mapping text is obtained, the ciphertext data at least includes identity information, content information and path information, the identity information is the object feature of the identity authentication, the content information is the set identity authentication content, and the path information is the verification logic of the identity authentication; Based on the verification key, the ciphertext data is decrypted to obtain mapping data, and the security of the software is determined according to the mapping data and the plaintext data.

8. A software security testing system based on encryption technology according to claim 7, characterized in that: Determining the security of the software according to the mapping data and the plaintext data specifically includes: Acquire a test node in the plaintext data and a mapping node in the mapping data, wherein the mapping node is a test identifier corresponding to the test node in identity authentication based on a mapping protocol; Based on the matching of the mapping node and the test node, the data migration security test of the software based on encryption technology passes; If, based on the mapping node and the test node, it is determined that the mapping text has at least one of identity mismatch, content missing and path change, then the software fails the data migration security test based on encryption technology.

9. A software security testing system based on encryption technology according to any one of claims 1 to 4, characterized in that: The performing security verification on the mapping text based on the verification key specifically includes: In the case where the mapping text is authorization management performed by the test text based on encryption technology, the ciphertext data of the mapping text is obtained, the ciphertext data includes a business object, an authorization token and a token pool, the business object is an authorization object in the authorization management, the authorization token is an authorization certificate generated by the business object during the authorization process, and the token pool is a collection of all the authorization tokens; Based on the verification key, the ciphertext data is decrypted to obtain mapping data, and the security of the software is determined according to the mapping data and the plaintext data.

10. A software security testing system based on encryption technology according to claim 9, characterized in that: Determining the security of the software according to the mapping data and the plaintext data specifically includes: Acquire a test node in the plaintext data and a mapping node in the mapping data, wherein the mapping node is a test identifier corresponding to the test node during the authorization process based on a mapping protocol; Based on the matching of the mapping node and the test node, the data migration security test of the software based on encryption technology passes; Based on the mapping node and the test node, after determining that the business object is assigned the authorization token, the assigned authorization token is not removed from the token bucket, or the business object is not assigned the authorization token, then the data migration security test of the software based on encryption technology fails.