de esta
     * clase.
     *
     * @param name | Nombre del KeyStore.
     * @param password | Contraseña para proteger el KeyStore.
     */
    public void createKeyStore(String name, String password) {
        try {
            KeyStore createKeyStore = KeyStore.getInstance(KeyStore.getDefaultType());
            createKeyStore.load(null, password.toCharArray());

            try (FileOutputStream fileOutputStream = new FileOutputStream(name)) {
                createKeyStore.store(fileOutputStream, password.toCharArray());
                fileOutputStream.close();
            } catch (Exception ex) {

            }

        } catch (IOException | KeyStoreException | NoSuchAlgorithmException | CertificateException ex) {

        }
    }

    /**
     * Carga un KeyStore y almacena la instancia en la propiedad keyStore de
     * esta clase.
     *
     * @param name | Nombre del KeyStore.
     * @param password | Contraseña para proteger el KeyStore.
     */
    public void loadKeyStore(String name, String password) {
        try {
            this.keyStore = KeyStore.getInstance("JKS");
            try (FileInputStream fileInputStream = new FileInputStream(name)) {
                this.keyStore.load(fileInputStream, password.toCharArray());
            }
        } catch (KeyStoreException | IOException | NoSuchAlgorithmException | CertificateException ex) {

        }
    }

    /**
     * Guarda una clave privada en el keyStore. El KeyStore debe estar cargado.
     *
     * @param alias | Alias para almacenar la clave privada.
     * @param password | Contraseña para almacenar la clave privada.
     * @param privateKey | PrivateKey a almacenar.
     * @param x509Certificate | Certificado para guardar la clave privada.
     */
    public void savePrivateKey(String alias, String password, PrivateKey privateKey, X509Certificate x509Certificate) {
        Certificate[] certificate = new Certificate[1];
        certificate[0] = (Certificate) x509Certificate;
        try {
            this.keyStore.setKeyEntry(a