CN104182208A - Method and system utilizing cracking rule to crack password - Google Patents
Method and system utilizing cracking rule to crack password Download PDFInfo
- Publication number
- CN104182208A CN104182208A CN201410390583.3A CN201410390583A CN104182208A CN 104182208 A CN104182208 A CN 104182208A CN 201410390583 A CN201410390583 A CN 201410390583A CN 104182208 A CN104182208 A CN 104182208A
- Authority
- CN
- China
- Prior art keywords
- gpu
- password
- cracks
- character set
- crack
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Storage Device Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
The invention discloses a method and a system utilizing a cracking rule to crack a password. The method comprises the following steps: a CPU analyzes the cracking rule of the password, forms cracked particles, and maps the cracked particles to a GPU; the GPU cracks according to the cracked particles, and if the cracking succeeds, the successful cracking marks and corresponding password sample index pos of a GPU inner core thread are returned to the CPU; the CPU calculates the password corresponding to the cracking rule according to the successful cracking marks and the pos. The password with the longer number can be cracked simultaneously through the adoption of large scale cracking colony, the cracking efficiency of the password is improved, and the cracking time is shortened.
Description
Technical field
The embodiment of the present invention relates to parallel computing field, relates in particular to a kind of utilization and crack the method and system of regular decryption.
Background technology
Along with market is to the programmable demand of 3D figure real-time, high definition, GPU (Graphic Processing Unit, graphic process unit) develop into the polycaryon processor of highly-parallel, multithreading, there is high Parallel Computing Performance and high storage speed.The calculating that aims at intensity, highly-parallel due to GPU designs, and the floating-point function between CPU and GPU there are differences, thereby GPU uses more transistor for data processing in design.Fig. 1 is the internal arithmetic cellular logic structural drawing of CPU and GPU in prior art, and as shown in Figure 1, GPU is significantly for solving data parallel problem, and on data element, the program of executed in parallel has high bulk density.Data element mappings is arrived parallel processing thread by parallel data processing.Process the program of large data collection and utilize exactly parallel processing thread to accelerate calculating, as a large amount of pixels and data set being mapped to parallel processing thread in the time that 3D plays up.Other images and media are used parallel computing too, and in addition, the parallel computation of GPU is also calculated for science, relates to the field such as mathematics, biology, and password cracking is exactly an application of GPU parallel computation.
CUDA (Compute Unified Device Architecture, unified calculation equipment framework) is a kind of parallel programming model and software environment, and the CUDA program after compiling is moved on the kernel of GPU processor.Fig. 2 is the schematic diagram of the unit of GPU deal with data in prior art, and as shown in Figure 2, the minimum unit of GPU deal with data is thread in core, multiple thread composition thread block, multiple thread block composition grids.Thread block number in the maximum thread of each thread block and each grid is determined by concrete GPU performance.CUDA program operates in the part on CPU, is referred to as host service function, and CUDA program operates in the part on GPU, is referred to as equipment operating.CUDA has special API can realize data transmission between main frame and equipment.The general serial code (Serial code) that arranges is in the upper operation of main frame (Host), parallel codes (Parallel kernel) is in the upper operation of equipment (Device), as shown in Figure 3, Fig. 3 is the schematic diagram that in prior art, serial code is moved on main frame, parallel codes is moved on equipment.
Password is cracked, except corresponding algorithm, also need to preset and crack rule, crack the namely scope of decryption of rule, as 8 pure digi-tal, 3 lowercase+6 bit digital etc.Cracking rule is exactly the popular expression to decryption scope, the expression on computers of 8 pure digi-tal can be write as { " 0123456789 ", " 0123456789 ", " 0123456789 ", " 0123456789 ", " 0123456789 ", " 0123456789 ", " 0123456789 ", " 0123456789 " }.The computing velocity of general GPU is according to the difference that cracks algorithm, generally at several thousand times~tens times not etc., as MD5 (Message-Digest Algorithm 5, Message-Digest Algorithm 5) order of magnitude of algorithm hundred million cracks 8 pure digi-tal and needs complete with interior for 1 second, crack rule and can easily in GPU kernel, realize such, if have now 10 small letters and numeral to mix, need (26+10)
10≈ 3.656*10
15inferior comparison, calculate according to 1,000,000,000 times per second, need 1015.6 hours ≈ of 3656000 seconds ≈ 42.3 days, according to this time scale with crack scale one of continuous continuous operation in GPU to crack task be infeasible, an important reason except technical factor is that every kind of hardware is not that long-play is reliable.
Summary of the invention
In view of this, the embodiment of the present invention provides a kind of utilization to crack the method and system of regular decryption, the task of cracking is split into little task one by one, the time of moving a little task on GPU is controlled in rational scope, and can be cracked different little tasks by multiple GPU simultaneously, and then cracked by extensive GPU cluster, to improve the efficiency that cracks of password, save time. simultaneously
First aspect, a kind of method that the embodiment of the present invention provides utilization to crack regular decryption, described method comprises:
CPU decomposes the rule that cracks of password, form and crack particle, and will described in crack particle and shine upon to graphic process unit GPU;
GPU according to described in crack particle and crack, if cracked successfully, return to the password sample index pos that cracks successfully mark and corresponding GPU kernel thread to CPU;
CPU cracks password corresponding to rule according to cracking successfully mark and pos described in calculating.
Second aspect, the device that the embodiment of the present invention also provides a kind of utilization to crack regular decryption, described device comprises:
CPU, decomposes for the rule that cracks to password, form and crack particle, and will described in crack particle and shine upon to GPU, and crack password corresponding to rule according to cracking successfully mark and pos described in calculating;
GPU, cracks for cracking particle described in basis, if cracked successfully, returns to the password sample index pos that cracks successfully mark and corresponding GPU kernel thread to CPU.
The utilization that the embodiment of the present invention provides cracks the method and system of regular decryption, by CPU, the rule that cracks of password is decomposed, formation cracks particle, and will described in crack particle and shine upon to GPU, described in GPU basis, cracking particle cracks, if cracked successfully, return to the password sample index that cracks successfully mark and corresponding GPU kernel thread to CPU, CPU cracks password corresponding to rule according to cracking successfully mark and password sample index described in calculating.For compared with the password of long number, adopt extensive GPU cluster to crack simultaneously, improve the efficiency that cracks of password, save the time of cracking.
Brief description of the drawings
Fig. 1 is the internal arithmetic cellular logic structural drawing of CPU and GPU in prior art;
Fig. 2 is the schematic diagram of the unit of GPU deal with data in prior art;
Fig. 3 is the schematic diagram that in prior art, serial code is moved on main frame, parallel codes is moved on equipment;
Fig. 4 is the process flow diagram that a kind of utilization that first embodiment of the invention provides cracks the method for regular decryption;
Fig. 5 is the process flow diagram that utilization that the embodiment of the present invention provides cracks formation in the method for regular decryption and crack particle;
Fig. 6 is that utilization that the embodiment of the present invention provides cracks GPU in the method that rule cracks according to cracking the process flow diagram that particle cracks;
Fig. 7 is the process flow diagram that a kind of utilization that second embodiment of the invention provides cracks the method for regular decryption;
Fig. 8 is the Order exchange schematic diagram that a kind of utilization that second embodiment of the invention provides cracks character set before and after the arrangement in the method for regular decryption;
Fig. 9 is that utilization that second embodiment of the invention provides cracks the GPU kernel thread structural map in the method that rule cracks;
Figure 10 is that utilization that second embodiment of the invention provides cracks the formation of the pseudo-password in the method for regular decryption and the schematic diagram with the ciphertext comparison of input;
Figure 11 is the schematic diagram that a kind of utilization that third embodiment of the invention provides cracks the system of regular decryption.
Embodiment
Below in conjunction with drawings and Examples, the present invention is described in further detail.Be understandable that, specific embodiment described herein is only for explaining the present invention, but not limitation of the invention.It also should be noted that, for convenience of description, in accompanying drawing, only show part related to the present invention but not full content.
Fig. 4 shows the first embodiment of the present invention.
Fig. 4 is the process flow diagram that a kind of utilization that first embodiment of the invention provides cracks the method for regular decryption, the method is applicable to 4 above passwords to crack, can be carried out by computing machine, the method specifically comprises step 410, step 420 and step 430, specific as follows:
Step 410, CPU decomposes the rule that cracks of password, form and crack particle, and will described in crack particle and shine upon to GPU.
Wherein, cracking particle is the data object that is applicable to GPU data field being decomposed to form cracking rule.
CPU cracks rule and decomposes being applicable to the data object in cpu data territory, forms the data object that is applicable to GPU data field and cracks particle, and the particle that cracks forming is shone upon to GPU.Wherein, described in depending on, the size that cracks particle described in cracks the working time of particle on GPU.Generally, crack particle and control within a certain period of time the working time on GPU, the size that cracks particle described in is therefore by determining this working time.
Preferably, Fig. 5 is the process flow diagram that utilization that the embodiment of the present invention provides cracks formation in the method for regular decryption and crack particle, and as shown in Figure 5, CPU decomposes the rule that cracks of password, forms and cracks particle, comprises the steps:
Step 501, determines the figure place that cracking of password is regular, the described each character set cracking in rule is arranged according to character set length is ascending, and record the Order exchange of character set, and wherein, a character set is the scope that cracks of in password.
First CPU determines according to the number that cracks the character set in rule the figure place that cracking of password is regular, and then the figure place of definite password, cracks a character set correspondence in rule and the scope that cracks of a password.The described each character set cracking in rule is carried out to ascending arrangement according to the length of each character set, make rear 4 character set long with respect to other character set, and the Order exchange of character set in record ordering process, for example: suppose that password is 4, the original rule that cracks has 4 character set, the original rule that cracks is for { " zxcvbnmghj ", " 12345 ", " aertyuiop ", " qwertyui " }, after sequence, be { " 12345 ", " qwertyui ", " aertyuiop ", " zxcvbnmghj " }, in sequencer procedure, the Order exchange of character set can be recorded as 0123->3021.
Step 502, according to rear 4 the character set compute cluster sizes after sequence, wherein, the set of bunch traversing result for rear 4 character set after sequence.
Rear 4 character set after sequence are traveled through, the character taking out in each character set forms a combination according to the order of rear 4 character set after sorting, one of them is combined as a traversing result, complete the set that the traversal of rear 4 character set after sequence is just obtained to the traversing result of rear 4 character set after sequence, the set of the traversing result of rear 4 character set after sequence is called bunch.The product that calculates rear 4 the character set length after sequence, is a bunch size, and bunch size is also the corresponding comparison number of times of rear 4 character set after traversal sequence.
Step 503, according to the complexity of password cracking algorithm, determines the comparison number of times in GPU, and wherein, the comparison number of times in GPU is the calculated amount of GPU in Preset Time.
Generally, when cracking particle and crack, need the controlling run time, namely Preset Time, the calculated amount of GPU in Preset Time is called the comparison number of times of GPU.The complexity of password cracking algorithm is higher, and while cracking according to this password cracking algorithm, the comparison number of times in GPU is less, therefore, need to determine the comparison number of times in GPU according to the complexity of password cracking algorithm.If MD5 algorithm suitable comparison number of times in GPU is 8388608=2
23.The power side that general comparison number of times is 2, specifically sets 2 power several times and need to meet the logical organization of GPU internal thread piece and grid, if it is higher than the complexity of MD5 algorithm to crack the complexity of algorithm, and the choosing number less than 23.Wherein, comparison refers to comparing of ciphertext that the password sample evidence password cracking algorithm of structure calculates and original ciphertext.
Step 504, according to the comparison number of times in GPU, determines every thread block number of threads and every grid thread block number.
Every thread block number of threads must be 2 power several times, and in order to meet the performance parameter of most GPU equipment, generally selecting every thread block number of threads is 128.Every grid thread block number=(comparison number of times/every thread block number of threads+9 in GPU)/10.
Step 505, the character set beyond rear 4 character set after traversal sequence forms table.
Character set beyond rear 4 character set after traversal sequence, takes out respectively a character in the each character set beyond rear 4 character set after sequence according to new character set combination of clooating sequence composition, all new character set be combined to form table.
Step 506, according to the comparison number of times in GPU and bunch size, compute cluster skew.
Forming one cracks particle and is called once, namely crack once, therefore, in in formation, first cracks particle, bunch skew is 0, forms the lastly while cracking particle, and bunch skew is relevant with bunch skew that cracks particle of last formation, i.e. bunch skew=(the comparison number of times in last bunch skew+GPU) % bunch size, calculates the last time by remainder and forms bunch skew that cracks particle.
Step 507, according to the comparison number of times in GPU and the last bunch skew calculating, calculates the item number of the table that offers GPU.
According to the comparison number of times in GPU and bunch skew, calculate the item number of the table that offers GPU, the last formation cracked item number=(the comparison number of times in bunch skew+GPU that the last time calculates)/bunch size that particle need to offer the table of GPU.
Step 508, item number and the table of the table that offers GPU calculating according to the last time, determine the initial project of table; If the Position Number of the last definite initial project of table adds total item number that the item number of the last table that offers GPU calculating has exceeded table, arrange and crack end mark.
The initial project of initial table is made up of the first character of the character set rear 4 character set after sequence, the i.e. Section 1 of table, this Position Number of showing initial project be in described table by item number that once time the Position Number of the initial project of table adds the last table that offers GPU calculating calculate, the Position Number of showing initial project according to this determines that this shows initial project.If the Position Number of the last definite initial project of table adds total item number that the item number of the last table that offers GPU calculating has exceeded table, explanation can only provide this to crack particle again, therefore arrange and crack end mark, to show that this is that last cracks particle.
Step 509, according to the comparison number of times in Order exchange, the GPU of character set, character set after sequence, the last bunch skew of calculating, the last definite initial project of table, crack end mark, every thread block number of threads and every grid thread block number and determine management data body, determine and crack particle according to management data body.
Comparison number of times in character set after sequence, the Order exchange of character set, GPU, the last bunch skew of calculating, the last definite initial project of table, crack end mark, every thread block number of threads and every grid thread block number and formed management data body, in addition, management data body also comprises Password Length, encrypt data and encrypt data length.Wherein, encrypt data is the ciphertext of input, is known.Wherein, when the item number that adds the last table that offers GPU calculating when the Position Number of definite initial project of table of the last time does not exceed total item number of table, need not arrange and crack end mark, it is unmarked cracking end mark; When the item number that adds the last table that offers GPU calculating when the Position Number of definite initial project of table of the last time has exceeded total item number of table, arrange and crack end mark, cracking end mark is mark.As shown in table 1, table 1 is the definition of management data body.The effect of management data body is to provide and cracks particle, and for provide next time crack particle carry out data prepare.
The definition of table 1 management data body
Sequence number | Data item |
1 | Password Length |
2 | Encrypt data length |
3 | Encrypt data |
4 | Comparison number of times in GPU |
5 | Character set (after Order exchange) |
6 | Character set Order exchange record |
7 | Bunch size |
8 | Bunch skew |
9 | Show initial project |
10 | Crack end mark |
11 | Every thread block number of threads |
12 | Every grid thread block number |
Determine and crack particle according to management data body, table 2 is to crack particle definition, as shown in table 2, bunch skew of management data body is taken from bunch skew cracking in particle, the table entry that cracks particle is the project of the table that obtains according to the item number of the initial project of the table of management data body and the last table that offers GPU calculating, in table, the item number that starts the last table that offers GPU calculating of taking-up from showing initial project forms the table entry that cracks particle of this formation.Rear 4 character set that crack particle are taken from rear 4 character set of management data body character set (after Order exchange), crack particle residue field and all take from management data body respective field.The effect that cracks particle is that mapping cracks by it to GPU kernel.
Table 2 cracks particle definition
Sequence number | Data item |
1 | Password Length |
2 | Encrypt data length |
3 | Encrypt data |
4 | Comparison number of times in GPU |
5 | Rear 4 character set (after Order exchange) |
6 | Character set Order exchange record |
7 | Bunch skew |
8 | Table entry |
9 | Every thread block number of threads |
10 | Every grid thread block number |
Step 510, if the Position Number of the last definite initial project of table adds total item number that the item number of the last table that offers GPU calculating has exceeded table, process ends, otherwise, return to step 506.
Step 420, GPU according to described in crack particle and crack, if cracked successfully, return to the password sample index pos that cracks successfully mark and corresponding GPU kernel thread to CPU.
GPU cracks particle according to each and cracks respectively in different threads.Described in GPU basis, crack constitution and go out password sample, each password sample has password sample index, and password sample index represents with pos, according to password cracking algorithm, password sample is calculated, to obtain the ciphertext of password sample, by this ciphertext and original ciphertext comparison, if this ciphertext is consistent with original ciphertext, crack successfully, if this ciphertext and original ciphertext are inconsistent, crack unsuccessfully, if cracked successfully, return and crack successfully mark and password sample index to CPU.
Preferably, Fig. 6 is that utilization that the embodiment of the present invention provides cracks GPU in the method that rule cracks according to cracking the process flow diagram that particle cracks, and as shown in Figure 6, GPU cracks and comprises the steps: according to cracking particle
Step 601, calculate the pos of current GPU kernel thread according to following formula:
pos=offset+blockIdx.x*blockDim.x+threadIdx.x+gridDim.x*blockDim.x*n
Wherein, offset is a bunch skew, n is cycle index, blockIdx.x is current thread block index, threadIdx.x is current thread index, and (blockIdx.x, threadIdx.x) is the mark of thread, blockDim.x is the every thread block number of threads that cracks particle, and gridDim.x is the every grid thread block number that cracks particle.Wherein, the particle that cracks of each thread is certain, and when cracking particle definite time, bunch skew is namely determined.
Wherein, pos is password sample index, n=(0,1,2 ...).
Step 602, judge pos whether be greater than or equal to comparison number of times in GPU and bunch skew and, if so, in thread, crack end, return and crack unsuccessful mark to CPU, if not, continue to crack.
In the time that n gets some numerical value, if the pos value calculating meets the comparison number of times+offset in pos>=GPU, in thread, crack end, under this pos value, crack unsuccessfully, return and crack unsuccessful mark to CPU; If do not meet the comparison number of times+offset in pos>=GPU, continue to crack, continue to carry out operation below.
Step 603, according to after the length computation password of rear 4 character set 4 respectively with respect to the index of character set separately, further calculate table index.
First establish a variable ut, when beginning, ut=pos, first calculate last index with respect to last the character collection in rear 4 character set after sorting of password, last is the index Idx[3 of the 4th character set with respect to last the character collection in rear 4 character set after sorting for password] represent, Idx[3] length of last character collection in rear 4 character set by ut after to sequence carries out remainder and calculates, calculate Idx[3] after, make ut divided by sequence after rear 4 character set in last character collection length again assignment to ut, calculate again the penultimate of password with respect to the index of the 3rd character set in rear 4 character set after sorting, the penultimate of password is with respect to the index Idx[2 of the 3rd character set in rear 4 character set after sorting] represent, Idx[2] length of the 3rd character set in rear 4 character set by ut after to sequence carries out remainder and calculates, calculate Idx[2] after, make ut divided by sequence after rear 4 character set in the 3rd character set length again assignment to ut, profit uses the same method and calculates password antepenulatimate and fourth from the last position respectively with respect to the index Idx[1 of second character set in rear 4 character set after sequence and first character collection] and Idx[0], last ut is that the index that cracks particle table entry is table index.
Step 604, takes out after described password 4 respectively with respect to the corresponding character of index and the corresponding table entry of table index of character set separately, forms pseudo-password.
Take out after described password 4 respectively with respect to the corresponding character of index and the corresponding table entry of table index of character set separately, the corresponding table entry of table index is front, after password 4 respectively with respect to the index of character set be separately positioned in order the corresponding character of table index after, form pseudo-password.
Step 605, by described pseudo-password, through order, conversion obtains password sample, calculates ciphertext according to password cracking algorithm, and the ciphertext of this ciphertext and input is compared, if unanimously, cracks successfully, if inconsistent, cracks unsuccessful.
By the pseudo-password obtaining, through the Order exchange of character set, contrary order conversion obtains password sample, this password sample evidence password cracking algorithm calculates ciphertext, the ciphertext of this ciphertext and input is compared, if unanimously, represent to crack successfully, if inconsistent, represent to crack unsuccessful.
Step 430, CPU cracks password corresponding to rule according to cracking successfully mark and pos described in calculating.
CPU is according to cracking successfully mark and password sample index pos, first establish a variable ut, when beginning, ut=pos, calculate last index with respect to last the character collection in rear 4 character set after sorting of password, last is the index Idx[3 of the 4th character set with respect to last the character collection in rear 4 character set after sorting for password] represent, Idx[3] length of last character collection in rear 4 character set by ut after to sequence carries out remainder and calculates, calculate Idx[3] after, make ut divided by sequence after rear 4 character set in last character collection length again assignment to ut, calculate again the penultimate of password with respect to the index of the 3rd character set in rear 4 character set after sorting, the penultimate of password is with respect to the index Idx[2 of the 3rd character set in rear 4 character set after sorting] represent, Idx[2] length of the 3rd character set in rear 4 character set by ut after to sequence carries out remainder and calculates, calculate Idx[2] after, make ut divided by sequence after rear 4 character set in the 3rd character set length again assignment to ut, profit uses the same method and calculates password antepenulatimate and fourth from the last position respectively with respect to the index Idx[1 of second character set in rear 4 character set after sequence and first character collection] and Idx[0], last ut is that the index that cracks particle table entry is table index.Take out after described password 4 respectively with respect to the corresponding character of index and the corresponding table entry of table index of character set separately, the corresponding table entry of table index is front, after password 4 respectively with respect to the index of character set be separately positioned in order the corresponding character of table index after, just form pseudo-password, pseudo-password is the password of conversion after obtaining cracking through order, cracks password corresponding to rule described in.
Preferably, described method also comprises:
If crack unsuccessfully, GPU returns and cracks unsuccessful mark to CPU.
The present embodiment decomposes the rule that cracks of password by CPU, formation cracks particle, and will described in crack particle and shine upon to GPU, described in GPU basis, cracking particle cracks, if cracked successfully, return to the password sample index that cracks successfully mark and corresponding GPU kernel thread to CPU, CPU cracks password corresponding to rule according to cracking successfully mark and password sample index described in calculating.For compared with the password of long number, can adopt extensive GPU cluster to crack simultaneously, improve the efficiency that cracks of password, save the time of cracking.
Fig. 7 shows the second embodiment of the present invention.
Fig. 7 is the process flow diagram that a kind of utilization that second embodiment of the invention provides cracks the method for regular decryption.In the present embodiment, Password Length is 8, crack rule for { " 0123456789abcdefghijklmnop ", " 345678 ", " 0456789 ", " qwertyui ", " 0123456789abcdefghijklmnopqrstuvwxyz ", " aertyuiop ", " zxcvbnmghj ", " 12345 " }, its character set length composition and length are each different.Below describing CPU in detail is decomposed into and cracks the process of particle and GPU utilizes the method that particle cracks that cracks cracking rule.
Step 701, arranges the described each character set cracking in rule, and records the Order exchange of character set according to character set length is ascending.
After sequence, crack rule for { " 12345 ", " 345678 ", " 0456789 ", " qwertyui ", " aertyuiop ", " zxcvbnmghj ", " 0123456789abcdefghijklmnop ", " 0123456789abcdefghijklmnopqrstuvwxyz " }, and record character set and arrange the Order exchange of front and back.Fig. 8 is the Order exchange schematic diagram that a kind of utilization that second embodiment of the invention provides cracks character set before and after the arrangement in the method for regular decryption.
Step 702, according to rear 4 the character set compute cluster sizes after sequence.
Bunch size=length (aertyuiop) * length (zxcvbnmghj) * length (0123456789abcdefghijklmnop) * length (0123456789abcdefghijklmnopqrstuvwxyz)=9*10*26*36=84240.
Step 703, according to the complexity of password cracking algorithm, determines the comparison number of times in GPU.
Taking MD5 algorithm as example, the comparison number of times in GPU is 8388608=2
23, this numeral relatively meets GPU internal logic structure.
Step 704, according to the comparison number of times in GPU, determines every thread block number of threads and every grid thread block number.
The number of threads of determining every thread block is 128, and the thread block number of every grid is (comparison number of times/every thread block number of threads+9 in GPU)/10=(8388608/128+9)/10=6554.
Step 705, the character set beyond rear 4 character set after traversal sequence forms table.
Step 706, according to the comparison number of times in GPU and bunch size, compute cluster skew.
Initial bunch skew is 0, and bunch skew of later each time is all relevant with last bunch skew, bunch skew=(the comparison number of times in last bunch skew+GPU) % bunch size.As 2nd bunch of skew=(0+8388608) %84240=48848; As 3rd bunch of skew=(48848+8388608) %84240=13456.By that analogy, until calculate each corresponding bunch of skew of particle that crack.
Step 707, according to the comparison number of times in GPU and the last bunch skew calculating, calculates the item number of the table that offers GPU.
Item number=(comparison number of times in bunch skew+GPU that the last time calculates)/bunch size of table, as initial once item number=(the 0+8388608)/84240=99 of table, item number=(the 48848+8388608)/84240=100 of table for the second time.
Step 708, item number and the table of the table that offers GPU calculating according to the last time, determine the initial project of table; If the Position Number of the last definite initial project of table adds total item number that the item number of the last table that offers GPU calculating has exceeded table, arrange and crack end mark.
The initial project of initial table is the first character composition that remains several character set except rear 4 character set after sequence, i.e. the initial character of { " 12345 ", " 345678 ", " 0456789 ", " qwertyui " } composition " 130q "; The traversing result of table is " 130q ", " 130w ", " 130e " ... " 134q ", " 134w ", " 134e " ... " 140q ", " 140w ", " 140e " ... " 230q ", " 230w ", " 230e " ... " 530q ", " 530w ", " 530e "; Be 99 according to the initial once item number of table, the initial project of secondary table is the result " 148r " of the 99th; Because the item number of secondary table is 100, show next time initial project table be for the third time initiated with the result " 166i " of the 199th.Table 3 be number of times, bunch skew, show initial, table item number between relation.
Table 3 time number, bunch skew, show initial, table item number between relation
Number of times | Bunch skew | Show initial | The item number of table | End mark |
0 | 0 | 130q | 99 | Unmarked |
1 | 48848 | 148r | 100 | Unmarked |
2 | 13456 | 166i | 99 | Unmarked |
3 | 62304 | 185e | 100 | Unmarked |
4 | 26912 | 240u | 99 | Unmarked |
5 | 75760 | 259w | 100 | Unmarked |
6 | 40368 | 277y | 100 | Unmarked |
7 | 4976 | 336w | 99 | Unmarked |
8 | 53824 | 354t | 100 | Unmarked |
9 | 18432 | 370q | 99 | Unmarked |
10 | 67280 | 388r | 100 | Unmarked |
11 | 31888 | 446i | 99 | Unmarked |
12 | 80736 | 465e | 100 | Unmarked |
13 | 45344 | 480u | 100 | Unmarked |
14 | 9952 | 539e | 99 | Unmarked |
15 | 58800 | 557y | 100 | Unmarked |
16 | 23408 | 576w | 99 | Mark |
Step 709, according to the comparison number of times in Order exchange, the GPU of character set, character set after sequence, the last bunch skew of calculating, the last definite initial project of table, crack end mark, every thread block number of threads and every grid thread block number and determine management data body, determine and crack particle according to management data body, and will described in crack particle and shine upon to GPU.
Crack bunch skew that management data body is taken from bunch skew in particle field; Crack the table entry in particle field, obtain according to the item number of the table initial sum table of management data body, as " 130q ", " 130w ", " 130e " ... " 134q ", " 134w ", " 134e " ... " 140q ", " 140w ", " 140e " ... " 148r "; 4 character set that crack in particle field are taken from rear 4 character set after the sequence of management data body; Crack particle residue field and all take from management data body respective field.
Through above each step, CPU has completed and will crack rule and be decomposed into and crack particle, when forming one while cracking particle, just the particle that cracks forming is shone upon to the kernel to GPU, is next that GPU kernel is according to cracking the process that particle cracks.
Step 710, calculates the pos of current GPU kernel thread.
pos=offset+blockIdx.x*blockDim.x+threadIdx.x+gridDim.x*blockDim.x*n
Wherein, offset is a bunch skew, n is cycle index, blockIdx.x is current thread block index, threadIdx.x is current thread index, and (blockIdx.x, threadIdx.x) is the mark of thread, blockDim.x is the every thread block number of threads that cracks particle, and gridDim.x is the every grid thread block number that cracks particle.The every thread block number of threads that cracks particle has determined that blockDim.x is that 128 (blockDim.y is 1, be that piece thread adopts one dimension system), the every grid thread block number that cracks particle has determined that gridDim.x is that 6554 (gridDim.y is 1, be that grid adopts one dimension system), the span of blockIdx.x [0~6553], the span [0~127] of threadIdx.x.Fig. 9 is that utilization that second embodiment of the invention provides cracks the GPU kernel thread structural map in the method that rule cracks.
Step 711, judge pos whether be greater than or equal to comparison number of times in GPU and bunch skew and, if so, in thread, crack end, return and crack unsuccessful mark to CPU, if not, continue to crack.
Step 712, according to after the length computation password of rear 4 character set 4 respectively with respect to the index of character set separately, further calculate table index.
Suppose a bunch skew offset=0, n=2, blockIdx.x=3679, threadIdx.x=7, calculates pos=2148743.Figure 10 is that utilization that second embodiment of the invention provides cracks the formation of the pseudo-password in the method for regular decryption and the schematic diagram with the ciphertext comparison of input.As shown in figure 10, step 1:ut=pos; Step 2:Idx[3]=ut%36; Ut/=36; Step 3:Idx[2]=ut%26; Ut/=26 ..., wherein the 36, the 26th, corresponding character set length; Idx[3], Idx[2] be the index of corresponding character set; Calculate respectively 4 indexes with respect to character set after password according to list step as figure, and table index.
In identical thread, i.e. parameter offset=0, blockIdx.x=3679, threadIdx.x=7 is constant, attempts changing n, constructs other password samples and attempts cracking algorithm.Table entry, character set can be shared by other parallel running threads.
Step 713, takes out after described password 4 respectively with respect to the corresponding character of index and the corresponding table entry of table index of character set separately, forms pseudo-password.
The pseudo-password 136wynhb of composition.
Step 714, by described pseudo-password, through order, conversion obtains password sample, calculates ciphertext according to password cracking algorithm, and the ciphertext of this ciphertext and input is compared, if unanimously, cracks successfully, if inconsistent, cracks unsuccessful.
Shown in pseudo-password through order, conversion obtains password sample h36wby1.This password sample evidence password cracking algorithm calculates ciphertext, and the ciphertext of this ciphertext and input is compared, if unanimously, cracks successfully, if inconsistent, cracks unsuccessful.As 8 passwords " g68tuyn5 " encrypt data of corresponding MD5 algorithm is: DA9AE81F95F5A7CF9460F2CD420898AE, encrypt data length is 16 bytes.
Step 715, if cracked successfully, returns and cracks successfully mark and corresponding pos to CPU; If crack unsuccessfully, return and crack unsuccessful mark to CPU.
Step 716, CPU calculates and cracks password corresponding to rule with corresponding pos according to cracking successfully mark.
The present embodiment is by the rule that cracks of given 8 concrete passwords, describing CPU in detail cracks this rule and is decomposed into the process that cracks particle, and GPU utilizes this to crack the process that particle cracks, last CPU calculates former 8 passwords corresponding to rule that crack according to cracking successfully mark and corresponding password sample index.Improve and cracked efficiency, saved the time of cracking.
Figure 11 shows the third embodiment of the present invention.
Figure 11 is the schematic diagram that a kind of utilization that third embodiment of the invention provides cracks the system of regular decryption.The method of regular decryption is provided for a kind of utilization that realizes the first embodiment and provide the system that a kind of utilization that the present embodiment provides cracks regular decryption.As shown in figure 11, the system that the utilization that the present embodiment provides cracks regular decryption comprises: CPU1010 and GPU1020.
Wherein, CPU1110 for the rule that cracks of password is decomposed, forms and cracks particle, and will described in crack particle and shine upon to GPU, and crack password corresponding to rule according to cracking successfully mark and pos described in calculating.Wherein, described in depending on, the size that cracks particle described in cracks the working time of particle on GPU.
GPU1120 for according to described in crack particle and crack, if cracked successfully, return to the password sample index pos that cracks successfully mark and corresponding GPU kernel thread to CPU.
Preferably, if described GPU is also unsuccessful for cracking, returns and crack unsuccessful mark to CPU.
Preferably, described CPU comprises:
Arrange module, for determining the regular figure place that cracks of password, the described each character set cracking in rule is arranged according to character set length is ascending, and record the Order exchange of character set, wherein, a character set is the scope that cracks of in password;
The first computing module, for according to rear 4 the character set compute cluster sizes after sequence, wherein, bunch set of traversing result for rear 4 character set after sequence;
The first determination module, for according to the complexity of password cracking algorithm, determines the comparison number of times in GPU, and wherein, the comparison number of times in GPU is the calculated amount of GPU in Preset Time;
The second determination module, for according to the comparison number of times in GPU, determines every thread block number of threads and every grid thread block number;
Spider module, for traveling through the character set formation table beyond rear 4 character set after sequence;
The second computing module, for according to the comparison number of times in GPU and bunch size, compute cluster skew;
The 3rd computing module, for according to the comparison number of times in GPU and the last bunch skew calculating, calculates the item number of the table that offers GPU;
The 3rd determination module, for item number and the table of the table that offers GPU that calculates according to the last time, determines the initial project of table; If the Position Number of the last definite initial project of table adds total item number that the item number of the last table that offers GPU calculating has exceeded table, arrange and crack end mark;
The 4th determination module, for according to the comparison number of times in Order exchange, the GPU of character set, character set after sequence, the last bunch skew of calculating, the last definite initial project of table, crack end mark, every thread block number of threads and every grid thread block number and determine management data body, determine and crack particle according to management data body;
Processing module, if the item number that adds the last table that offers GPU calculating for the Position Number of the last definite initial project of table has exceeded total item number of table, end process, otherwise, return to described the second computing module.
Preferably, described GPU comprises:
The 4th computing module, for calculate the pos of current GPU kernel thread according to following formula:
pos=offset+blockIdx.x*blockDim.x+threadIdx.x+gridDim.x*blockDim.x*n
Wherein, offset is a bunch skew, n is cycle index, blockIdx.x is current thread block index, threadIdx.x is current thread index, and (blockIdx.x, threadIdx.x) is the mark of thread, blockDim.x is the every thread block number of threads that cracks particle, and gridDim.x is the every grid thread block number that cracks particle;
Processing module, for judge pos whether be greater than or equal to comparison number of times in GPU and bunch skew and, if so, in thread, crack end, return and crack unsuccessful mark to CPU, if not, continue to crack;
The 5th computing module, for according to after the length computation password of rear 4 character set 4 respectively with respect to the index of character set separately, further calculate table index;
Composition module, for taking out after described password 4 respectively with respect to the corresponding character of index and the corresponding table entry of table index of character set separately, forms pseudo-password;
Comparison module, for conversion obtains password sample through order by described pseudo-password, calculates ciphertext according to password cracking algorithm, and the ciphertext of this ciphertext and input is compared, if unanimously, cracks successfully, if inconsistent, cracks unsuccessful.
The present embodiment decomposes the rule that cracks of password by CPU, formation cracks particle, and will described in crack particle and shine upon to GPU, GPU, cracks for cracking particle described in basis, if cracked successfully, return to the password sample index pos that cracks successfully mark and corresponding GPU kernel thread to CPU, CPU cracks password corresponding to rule according to cracking successfully mark and pos described in calculating, and has improved the efficiency that cracks of password, has saved the time of cracking.
Note, above are only preferred embodiment of the present invention and institute's application technology principle.Skilled person in the art will appreciate that and the invention is not restricted to specific embodiment described here, can carry out for a person skilled in the art various obvious variations, readjust and substitute and can not depart from protection scope of the present invention.Therefore, although the present invention is described in further detail by above embodiment, the present invention is not limited only to above embodiment, in the situation that not departing from the present invention's design, can also comprise more other equivalent embodiment, and scope of the present invention is determined by appended claim scope.
Claims (10)
1. utilization cracks a method for regular decryption, it is characterized in that, described method comprises:
CPU decomposes the rule that cracks of password, form and crack particle, and will described in crack particle and shine upon to graphic process unit GPU;
GPU according to described in crack particle and crack, if cracked successfully, return to the password sample index pos that cracks successfully mark and corresponding GPU kernel thread to CPU;
CPU cracks password corresponding to rule according to cracking successfully mark and pos described in calculating.
2. method according to claim 1, is characterized in that, described method also comprises:
If crack unsuccessfully, GPU returns and cracks unsuccessful mark to CPU.
3. method according to claim 1 and 2, is characterized in that, CPU decomposes the rule that cracks of password, forms and cracks particle, comprising:
S1, determine the figure place that cracking of password is regular, the described each character set cracking in rule is arranged according to character set length is ascending, and record the Order exchange of character set, wherein, a character set is the scope that cracks of in password;
S2, according to rear 4 the character set compute cluster sizes after sequence, wherein, bunch set of traversing result for rear 4 character set after sequence;
S3, according to the complexity of password cracking algorithm, determine the comparison number of times in GPU, wherein, the comparison number of times in GPU is the calculated amount of GPU in Preset Time;
S4, according to the comparison number of times in GPU, determine every thread block number of threads and every grid thread block number;
Character set beyond rear 4 character set after S5, traversal sequence forms table;
S6, according to the comparison number of times in GPU and bunch size, compute cluster skew;
S7, according to the comparison number of times in GPU and the last bunch skew calculating, calculate the item number of the table that offers GPU;
Item number and the table of S8, the table that offers GPU that calculates according to the last time, determine the initial project of table; If the Position Number of the last definite initial project of table adds total item number that the item number of the last table that offers GPU calculating has exceeded table, arrange and crack end mark;
S9, according to the comparison number of times in Order exchange, the GPU of character set, character set after sequence, the last bunch skew of calculating, the last definite initial project of table, crack end mark, every thread block number of threads and every grid thread block number and determine management data body, determine and crack particle according to management data body;
If the Position Number of the last definite initial project of table of S10 adds total item number that the item number of the last table that offers GPU calculating has exceeded table, process ends, otherwise, return to step S6.
4. method according to claim 3, is characterized in that, GPU cracks according to cracking particle, comprising:
Calculate the pos of current GPU kernel thread according to following formula:
pos=offset+blockIdx.x*blockDim.x+threadIdx.x+gridDim.x*blockDim.x*n
Wherein, offset is a bunch skew, n is cycle index, blockIdx.x is current thread block index, threadIdx.x is current thread index, and (blockIdx.x, threadIdx.x) is the mark of thread, blockDim.x is the every thread block number of threads that cracks particle, and gridDim.x is the every grid thread block number that cracks particle;
Judge pos whether be greater than or equal to comparison number of times in GPU and bunch skew and, if so, in thread, crack end, return and crack unsuccessful mark to CPU, if not, continue to crack;
According to after the length computation password of rear 4 character set 4 respectively with respect to the index of character set separately, further calculate table index;
Take out after described password 4 respectively with respect to the corresponding character of index and the corresponding table entry of table index of character set separately, form pseudo-password;
By described pseudo-password, through order, conversion obtains password sample, calculates ciphertext according to password cracking algorithm, and the ciphertext of this ciphertext and input is compared, if unanimously, cracks successfully, if inconsistent, cracks unsuccessful.
5. method according to claim 1 and 2, is characterized in that, described in crack particle size crack the working time of particle on GPU described in depending on.
6. utilization cracks a system for regular decryption, it is characterized in that, described system comprises:
CPU, decomposes for the rule that cracks to password, form and crack particle, and will described in crack particle and shine upon to GPU, and crack password corresponding to rule according to cracking successfully mark and pos described in calculating;
GPU, cracks for cracking particle described in basis, if cracked successfully, returns to the password sample index pos that cracks successfully mark and corresponding GPU kernel thread to CPU.
7. system according to claim 6, is characterized in that, if described GPU is also unsuccessful for cracking, returns and cracks unsuccessful mark to CPU.
8. according to the system described in claim 6 or 7, it is characterized in that, described CPU comprises:
Arrange module, for determining the regular figure place that cracks of password, the described each character set cracking in rule is arranged according to character set length is ascending, and record the Order exchange of character set, wherein, a character set is the scope that cracks of in password;
The first computing module, for according to rear 4 the character set compute cluster sizes after sequence, wherein, bunch set of traversing result for rear 4 character set after sequence;
The first determination module, for according to the complexity of password cracking algorithm, determines the comparison number of times in GPU, and wherein, the comparison number of times in GPU is the calculated amount of GPU in Preset Time;
The second determination module, for according to the comparison number of times in GPU, determines every thread block number of threads and every grid thread block number;
Spider module, for traveling through the character set formation table beyond rear 4 character set after sequence;
The second computing module, for according to the comparison number of times in GPU and bunch size, compute cluster skew;
The 3rd computing module, for according to the comparison number of times in GPU and the last bunch skew calculating, calculates the item number of the table that offers GPU;
The 3rd determination module, for item number and the table of the table that offers GPU that calculates according to the last time, determines the initial project of table; If the Position Number of the last definite initial project of table adds total item number that the item number of the last table that offers GPU calculating has exceeded table, arrange and crack end mark;
The 4th determination module, for according to the comparison number of times in Order exchange, the GPU of character set, character set after sequence, the last bunch skew of calculating, the last definite initial project of table, crack end mark, every thread block number of threads and every grid thread block number and determine management data body, determine and crack particle according to management data body;
Processing module, if the item number that adds the last table that offers GPU calculating for the Position Number of the last definite initial project of table has exceeded total item number of table, end process, otherwise, return to described the second computing module.
9. system according to claim 8, is characterized in that, described GPU comprises:
The 4th computing module, for calculate the pos of current GPU kernel thread according to following formula:
pos=offset+blockIdx.x*blockDim.x+threadIdx.x+gridDim.x*blockDim.x*n
Wherein, offset is a bunch skew, n is cycle index, blockIdx.x is current thread block index, threadIdx.x is current thread index, and (blockIdx.x, threadIdx.x) is the mark of thread, blockDim.x is the every thread block number of threads that cracks particle, and gridDim.x is the every grid thread block number that cracks particle;
Processing module, for judge pos whether be greater than or equal to comparison number of times in GPU and bunch skew and, if so, in thread, crack end, return and crack unsuccessful mark to CPU, if not, continue to crack;
The 5th computing module, for according to after the length computation password of rear 4 character set 4 respectively with respect to the index of character set separately, further calculate table index;
Composition module, for taking out after described password 4 respectively with respect to the corresponding character of index and the corresponding table entry of table index of character set separately, forms pseudo-password;
Comparison module, for conversion obtains password sample through order by described pseudo-password, calculates ciphertext according to password cracking algorithm, and the ciphertext of this ciphertext and input is compared, if unanimously, cracks successfully, if inconsistent, cracks unsuccessful.
10. according to the system described in claim 6 or 7, it is characterized in that, described in crack particle size crack the working time of particle on GPU described in depending on.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410390583.3A CN104182208B (en) | 2014-08-08 | 2014-08-08 | Utilize the method and system for cracking regular decryption |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410390583.3A CN104182208B (en) | 2014-08-08 | 2014-08-08 | Utilize the method and system for cracking regular decryption |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104182208A true CN104182208A (en) | 2014-12-03 |
CN104182208B CN104182208B (en) | 2017-09-12 |
Family
ID=51963289
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410390583.3A Withdrawn - After Issue CN104182208B (en) | 2014-08-08 | 2014-08-08 | Utilize the method and system for cracking regular decryption |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104182208B (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107491689A (en) * | 2017-07-11 | 2017-12-19 | 国家计算机网络与信息安全管理中心 | A kind of password cracking method and apparatus |
CN108429716A (en) * | 2017-02-13 | 2018-08-21 | 广州市公安局经济犯罪侦查支队 | A kind of bank card steals the crack method and system of brush device |
CN112507347A (en) * | 2020-10-27 | 2021-03-16 | 中国科学院信息工程研究所 | Cracking job description information generation method facing distributed password cracking framework |
CN113139200A (en) * | 2021-05-11 | 2021-07-20 | 中国电子科技集团公司第三十研究所 | Method, system, computer program and storage medium for quickly cracking password |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7783046B1 (en) * | 2007-05-23 | 2010-08-24 | Elcomsoft Co. Ltd. | Probabilistic cryptographic key identification with deterministic result |
US7787629B1 (en) * | 2007-09-06 | 2010-08-31 | Elcomsoft Co. Ltd. | Use of graphics processors as parallel math co-processors for password recovery |
CN103684754A (en) * | 2013-12-03 | 2014-03-26 | 中国电子科技集团公司第三十研究所 | WPA shared key cracking system based on GPU cluster |
-
2014
- 2014-08-08 CN CN201410390583.3A patent/CN104182208B/en not_active Withdrawn - After Issue
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7783046B1 (en) * | 2007-05-23 | 2010-08-24 | Elcomsoft Co. Ltd. | Probabilistic cryptographic key identification with deterministic result |
US7787629B1 (en) * | 2007-09-06 | 2010-08-31 | Elcomsoft Co. Ltd. | Use of graphics processors as parallel math co-processors for password recovery |
CN103684754A (en) * | 2013-12-03 | 2014-03-26 | 中国电子科技集团公司第三十研究所 | WPA shared key cracking system based on GPU cluster |
Non-Patent Citations (3)
Title |
---|
乐德广等: "基于GPU的MD5高速解密算法的实现", 《计算机工程》 * |
于飞等: "GPU计算及其在密码分析中的应用", 《信息安全与通信保密》 * |
李超等: "基于GPU的RC4算法暴力破解研究", 《计算机技术与教育学报》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108429716A (en) * | 2017-02-13 | 2018-08-21 | 广州市公安局经济犯罪侦查支队 | A kind of bank card steals the crack method and system of brush device |
CN107491689A (en) * | 2017-07-11 | 2017-12-19 | 国家计算机网络与信息安全管理中心 | A kind of password cracking method and apparatus |
CN107491689B (en) * | 2017-07-11 | 2020-10-16 | 国家计算机网络与信息安全管理中心 | Password cracking method and device |
CN112507347A (en) * | 2020-10-27 | 2021-03-16 | 中国科学院信息工程研究所 | Cracking job description information generation method facing distributed password cracking framework |
CN113139200A (en) * | 2021-05-11 | 2021-07-20 | 中国电子科技集团公司第三十研究所 | Method, system, computer program and storage medium for quickly cracking password |
CN113139200B (en) * | 2021-05-11 | 2023-01-31 | 中国电子科技集团公司第三十研究所 | Method, system, computer program and storage medium for quickly cracking password |
Also Published As
Publication number | Publication date |
---|---|
CN104182208B (en) | 2017-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104268428B (en) | A kind of visual configuration method calculated for index | |
CN106951926A (en) | The deep learning systems approach and device of a kind of mixed architecture | |
CN108563808A (en) | The design method of heterogeneous reconfigurable figure computation accelerator system based on FPGA | |
CN104182208A (en) | Method and system utilizing cracking rule to crack password | |
CN102591709B (en) | Shapefile master-slave type parallel writing method based on OGR (open geospatial rule) | |
CN103440163A (en) | PIC (Peripheral Interface Controller)-model-based accelerator simulation method implemented by using GPU (Graphic Processing Unit) in parallel | |
CN105512265A (en) | Method and device for displaying data through figure | |
CN104268322B (en) | A kind of BORDER PROCESSING technology of WENO difference methods | |
CN109710406A (en) | Data distribution and its model training method, device and computing cluster | |
CN110069502A (en) | Data balancing partition method and computer storage medium based on Spark framework | |
CN102880509A (en) | Compute unified device architecture (CUDA) based grid digital elevation model (DEM) neighborhood analysis system and method | |
CN105138650A (en) | Hadoop data cleaning method and system based on outlier mining | |
CN106648839A (en) | Method and device for processing data | |
O'neal et al. | GPU performance estimation using software rasterization and machine learning | |
CN105183562A (en) | Method for conducting degree drawing on grid data on basis of CUDA technology | |
CN104036141B (en) | Open computing language (OpenCL)-based red-black tree acceleration method | |
CN112783989A (en) | Data processing method and device based on block chain | |
CN102799750B (en) | Method for quickly generating common side and non-common sides of geometry surface triangle | |
US20170046387A1 (en) | Method and apparatus for querying nondeterministic graph | |
CN116012019A (en) | Financial wind control management system based on big data analysis | |
CN109976905A (en) | EMS memory management process, device and electronic equipment | |
Carr et al. | Hybrid data-parallel contour tree computation | |
CN106954264B (en) | A kind of downlink physical shares the method for mapping resource and system of channel PDSCH | |
CN107729577A (en) | A kind of data search method based on multidimensional Hash table, terminal device and storage medium | |
JP6213665B2 (en) | Information processing apparatus and clustering method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
AV01 | Patent right actively abandoned | ||
AV01 | Patent right actively abandoned | ||
AV01 | Patent right actively abandoned |
Granted publication date: 20170912 Effective date of abandoning: 20180308 |
|
AV01 | Patent right actively abandoned |
Granted publication date: 20170912 Effective date of abandoning: 20180308 |