Font Size: a A A

Implementation And Optimization Of MD5 Decryption Algorithm Based On Domestic Shenwei 26010 Processor

Posted on:2022-05-24Degree:MasterType:Thesis
Country:ChinaCandidate:H ZhangFull Text:PDF
GTID:2518306494450214Subject:Control Engineering
Abstract/Summary:PDF Full Text Request
With the rapid development of Internet technology,the transmission of information is becoming more and more convenient,at the same time,the security of information is also more and more attention.Password is widely used as an important means to protect personal information.When we transfer files,there will be a digital signature in the files,which guarantees the integrity of file transmission information.Once the files are stolen or the contents are tampered with,we can find out in time by comparing the digital signature to prevent personal losses caused by downloading unknown files.At present,MD5 encryption algorithm is widely used on the network to generate the digital signature of files.With the increase of users' security awareness,the password length becomes longer and longer.With the increase of the password length,the common processor can no longer meet the requirements of password solving.In view of this,this paper implements the MD5 brute force cracking algorithm on the domestic SW26010 multi-core processor,and carries out the corresponding optimization method according to the characteristics of the processor.The multi-core processor is deployed on the Sunway supercomputer,demonstrating the powerful computing power of the processor.The main research work and contributions of this paper are as follows:1.This paper designed a pure C version of MD5 decryption algorithm,first implemented it on a single main core,and found that the decryption algorithm still has a lot of room for optimization by studying the relevant characteristics of the processor and the decryption algorithm program flow.Algorithm-level optimization is carried out on a single core,and the decryption algorithm is optimized by hash initialization,loop unwinding,link variable optimization,61-step optimization,and application memory optimization.The program performance has been greatly improved,and the decryption speed has been further improved.improve.2.This article carried out thread-level optimization.This article has carried out thread-level optimization.The cyclic decryption task in the MD5 decryption algorithm is placed on the slave core.The master core uses the accelerated thread library function to call 64 slave cores to execute MD5 decryption tasks in parallel,and optimizes the memory access in the core group.The relevant parameters are stored in the local storage of the slave core,avoiding the operation of the slave core directly accessing data from the master.In the process of data transmission between the master and slave cores,related optimizations are also carried out.The amount of transmission tasks is set according to the computing capabilities of the slave core clusters,which reduces the waiting time of the master and slave cores,further improves the calculation speed of the program and shortens the decryption time.3.After realizing various algorithm optimizations on a single core,five sets of experiments with different password amounts were carried out,and the average speedup ratio reached 12.28 times compared with the original program.After relevant optimizations on the core group,compared with the optimized single main core program,the average speedup ratio reaches 44.84 times.Through the MPI scalability experiment,it can be seen that the throughput increases nearly linearly with the increase of the process,indicating that the decryption algorithm has good scalability on the Sunway system.
Keywords/Search Tags:MD5 decryption, loop unrolling, SW26010, optimization
PDF Full Text Request
Related items