His experience developing SC4, and his understanding of how easily PCs can be compromised, motivated Garret to develop an open source USB Hardware Security Module (HSM). SC4-HSM is designed to defend against a compromised client machine. According to the company’s web site, “It generates and stores cryptographic keys using an on-board hardware random number generator, and it uses those keys to perform cryptographic operations, mainly generating secure digital signatures. The keys are stored in such a way that they cannot be extracted from the device even by someone who has physical possession.”
According to Garret, “before the unit performs a cryptographic operation it can display information and wait for the user to confirm the operation by pushing one of the user input buttons. Because these operations are entirely under the control of the device firmware, they cannot be directly attacked from the host machine.” The screen also makes it possible for short, secure messages to be displayed directly on the SC4-HSM instead of exposing the message to a potentially compromised PC.
The SC4-HSM is based on the STM32F415 32-bit ARM processor. Garret chose the processor because it is designed to protect the firmware in embedded devices. A bit can be set that prevents the firmware from being read. Other specifications include 1MB of flash, 128kB of RAM, an integrated 128×32 pixel monochrome OLED display, hardware random number generator, tri-colour LED, and two push-buttons.
Prototype firmware for the device is written in C and is also available on Github. It includes the TweetNaCl core and performs key generation, storage, Elliptic Curve Diffie Hellman (ECDH) key exchange, and digital signing.
Garret explained that, compared to high-end HSMs, the SC4-HSM is slower (taking approximately one second to complete a cryptographic function) and doesn’t include a self-destruct mechanism. It also costs a fraction of the price. He hasn’t ruled out pursuing FIPS or Common Criteria certification in the future, but at this point Garret is focused on keeping production costs low.
Twenty prototypes have been sold, and Spark Innovations is working on a first production run. Garret expects the SC4-HSM to retail for between $50 and $100, and is cautiously optimistic that the first batch will be available in September.
SC4-HSM is open and anyone can therefore write their own firmware. So far, demand for the product has been primarily from the hobbyist market, but at this price point SC4-HSM may very well find its way into commercial applications.
Have a security question you’d like answered in a future column? Email firstname.lastname@example.org
SAMSUNG GALAXY S8 PLUS
The Samsung Galaxy S8 Plus is a beautifully crafted smartphone with nearly no bezel, curvaceous in design and reflects a…
How to: Connect to Exchange Online Using Multi-Factor Authentication
Using PowerShell to manage your Microsoft cloud services like Exchange Online and using multi-factor authentication (MFA) separately is awesome. Using…