Abstract
The importance of protecting the information has increased rapidly during the last decades and as a consequence so did the need for cryptographic algorithms. So we want to make these methods that protect our data as fast as we can and also as secure as we can. In this project, we use parallelism for encryption algorithms to bring out the full potential of it, by implementing two cryptographic modes such as CBC and ICBC for AES. The aim of this project is to show the remarkable reduction in encryption and decryption time of cryptographic systems when using parallel paradigms (OpenCL, Cuda, OpenMP and MPI) and also to evaluate and to compare the performances of serial versus parallel implementation
چکیده
اهمیت محافظت از اطلاعات طی دهه های اخیر و در نتیجهی نیاز به الگوریتمهای رمزنگاری به سرعت افزایش یافته است. ما خواهان افزایش دادن به سرعت این روشهای محافظت از داده تا بیشترین حد ممکن هستیم. در این مقاله، از موازی سازی برای الگوریتمهای رمزگذاری و عملیات I/O برای تاکید بر مزیت آن، از طریق به کارگیری و بهبود دو مد رمزنگاری از جمله زنجیره سازی بلوک رمز (CBC) و CBC لابه لاگذاری شده (ICBC) برای الگوریتمهای پیشرفته رمزگذاری استفاده می شود. نتیجه این مقاله، تسریع قابل توجه زمان رمزگذاری و رمزگشایی سیستمهای رمزنگاری موقع استفاده از الگوواره های موازی (OpenCL، Cuda، OpneMP) و مقایسه پیاده سازی سری در برابر موازی است.
کلمات کلیدی: رمزنگاری متقارن، AES، CBC، ICBC، موازی سازی، بروت فورس، OpenCL، Cuda، OpenMP
1- مقدمه
هدف اصلی واحدهای پردازش گرافیکی (GPUها) مدیریت تولید و اصلاح داده های گرافیکی بوده است. همچنانکه طی چند سال اخیر GPUها به طور فزاینده ای (به لحاظ عملیات نقطه شناور در ثانیه) نسبت به CPUهای موجود توانمندتر شدند، استفاده از این وسایل برای وظایفی به جز تولید تعاملی خروجی گرافیکی مورد توجه قرار گرفت...