Font Size: a A A

Research Of Implementation Technology For Cryptography Algorithm Based On Gpu

Posted on:2011-01-31Degree:MasterType:Thesis
Country:ChinaCandidate:J YeFull Text:PDF
GTID:2198330338485389Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
With the development of computer network, its security problem is becoming very serious.SSL Protocol has been applied as an effective way in protecting sensitive data by a great many famous enterprises. The studies indicate that in the secure transmission based on SSL protocol, 70% of the CPU time is taken for processing cryptographic operations, and thus how to improve the efficiency in the implementation of cryptographic algorithms has become the key factor in the efficient implementation of SSL protocol. On the other hand, by the gaming market and the demand for military visual simulation of traction, GPU computing performance has greatly exceeded the CPU computing performance, and with the continuous improvement of its programmability and the number of internal parallel processing units, GPU has evolved into a new type of parallel computing platforms, the General-purpose computing based on GPU has been significantly interested by many researchers.OpenSSL is the most important library which is basis for achieving SSL protocol, its cryptographic algorithm library is foundational for ensuring the safety of SSL protocol. This paper researchs on two typical kinds of algorithms in OpenSSL: AES and RSA, and based on CUDA which is a new kind parallel computing architecture, implements those algorithms.Based on analyzing the basic flow in traditional GPU general computing, we point out the reason of limit for application fields, and then discuss the latest computing architecture CUDA of the current GPU, analyz its thread hierarchy and memory hierarchy, and research the optimization criteria based on CUDA.Based on analyzing the technology of implementing AES algorithm, we optimize the AES algorithm implementation strategies: finding the lookup table to achieve the AES round function, and design threads mapping schemes and memory layout schemes based on CUDA.Finally, we implement the AES algorithm based on GPU, the speed of GPU-based implementation is 25 times faster than that of CPU-based implementation.This paper analyzes the feasibility of the methods which implement the RSA algorithm based on GPU. For improving the parallelizability of algorithm, we discuss the algorithms of modular arithmetic and base extension. We design threads mapping schemes and memory layout schemes based on CUDA. Finally, we implement modular exponentiation using the CIOS method and RNS method based on GPU, the speed of those methods is 2.3 times and 1.2 times faster than that of CPU-based implementation, respectively.
Keywords/Search Tags:GPU, CUDA, AES algorithm, RSA algorithm, Montgomery algorithm, RNS
PDF Full Text Request
Related items