The Keystore Manager
tool is a repository of security certificates, either authorization certificates or public key
certificates, plus corresponding private keys.
The gool of this tool is provide applications a secure way to handle user keys and certificates
without the need to expose the password. To do that, the Keystore Manager
keeps the
keystore
password securized making only available upon application request to be
used in the cryptographic library.
The tool can be accessed by clicking the keystore
tool icon on the applications bar:

1 Keystore
Keystore
is a key and certificate
management tool that is used to manipulate Java Keystores. A Keystore is a container for authorization certificates or public key
certificates and authentication.
Its entries are protected by a keystore
password. A keystore
entry is identified by an alias, and it consists of keys and certificates that form a trust chain.
There are various different types of KeyStore:
- JKS Java KeyStore: Oracle's KeyStore format.
- JCEKS Java Cryptography Extension KeyStore: More secure version of JKS.
- PKCS #12: Public-Key Cryptography Standards #12 KeyStore. RSA's KeyStore format
- BKS Bouncy Castle KeyStore: Bouncy Castle's version of JKS
- BKS-V1: Older and incompatible version of Bouncy Castle KeyStore.
- UBER Bouncy Castle UBER KeyStore: More secure version of BKS
1.1 Keystore Entries
Keystores may have different types of entries. The two most applicable entry types for keytool include:
-
Key entries: each holds very sensitive cryptographic key information, which is stored in a protected format to prevent unauthorized access.
Typically, a key stored in this type of entry is a secret key, or a
private key
accompanied by thecertificate
"chain" for the correspondingpublic key
. -
Trusted certificate entries: each contains a single
public key
certificate
belonging to another party. It is called a "trustedcertificate
" because thekeystore
owner trusts that thepublic key
in thecertificate
indeed belongs to the identity identified by the "subject" (owner) of thecertificate
.
Each entry in a KeyStore is identified by a different alias or entry name. Entries also store their last modified date/time.
Key Pair
entries are also password protected. A password is required to access the private key
part of a Key Pair
entry.
1.2 Key Pairs
A Key Pair
contains a private key
and its associated certificate
chain. Key Pairs can be used to digitally sign objects.
As the private key
part of the Key Pair
should remain secret, Key Pair
entries are normally protected by a password.
To access the private key
the entry must be unlocked by supplying the correct password.
If a Key Pair
entry is unlocked once it does not need to be unlocked again. A Key Pair
entry may be unlocked explicitly or as part of an operation that requires the private key
.
A Key Pair
must be unlocked to utilize it for operations such as digital signing or to view or export the private key
.
1.3 Certificate
A certificate
(also known as a public-key certificate
) is a digitally signed statement from one entity (person, company, etc.), saying that the public key
(and some other information) of some other entity has a particular value.
When data is digitally signed, the signature can be verified to check the data integrity and authenticity.
Integrity means that the data has not been modified or tampered with, and authenticity means the data indeed comes from whoever claims to have created and signed it.
1.3.1 Certificate terms
Public Keys
These are numbers associated with a particular entity, and are intended to be known to everyone who needs to have trusted interactions with that entity. Public keys are used to verify signatures.
Digitally Signed
If some data is digitally signed it has been stored with the "identity" of an entity, and a signature that proves that entity knows about the data. The data is rendered unforgeable by signing with the entity's private key
.
Identity
A known way of addressing an entity. In some systems the identity is the public key
, in others it can be anything from a Unix UID to an Email address to an X.509 Distinguished Name.
Signature
A signature is computed over some data using the private key
of an entity (the signer, which in the case of a certificate
is also known as the issuer).
Private Keys
These are numbers, each of which is supposed to be known only to the particular entity whose private key
it is (that is, it's supposed to be kept secret).
Private and public keys exist in pairs in all public key
cryptography systems (also referred to as "public key
crypto systems").
In a typical public key
crypto system, such as DSA, a private key
corresponds to exactly one public key
. Private keys are used to compute signatures.
Entity
An entity is a person, organization, program, computer, business, bank, or something else you are trusting to some degree.
To know more about certificates and their terminology visit this link
You can read more about Keystore in:
2 User Interface Overview
When you access the Keystore Manager
you will see the list of your existing
keystore
files. You can either select one to inspect or proceed to create a
or import a new one.
2.1 Home page
In the home page you will find the keystores that you belong or that you are the owner.
At the top right corner of the table you will find two buttons:
-
Import: It allows to
import a Keystore to
Keystore Manager
-
Create: It allows to
create a new Keystore to
Keystore Manager

The keystores are displayed as a table with the following columns:
-
Id: Unique identifier of
keystore
. - Name: Keystore name.
-
Description: A small description to talk about the use of this particular
keystore
. - Type: Keystore type. It can be one of this opntions: JKS, JCEKS, PKCS #12, BKS and UBER
- Ssize: Keystore size.
-
Start date: The active start date of this
keystore
-
End date: The expiration date for this
keystore
- Status: Keystore status, Active or Unactive
- Lock Status: Locked or Unlocked for Keystore
2.2 Keystore page
The Keystore page is divided by boxes for create a inuitive UI.

The main elements of the interface are described in the following sections:
2.2.1 Toolbar

In the toolbar you will find the following elements:
-
Bredcrumb: Element for navigational. It allows to keep track and maintain awareness of the locations inside
Keystore Manager
. -
Keystore name: It displays the
keystore
name that you are in. -
Actions: Basic operations like modify, change password, download and create entries can be found in one of this buttons.
2.2.2 Overview

In the overview section can be found the keystore
type, the descripition and the avaliability date.
2.2.3 Entries

The entries contained within the currently active KeyStore are displayed as a table with the following columns:
-
Type:
Key Pair
is represented with a key icon, Certificate is represented with a document icon. -
Lock Status: Locked or Unlocked for
Key Pair
entries. -
Certificate Expiry Status: Unexpired or Expired for
Trusted Certificate
andKey Pair
entries. - Entry Name: Entry's alias name
- Algorithm: Entry's key algorithm
- Key size: Entry's size
-
Certificate Expiry not before: Entry's
certificate
start date. -
Certificate Expiry: Entry's
certificate
expiry date and time. - Last Modified: Entry's last modification date and time.
- Actions: Entry's actions
Entry information

Operations specific to a KeyStore entry can be accessed selecting the specific entry in the table and selecting the required operation from the top right buttons.
The options available in the pop-up menu differ depending on the KeyStore entry type.
For example, Trusted Certificate
entries can be examined, deleted or renamed. Key Pair
entries can additionally have their passwords set, be used to generate CSRs, etc. Key entries can be deleted.
Entries actions
Notice that specific actions like see the private key
or public key
will require to enter the entry password.
2.2.4 Users

Table of list of users that can access to this keystore
and perform operations.
In this section you will find how to add new users, Share Keystore
2.2.5 Logs

Table that stores each modifications related to the keystore
and entries.
2.2.6 Advanced options

List of advanced options. It contains the delete button.
In this section you will find how to delete a keystore
,
Delete Keystore
3 Create a new Keystore
To create a new KeyStore:
- From the home page, click on Create
-
A stepper dialog will appear. Add the
keystore
name, password and an optional description. -
Select the desired KeyStore Type using the slider:
- JKS Java KeyStore.
- JCEKS Java Cryptography Extension KeyStore.
- PKCS #12 Public-Key Cryptography Standards #12 KeyStore.
- BKS Bouncy Castle KeyStore.
- BKS-V1 Bouncy Castle KeyStore version 1.
- UBER Bouncy Castle UBER KeyStore.
-
Share the Keystore with others.
-
Check that the provided information is correct.
- Press the Create button.
- The new KeyStore will appear in the home page.
4 Import a KeyStore
To import an existing KeyStore:
-
From the home page, at the top right corner, click the button Import.
-
The import dialog will apear.
- In the file input, chose your Keystore file.
- The alias field will be automatically filled base on the
keystore
file name. You can change it if you want. - In the password field you need to provide the password of the
keystore
.
- The imported KeyStore will appear in the home page.
Keystore Type
Note: KeyStore Manager supports five KeyStore types:
- JKS
- JCEKS
- PKCS #12
- BKS
- UBER
Attempting to open KeyStore files of any other type will result in an error.
5 Manage a Keystore
This section will talk about how to manage a keystore
and de common actions:
- Create and Import Keystore Entries
- Manage entries and certificates
- Modify and delete a Keystore
- Share Keystore
- Lock and unlock Keystore
5.1 Create and Import Keystore Entries
This section covers the actions that are related to generating key pairs and certificates, and importing certificates.
5.1.1 Generate a Key Pair
To generate a Key Pair
:
-
From the Keystore page toolbar, click on actions and choose Generate Key Pair
-
The Generate
Key Pair
dialog will be displayed. Enter the alias for the newKey Pair
entry and password, then press the Next button. -
Select an Algorithm and a Key Size and press the OK button.
You can chose one of the following algorithms:
-
RSA:
An RSA key pair includes a private and a
public key
. The RSAprivate key
is used to generate digital signatures, and the RSApublic key
is used to verify digital signatures. The RSApublic key
is also used for key encryption of DES or AES DATA keys and the RSAprivate key
for key recovery. -
DSA:
A DSA key pair also includes a private and a
public key
. The DSAprivate key
is used to generate digital signatures, and the DSApublic key
is used to verify digital signatures. - EC: Elliptic-curve cryptography (ECC) is an approach to public-key cryptography based on the algebraic structure of elliptic curves over finite fields.
-
RSA:
An RSA key pair includes a private and a
-
Select a Version and Signature Algorithm and enter a Validity Period, Serial Number and Name.
- The new
Key Pair
entry will appear in the KeyStore Entries table.
5.1.2 Import a Trusted certificate
A Trusted Certificate
contains a single certificate
. It is called a "trusted certificate
" because the keystore
owner trusts that the public key
in the certificate
indeed belongs to the identity identified by the "subject" (owner) of the certificate
. The issuer of the certificate
vouches for this, by signing the certificate
.
To import a Trusted Certificate
:
-
From the Keystore page toolbar, click on actions and choose Import Tursted Certificate.
-
Select the
Trusted Certificate
that you want to import and provida an alias. - The imported
Trusted Certificate
entry will appear in the KeyStore Entries table.
5.1.3 Import a Key Pair
To import a Key Pair
:
-
From the Keystore page toolbar, click on actions and choose Import key pair.
-
The Import
Key Pair
dialog will appear. -
Select the coresponding cryptography format.
The following formats will require to import the private key and certificate: PKCS8, PVK and OpenSSL.
- Enter the alias for the new
Key Pair
entry. - Enter the password with which to protect the new
Key Pair
entry. - The new
Key Pair
entry will appear in the KeyStore Entries table.
5.2 Manage entries and certificates
5.2.1 Key Pair
View a Key Pair's Certificate Chain
To view a Key Pair
's certificate
chain:
- Click on the
Key Pair
entry in the KeyStore Entries table. - The Certificate Details will appear under
keystore
entries table

View a Key Pair's Private Key
To view a Key Pair
's private key
:
- Click on the
Key Pair
entry in the KeyStore Entries table. -
Select Private Key Details
-
If required the Unlock Entry dialog will be displayed. Enter the
Key Pair
entry's password and press the Unlock button. -
The Private Key Details will appear.
View a Key Pair's Public Key
To view a Key Pair
's public key
:
- Click on the
Key Pair
entry in the KeyStore Entries table. -
Select Public Key Details
-
If required the Unlock Entry dialog will be displayed. Enter the
Key Pair
entry's password and press the Unlock button. -
The Public Key Details will appear.
Export Key Pair
To export a Key Pair
:
- Select the
Key Pair
from Keystore Entris table. -
Click on Actions button menu and select Export Certificate Chain:
- If required the Unlock Entry dialog will be displayed. Enter the
Key Pair
entry's password and press the Unlock button. - The Export
Key Pair
dialog will displayed. - Use radio buttons to choose between export as PKCS #12 or as a PEM.
- If you chose PKCS #12 format, enter an password to protect the exported PKCS #12 file.
- Press the Export button to commence the export.

Export certificate chain
To export a Key Pair
's certificate
chain:
- Select the
Key Pair
from Keystore Entris table. -
Click on Actions button menu and select Export Certificate Chain:
- If required the Unlock Entry dialog will be displayed. Enter the
Key Pair
entry's password and press the Unlock button. - Export
certificate
chain dialog will apear. - Use the Export Length radio buttons to choose whether the Entire Chain of certificates should be exported or the Head Only. The X.509 export format is not available when the entire chain is to be exported.
-
Select an Export Format. The options available are:
- X.509 ITU-T standard for
public key
infrastructure. - PKCS #7 RSA
public key
cryptography standard. - PKI Path Certification path.
- SPC Software Publisher Certificate, Microsoft's
certificate
format.
- X.509 ITU-T standard for
- Check the PEM checkbox if the exported
certificate
is to be PEM encoded. PEM encoding is not available for PKI Path and SPC format exports. - Press the Export button to commence the export.

Export Public Key
To export Key Pair
's Public key:
- Select the
Key Pair
from Keystore Entris table. -
Click on Actions button menu and select Export Public Key:
- If required the Unlock Entry dialog will be displayed. Enter the
Key Pair
entry's password and press the Unlock button. - The export will start automatically and it will be downloaded.
Export Private Key
To export Key Pair
's Private key:
-
Select the
Key Pair
from Keystore Entris table. -
Click on Actions button menu and select Export Private Key:
- If required the Unlock Entry dialog will be displayed. Enter the
Key Pair
entry's password and press the Unlock button. -
The Export Private Key Type dialog will appear.
There are three methods to export a private key
:
- Export a Key Pair's private key as PKCS #8
- Export a Key Pair's private key as PVK
- Export a Key Pair's private key as OpenSSL
Export a Key Pair's private key as PKCS #8
To export a Key Pair
's private key
as PKCS #8
- Select the PKCS #8 radio button.
- If the exported PKCS #8
private key
file is to be unencrypted then uncheck the Encrypt check box. - Check the
PEM checkbox if the exported
private key
is to be PEM encoded. -
Alternatively if the PKCS #8
private key
file is to be encrypted select an Encryption Algorithm and enter and confirm an Encryption Password. The supported PBE encryption algorithms for export are:- PBE with SHA-1 and 2 key DESede
- PBE with SHA-1 and 3 key DESede
- PBE with SHA-1 and 40 bit RC2
- PBE with SHA-1 and 128 bit RC2
- PBE with SHA-1 and 40 bit RC4
- PBE with SHA-1 and 128 bit RC4
- Enter the encrptation password.
- Press the Export button to commence the export.

Export a Key Pair's private key as PVK
To export a Key Pair
's private key
as PVK:
- Select the PVK radio button.
- Select a Key Type of Exchange or Signature.
- If the exported PVK
private key
file is to be unencrypted then uncheck the Encrypt check box. - Alternatively if the
PVK
private key
file is to be encrypted select an Encryption Strength (Strong or Weak) and enter an Encryption Password. - Press the Export button to commence the export.

Export a Key Pair's private key as OpenSSL
To export a Key Pair
's private key
as OpenSSL:
- Select the OpenSSL radio button and press the OK button.
- If the exported OpenSSL
private key
file is to be unencrypted then uncheck the Encrypt check box. -
Alternatively if the OpenSSL
private key
file is to be encrypted select an Encryption Algorithm and enter and confirm an Encryption Password. The supported PBE encryption algorithms for export are:- PBE with DES CBC
- PBE with DESede CBC
- PBE with 128 bit AES CBC
- PBE with 192 bit AES CBC
- PBE with 256 bit AES CBC
- PEM option will be always selected since a
private key
must be PEM encoded in OpenSSL format. - Press the Export button to commence the export.

Generate CSR
TO DO
This section is incomplete and will be concluded as soon as possible.Sign CSR
TO DO
This section is incomplete and will be concluded as soon as possible.Change password
To change a Key Pair
password:
- Click on the key pair in the KeyStore Entries table.
- The button Modify will be activated.
-
From the Modify button will show a dropdown list wit the following options:
- Click on Set password option.
-
A Password dialog will apear with a text field.
5.2.2 Certificates
View a Trusted Certificate
To view a Trusted Certificate
:
- Click on the
Trusted Certificate
entry in the KeyStore Entries table. -
It will desplay automatically the Certificate Details.
Export Trusted Certificate's Public Key
To export a Trusted Certificate
's public key
:
- Click on the
Trusted Certificate
entry in the KeyStore Entries table. - The button Actions will be activated. From the dropdown list select the only option Export Public Key
5.2.3 Rename entry
To rename a entry:
- Click on the entry in the KeyStore Entries table.
- The button Modify will be activated.
-
From the Modify button will show a dropdown list wit the following options:
- Click on Rename option.
- A Rename entry dialog will apear with a text field. Enter the desire name and click Update.
5.2.4 Delete entry
To delete a entry:
- Click on the bin button of the entry that you want to delete, in the KeyStore Entries table.
5.3 Modify and delete a Keystore
5.3.1 Modify Keystore
To modify the information or password of a Keystore:
- Go inside the Keystore that you want to modify.
-
From Keystore Page, at the top right corner, you will find a Modify button.
Configuration Password
Keystore Type
You can't change the Keystore type.
5.3.2 Delete Keystore
At the bottom of the page, inside the expansion panel Advanced options, you will find a button for delete the Keystore.

5.4 Share Keystore
For add more users in a keystore
:
- Go inside the Keystore that you want to add the user.
-
At the bottom of the Keystore page you will find a section dedicated for users.
5.5 Lock and unlock Keystore
If you want to lock or unlock a keystore
you need to go to home page.

Each row of the table contains a button to change the state (lock or unlock). When you want to unlock the keystore
, it will ask you to enter the password.
This password will be stored safely in a table to avoid asking it every time and it will be deleted when you lock the keystore
.

6 Application use
You can use the KeyStore Explorer to keep user or company certificates in a secure common repository.
But the main use of the tool is to provide a way to manage cryptographic signatures without exposing
user keystore
and certificate
passwords to programmers. The items in the KeyStore Explorer tool will be
accessible by Ax JavaScript functions which will allow reading the keystore
properties or using their
entries to sign documents.
Please check the documentation about the available Ax JavaScript methods in the following document: Using user KeyStores
7 Extra information
7.1 PEM
PEM or Privacy Enhanced Mail is a Base64 encoded DER certificate
. PEM certificates are frequently used for web servers as they can easily be translated into readable data using a simple text editor.
Generally when a PEM encoded file is opened in a text editor, it contains very distinct headers and footers. Below are some examples of different files in PEM format.
-----BEGIN CERTIFICATE----- MIICmTCCAYECBF/h2ZgwDQYJKoZIhvcNAQELBQAwETEPMA0GA1UEAwwGc2FtcGxl MB4XDTIxMTIyMTIzMDAwMFoXDTIxMTIyMTIzMDAwMFowETEPMA0GA1UEAwwGc2Ft cGxlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAq3xaMi3KGAzjzKHn 0AyMLdOgK87fIvyP7oKb2B36HjQBKfFY427aSc38k7qVi0sRQr2Gf6RgJCJZLM02 HcR0cUwS59/1V519zoDHKu2wUKNKVxsdrEQ0UA5ebtO0C9+efH45cjvq+zG+SNNk rsqiqTBrDZDB82Swf1AsX7yknbJKDFLyNw2ODOJeLgasQe6nPy7c5qD6XwEIorQb zNghDKafDQXD5yhDxVAC93mqvllkSlORycyWu7NaiMVaNjev8wgqsvMqtWvZU0Dh n8X2DWG4kwEYiAqKi7bNi6oCCN9wztzdBRvhjxMsxjY92bW88S9Tm6DcI9TryFwB QXiVEwIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQAI49iOcfxD59bq2Ztx0b5PICpG iCLPvU/SkShPCmz8Zo27wPJvGXtUKy1D+iEIRDFR5tgbmrwcp4fwkE0AwWmz/+Tc 4sVh6Ml56i+g8vC7Rv6jvycBfNUM2tbtQfu50HDxalkZKzdqTeTl38Kbk8WknEux 9OVdkXab9trt8H8wyrSBu9txyhR+KMcALw/Hb5ivQs7Mt2XXrGuCI6ZHuRPGxBTZ f8jIhiIp6fl/MT5ZNipllYralBIgqFOomBSFi/o3WpooDOPfBGIoQ+cL8Zf1qY4v yJlId8ygKcYzVcm8yuPhAH6N6PzJa4Whz6pTnMwFCcCEqeJNOdoWNAQW6JaK -----END CERTIFICATE-----
Above is the example of a CSR (certificate
signing request) in PEM format. You can see that PEM has the characteristics of containing a header, the body (which consists mainly of code) and footer.
The header and footer is what identifies the type of file, however be aware that not all PEM files necessarily need them.
Other types of header and footer :
For CSR certificate: -----BEGIN CERTIFICATE REQUEST----- and -----END CERTIFICATE REQUEST----- For RSA: -----BEGIN RSA PRIVATE KEY----- and -----END RSA PRIVATE KEY----- For certificate PEM format: -----BEGIN CERTIFICATE----- and -----END CERTIFICATE-----