Analysis and implementation of National Security Agency (NSA) suite B : Elliptic-Curve Diffie-Hellman (ECDH) key agreement algorithm.
Tan, Vincent Soon Heng.
Date of Issue2009
School of Electrical and Electronic Engineering
With the emerging of technology, there are many applications that require secure communication, for example, in mobile/wireless environments. Elliptic Curve Cryptography (ECC) is emerging as an attractive and effective public-key cryptosystem. Elliptic curves are widely used in various key exchange techniques that include the Diffie-Hellman Key Agreement scheme which we will be discussing on. As compared to traditional cryptosystems like RSA, ECC offers equivalent security with smaller key sizes, which results in faster computations, lower power consumptions, as well as memory and bandwidth savings. This is especially true and useful for applications like mobile devices which are typically limited in terms of their CPU processing speed, power and network connectivity. This project involves the analysis an implementation of Elliptic Curve Diffie-Hellam (ECDH) Key Agreement Algorithm. The project report provides a detailed on the fundamental of modular arithmetic and Elliptic Cryptography Curve (ECC) cryptography theories. This report also provides a theoretical background on Diffie-Hellman Key Agreement scheme. Then, the performance of the implemented ECDH algorithm is being analyzed based on the key sizes used for the elliptic curve. The algorithm benchmark is based on the key generation speed in terms of CPU processing speed, processor type and Random Access Memory (RAM). Subsequently, the methodologies are derived for the performance evaluation process which is carried out under Windows operating systems. The evaluation processes are to identify the performance of untested platforms. The three different major Windows operating systems used are: Windows XP Professional, Windows Vista Home and Windows Vista Business.
DRNTU::Engineering::Electrical and electronic engineering::Computer hardware, software and systems
Final Year Project (FYP)
Nanyang Technological University