With RSA Key (Self Signed Certificate)

  1. Generate a keypair on Utimaco HSM.

›_ Console

# keytool -genkeypair -alias utimacoRSAKey -keyalg RSA -keysize 2048 -keystore NONE -storetype PKCS11 -providerClass sun.security.pkcs11.SunPKCS11 -providerArg /etc/utimaco/pkcs11-java.cfg

Provide information when prompted Here:

  • RSA is the key algorithm

  • 2048 is the key size

  • NONE is the keystore for HSM

  • PKCS11 is the storetype

  • sun.security.pkcs11.SunPKCS11 is the provider class

  • utimacoRSAKey is the key name that will be generated on Utimaco HSM

Provide the keystore password when prompted

Screenshot 2026-04-02 165126.png


Key generation using keytool command

It is recommended to use CA signed certificate for production environment.

  1. Verify the entry with same alias name is generated using keytool command.

›_ Console

# keytool -list -keystore NONE -storetype PKCS11 -providerClass sun.security.pkcs11.SunPKCS11 -providerArg /etc/utimaco/pkcs11-java.cfg  

Here:

  • NONE is the keystore for HSM

  • PKCS11 is the storetype

  • sun.security.pkcs11.SunPKCS11 is the provider class

Provide the keystore password when prompted.

Screenshot 2026-04-02 165159.png

Listkeys output

  1. List the objects using p11tool2.

›_ Console

# ./p11tool2 Slot=0 LoginUser=ask ListObjects

Enter user PIN when prompted.

Screenshot 2026-04-02 162951.png


List keys output using p11tool2

  1. Sign any sample jar file with jarsigner command.

›_ Console

# jarsigner -tsa http://timestamp.digicert.com -keystore NONE -storetype PKCS11 -providerClass sun.security.pkcs11.SunPKCS11 -providerArg /etc/utimaco/pkcs11-java.cfg -signedjar HelloWorldRSASigned.jar HelloWorld.jar utimacoRSAKey

Here:

  • http://timestamp.digicert.com is URL of timestamp server

  • NONE is the keystore for HSM

  • PKCS11 is the storetype

  • sun.security.pkcs11.SunPKCS11 is the provider class

  • HelloWorldRSASigned.jar is the new output signed jar file that will be generated

  • HelloWorld.jar is the Jar file to be signed

  • utimacoRSAKey is the RSA key used for jar signing

Provide the keystore password when prompted.

Screenshot 2026-04-02 170154.png

Signing the jar using jarsigner command

  1. Verify the signed jar.

›_ Console

# jarsigner -verify HelloWorldRSASigned.jar

Here HelloWorldRSASigned.jar is the newly generated signed jar file.

Screenshot 2026-04-02 170347.png

Verifying signed jar