An Azure service that provides hardware security module management.
ED25519 keys must be generated inside Azure Cloud HSM using the supported tools so that they are created as true HSM keys and correctly handled by the service. The documented guidance is:
- Do not use
openssl genpkeyoropenssl ecparamwith-engine azcloudhsm_opensslfor ED25519 or other EC key types, because this produces software keys rather than HSM-resident keys. - For ED25519, use
azcloudhsm_util(or the Azure Cloud HSM OpenSSL engine in the way documented for Cloud HSM) to create the key within the HSM.
The documentation does not describe any known limitation or error pattern for ED25519 token-key replication across nodes like the 0x000000ac failures described. It only states that ED25519 keys can be generated using azcloudhsm_util or the OpenSSL engine for Azure Cloud HSM, and that these are “typically used for self-signed certificates or in certificate signing processes that directly use the private key.”
Given the context, the supported path is:
- Use
azcloudhsm_utilto generate the ED25519 key pair as an HSM key (not viaopenssl genpkey/ecparam). - After creation, wait up to 24 hours to allow service-side synchronization and backups to complete before relying on the key, and verify that the key is present on all nodes using the management utilities.
- If a key is missing on any node, use the documented synchronization flow:
- Start the management utility:
./azcloudhsm_mgmt_util ./azcloudhsm_resource.cfg - Log in as Cryptography Officer (CO) and verify login success on all nodes.
- Use
findAllKeys 0 0to list key handles per node and identify any missing keys. - Use
syncKey <KeyHandle> <ServerId>for each node where the key is missing, then re-runfindAllKeys 0 0to confirm consistency.
- Start the management utility:
If ED25519 token-key creation or syncKey continues to fail with “Invalid inputs passed” on some nodes even when using azcloudhsm_util as recommended, this behavior is not covered in the available documentation and would require opening a support case for Azure Cloud HSM so that the service team can review firmware/HSM logs and confirm whether there is a product limitation or defect.
References: