feature article
Subscribe Now

You Got It

They Want It

Security is an arms race. The good guys come up with new ways to hide data and the bad guys eventually find ways to break in anyway. You update your security; they update their attacks. In true arms race fashion, both sides spend a lot of time and energy to stay right where they are. 

And, like a grimmer sort of arms race, civilians can wind up among the casualties. In our case, engineers are learning that they need to include security features in their products whether they like it or not. Seemingly innocuous products like vending machines, home appliances, and handheld gizmos now often need security features because somebody might hack the device and make something unpleasant happen. As we design and sell more of these gizmos, their security becomes more of an issue. 

So how do you bake in security when you’re not a security expert? Security is useful only if it’s done by experts; amateurs have no place here. Make-believe or recreational security measures are no security at all. The whole point is to thwart people who’ll probably spend more time hacking your security measures than you’ll spend putting them in. So it’s got to be good.

The key, so to speak, is to hire an expert. Or at least, to rent expert security IP and bake that into your chip, board, or box. And one good place to look for such expertise is… Holland.

Think of The Netherlands and you think tulips, chocolate, windmills, dikes, and Philips. It’s this last one that’s most relevant to today’s conversation. Philips Electronics has a habit of spinning off little companies, and among the recent diaspora is Intrinsic-ID, a little 15-person company that specializes in embedded security. Their knowledge can help you keep your knowledge to yourself.

Intrinsic-ID operates as a software and IP-licensing company. That is, they’ll sell you software or they’ll license their hardware IP—your choice. Either way, Intrinsic-ID’s security measures use flaky hardware to your advantage.

Basically, Intrinsic-ID uses the randomness of SRAM cells to generate random numbers, and from these, strong encryption keys. Anyone can make up a password, but guessing that password is almost as easy. To get a truly strong password, you need a random-number generator (RNG), and this is harder to achieve than it sounds. Most digital circuits are designed specifically not to exhibit random behavior. That’s called a bug. Even chips that have an RNG are usually really only pseudo-random, meaning they produce a specific string of numbers that only appears random to the casual observer. As deterministic digital circuits, their output isn’t truly random, and that makes them hackable.

Turning to the analog realm helps. Some chips use ring oscillators or other scary non-digital circuits to seed their RNGs, but even these have their weaknesses. Intrinsic-ID takes another route. Its hardware is entirely digital but relies on the randomness of uninitialized SRAM cells. Virgin SRAM is random in the best sense: it powers up with entirely random data that can’t be predicted and doesn’t follow any preset pattern. By tapping this handy resource, Intrinsic-ID is able to randomize key generation in a handy, convenient, and secure way.

If you’re designing at the chip level, you can include Intrinsic-ID’s hardware macro, which generates millions of random bits per second. Siphon off whatever bits you want, generate a key, and off you go. The circuitry is tiny, using only about 6000 gates of logic and 2KB of SRAM. It’s all digital, so you can synthesize it with any tool you want and fabricate it in any process.

Conversely, there’s also an all-software version that works on just about any existing hardware you’ve got. All it needs is a microcontroller or microprocessor and about 2KB of SRAM—pretty modest requirements by any measure. As before, the software uses uninitialized SRAM calls to generate a random bit stream, which can then be used to seed the encryption algorithm. The only requirement is that the SRAM be uninitialized, so it’s important that your boot firmware not scrub the SRAM until after Intrinsic-ID’s software has done its job. 

The SRAM doesn’t even have to be dedicated to RNG. You can have it back once the key generation is done. After that it can be used normally, although once it’s been used it’s no good for randomization until the power has been cycled again.   

In the simplest case, you can even use off-chip SRAM, although that kind of defeats the purpose. Any off-chip bus transactions could be easily probed, making key generation easily traceable. But just about any microcontroller or FPGA with on-chip SRAM should fit the bill.

Intrinsic-ID isn’t the only company to use semiconductor physics to its advantage. Cryptography Research in San Francisco does something roughly similar. Instead of SRAM cells, CR uses an “entropic array” of spaghetti logic that behaves differently for each chip. The California company also specializes in thwarting power-analysis break-ins, where dedicated hackers analyze minute differences in a chip’s power consumption as it encrypts or decrypts data, thereby gaining insight into the encryption algorithm. Power analysis is tremendously subtle, but not beyond the abilities of well-funded hackers.

Intrinsic-ID doesn’t address power-analysis attacks. It appeals more to engineers looking to add security to their low-cost systems. Its software-only option is especially appealing for systems already in the field. With just a couple of Kbytes of SRAM and a few changes to boot-up firmware, you can be generating random numbers and strong keys in no time. The effort is asymmetrical: it’s just a little work for you but a lot of work for hackers attempting to break into your system. And that’s really the whole point. Make the attempt not worth the effort, and you’ve succeeded in thwarting the bad guys. Once again, the arms race is moving in your favor. 

Leave a Reply

featured blogs
Oct 5, 2022
The newest version of Fine Marine - Cadence's CFD software specifically designed for Marine Engineers and Naval Architects - is out now. Discover re-conceptualized wave generation, drastically expanding the range of waves and the accuracy of the modeling and advanced pos...
Oct 4, 2022
We share 6 key advantages of cloud-based IC hardware design tools, including enhanced scalability, security, and access to AI-enabled EDA tools. The post 6 Reasons to Leverage IC Hardware Development in the Cloud appeared first on From Silicon To Software....
Sep 30, 2022
When I wrote my book 'Bebop to the Boolean Boogie,' it was certainly not my intention to lead 6-year-old boys astray....

featured video

PCIe Gen5 x16 Running on the Achronix VectorPath Accelerator Card

Sponsored by Achronix

In this demo, Achronix engineers show the VectorPath Accelerator Card successfully linking up to a PCIe Gen5 x16 host and write data to and read data from GDDR6 memory. The VectorPath accelerator card featuring the Speedster7t FPGA is one of the first FPGAs that can natively support this interface within its PCIe subsystem. Speedster7t FPGAs offer a revolutionary new architecture that Achronix developed to address the highest performance data acceleration challenges.

Click here for more information about the VectorPath Accelerator Card

featured paper

Algorithm Verification with FPGAs and ASICs

Sponsored by MathWorks

Developing new FPGA and ASIC designs involves implementing new algorithms, which presents challenges for verification for algorithm developers, hardware designers, and verification engineers. This eBook explores different aspects of hardware design verification and how you can use MATLAB and Simulink to reduce development effort and improve the quality of end products.

Click here to read more

featured chalk talk

Expanding SiliconMAX SLM to In-Field

Sponsored by Synopsys

In order to keep up with the rigorous pace of today’s electronic designs, we must have visibility into each step of our IC design lifecycle including debug, bring up and in-field operation. In this episode of Chalk Talk, Amelia Dalton chats with Steve Pateras from Synopsys about in-field infrastructure for silicon lifecycle management, the role that edge analytics play when it comes to in-field optimization, and how cloud analytics, runtime agents and SiliconMAX sensor analytics can provide you more information than ever before for the lifecycle of your IC design.

Click here for more information about SiliconMAX Silicon Lifecycle Management