CATokenAuthenticationFailedException, CATokenOfflineException, IllegalKeyStoreException, CreateException {
// Transform into token
SoftCATokenInfo sinfo = new SoftCATokenInfo();
CATokenContainer catoken = new CATokenContainerImpl(sinfo, CertTools.stringToBCDNString(
StringTools.strip(CertTools.getSubjectDN(signatureCertChain[0]))).hashCode());
catoken.importKeys(keystorepass, p12PrivateSignatureKey, p12PublicSignatureKey, p12PrivateEncryptionKey, p12PublicEncryptionKey, signatureCertChain);
log.debug("CA-Info: " + catoken.getCATokenInfo().getSignatureAlgorithm() + " " + catoken.getCATokenInfo().getEncryptionAlgorithm());
// Identify the key algorithms for extended CA services, OCSP, XKMS, CMS
String keyAlgorithm = AlgorithmTools.getKeyAlgorithm(p12PublicSignatureKey);
String keySpecification = AlgorithmTools.getKeySpecification(p12PublicSignatureKey);
if (keyAlgorithm == null || keyAlgorithm == AlgorithmConstants.KEYALGORITHM_RSA) {