NetHSM - The Open Hardware Security Module

The development of NetHSM was funded by the European Union within the scope of the program "Gründung innovativ" of the Investitionsbank of the German federal state Brandenburg.

If you need a Secure Hardware Module (HSM) to store cryptographic keys and you don’t trust proprietary vendors, Nitrokey’s NetHSM is for you.

NetHSM is the first HSM that is open source, offering significant advantages: It is easy to use, easy to customize, and provides superior security. Furthermore its implementation can be audited to ensure it is free of backdoors. The NetHSM device meets high performance requirements and is available at an unbeatably low price from Germany.


Secure Storage of Cryptographic Keys

Store your cryptographic keys for web servers TLS, DNSSEC, PKI, and CA securely in the network-connected NetHSM hardware. Your private keys are kept secure inside the NetHSM hardware in case of server hacks and the physical compromise of your data center. NetHSM therefore allows the user to easily fulfill security compliance requirements.

High Security due to Open Source

Unlike proprietary HSM products, NetHSM is the first HSM available as open source, which enables independent security audits, easy customization and avoids vendor lock-in. NetHSM has an innovative architecture, which enables a high level of security while still being flexible and economical (see next section).

Easy to Use

NetHSM can be easily managed via its command-line software and web interface. Client systems can easily integrate NetHSM‘s REST API, use the provided Java libraries (planned), or PKCS#11 driver (work in progress). For a quick start you can access our NetHSM test server, install NetH­SM as a Docker image or virtual machine. Unlike other HSM vendors, all NetHSM tools and documentation are publicly available without requiring an NDA.

High Performance, Availability and Scalability

A single NetHSM can handle thousands of key operations per second. Several NetHSM devices can be clustered to enable extremely high throughput and high availability.

Dedicated Hardware and Cloud

Apart from using NetHSM’s dedicated hardware, NetHSM can also be deployed as a software-only system in the cloud. While both deployments share the same features and interfaces, high-level security can only be provided for the dedicated hardware.

Separate Storage Server is Possible

NetHSM can securely store millions of keys. Alternatively, keys can be stored encrypted on separate storage servers so that usual backup procedures may be applied without compromising the keys’ security.

Low Price

NetHSM offers high security, high quality and high performance at a fraction of the price of a conventional HSM, making it ideal for certificate infrastructures of any type and size.


The NetHSM can easily be customized to meet your own specific requirements thanks to its open source architecture. We can develop a customized solution for you upon request.

Technical Details

  • 19“ U1 rackmount enclosure, incl. chassis mounting rails
  • CPU: Intel processor, 7th Generation Core i3-7100
  • RAM: 8 GB unbuffered ECC UDIMM DDR4-2400MHz
  • Storage: 32 GB flash
  • Dual LAN with Intel X550 10GBase-T Ethernet Controller
  • 300W power supply


Functional and Type-Safe Language

NetHSM is not written in insecure programming languages such as C. Instead the main system is implemented from scratch in a type-safe language (OCaml). This includes all levels - even the TCP/IP, HTTP, TLS and application stack. This approach ensures the absence of an entire class of potential security flaws such as buffer overflows and other memory access errors, which are the main reason for security patches in ordinary systems.

Small Size = Small Attack Vector

NetHSM doesn‘t contain an ordinary operating system, but is based on a so-called “unikernel” (MirageOS). Unikernels combine the operating system and application functionality into a specially tailored firmware that contains no unnecessary code. For example, NetHSM doesn‘t even contain a terminal shell and can‘t display to a screen. This way we achieve a very small overall system size (<10 MB) resulting in a minimal attack vector.

Formally Verified Microkernel

NetHSM contains a formally verified microkernel (Muen) for superior security. Its formal verification mathematically guarantees that the kernel doesn’t contain any run-time errors. The microkernel architecture ensures that only the minimum set of required functions is provided without additional and potentially harmful functions.

Functional Separation

To ensure additional security the formally verified microkernel separates functional blocks from one another. This applies to device drivers, REST API, cryptographic operations, and key storage. For example if an attacker manages to compromise the network driver, he won‘t be able to access the cryptographic keys. This is different to most ordinary operating systems in which device drivers run with root privileges.

Secure Against Physical Tampering

A physical smart card is used to encrypt all cryptographic keys when being stored. This approach ensures that all keys remain securely encrypted even if an attacker steals the entire device. It renders brute force attacks and hardware attacks with laboratory equipment ineffective.