Font Size: a A A

Efficient Implementation Of Elliptic Curve Cryptography For MSP430 Microcontrollers

Posted on:2016-03-11Degree:MasterType:Thesis
Country:ChinaCandidate:L LiFull Text:PDF
GTID:2308330461484237Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Networked embedded systems, such as wireless sensor nodes, are an easy target for various kinds of security attacks, including ones that require physical access to a device. At the same time, embedded systems are difficult to protect against such attacks due to their limited computational resources. Cryptography plays a crucial role in embedded security, provided that the cryptographic primitives can be implemented efficiently enough to not exhaust the scarce resources of a device. Elliptic Curve Cryptography (ECC) is known to be well suited for embedded systems since it allows one to achieve high levels of security with relatively short keys, which translates directly to fast execution times, low run-time memory footprint and small code size. In this paper, we present a scalable software implementation of ECC for the Texas Instruments MSP430, one of the most widely used 16-bit microcontrollers. Scalability means that our software supports fields and curves of different order without re-compilation, instead of being restricted to a single elliptic curve group as most other ECC libraries for the MSP430. We support prime fields defined by a pseudo-Mersenne prime of the form p=2n-c where n is a multiple of 32 minus 1 and c is small enough to fit into a single 16-bit register. All prime field arithmetic functions are parameterized with respect to the length of the operands (i.e. number of 16-bit words) and written in Assembly language. We avoided conditional statements (e.g. if-then-else clauses), which helps to thwart certain side-channel attacks. Our ECC software can perform scalar multiplication over two families of elliptic curves, namely Montgomery and twisted Edwards curves. A scalar multiplication using a Montgomery curve over a 159-bit field takes 6.17 x 106clockcycles, independent of the scalar and base point.
Keywords/Search Tags:Elliptic Curve Cryptography, MSP430 Microcontrollers, Efficient Implementation
PDF Full Text Request
Related items