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
Dec 19, 2024
Explore Concurrent Multiprotocol and examine the distinctions between CMP single channel, CMP with concurrent listening, and CMP with BLE Dynamic Multiprotocol....
Dec 24, 2024
Going to the supermarket? If so, you need to watch this video on 'Why the Other Line is Likely to Move Faster' (a.k.a. 'Queuing Theory for the Holiday Season')....

Libby's Lab

Libby's Lab - Scopes Out Silicon Labs EFRxG22 Development Tools

Sponsored by Mouser Electronics and Silicon Labs

Join Libby in this episode of “Libby’s Lab” as she explores the Silicon Labs EFR32xG22 Development Tools, available at Mouser.com! These versatile tools are perfect for engineers developing wireless applications with Bluetooth®, Zigbee®, or proprietary protocols. Designed for energy efficiency and ease of use, the starter kit simplifies development for IoT, smart home, and industrial devices. From low-power IoT projects to fitness trackers and medical devices, these tools offer multi-protocol support, reliable performance, and hassle-free setup. Watch as Libby and Demo dive into how these tools can bring wireless projects to life. Keep your circuits charged and your ideas sparking!

Click here for more information about Silicon Labs xG22 Development Tools

featured chalk talk

Evolution of GNSS
Sponsored by Mouser Electronics and Taoglas
In this episode of Chalk Talk, Pat Frank from Taoglas and Amelia Dalton explore the details of multi-constellations GNSS Systems. They also investigate the key characteristics of antennas and how you can future-proof your GNSS design with Taoglas antenna solutions.
Dec 11, 2024
8,459 views