This Crypto Token relies on support for the algorithm in the PKCS#11 standard, the used PKCS#11 driver from the HSM vendor and the supported algorithms in the HSM. A complete list of supported algorithms can thus not be compiled here and the following lists algorithms that are tested and known to work with an HSM supporting it. Also, see the specific SignServer Signer for algorithms that signers can work with and review signer-specific algorithm support pages.

Note that the JackNJI11CryptoToken has been renamed P11NGCryptoToken as of SignServer 6.0.

Signature Algorithms


Algorithm NameAlso Known AsComment
(tick)SHA1withRSARSASSA-PKCS_v1.5 using SHA1
(tick)SHA224withRSARSASSA-PKCS_v1.5 using SHA224
(tick)SHA256withRSARSASSA-PKCS_v1.5 using SHA256
(tick)SHA384withRSARSASSA-PKCS_v1.5 using SHA384
(tick)SHA512withRSARSASSA-PKCS_v1.5 using SHA512
(tick)NONEwithRSARSASSA-PKCS_v1.5Depending on the Signer. Generally only supported by Plain Signer.
(tick)

SHA1withRSAandMGF1

RSASSA-PSS using SHA1
(tick)

SHA224withRSAandMGF1

RSASSA-PSS using SHA224
(tick)

SHA256withRSAandMGF1

RSASSA-PSS using SHA256
(tick)

SHA384withRSAandMGF1

RSASSA-PSS using SHA384
(tick)SHA512withRSAandMGF1RSASSA-PSS using SHA512
(tick)NONEwithRSAandMGF1RSASSA-PSSDepending on the Signer. Generally only supported by Plain Signer.
(error)

SHA1withECDSA

ECDSA using SHA1
(tick)

SHA224withECDSA

ECDSA using SHA224
(tick)

SHA256withECDSA

ECDSA using SHA256
(tick)

SHA384withECDSA

ECDSA using SHA384
(tick)SHA512withECDSAECDSA using SHA512
(tick)NONEwithECDSAECDSADepending on the signer. Generally only supported by Plain Signer.
(tick)Ed25519Pure EdDSA with Edwards25519Depending on the Signer.
(error)Ed25519phHash EdDSA with Edwards25519Not yet implemented.
(error)Ed25519ctxContext EdDSA with Edwards25519Not yet implemented.
(tick)Ed448Pure EdDSA with Edwards448Depending on the Signer.
(error)Ed448phHash EdDSA with Edwards448Not yet implemented.
(tick)LMS
(warning) Experimental. Do not use it in production.
(tick)Dilithium2
(warning) Experimental. Do not use it in production.
(tick)Dilithium3
(warning) Experimental. Do not use it in production.
(tick)Dilithium5
(warning) Experimental. Do not use it in production.

Key Algorithms


Algorithm NameKey SpecificationComment
(tick)RSA

Just key length:

  • 1024
  • 2048
  • 4096

Key length and public exponent (some examples):

  • 1024 exp 17
  • 1024 exp 0x11
  • 2048 exp 17
  • 4096 exp 65537

Other key lengths are likely also working.

For RSA it is possible to use a different exponent by suffixing the number with an "exp" followed by the exponent in decimal or prefixed with "0x" for hexadecimal. (see Crypto Token Generate Key Page)

The default value for the exponent is 65537.


(tick)ECDSA

Named curves:

  • secp256r1 / prime256v1 / P-256
  • secp384r1
  • secp521r1
More named curves are likely working.
(tick)ECDSAExplicit parameters

A signer can be configured using the EXPLICTECC parameter (see Other Properties) to encode the EC parameters explicitly in the request. This goes for the supported named curves and a named curve is still needed when generating the key-pair.

Certificates with explicit parameters can be stored in the token.

(tick)EdDSA

Ed25519
Ed448


(tick)AES128
256

(tick)Dilithium

Dilithium2

Dilithium3

Dilithium5

(warning) Experimental. Do not use it in production.
(tick)LMSLMS_SHA256_N32_H5(warning) Experimental. Do not use it in production.