| Recent years, with the development of computer technology, enterprise informazing management is becoming more and more mature, making file to be a good carrier for message. At the same time, along with the computer penetrating people’s daily life, a large number of documents which contains personal sensitive information are stored in t-he PC. Ensuring the safety of these files is very important. Password authentication mechanism is a vital method to guarantee file security. It requires users to provide an authentication information-password, and then save hash algorithm results on certain parts of the file. Every coin has two sides, using password brings much memory burden on users. Once forgetting the password, users will not be able to open or access the files, which causes enormous losses. At the same time password brings inconvenience for national security department to collect important information of investigation evidence. In this case, password recovery technique springs up. Rainbow table technology is a leading recovery technique at present, it combines the advantages of distinguishable points method and Hellman table method. In heterogeneous CPU-GPU system, We design and implement the rainbow tables. This can combine heterogeneous system’s high performance computing strengths with rainbow tables theoretical strengths, making a faster password recovery. On heterogeneous CPU-GPU systems, We design and implement two methods to recovery PowerPoint password. One is brute force method, and the other is rainbow table method. On the former one, we design a global key index to balance GPU’s and CPU’s loads and then optimize the storages and instructions on GPU according to the character of PowerPoint password authentication process, leading to a three times speedup. On the later one, We design three kinds of solutions-Native GPU solution, CPU-GPU solution and checkpoints solution. Native GPU solution is to make all rainbow table code in GPU using CUDA architecture, the paper introduce how to choose one-way function and reduce function in detail, and select proper rainbow table parameters based on hardware constrains. CPU-GPU solution is splitting the online phase of the rainbow method to eliminate the warp serialization, which makes a sixty percent speedup comparing the first solution. The last checkpoints solution is decreasing the number of false alarms with checkpoints in order to balancing between CPU and GPU. We give a complete analysis of the effect of multiple checkpoints on reducing the cost of false alarms, and take advantage of it for load balance. The innovations of the thesis are as follows:1. Based on MPI-OpenMP-CUDA programming model, We design a rainbow tables scheme to crack Office file password. According to the features of CPU-GPU architecture, We alter the implementation process of rainbow tables to achieve better load balancing.2. Promote new rainbow tables scheme with multiple checkpoints password to crack Office file password, and take experimental verification. |