Course Catalogue Description: Prime field arithmetic, extension field arithmetic, efficient implementation techniques for RSA, DSA, elliptic curve cryptography, DES, AES, selected random number generators and hash algorithms.

Course Objectives:

The aim of this course is to present techniques for implementation of efficient algorithms in cryptography. Hardware and software realizations of basic cryptographic algorithms are studied.

Course Learning Outcomes: At the end of the course, students will become familiar with concepts and ideas related to design and implementation of efficient algorithms for hardware and software systems in cryptography.

Course Website/Course Management System:

Weekly Outline/Tentative Course Schedule:

       Prime field arithmetic

       Binary field arithmetic

       Efficient implementation techniques for algorithms used in RSA and DSA

       Elliptic curve arithmetic and ECDSA

       Implementations of DES and AES

       Selected random number generators

       Hash algorithms

Required Textbook/s & Readings:

C. K. Ko, Cryptographic Engineering, Springer, 2008

D. Hankerson, A. Menezes, and S. Vanstone, Guide to Elliptic Curve Cryptography, Springer, 2004.

F. Rodriguez-Henriquez, N. A. Saqib, A Diaz-Perez, C. K. Koc, Cryptographic Algorithms on Reconfigurable Hardware, Springer, 2006