Public-key encryption protocols are complex, and on computer networks, they are run by software. But that won't work in the Internet of Things, a imagined network that would connect many different sensors—embedded in vehicles, appliances, civil structures, manufacturing equipment, and even livestock tags—to online servers. Embedded sensors that need to maximize battery life can't afford the power and memory space that running encryption protocols in software would require.
MIT researchers have built a new chip, hardwired to perform public-key encryption, that consumes only 1/400th the power of running software using the same protocols. It also uses about 1/10th the memory and runs 500 times faster. The researchers describe the chip in a paper they are presenting this week at the International Solid-State Circuits Conference.
Like most modern public-key encryption systems, the researchers' chip uses a technique called elliptic curve encryption. As the name suggests, elliptic curve encryption relies on a type of mathematical function called an elliptic curve. In the past, researchers, including the same MIT group that developed the new chip, have built embedded chips to handle specific elliptic curves or families of curves. What sets the new chip apart is that it is designed to handle any elliptic curve.
"Cryptographers are obtaining curves with different properties, and they're using different prime numbers," says Utsav Banerjee, an MIT graduate student in electrical and computer engineering and first author of the paper. "There's a lot of debate about which curve is secure and which curve to use, and there are various governments with different standards that talk about different curves. With this chip, we can support them all, and hopefully, when new curves emerge in the future, we can support those too.".
Joining Banerjee in the newspaper are his thesis advisor, Anantha Chandrakasan, dean of the MIT School of Engineering and Professor Vannevar Bush of Electrical Engineering and Computer Science; Arvind, Professor Johnson in Computer Engineering; and Andrew Wright and Chiraag Juvekar, both graduate students in electrical engineering and computer science.
Modular reasoning
To create their general-purpose elliptic curve chip, the researchers broke down cryptographic computation into its constituent parts. Elliptic curve cryptography relies on modular arithmetic, meaning that the values of the numbers in the computation are assigned a limit. If the result of any computation exceeds that limit, it is divided by the limit, and only the remainder is kept. Secrecy surrounding the limit helps ensure cryptographic security.
One of the calculations for which the MIT chip dedicates a special-purpose circuit is modular multiplication. But because elliptic curve cryptography deals with large numbers, the chip's modular multiplier is massive. Typically, a modular multiplier could handle numbers with 16 or perhaps 32 binary digits, or bits. For larger calculations, the results of discrete 16- or 32-bit multiplications would be integrated using additional logic circuitry.
However, the MIT chip's modular multiplier can handle 256-bit numbers. Eliminating the extra circuitry to integrate smaller calculations reduces the chip's power consumption and increases its speed.
Another key operation in elliptic curve cryptography is called inversion. Inversion is the calculation of a number that, when multiplied by a given number, will produce a modular product of 1. In previous chips dedicated to elliptic curve cryptography, inversions were performed by the same circuits that performed modular multiplications, saving space on the chip. But the MIT researchers equipped their chip with a special-purpose inverter circuit. This increases the chip's surface area by 10 percent but cuts power consumption in half.
The most common encryption protocol for using elliptic curve cryptography is called the Datagram Transport Layer Security Protocol (DTLSP), which governs not only the elliptic curve calculations themselves, but also the formatting, transmission, and handling of the encrypted data. In fact, the entire protocol is hard-coded on the chip by the MIT researchers, drastically reducing the amount of memory required for its execution.
The chip also features a general-purpose processor that can be used in conjunction with the dedicated circuits to run other elliptic curve-based security functions.
Author: Larry Hardesty, MIT News Office
