They can, but only if the renewal burden, custody controls, and operational overhead remain acceptable at a 15-month cadence. Where token handling introduces release friction or missed renewals, managed signing services may fit the lifecycle better. The decision should be based on renewal risk, not habit.
Why hardware tokens still make sense for code signing
Hardware tokens remain a sound choice when the signing key must stay tightly controlled, the signing process is infrequent enough to tolerate manual custody, and the organisation can absorb renewal and issuance events without disrupting releases. For code signing, the core benefit is not convenience, it is that the private key stays anchored in a tamper-resistant device rather than drifting into developer laptops, shared vaults, or ad hoc exportable storage.
A token also creates a clearer trust boundary for release operations. If the same key signs production artifacts, a stolen token or copied key can turn into broad software distribution risk, so physical custody, issuance approval, and revocation handling matter as much as the cryptography itself. That is why code signing should be treated as a lifecycle and access problem, not only a certificate problem.
When hardware tokens become the wrong operating model
The deciding factor is usually renewal pressure, not the signing act itself. If token replacement, PIN resets, courier delays, or certificate expiry create friction near release time, the process starts to depend on individual memory and manual coordination rather than a reliable control. At that point, the security benefit can be eroded by missed renewals, emergency workarounds, or attempts to bypass custody rules to keep shipping.
Hardware tokens also scale poorly when signing is distributed across many teams, build systems, or environments. A device that is easy to govern for a single release owner can become a bottleneck when several pipelines need the same signing authority or when the organisation needs a recoverable handover model for staff changes, incident response, or continuous delivery.
Managed signing services are often a better fit when the question is how to keep the signing key protected while reducing operational failure points. They can preserve control over who can request signatures, what can be signed, and how approvals are recorded, while removing a great deal of physical handling overhead.
What the right decision should depend on
The practical comparison is between control strength and lifecycle burden. If the token is easy to inventory, renew, store, and recover, and if signing happens rarely enough that the process stays disciplined, hardware can remain a defensible control. If the release process is already fragile, or if key custody depends on a small number of people remembering every step, the operational risk may outweigh the benefit of local possession.
For practitioners, the key question is whether the signing key can be managed with predictable expiry, provable custody, and a clean recovery path. That is the point where token-based signing stops being a ritual and becomes a dependable control. Useful supporting guidance on key lifecycle and token handling is covered in Cryptographic Key Management Guide, while lifecycle alternatives and rotation trade-offs are discussed in Guide to NHI Rotation Challenges.
Risk and Threat Considerations
Code signing keys are high-value targets because they can turn compromise into trusted software distribution. A lost token, reused key, or poorly controlled signing workflow can let an attacker or insider produce artifacts that appear legitimate, and the blast radius is often wider than a single system because downstream users trust the signed output.
Failure mechanism: The control fails when custody is weak, renewal is missed, or the key is exposed through backup, export, or process bypass, allowing unauthorised signing or forcing unsafe emergency exceptions.
Impact: The result can be malicious or altered binaries being accepted as trusted, release delays from expired certificates, or a rushed migration to a weaker process that undermines the original control.
Standards & Framework Alignment
This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.
NIST SP 800-57 and NIST SP 800-53 Rev 5 set the technical controls, while ISO/IEC 27001:2022 defines the regulatory obligations.
| Framework | Control / Reference | Relevance |
|---|---|---|
| NIST SP 800-57 | Key Management | Code signing depends on signing key lifecycle, protection, and renewal discipline. |
| Recommendation — Apply key lifecycle controls to protect signing keys and plan rotation before expiry. | ||
| ISO/IEC 27001:2022 | A.8.24 — Use of cryptography | Code signing is a cryptographic control that depends on protected key use and handling. |
| Recommendation — Control signing key use and custody under cryptographic policy and operational procedures. | ||
| NIST SP 800-53 Rev 5 | IA-5 — Authenticator Management | Signing tokens behave as protected authenticators whose issuance, storage, and lifecycle must be controlled. |
| Recommendation — Manage signing credentials through controlled issuance, storage, rotation, and revocation. | ||
Practitioner Guidance
What to verify: Confirm who can physically access the token, who can approve issuance or renewal, and whether the signing key can be recovered without creating an exportable copy. If that answer is unclear, the process is already relying on informal trust rather than a controlled lifecycle.
Decision rule: Keep hardware tokens when signing is low-frequency and custody is simple; move toward a managed signing service when release deadlines, geographic dispersion, or recovery requirements make manual handling the dominant source of risk.
Practitioner takeaway: The right model is the one that keeps signing authority bounded and auditable without turning certificate renewal into a release blocker; if you cannot do both, the custody model is too brittle.
Related resources from NHI Mgmt Group
- Should organisations keep using vm2 for untrusted code after a critical escape flaw?
- Should organisations keep code search and embeddings local when using AI development tools?
- What happens when organisations keep using static certificates, tokens, or keys to secure machine communication?
- What is the difference between using a hardware key for authentication and using it for code signing?