Tldr
An HSM is like a highly secure vault for cryptographic keys. Instead of taking the key out of the vault to perform an operation, you send the operation to the vault, and it returns the result while keeping the key protected.
What are hardware security modules (HSM)
A Hardware Security Module (HSM) is a specialized physical security device designed to generate, store, protect, and manage cryptographic keys and perform sensitive cryptographic operations. (like a locked safe with a built-in signing machine.)
HSMs are widely used in banking, payment systems, cloud computing, Public Key Infrastructure (PKI), and enterprise security.
You ask the HSM to sign something, and the HSM performs the signing internally. Normally, it does not reveal the plaintext private key to the person or software requesting the signature.
This means the private key can remain protected even while it is being used.
Why do we need an HSM?
Imagine a bank that encrypts customer information and digitally signs financial transactions. To do this, the bank needs cryptographic keys.
The problem is: Where should those keys be stored?
If keys are stored in ordinary files, application databases, or server memory, attackers who compromise the server may be able to steal them.
An HSM addresses this problem by keeping highly sensitive keys inside a dedicated, hardened security boundary.
How does an HSM work?

The process:
- The application sends a signing request to the HSM.
- The HSM authenticates and authorizes the request.
- The HSM uses its securely stored private key to generate the digital signature.
- The digital signature is returned to the application.
- The private key remains protected inside the HSM.
This significantly reduces the risk of private-key theft.
Main functions of an HSM
| Function | Explanation |
|---|---|
| Key generation | Creates strong cryptographic keys using a secure random number generator |
| Secure key storage | Protects sensitive keys from unauthorized extraction |
| Encryption and decryption | Performs cryptographic operations using managed keys |
| Digital signatures | Signs transactions, documents, and certificates |
| Key management | Supports key rotation, lifecycle policies, and controlled deletion |
| Access control | Restricts which applications or administrators can use keys |
| Tamper protection | Detects or responds to physical manipulation |
Types of HSMs
Network HSM
A dedicated appliance connected over a network. Multiple servers can use it for cryptographic operations.
Example: Thales Luna Network HSM.
PCIe HSM
A hardware card installed directly into a server. Useful for specialized environments requiring local hardware integration.
Cloud HSM
HSM capabilities provided through a cloud platform, backed by physical HSM hardware managed by the provider.
Examples: AWS CloudHSM and Azure Cloud HSM.
Payment HSM
Specialized for financial transactions, PIN processing, payment-card security, and payment-network operations.
Example: Thales payShield.
Real-world example: ATM transaction
When you withdraw money from an ATM, security systems need to verify sensitive payment information.
A simplified workflow is:
- You insert your card and enter your PIN.
- The ATM encrypts the PIN using secure payment hardware.
- The encrypted PIN block is sent through the payment-processing infrastructure.
- A payment HSM may perform PIN verification or secure PIN translation.
- The bank’s systems authorize or reject the transaction.
The HSM helps ensure that sensitive PIN processing occurs in a controlled cryptographic environment.
Info
Modern smartphones use HSM-like security technologies, such as Apple’s Secure Enclave and Android’s Trusted Execution Environment (TEE), to protect sensitive biometric data like fingerprints and facial recognition templates. These dedicated security components securely store biometric templates, perform authentication, and protect cryptographic keys from unauthorized access. When a user unlocks their phone or logs into a banking app using biometrics, the secure hardware verifies their identity and returns an authentication result without exposing the actual biometric data to the application. This approach helps prevent biometric data theft and strengthens mobile device security.