Serpent encryption algorithm implementation on Compute Unified Device Architecture (CUDA)

Anas Mohd Nazlee, Fawnizu Azmadi Hussin, Noohul Basheer Zain Ali · 2009

CUDA is a platform developed by Nvidia for general purpose computing on Graphic Processing Unit to utilize the parallelism capabilities. Serpent encryption is considered to have high security margin as its advantage; however it lacks in speed as its disadvantage. We present a methodology for the transformation of CPU-based implementation of Serpent encryption algorithm (in C language) on CUDA to take advantage of CUDA's parallel processing capability. The proposed methodology could be used to quickly port a CPU-based algorithm for a quick gain in performance. Further tweaking, as described in this paper through the use of a profiler, would further increase the performance gain. Result based on the integration of multiple block encryption in parallel shows throughput performance of up to 100 MB/s or more than 7X performance gain.

Read the paper · More papers on PaperTik