Rainbow table decryption and scheduling method based on multilayer encryption protection
By building multi-level rainbow tables and hierarchical storage, combined with task target recognition and matching mechanisms, the problem of difficult to crack complex encryption algorithms under multi-layer encryption protection in the existing technology is solved, and efficient password cracking and computing resource scheduling is achieved.
Patent Information
- Application Number
- CN202510621602.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-15
- Publication Date
- 2025-06-13
- Estimated Expiration
- 2045-05-15
AI Technical Summary
The existing rainbow table technology is difficult to efficiently crack complex encryption algorithms under multi-layer encryption protection, especially when using a hashing algorithm with salting mechanism, the effect is limited.
A rainbow table decryption and scheduling method based on multi-layer encryption protection is proposed. By constructing multi-level rainbow tables and hierarchically stored, combining precise task target recognition and matching mechanisms, the encryption method is identified and matched to the corresponding rainbow table subclass, decryption task scheduling allocation and computing resource scheduling.
It significantly accelerates the decryption process, improves the speed of password cracking, can effectively deal with the cracking of complex encryption algorithms, and improves resource utilization and decryption efficiency through reasonable computing resource allocation.
Smart Images

Figure CN120145425A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of information security technology, and in particular to a rainbow table decryption and scheduling method based on multi-layer encryption protection. Background Art
[0002] With the rapid development of information technology, data security and privacy protection have become important issues that need to be solved in modern society. Various encryption technologies are widely used in network security, financial transactions, communication transmission and other fields to ensure the security of sensitive information. However, although these encryption algorithms can effectively improve the security of data protection, they also bring technical challenges to cracking these encryptions.
[0003] As a common encryption method, hash encryption algorithm is widely used in scenarios such as password storage, data integrity verification, and digital signatures. The hash algorithm maps the input data (such as passwords) to a hash value of fixed length, making it almost impossible to reverse the original data. Common hash algorithms include MD5, SHA-1, SHA-256, etc. Although these algorithms guarantee data security to a certain extent, they also have the risk of being cracked, especially when simple salting or no salting is used.
[0004] Rainbow table is a technology that quickly cracks hash passwords by pre-calculating the correspondence between common passwords and their hash values. It speeds up the cracking process by reducing the amount of calculation and using time and space in exchange for time. However, the traditional rainbow table method can only crack a single encryption algorithm, and has limited effect on complex modern encryption algorithms (such as AES, RSA, etc.) or hash algorithms that use a salting mechanism.
[0005] With the continuous development of encryption technology, more and more encryption methods have adopted multi-level protection strategies. For example, a password may be encrypted multiple times or protected using different encryption algorithms. To address this problem, existing rainbow table technology usually cannot meet the needs of efficient decryption. Therefore, how to improve the efficiency of rainbow table cracking and be able to cope with the cracking of complex encryption algorithms has become an urgent problem to be solved in the field of cryptography.
[0006] In view of the above problems, it is necessary to propose a rainbow table decryption and scheduling method based on multi-layer encryption protection. Summary of the invention
[0007] The purpose of the present invention is to solve the problems existing in the background technology and to propose a rainbow table decryption and scheduling method based on multi-layer encryption protection.
[0008] The purpose of the present invention can be achieved through the following technical solutions: A rainbow table decryption and scheduling method based on multi-layer encryption protection specifically includes the following steps: Step 1. Rainbow table construction and hierarchical storage; Construct multiple levels of rainbow tables according to different encryption algorithms, including: First-level rainbow table: It includes first-level rainbow table subclasses for common single-layer encryption algorithms. Among them, the first-level rainbow table subclasses include rainbow tables for DES, MD5, and SHA-1 encryption algorithms; The described first-level rainbow table is applicable to traditional single-layer hash encryption algorithms and is used to crack scenarios without salting or with simple encryption.
[0009] Second-level rainbow table: It includes second-level rainbow table subclasses for complex single-layer encryption algorithms. Among them, the second-level rainbow table subclasses include rainbow tables for SHA-256, AES, RSA, PBKDF2, Argon2, and bcrypt algorithms; The described second-level rainbow table is applicable to modern encryption algorithms and hash algorithms using the salting mechanism.
[0010] As a preferred embodiment of the present invention, the first-level rainbow table and the second-level rainbow table are hierarchically stored. The first-level rainbow table is stored in the first storage module, and the second-level rainbow table is stored in the second storage module.
[0011] The described first storage module includes a solid-state drive SSD and memory to provide fast response.
[0012] The described second storage module includes a hard disk array and a cloud storage server array to meet the requirements of query scheduling allocation and expandable storage space. The first storage module and the second storage module establish indexes for the mapping relationship of each encryption algorithm and the second-level rainbow table.
[0013] Step 2. Task objective recognition and multi-level rainbow table matching; Analyze the ciphertext format data of the input password based on the rainbow table matching algorithm, identify the encryption method, determine the target password to be decrypted and its corresponding encryption level, and match to the corresponding rainbow table subclass in the first-level rainbow table or the second-level rainbow table.
[0014] The described ciphertext format data includes: the encrypted hash value of the password, the password length, the encryption timestamp, and the public key length; As a preferred embodiment of the present invention, through the described rainbow table matching algorithm, analyze the ciphertext format data of the same group of passwords, infer its encryption method, and match to the specific first-level or second-level rainbow table subclass through the mapping relationship index. The specific process is as follows: Obtain the hash value sequence Ci = {C1, C2,..., Cn} of the group of passwords C; where C1, C2,..., Cn are the specific hash values of each password; where n is the total number of passwords included in the group of passwords, through a preset formula Calculate the distribution frequency of each byte ; where is the total number of occurrences of the byte in all passwords. Here, L(Ci) is the number of bytes contained in Ci in the hash value sequence, and is the total byte length of all hash values contained in this group of passwords.
[0015] As a preferred embodiment of the present invention, the matching degree f(C, A) between this group of passwords C and the first-level or second-level rainbow table subclass A is calculated through a preset formula . Here, A represents a specific first-level or second-level rainbow table subclass; where D(C, A) is the byte distribution deviation between this group of passwords and the first-level or second-level rainbow table subclass A, and is the ideal byte distribution of the byte in the preset first-level or second-level rainbow table subclass A. Here, H(C) is the ciphertext entropy of this group of passwords C, which is a measure of the uncertainty of this group of passwords and represents the randomness of this group of passwords. The higher the ciphertext entropy, the stronger the encryption algorithm. A simple encryption algorithm has a lower ciphertext entropy value; where f(C, A) represents the matching degree between this group of passwords C and the first-level or second-level rainbow table subclass A; where λ1 and λ2 are preset weight factors and dimension unification factors, which respectively control the influence of the byte distribution deviation and the ciphertext entropy, and unify the computational dimensions of the two operators; where α and β are preset weight coefficients, which control the contribution of each feature to the matching degree; and is the reference ciphertext entropy of the preset first-level or second-level rainbow table subclass A.
[0016] Obtain the matching degree f(C, A) between this group of passwords C and each first-level or second-level rainbow table subclass A. The higher the matching degree, the higher the probability that this group of passwords C is the encryption output of the encryption algorithm corresponding to the first-level or second-level rainbow table subclass A. Denote the first-level or second-level rainbow table subclass A with the largest matching degree f(C, A) as the optimal matching subclass A-best of this group of passwords; denote the first-level or second-level rainbow table subclass A with the second largest matching degree f(C, A) as the sub-optimal matching subclass A-second of this group of passwords. As a preferred embodiment of the present invention, the calculation of the matching degree f(C, A) traverses all target password groups to obtain the optimal matching subclass and sub-optimal matching subclass of each group of passwords.
[0017] Step 3: Decryption task scheduling and allocation; Collect the optimal matching subclass and sub-optimal matching subclass of each target password group, as well as the matching degrees f(C, A-best) and f(C, A-second) with the optimal matching subclass and sub-optimal matching subclass, and perform decryption task scheduling and allocation to arrange decryption work, so as to improve the decryption efficiency and ensure the accuracy of the selected decryption rainbow table.
[0018] For password groups where the matching degrees f(C, A - best) and f(C, A - second) for the optimal matching subclass and the sub - optimal matching subclass are both greater than the maximum preset threshold, it is determined that the probability of belonging to the optimal matching subclass and the sub - optimal matching subclass is relatively high. Decryption can be completed through a small number of comparisons, and less computing resources are called. Mark the decryption task of the password group as a low - priority decryption task.
[0019] For password groups where the matching degrees f(C, A - best) and f(C, A - second) for the optimal matching subclass and the sub - optimal matching subclass are both less than the minimum preset threshold, it is determined that the probability of belonging to the optimal matching subclass and the sub - optimal matching subclass is relatively low. There are deviations in the determination of the encryption method for such password groups. Decryption can only be completed through a large number of subsequent replacement iterations of the optimal matching subclass and the sub - optimal matching subclass. It is difficult to directly infer the accurate encryption algorithm based on the existing matching degrees, and it is also difficult to directly complete the decryption task through the rainbow table of the optimal matching subclass and the sub - optimal matching subclass. Therefore, for these password groups, it is determined that their decryption tasks require subsequent adjustment and iteration, and more computing resources are called. Mark the decryption task of the password group as a high - priority decryption task.
[0020] For other password groups, mark them as general - priority decryption tasks.
[0021] Step Four: Computing resource scheduling; Perform computing resource scheduling for low - priority decryption tasks, high - priority decryption tasks, and general - priority decryption tasks.
[0022] Sort all decryption tasks according to the mean values of the matching degrees f(C, A - best) and f(C, A - second) of the optimal matching subclass and the sub - optimal matching subclass. Generate a task queue in the order from large to small of the mean values of the matching degrees f(C, A - best) and f(C, A - second) of the sub - optimal matching subclass. Mark the first U decryption tasks in the task queue as execution tasks and input them into the computing module. The computing module includes a basic decryption unit, a general decryption unit, a fast decryption unit, and an advanced decryption unit. Identify the proportion of each priority among the decryption tasks marked as execution tasks in the task queue.
[0023] The described basic decryption unit includes: multi - core CPU and memory; The described general decryption unit includes: multi - core medium - frequency CPU, GPU tensor processing unit, memory, and SSD high - speed solid - state drive; The described fast decryption unit includes: multi - core high - frequency CPU, GPU tensor processing unit, TPU dedicated acceleration hardware, and SSD high - speed solid - state drive.
[0024] The described advanced decryption unit includes: a multi-core high-frequency CPU, a GPU tensor processing unit, a TPU dedicated acceleration hardware, an SSD high-speed solid-state drive, and an FPGA custom-programmed integrated circuit dedicated for decryption.
[0025] If the proportion of low-priority decryption tasks is greater than 1 / 3, then initiate collaborative docking between the first storage module and the basic decryption unit, and initiate collaborative docking between the second storage module and the general decryption unit; If the proportion of medium-priority decryption tasks is greater than 1 / 3, then initiate collaborative docking between the first storage module and the general decryption unit, and initiate collaborative docking between the second storage module and the fast decryption unit.
[0026] If the proportion of high-priority decryption tasks is greater than 1 / 3, then initiate collaborative docking between the first storage module and the fast decryption unit, and initiate collaborative docking between the second storage module and the advanced decryption unit.
[0027] The described collaborative docking specifically refers to a dedicated high-speed data transfer interface, a dedicated high-speed storage access protocol, and a task scheduling framework.
[0028] As a preferred embodiment of the present invention, use a performance monitoring tool to detect the usage data of CPU, GPU, memory, and storage resources in the basic decryption unit, general decryption unit, fast decryption unit, and advanced decryption unit.
[0029] Step Five: Decryption result verification and algorithm iteration; After the decryption task is completed, verify the decryption results of low-priority decryption tasks, high-priority decryption tasks, and medium-priority decryption tasks. First, perform matching verification by comparing the plaintext obtained by decryption with the known plaintext in the password library. If the decryption result matches the corresponding plaintext in the password library, it is determined that the decryption is successful; if the corresponding password original text cannot be matched in the corresponding rainbow tables of the optimal matching subclass and the sub-optimal matching subclass, then its task result is determined to be decryption failure, and iterative decryption is performed.
[0030] If the results of low-priority, medium-priority, and high-priority decryption tasks are decryption failures, then mark them as "tasks to be reprocessed", replace the optimal matching subclass and the sub-optimal matching subclass, and return to Step Four to re-execute the computing resource scheduling and password group decryption.
[0031] Compared with the prior art, the beneficial effects of the present invention are: 1. Through the multi-level rainbow table and hierarchical storage of the storage module, combined with an accurate task target recognition and matching mechanism, the present invention effectively speeds up the decryption process. By identifying the optimal rainbow table subclass according to information such as the encrypted hash value, length, and encryption algorithm of the password, the decryption algorithm for the target password can be quickly matched, greatly improving the speed of password cracking; 2. The present invention adopts a task scheduling and allocation mechanism based on matching degree, which can reasonably allocate computing resources according to the priority of decryption tasks. Low-priority tasks preferentially use basic decryption units, while high-priority tasks use specialized hardware acceleration modules (such as TPU and FPGA), effectively improving the utilization rate of resources and ensuring that high-priority tasks are processed in a timely manner; 3. The multi-storage module design of the present invention, including SSD, hard disk array and cloud storage server, can be flexibly scheduled according to task requirements. Whether it is small-scale single-layer encryption cracking or complex multi-layer encryption cracking, the system can dynamically allocate according to storage requirements and computing power, has strong scalability, and meets decryption tasks of different scales and complexities. Brief Description of the Drawings
[0032] For the convenience of those skilled in the art to understand, the present invention will be further described below in conjunction with the drawings: Figure 1 is the flowchart of the method of the present invention; Detailed Embodiments
[0033] The technical solutions of the present invention will be clearly and completely described below in conjunction with the embodiments. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.
[0034] Please refer to Figure 1 shown, a rainbow table decryption and scheduling method based on multi-layer encryption protection, specifically including the following steps: Step 1. Rainbow table construction and hierarchical storage; Construct multiple levels of rainbow tables according to different encryption algorithms, including: First-level rainbow table: including subclasses of the first-level rainbow table for common single-layer encryption algorithms, where the subclasses of the first-level rainbow table include rainbow tables for encryption algorithms including DES, MD5, and SHA-1; The first-level rainbow table is applicable to traditional single-layer hash encryption algorithms and is used to crack scenarios without salting or using simple encryption.
[0035] It should be noted that the single-layer hash encryption algorithms corresponding to the first-level rainbow tables are based on. By storing the corresponding relationships between the hash values of common passwords and plaintext passwords, these rainbow tables can quickly search and decrypt passwords under a single encryption algorithm. The first-level rainbow tables occupy less space, have a simple storage structure and frequent queries, and are suitable for efficient queries and fast decryption.
[0036] Second-level rainbow table: It includes second-level rainbow table subclasses for complex single-layer encryption algorithms, and the second-level rainbow table subclasses include rainbow tables for SHA-256, AES, RSA, PBKDF2, Argon2, and bcrypt algorithms; It should be noted that different from the first-level rainbow table, the second-level rainbow table deals with more complex encryption methods, including SHA-256, AES, and other modern encryption algorithms. For these encryption algorithms, the stored hash values not only include simple password mappings, but also information such as keys, salt values, and specific configurations of the encryption algorithms. Therefore, the construction and storage structure of the second-level rainbow table are more complex and the storage requirements are larger. However, for high-security encryption algorithms, it is still an effective acceleration tool. Especially when combined with hardware acceleration based on GPU computing, it can significantly improve the cracking speed.
[0037] The described second-level rainbow table is applicable to modern encryption algorithms and hash algorithms using the salt mechanism.
[0038] Furthermore, the first-level rainbow table and the second-level rainbow table are stored hierarchically. The first-level rainbow table is stored in the first storage module, and the second-level rainbow table is stored in the second storage module.
[0039] The described first storage module includes a solid-state drive SSD and memory to provide fast response.
[0040] The described second storage module includes a hard disk array and a cloud storage server array to meet the requirements of query scheduling allocation and expandable storage space. The described first storage module and the second storage module establish indexes for the mapping relationship of each encryption algorithm and the second-level rainbow table.
[0041] Step 2: Task target recognition and multi-level rainbow table matching; Based on the rainbow table matching algorithm, analyze the ciphertext format data of the input password, identify the encryption method, determine the target password to be decrypted and its corresponding encryption level, and match to the corresponding rainbow table subclass in the first-level rainbow table or the second-level rainbow table.
[0042] The described ciphertext format data includes: the encrypted hash value of the password, the password length, the encryption timestamp, and the public key length; It should be noted that among them, the encrypted hash value of the password is the final output of password encryption; the password length is the number of bytes of the final output password. Specifically, the corresponding relationship between common encryption algorithms and password lengths is: MD5: usually 32 bytes; SHA-1: usually 40 bytes; SHA-256: usually 64 bytes; AES: 16, 24, 32 bytes according to the key length; RSA: the ciphertext length is usually half of the key length.
[0043] It should be further noted that passwords encrypted by the same encryption method can have different lengths, especially when the encryption algorithm uses variable-length inputs (such as salt values, initialization vectors) or multi-layer encryption. The length of the ciphertext usually depends on the length of the plaintext, the type and configuration of the encryption algorithm, and whether additional parameters are used. For example, for encryption modes (such as CBC, ECB), if the length of the plaintext is not an integer multiple of the block size, the algorithm will perform padding, so the length of the output ciphertext may vary, especially when dealing with plaintexts of different lengths, and the padding will vary according to the length of the plaintext. However, the length distribution of the ciphertext is closely related to the characteristics of the encryption method, the nature of the input data, and the encryption parameters, and has certain statistical laws, usually varying based on integer multiples of the block size. If the lengths of the input plaintexts are relatively scattered, the statistical distribution of the ciphertext lengths will exhibit certain statistical laws. For example, the byte distribution of AES ciphertexts is usually more uniform.
[0044] Furthermore, through the described rainbow table matching algorithm, analyze the ciphertext format data of the same group of passwords, infer their encryption methods, and match to specific first-level or second-level rainbow table subclasses through the mapping relationship index. The specific process is as follows: Obtain the hash value sequence Ci = {C1, C2,..., Cn} of this group of passwords C; where C1, C2,..., Cn are the specific hash values of each password; where n is the total number of passwords included in this group of passwords, through a preset formula Calculate the distribution frequency of each byte ; where is the total number of occurrences of byte in all passwords, where L(Ci) is the number of bytes included in Ci in the hash value sequence, is the total byte length of all hash values included in this group of passwords; Calculate the matching degree f(C, A) between this group of passwords C and the first-level or second-level rainbow table subclass A through a preset formula ; where A represents a specific first-level or second-level rainbow table subclass; where D(C, A) is the byte distribution deviation between this group of passwords and the first-level or second-level rainbow table subclass A, where is the ideal byte distribution of byte in the preset first-level or second-level rainbow table subclass A, where H(C) is the ciphertext entropy of this group of passwords C, which is a measure of the uncertainty of this group of passwords and represents the randomness of this group of passwords. The higher the ciphertext entropy, the stronger the encryption algorithm. Simple encryption algorithms have lower ciphertext entropy values; where f(C, A) represents the matching degree between this group of passwords C and the first-level or second-level rainbow table subclass A; where λ1 and λ2 are preset weight factors and dimension unification factors, respectively controlling the influence of the byte distribution deviation and the ciphertext entropy, and unifying the dimension; The computational dimensions of two operators; where α and β are preset weight coefficients that control the contribution of each feature to the matching degree; where is the reference ciphertext entropy of the preset first-level or second-level rainbow table subclass A.
[0045] Obtain the matching degree f(C, A) between this group of passwords C and each first-level or second-level rainbow table subclass A. The higher the matching degree, the higher the probability that the group of passwords C is the encryption output of the encryption algorithm corresponding to the first-level or second-level rainbow table subclass A. Denote the first-level or second-level rainbow table subclass A with the maximum matching degree f(C, A) as the optimal matching subclass A-best of this group of passwords; denote the first-level or second-level rainbow table subclass A with the second-largest matching degree f(C, A) as the sub-optimal matching subclass A-second of this group of passwords; Furthermore, calculate the matching degree f(C, A) by traversing all target password groups to obtain the optimal matching subclass and sub-optimal matching subclass of each group of passwords.
[0046] Step 3: Decryption task scheduling and allocation; Collect the optimal matching subclass and sub-optimal matching subclass of each target password group, as well as the matching degrees f(C, A-best) and f(C, A-second) with the optimal matching subclass and sub-optimal matching subclass, and perform decryption task scheduling and allocation to arrange decryption work to improve decryption efficiency and ensure the accuracy of the selected decryption rainbow table.
[0047] For the password groups where the matching degrees f(C, A-best) and f(C, A-second) of the optimal matching subclass and sub-optimal matching subclass are both greater than the maximum preset threshold, it is determined that the probability of their belonging to the optimal matching subclass and sub-optimal matching subclass is relatively high. Decryption can be completed through a small number of comparisons, and fewer computing resources are required. Mark the decryption task of the said password group as a low-priority decryption task.
[0048] For the password groups where the matching degrees f(C, A-best) and f(C, A-second) of the optimal matching subclass and sub-optimal matching subclass are both less than the minimum preset threshold, it is determined that the probability of their belonging to the optimal matching subclass and sub-optimal matching subclass is relatively small. The encryption method of this type of password group is determined to have a deviation. Decryption can only be completed through a large number of subsequent replacements and iterations of the optimal matching subclass and sub-optimal matching subclass. It is difficult to directly infer the accurate encryption algorithm based on the existing matching degree, and it is also difficult to directly complete the decryption task through the rainbow tables of the optimal matching subclass and sub-optimal matching subclass. Therefore, for these password groups, it is determined that their decryption tasks require subsequent adjustment and iteration, and more computing resources are required. Mark the decryption task of the said password group as a high-priority decryption task.
[0049] For other password groups, mark them as general-priority decryption tasks.
[0050] Step 4: Computational resource scheduling; Perform computational resource scheduling for low-priority decryption tasks, high-priority decryption tasks, and medium-priority decryption tasks.
[0051] Sort all decryption tasks according to the average of the matching degrees f(C, A-best) and f(C, A-second) of the optimal matching subclass and the sub-optimal matching subclass, generate a task queue in the order from largest to smallest of the average of the matching degrees f(C, A-best) and f(C, A-second) of the sub-optimal matching subclass, mark the first U decryption tasks in the task queue as execution tasks, and input them into the operation module. The operation module includes a basic decryption unit, a general decryption unit, a fast decryption unit, and an advanced decryption unit. Identify the proportion of each priority level among the decryption tasks marked as execution tasks in the task queue.
[0052] The described basic decryption unit includes: a multi-core CPU and a memory; The described general decryption unit includes: a multi-core medium-frequency CPU, a GPU tensor processing unit, a memory, and an SSD high-speed solid-state drive; The described fast decryption unit includes: a multi-core high-frequency CPU, a GPU tensor processing unit, a TPU dedicated acceleration hardware, and an SSD high-speed solid-state drive.
[0053] The described advanced decryption unit includes: a multi-core high-frequency CPU, a GPU tensor processing unit, a TPU dedicated acceleration hardware, an SSD high-speed solid-state drive, and an FPGA custom programming integrated circuit for decryption.
[0054] It should be noted that TPU is a hardware accelerator specifically for machine learning and complex computational tasks, and is suitable for decryption tasks that require a large amount of matrix calculations and high-concurrency tasks. TPU acceleration is used for high-priority tasks, especially for deep learning acceleration and complex multi-layer encryption and decryption operations.
[0055] If the proportion of low-priority decryption tasks is greater than 1 / 3, initiate collaborative docking between the first storage module and the basic decryption unit, and initiate collaborative docking between the second storage module and the general decryption unit; If the proportion of medium-priority decryption tasks is greater than 1 / 3, initiate collaborative docking between the first storage module and the general decryption unit, and initiate collaborative docking between the second storage module and the fast decryption unit.
[0056] If the proportion of high-priority decryption tasks is greater than 1 / 3, initiate collaborative docking between the first storage module and the fast decryption unit, and initiate collaborative docking between the second storage module and the advanced decryption unit.
[0057] The described collaborative docking is specifically a dedicated high-speed data transmission interface, a dedicated high-speed storage access protocol, and a task scheduling framework.
[0058] Further, use a performance monitoring tool to detect the usage data of CPU, GPU, memory, and storage resources in the basic decryption unit, general decryption unit, fast decryption unit, and advanced decryption unit.
[0059] Step Five: Decryption result verification and algorithm iteration; After the decryption task is completed, verify the decryption results of low-priority decryption tasks, high-priority decryption tasks, and general-priority decryption tasks. First, perform a matching verification by comparing the plaintext obtained by decryption with the known plaintext in the password library. If the decryption result matches the corresponding plaintext in the password library, it is determined that the decryption is successful; if the corresponding ciphertext cannot be matched in the rainbow tables corresponding to the optimal matching subclass and the sub-optimal matching subclass, it is determined that the task result is decryption failure, and iterative decryption is performed.
[0060] If the results of low-priority, general-priority, and high-priority decryption tasks are decryption failures, mark them as "tasks to be reprocessed", replace the optimal matching subclass and the sub-optimal matching subclass, and return to Step Four to re-execute the computing resource scheduling and password group decryption.
[0061] It should be understood that the terms "comprising" and "including" used in the specification and claims of this disclosure indicate the presence of the described features, wholes, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components, and / or their combinations.
[0062] It should also be understood that the terms used in this disclosure specification are only for the purpose of describing specific embodiments and are not intended to limit this disclosure. As used in this disclosure specification and claims, unless the context clearly indicates otherwise, the singular forms "a", "an", and "the" are intended to include the plural forms. It should be further understood that the term "and / or" used in this disclosure specification and claims refers to any combination and all possible combinations of one or more of the associated listed items, and includes these combinations; The preferred embodiments of the present invention disclosed above are only used to help explain the present invention. The preferred embodiments do not describe all the details in detail, nor do they limit the present invention to only the specific embodiments. Obviously, many modifications and variations can be made according to the content of this specification. This specification selects and specifically describes these embodiments to better explain the principles and practical applications of the present invention, so that those skilled in the art can well understand and utilize the present invention. The present invention is only limited by the claims and their full scope and equivalents.
Claims
1. A rainbow table decryption and scheduling method based on multi-layer encryption protection, characterized in that: The following steps are involved: Step 1: Rainbow table construction and hierarchical storage; Construct multiple levels of rainbow tables according to different encryption algorithms, including primary and secondary rainbow tables, and store them in different storage modules. The primary rainbow table is suitable for traditional single-layer hash encryption algorithms, and the secondary rainbow table is suitable for modern encryption algorithms and salted hash algorithms. Storage modules are graded according to storage requirements to provide efficient query and decryption support. Step 2: Task target identification and multi-level rainbow table matching; Analyze the input ciphertext format data, identify the encryption method and determine the decryption target, match it to the corresponding first-level or second-level rainbow table subclass, calculate the password matching degree through the preset formula, and select the optimal and suboptimal matching subclasses; Step 3: Decryption task scheduling and allocation; Prioritize the decryption tasks of each target cipher group according to the matching degree, and schedule and allocate the decryption tasks to improve the decryption efficiency and ensure that the correct rainbow table is selected for decryption; Step 4: Calculate resource scheduling; According to the priority of the task, the computing resources are scheduled and reasonably allocated to the basic decryption unit, general decryption unit, fast decryption unit and advanced decryption unit to ensure efficient resource utilization and task execution; Step 5: Decryption result verification and algorithm iteration; The decryption result is verified by matching it with the plaintext in the known password library to determine whether the decryption task is successful. If the decryption fails, the iterative decryption task is processed and the resource scheduling step is returned for adjustment.
2. A rainbow table decryption and scheduling method based on multi-layer encryption protection according to claim 1, characterized in that: The primary and secondary rainbow tables are specifically: Level 1 rainbow table: includes the level 1 rainbow table subclass for common single-layer encryption algorithms, where the level 1 rainbow table subclass includes rainbow tables for encryption algorithms including DES, MD5, and SHA-1; The first-level rainbow table is suitable for the traditional single-layer hash encryption algorithm and is used to crack scenarios where no salt is added or simple encryption is used; Secondary rainbow table: includes secondary rainbow table subclasses for complex single-layer encryption algorithms, including rainbow tables for SHA-256, AES, RSA, PBKDF2, Argon2, and bcrypt algorithms; The secondary rainbow table is applicable to modern encryption algorithms and hash algorithms using a salting mechanism; The first-level rainbow table and the second-level rainbow table are stored in a hierarchical manner, the first-level rainbow table is stored in a first storage module, and the second-level rainbow table is stored in a second storage module.
3. A rainbow table decryption and scheduling method based on multi-layer encryption protection according to claim 2, characterized in that: The first storage module and the second storage module include: The first storage module includes a solid state drive (SSD) and a memory to provide a fast response; The second storage module includes a hard disk array and a cloud storage server array to meet the query scheduling allocation and expandable storage space requirements; the first storage module and the second storage module establish an index for the mapping relationship between each encryption algorithm and the secondary rainbow table.
4. A rainbow table decryption and scheduling method based on multi-layer encryption protection according to claim 1, characterized in that: The specific process of analyzing the input ciphertext format data is as follows: Through the rainbow table matching algorithm, the ciphertext format data of the same set of passwords is analyzed, the encryption method is inferred, and the mapping relationship index is matched to the specific first-level or second-level rainbow table subclass. The specific process is as follows: Get the hash value sequence Ci={C1, C2, ..., Cn} of the password group C; where C1, C2, ..., Cn are the specific hash values of each password; where n is the total number of passwords included in the password group, through the preset formula Counting individual bytes The distribution frequency ;in Bytes The total number of occurrences in all passwords, where L(Ci) is the number of bytes contained in Ci in the hash value sequence, The total byte length of all hash values contained in this set of passwords; By preset formula Calculate the matching degree f(C, A) between the password group C and the first-level or second-level rainbow table subclass A, where A represents the specific first-level or second-level rainbow table subclass; where D(C, A) is the byte distribution deviation between the password group and the first-level or second-level rainbow table subclass A, where The bytes in the preset primary or secondary rainbow table subclass A The ideal byte distribution of , where H(C) is the ciphertext entropy of the password group C, which is the uncertainty measure of the password group and represents the randomness of the password group. The higher the ciphertext entropy, the stronger the encryption algorithm. The simpler the encryption algorithm, the lower the ciphertext entropy value. Where f(C, A) represents the matching degree between the password group C and the first-level or second-level rainbow table subclass A. Where λ1 and λ2 are the preset weight factors and dimension unification factors, which respectively control the influence of byte distribution deviation and ciphertext entropy, and unify The calculation dimensions of the two operators; α and β are preset weight coefficients that control the contribution of each feature to the matching degree; The reference ciphertext entropy of the preset primary or secondary rainbow table subclass A; The best matching subclass and the second best matching subclass are determined according to the matching degree.
5. A rainbow table decryption and scheduling method based on multi-layer encryption protection according to claim 1, characterized in that: The specific process of determining the best matching subclass and the second best matching subclass according to the matching degree is as follows: Obtain the matching degree f(C, A) between the group password C and each primary or secondary rainbow table subclass A. The higher the matching degree, the higher the probability that the group password C is the encryption output of the encryption algorithm corresponding to the primary or secondary rainbow table subclass A. Record the primary or secondary rainbow table subclass A with the largest matching degree f(C, A) as the best matching subclass A-best for the group password. Record the primary or secondary rainbow table subclass A with the second largest matching degree f(C, A) as the second best matching subclass A-second for the group password. The calculation of the matching degree f(C, A) is traversed over all target password groups to obtain the optimal matching subclass and the suboptimal matching subclass of each password group.
6. A rainbow table decryption and scheduling method based on multi-layer encryption protection according to claim 1, characterized in that: The specific process of scheduling and allocating decryption tasks is as follows: Collect the best matching subclass and the second best matching subclass of each target cipher group, as well as the matching degree f(C, A-best) and f(C, A-second) with the best matching subclass and the second best matching subclass, and perform decryption task scheduling and allocation, arrange decryption work, so as to improve decryption efficiency and ensure the accuracy of decryption rainbow table selection; For a cipher group whose matching degrees f(C, A-best) and f(C, A-second) of the best matching subclass and the second best matching subclass are both greater than a maximum preset threshold, marking the decryption task of the cipher group as a low priority decryption task; For password groups whose matching degrees f(C, A-best) and f(C, A-second) of the best matching subclass and the second-best matching subclass are both less than the minimum preset threshold, it is determined that there is a deviation in the encryption method of such password groups, and decryption can only be completed through a large number of subsequent replacement iterations of the best matching subclass and the second-best matching subclass. It is difficult to directly infer the accurate encryption algorithm based on the existing matching degree, and it is also difficult to directly complete the decryption task through the rainbow table of the best matching subclass and the second-best matching subclass; Therefore, for these cipher groups, it is determined that their decryption tasks need subsequent adjustment and iteration, and the decryption tasks of the cipher groups are marked as high-priority decryption tasks; For other cipher groups, mark them as general priority decryption tasks; Computing resources are scheduled for low-priority decryption tasks, high-priority decryption tasks, and general-priority decryption tasks.
7. A rainbow table decryption and scheduling method based on multi-layer encryption protection according to claim 1, characterized in that: The specific process of scheduling computing resources for low-priority decryption tasks, high-priority decryption tasks, and general-priority decryption tasks is as follows: All decryption tasks are sorted according to the average values of the matching degrees f(C, A-best) and f(C, A-second) of the best matching subclass and the second-best matching subclass, and a task queue is generated in descending order according to the average values of the matching degrees f(C, A-best) and f(C, A-second) of the second-best matching subclass. The first U decryption tasks in the task queue are marked as execution tasks and input into the operation module, which includes a basic decryption unit, a general decryption unit, a fast decryption unit and an advanced decryption unit. The proportion of each priority level in the decryption tasks marked as execution tasks in the task queue is identified; Initiate collaborative docking based on the proportion of priority decryption tasks.
8. A rainbow table decryption and scheduling method based on multi-layer encryption protection according to claim 7, characterized in that: The basic decryption unit includes: a multi-core CPU and memory; The general decryption unit includes: a multi-core medium frequency CPU, a GPU tensor processing unit, a memory and an SSD high-speed solid state drive; The fast decryption unit includes: a multi-core high-frequency CPU, a GPU tensor processing unit, a TPU dedicated acceleration hardware and an SSD high-speed solid-state hard disk; The advanced decryption unit includes: a multi-core high-frequency CPU, a GPU tensor processing unit, a TPU dedicated acceleration hardware, an SSD high-speed solid-state drive and an FPGA decryption-specific custom-programmed integrated circuit.
9. A rainbow table decryption and scheduling method based on multi-layer encryption protection according to claim 8, characterized in that: The specific process of starting collaborative docking according to the proportion of priority decryption tasks is as follows: If the proportion of low-priority decryption tasks is greater than 1 / 3, collaborative docking is initiated between the first storage module and the basic decryption unit, and collaborative docking is initiated between the second storage module and the general decryption unit; If the general priority decryption tasks account for more than 1 / 3, then collaborative docking is initiated between the first storage module and the general decryption unit, and collaborative docking is initiated between the second storage module and the fast decryption unit; If the high-priority decryption tasks account for more than 1 / 3, a collaborative connection is initiated between the first storage module and the fast decryption unit, and a collaborative connection is initiated between the second storage module and the advanced decryption unit; The collaborative docking is specifically a dedicated high-speed data transmission interface, a dedicated high-speed storage access protocol and a task scheduling framework.
10. A rainbow table decryption and scheduling method based on multi-layer encryption protection according to claim 1, characterized in that: The specific process of decryption result verification and algorithm iteration is as follows: After the decryption task is completed, the decryption results of the low-priority decryption task, high-priority decryption task and general-priority decryption task are verified. First, the plaintext obtained by decryption is compared with the known plaintext in the password library for matching verification; If the decryption result matches the corresponding plaintext in the password library, the decryption is considered successful; if the corresponding password original text cannot be matched in the rainbow table corresponding to the optimal matching subclass and the suboptimal matching subclass, the task result is considered to be a decryption failure, and iterative decryption is performed; If the result of the low priority, general priority and high priority decryption tasks is decryption failure, they are marked as "pending reprocessing" tasks, the best matching subclass and the second best matching subclass are replaced, and return to step 4 to re-execute computing resource scheduling and cipher group decryption.
Citation Information
Patent Citations
Encryption and analysis system based on distributed GPU and rainbow table and method of encryption and analysis system
CN103714300A
Big data rainbow table based decryption method and device
CN106712928A
Excel ciphertext document recovery method, computer equipment and storage medium
CN112287374A
Password security utility
US20040240670A1
Cited By
Distributed rainbow table decryption task scheduling system based on deep learning optimization
CN120353555A
Distributed rainbow table decryption task scheduling system based on deep learning optimization
CN120353555B