public interface ICertManagerRunTime
ILexiCom.getCertManager().
Methods provided concentrate primarily on user certificates. This is because trusted CA certificates can be manipulated simply by copying and removing files in the certs/ directory.
| Modifier and Type | Method and Description |
|---|---|
void |
checkPKCS12Password(java.io.InputStream pkcs12,
java.lang.String password)
Check a PKCS12 password
|
void |
checkRevoked(java.security.cert.X509Certificate[] cert)
Checks whether any certificate in the chain is revoked
|
void |
checkVerificationError(java.security.cert.X509Certificate[] cert)
Checks whether any certificate in the chain has a verification error
|
java.security.cert.X509Certificate |
convertCert(byte[] encoded)
Convert a byte array to X509 certificate
|
iaik.x509.X509Certificate |
convertToIAIKCert(byte[] encoded)
Convert a byte array to IAIK-style X509 certificate
|
iaik.x509.X509Certificate |
convertToIAIKCert(byte[] encoded,
boolean pkiPath)
Convert a byte array to IAIK-style X509 certificate
|
iaik.x509.X509Certificate |
convertToIAIKCert(java.security.cert.X509Certificate jCert)
Convert an RSA-style certificate to IAIK-style
|
iaik.x509.X509Certificate[] |
convertToIAIKCert(java.security.cert.X509Certificate[] jCert)
Convert an array of RSA-style certificates to IAIK-style
|
java.lang.String |
displayCertificate(boolean user,
java.lang.String alias,
boolean includeHeader)
Returns the display description of certificate
|
java.lang.String |
displayCertificate(boolean user,
java.lang.String alias,
boolean includeHeader,
java.security.cert.X509Certificate cert)
Returns the display description of certificate
|
void |
exportCaCert(java.lang.String alias,
java.io.File cert,
boolean exportChain,
boolean base64)
Export CA certificate(s) chained to a user certificate
|
void |
exportUserCert(java.lang.String alias,
java.io.File cert,
boolean exportChain,
boolean base64)
Export a user certificate file
|
void |
exportUserKey(java.lang.String alias,
java.io.File key,
java.lang.String password,
boolean base64)
Export a user private key file
|
void |
exportUserKeyOpenSSH(java.lang.String alias,
java.io.File key,
java.lang.String password)
Export a user private key file in OpenSSL/OpenSSH format
|
void |
exportUserPKCS12(java.lang.String alias,
java.io.File pkcs12,
java.lang.String password,
java.lang.String friendlyName,
boolean exportChain)
Export a PKCS12 user certificate and private key file
|
void |
exportUserPKCS12(java.lang.String alias,
java.io.OutputStream out,
java.lang.String password,
java.lang.String friendlyName,
boolean exportChain)
Export a PKCS12 user certificate and private key file
|
void |
exportUserPublicKeyOpenSSH(java.lang.String alias,
java.lang.String filename,
boolean openSshFormat)
Export a user public key in either OpenSSH FTP or SSH FTP format
|
void |
generateCaStoreCert(java.lang.String alias,
CertificateInfo certinfo,
java.lang.String filename,
boolean pgp)
Generate a CA store certificate from an OpenPGP or SSH FTP key
|
void |
generateCaStoreCert(java.lang.String alias,
java.lang.String filename,
boolean pgp)
Generate a CA store certificate from an OpenPGP or SSH FTP key
|
void |
generateUserCertKey(java.lang.String alias,
CertificateInfo certinfo,
java.lang.String password,
boolean replace)
Generate a self-signed user certificate and private key
|
java.lang.String |
generateUserCSR(java.lang.String alias,
java.lang.String password)
Generate a user certificate signing request (CSR)
|
java.security.cert.X509Certificate |
getCACertificate(java.lang.String caAlias)
Returns the CA certificate
|
byte[][] |
getCACertificates()
Get the trusted CA certificates - RSA-style
|
java.security.cert.X509Certificate[] |
getCACertificatesX509()
Get the trusted CA certificates - IAIK-style
|
java.util.Enumeration |
getCAFiles()
Returns the current CA certificate file list
|
java.util.Enumeration |
getCaStoreAliases()
Returns the current ca store alias list
|
byte[][] |
getCertificateChain(java.lang.String alias)
Get the certificate chain for a user certificate - RSA-style
|
byte[][] |
getCertificateChain(java.security.cert.X509Certificate cert)
Get the certificate chain for a CA certificate - RSA-style
|
java.security.cert.X509Certificate[] |
getCertificateChainX509(java.lang.String alias)
Get the certificate chain for a user certificate - IAIK-style
|
java.security.cert.X509Certificate[] |
getCertificateChainX509(java.security.cert.X509Certificate cert)
Get the certificate chain for a CA certificate - IAIK-style
|
java.lang.String |
getFriendlyName(java.security.cert.X509Certificate cert)
Returns a portion of the Subject DN
|
java.lang.String |
getFriendlyNameIssuer(java.security.cert.X509Certificate cert)
Returns a portion of the Issuer DN
|
java.util.Vector |
getIssuer(java.security.cert.X509Certificate cert)
Returns the Issuer DN
|
byte[] |
getPrivateKey(java.lang.String alias,
char[] keyPswd)
Get the private key for a user certificate - RSA-style
|
java.security.PrivateKey |
getPrivateKeyPK(java.lang.String alias,
char[] keyPswd)
Get the private key for a user certificate - IAIK-style
|
java.security.PrivateKey |
getPrivateKeyPK(java.lang.String alias,
char[] keyPswd,
boolean throwException)
Get the private key for a user certificate - IAIK-style
|
java.util.Vector |
getSubject(java.security.cert.X509Certificate cert)
Returns the Subject DN
|
java.util.Enumeration |
getUserAliases()
Returns the current user certificate alias list
|
void |
importCaStoreCert(java.lang.String alias,
java.security.cert.X509Certificate cert,
boolean replace)
Import a CA store certificate
|
void |
importUserCertKey(java.lang.String alias,
java.io.File cert,
java.io.File key,
java.lang.String password,
boolean replace)
Import a user certificate file and corresponding private key file
|
void |
importUserCertKey(java.lang.String alias,
java.io.File cert,
java.io.File key,
java.lang.String password,
boolean replace,
boolean addPassword)
Import a user certificate file and corresponding private key file
|
void |
importUserCertKey(java.lang.String alias,
java.security.cert.X509Certificate[] cert,
byte[] key,
boolean replace)
Import a user certificate and corresponding private key
|
void |
importUserPKCS12(java.lang.String alias,
java.io.File pkcs12,
java.lang.String password,
boolean replace)
Import a PKCS12 file (user certificate and private key)
|
void |
importUserPKCS12(java.lang.String alias,
java.io.File pkcs12,
java.lang.String password,
boolean replace,
boolean addPassword)
Import a PKCS12 file (user certificate and private key)
|
void |
importUserPKCS12(java.lang.String alias,
java.io.InputStream pkcs12,
java.lang.String password,
boolean replace)
Import a PKCS12 stream (user certificate and private key)
|
void |
importUserPKCS12(java.lang.String alias,
java.io.InputStream pkcs12,
java.lang.String password,
boolean replace,
boolean addPassword)
Import a PKCS12 stream (user certificate and private key)
|
boolean |
isRevoked(java.security.cert.X509Certificate cert)
Checks whether any certificate in the chain is revoked
|
boolean |
isRevoked(java.security.cert.X509Certificate[] cert)
Checks whether any certificate in the chain is revoked
|
boolean |
isVerificationError(java.security.cert.X509Certificate cert)
Checks whether the certificate has a verification error
|
boolean |
isVerificationError(java.security.cert.X509Certificate[] cert)
Checks whether any certificate in the chain has a verification error
|
java.util.Collection |
readCert(java.io.File cert)
Read a certificate file
|
java.util.Collection |
readCert(java.lang.String path)
Read a certificate file
|
void |
reinitialize()
Reinitialize the certs
|
void |
removeCACert(java.lang.String alias)
Remove a CA certificate
|
void |
removeCert(boolean trusted,
java.lang.String alias,
boolean fileToo)
Remove certificate
|
void |
removeUserCertKey(java.lang.String alias)
Remove a user certificate/private key
|
void |
setCheckRevoked(boolean checkRevoked)
Sets whether the get...() and readCert() methods should check whether the cert has been revoked
|
void |
trustCACert(java.security.cert.X509Certificate[] cert)
Adds trust for CA certificate(s)
|
void |
trustCACert(java.security.cert.X509Certificate[] cert,
java.lang.String username)
Adds trust for CA certificate(s)
|
java.io.File |
trustCACertFile(java.security.cert.X509Certificate[] cert)
Adds trust for CA certificate(s)
|
java.io.File |
trustCACertFile(java.security.cert.X509Certificate[] cert,
java.lang.String username)
Adds trust for CA certificate(s)
|
void reinitialize()
throws java.lang.Exception
java.lang.Exceptionbyte[][] getCACertificates()
throws java.lang.Exception
java.lang.Exceptionjava.security.cert.X509Certificate[] getCACertificatesX509()
throws java.lang.Exception
java.lang.Exceptionbyte[][] getCertificateChain(java.lang.String alias)
throws java.lang.Exception
alias - user certificate aliasjava.lang.Exceptionbyte[][] getCertificateChain(java.security.cert.X509Certificate cert)
throws java.lang.Exception
cert - CA certificatejava.lang.Exceptionjava.security.cert.X509Certificate[] getCertificateChainX509(java.lang.String alias)
throws java.lang.Exception
alias - user certificate aliasjava.lang.Exceptionjava.security.cert.X509Certificate[] getCertificateChainX509(java.security.cert.X509Certificate cert)
throws java.lang.Exception
cert - CA certificatejava.lang.Exceptionbyte[] getPrivateKey(java.lang.String alias,
char[] keyPswd)
throws java.lang.Exception
alias - user certificate aliaskeyPswd - private key password (a.k.a. passphrase)java.lang.Exceptionjava.security.PrivateKey getPrivateKeyPK(java.lang.String alias,
char[] keyPswd,
boolean throwException)
throws java.lang.Exception
alias - user certificate aliaskeyPswd - private key password (a.k.a. passphrase)throwException - indicates to throw an exception when cannot decrypt/decode the private key (rather than null)java.lang.Exceptionjava.security.PrivateKey getPrivateKeyPK(java.lang.String alias,
char[] keyPswd)
throws java.lang.Exception
alias - user certificate aliaskeyPswd - private key password (a.k.a. passphrase)java.lang.Exceptioniaik.x509.X509Certificate convertToIAIKCert(byte[] encoded)
throws java.lang.Exception
encoded - the encoded byte arrayjava.lang.Exceptioniaik.x509.X509Certificate convertToIAIKCert(byte[] encoded,
boolean pkiPath)
throws java.lang.Exception
encoded - the encoded byte arraypkiPath - true if encoded is a PKI Path; false if it is an X509 certificatejava.lang.Exceptionjava.security.cert.X509Certificate convertCert(byte[] encoded)
throws java.lang.Exception
encoded - the encoded byte arrayjava.lang.Exceptioniaik.x509.X509Certificate convertToIAIKCert(java.security.cert.X509Certificate jCert)
throws java.lang.Exception
jCert - RSA-style X.509 certificatejava.lang.Exceptioniaik.x509.X509Certificate[] convertToIAIKCert(java.security.cert.X509Certificate[] jCert)
throws java.lang.Exception
jCert - array of RSA-style X.509 certificatesjava.lang.Exceptionvoid checkPKCS12Password(java.io.InputStream pkcs12,
java.lang.String password)
throws java.lang.Exception
pkcs12 - input PKCS12-formatted streampassword - private key password (a.k.a. passphrase)java.lang.Exceptionvoid importUserPKCS12(java.lang.String alias,
java.io.InputStream pkcs12,
java.lang.String password,
boolean replace)
throws java.lang.Exception
alias - user alias to be assigned to imported certificate; must be uppercasepkcs12 - input PKCS12-formatted streampassword - private key password (a.k.a. passphrase)replace - true if alias should be replaced if it already existsjava.lang.Exceptionvoid importUserPKCS12(java.lang.String alias,
java.io.InputStream pkcs12,
java.lang.String password,
boolean replace,
boolean addPassword)
throws java.lang.Exception
alias - user alias to be assigned to imported certificate; must be uppercasepkcs12 - input PKCS12-formatted streampassword - private key password (a.k.a. passphrase)replace - true if alias should be replaced if it already existsaddPassword - true if original PKCS12-formatted stream is unprotectedjava.lang.Exceptionvoid importUserPKCS12(java.lang.String alias,
java.io.File pkcs12,
java.lang.String password,
boolean replace)
throws java.lang.Exception
alias - user alias to be assigned to imported certificate; must be uppercasepkcs12 - input PKCS12-formatted filepassword - private key password (a.k.a. passphrase)replace - true if alias should be replaced if it already existsjava.lang.Exceptionvoid importUserPKCS12(java.lang.String alias,
java.io.File pkcs12,
java.lang.String password,
boolean replace,
boolean addPassword)
throws java.lang.Exception
alias - user alias to be assigned to imported certificate; must be uppercasepkcs12 - input PKCS12-formatted filepassword - private key password (a.k.a. passphrase)replace - true if alias should be replaced if it already existsaddPassword - true if original PKCS12-formatted file is unprotectedjava.lang.Exceptionvoid importUserCertKey(java.lang.String alias,
java.io.File cert,
java.io.File key,
java.lang.String password,
boolean replace)
throws java.lang.Exception
alias - user alias to be assigned to imported certificate; must be uppercasecert - input X.509 certificate file (either DER or CER)key - input PKCS8-encrypted file (either DER or PEM); can be null if replacing user certificatepassword - private key password (a.k.a. passphrase)replace - true if alias should be replaced if it already existsjava.lang.Exceptionvoid importUserCertKey(java.lang.String alias,
java.io.File cert,
java.io.File key,
java.lang.String password,
boolean replace,
boolean addPassword)
throws java.lang.Exception
alias - user alias to be assigned to imported certificate; must be uppercasecert - input X.509 certificate file (either DER or CER)key - input PKCS8-encrypted file (either DER or PEM); can be null if replacing user certificatepassword - private key password (a.k.a. passphrase)replace - true if alias should be replaced if it already existsaddPassword - true if original PKCS8-encrypted file is unprotectedjava.lang.Exceptionvoid importUserCertKey(java.lang.String alias,
java.security.cert.X509Certificate[] cert,
byte[] key,
boolean replace)
throws java.lang.Exception
alias - user alias to be assigned to imported certificate; must be uppercasecert - input X.509 certificate arraykey - input PKCS8-encrypted byte array; can be null if replacing user certificatereplace - true if alias should be replaced if it already existsjava.lang.Exceptionvoid importCaStoreCert(java.lang.String alias,
java.security.cert.X509Certificate cert,
boolean replace)
throws java.lang.Exception
alias - user alias to be assigned to imported certificate; must be uppercasecert - input X.509 certificatereplace - true if alias should be replaced if it already existsjava.lang.Exceptionvoid generateCaStoreCert(java.lang.String alias,
java.lang.String filename,
boolean pgp)
throws java.lang.Exception
alias - user alias to be assigned to imported certificate; must be uppercasefilename - path to the file to importpgp - true if OpenPGP import or false if SSH FTP importjava.lang.Exceptionvoid generateCaStoreCert(java.lang.String alias,
CertificateInfo certinfo,
java.lang.String filename,
boolean pgp)
throws java.lang.Exception
alias - user alias to be assigned to imported certificate; must be uppercasecertinfo - CertificateInfo container holding the certificate infofilename - path to the file to importpgp - true if OpenPGP import or false if SSH FTP importjava.lang.Exceptionvoid exportUserPKCS12(java.lang.String alias,
java.io.File pkcs12,
java.lang.String password,
java.lang.String friendlyName,
boolean exportChain)
throws java.lang.Exception
alias - user alias of certificate/private key to be exported; must be uppercasepkcs12 - output PKCS12-formatted filepassword - private key password (a.k.a. passphrase)friendlyName - optional name that will display in other Certificate systems, such as MSIEexportChain - true if certificate chain should be exportedjava.lang.Exceptionvoid exportUserPKCS12(java.lang.String alias,
java.io.OutputStream out,
java.lang.String password,
java.lang.String friendlyName,
boolean exportChain)
throws java.lang.Exception
alias - user alias of certificate/private key to be exported; must be uppercaseout - write PKCS12 to outputstreampassword - private key password (a.k.a. passphrase)friendlyName - optional name that will display in other Certificate systems, such as MSIEexportChain - true if certificate chain should be exportedjava.lang.Exceptionvoid exportCaCert(java.lang.String alias,
java.io.File cert,
boolean exportChain,
boolean base64)
throws java.lang.Exception
alias - user alias of certificate to be exported; must be uppercasecert - output X.509 certificate file (either DER or CER or PKCS7 depending on next two params)exportChain - true if certificate chain should be exportedbase64 - true if CER format should be usjava.lang.Exceptionvoid exportUserCert(java.lang.String alias,
java.io.File cert,
boolean exportChain,
boolean base64)
throws java.lang.Exception
alias - user alias of certificate to be exported; must be uppercasecert - output X.509 certificate file (either DER or CER or PKCS7 depending on next two params)exportChain - true if certificate chain should be exportedbase64 - true if CER format should be usedjava.lang.Exceptionvoid exportUserKey(java.lang.String alias,
java.io.File key,
java.lang.String password,
boolean base64)
throws java.lang.Exception
alias - user alias of private key to be exported; must be uppercasekey - output PKCS8-encrypted certificate file (either DER or PEM depending on next param)password - private key password (a.k.a. passphrase)base64 - true if PEM format should be usedjava.lang.Exceptionvoid exportUserKeyOpenSSH(java.lang.String alias,
java.io.File key,
java.lang.String password)
throws java.lang.Exception
alias - user alias of private key to be exported; must be uppercasekey - OpenSSL/OpenSSH key output filepassword - private key password (a.k.a. passphrase)java.lang.Exceptionvoid exportUserPublicKeyOpenSSH(java.lang.String alias,
java.lang.String filename,
boolean openSshFormat)
throws java.lang.Exception
alias - user alias of public key to be exported; must be uppercasefilename - OpenSSH FTP or SSH FTP public key output file nameopenSshFormat - true if output format is OpenSSH FTP;
false if format is SSH FTPjava.lang.Exceptionvoid generateUserCertKey(java.lang.String alias,
CertificateInfo certinfo,
java.lang.String password,
boolean replace)
throws java.lang.Exception
alias - user alias of certificate; must be uppercasecertinfo - certificate subject and usage informationpassword - private key password (a.k.a. passphrase)replace - true if alias should be replaced if it already existsjava.lang.Exceptionjava.lang.String generateUserCSR(java.lang.String alias,
java.lang.String password)
throws java.lang.Exception
alias - user alias of certificate for CSR; must be uppercasepassword - private key password (a.k.a. passphrase)java.lang.Exceptionvoid removeUserCertKey(java.lang.String alias)
throws java.lang.Exception
alias - user alias of certificate/private key to be removed; must be uppercasejava.lang.Exceptionvoid removeCACert(java.lang.String alias)
throws java.lang.Exception
alias - user alias of CA certificate to be removed; must be uppercasejava.lang.Exceptionvoid removeCert(boolean trusted,
java.lang.String alias,
boolean fileToo)
throws java.lang.Exception
trusted - if CA certalias - alias of certificate to be removedfileToo - also remove corresponding file, if it existsjava.lang.Exceptionjava.util.Collection readCert(java.io.File cert)
throws java.lang.Exception
cert - input X.509 certificate file (either DER or CER or PKCS7)java.lang.Exceptionjava.util.Collection readCert(java.lang.String path)
throws java.lang.Exception
path - input X.509 certificate file (either DER or CER or PKCS7)java.lang.Exceptionvoid trustCACert(java.security.cert.X509Certificate[] cert)
throws java.lang.Exception
cert - array of RSA-style X.509 certificatesjava.lang.Exceptionvoid trustCACert(java.security.cert.X509Certificate[] cert,
java.lang.String username)
throws java.lang.Exception
cert - array of RSA-style X.509 certificatesusername - name of user adding trustjava.lang.Exceptionjava.io.File trustCACertFile(java.security.cert.X509Certificate[] cert)
throws java.lang.Exception
cert - array of RSA-style X.509 certificatesjava.lang.Exceptionjava.io.File trustCACertFile(java.security.cert.X509Certificate[] cert,
java.lang.String username)
throws java.lang.Exception
cert - array of RSA-style X.509 certificatesusername - name of user adding trustjava.lang.Exceptionjava.lang.String getFriendlyName(java.security.cert.X509Certificate cert)
throws java.lang.Exception
cert - RSA-style X.509 certificatejava.lang.Exceptionjava.lang.String getFriendlyNameIssuer(java.security.cert.X509Certificate cert)
throws java.lang.Exception
cert - RSA-style X.509 certificatejava.lang.Exceptionjava.util.Vector getSubject(java.security.cert.X509Certificate cert)
throws java.lang.Exception
cert - RSA-style X.509 certificatejava.lang.Exceptionjava.util.Vector getIssuer(java.security.cert.X509Certificate cert)
throws java.lang.Exception
cert - RSA-style X.509 certificatejava.lang.Exceptionjava.util.Enumeration getCAFiles()
throws java.lang.Exception
java.lang.Exceptionjava.security.cert.X509Certificate getCACertificate(java.lang.String caAlias)
throws java.lang.Exception
java.lang.Exceptionjava.util.Enumeration getUserAliases()
throws java.lang.Exception
java.lang.Exceptionjava.util.Enumeration getCaStoreAliases()
throws java.lang.Exception
java.lang.Exceptionjava.lang.String displayCertificate(boolean user,
java.lang.String alias,
boolean includeHeader)
user - true if user certificate; false if ca certificatealias - alias of user or CA certificateincludeHeader - true if certificate alias and filename should be includedjava.lang.String displayCertificate(boolean user,
java.lang.String alias,
boolean includeHeader,
java.security.cert.X509Certificate cert)
user - true if user certificate; false if ca certificatealias - alias of user or CA certificateincludeHeader - true if certificate alias and filename should be includedcert - certificate to be displayedvoid setCheckRevoked(boolean checkRevoked)
checkRevoked - true if should check cert revocation; defaults to falseboolean isRevoked(java.security.cert.X509Certificate cert)
throws java.lang.Exception
cert - RSA-style X.509 certificatejava.lang.Exceptionboolean isRevoked(java.security.cert.X509Certificate[] cert)
throws java.security.cert.CertificateException
cert - array of RSA-style X.509 certificatesjava.security.cert.CertificateExceptionvoid checkRevoked(java.security.cert.X509Certificate[] cert)
throws java.security.cert.CertificateException
cert - array of RSA-style X.509 certificatesjava.security.cert.CertificateExceptionboolean isVerificationError(java.security.cert.X509Certificate cert)
cert - RSA-style X.509 certificateboolean isVerificationError(java.security.cert.X509Certificate[] cert)
cert - array of RSA-style X.509 certificatesvoid checkVerificationError(java.security.cert.X509Certificate[] cert)
throws java.security.cert.CertificateException
cert - array of RSA-style X.509 certificatesjava.security.cert.CertificateException