Berkner Tech

Protecting Device Keys With a Secure Element

Secure element key lifecycle on an embedded device, from internal generation to a key that never leaves silicon

Most key leaks happen because the key was reachable: sitting in flash, loaded into RAM, dumped with the firmware. A secure element such as the ATECC608 fixes this by generating the key inside a tamper-resistant chip and never letting it out. Here is how to use one well and why it changes the whole threat model.

Why a Separate Chip Wins

On a normal MCU, any secret the firmware can use is a secret an attacker can eventually reach through a flash dump, a debug port, or a glitch. A secure element breaks that chain: the private key is generated on-chip and is physically not readable, so compromising the main processor does not compromise the key.

Step 1: Provision and Lock

Generate the key inside the element, then lock the configuration zone. Locking is permanent and is what makes the guarantees real, so it belongs in the manufacturing flow:

# detect the secure element on the I2C bus
i2cdetect -y 1
Example output
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
60: 60 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

Step 2: Use Keys Without Exposing Them

From then on, the firmware never handles the private key. It sends a digest and receives a signature:

Anatomy of an on-chip signature with a secure element, showing slot, digest, and signature
# try to read the private-key slot directly
atecc-util read-slot 0
Example output
ERROR: slot 0 is an ECC private key (GenKey only); not readable

That error is the feature. Even with full code execution on the host, the key slot refuses to give up its contents.

Three Jobs a Secure Element Does

A dedicated security chip earns its board space three ways:

Three jobs a secure element does for an embedded device: key storage, crypto operations, and device identity

Getting It Right

Generate keys in the element rather than importing them, lock the configuration in production, and use the element for device identity in your TLS or update handshake so each unit authenticates with a key no one can clone. The hard part is the manufacturing process, not the chip.

Where This Fits

Reviewing how a product provisions, locks, and uses a secure element, and confirming the key truly cannot be extracted, is part of a product security assessment. That review is the kind of work we do at Berkner Tech.


References and Further Reading