KeyIdentifierStrategy keyIdentifier = new KeyIdentifierStrategy(certInfo.getCertificateIdentifier(),true, true);
keyIdentifier.setCertificate(certInfo.getX509Certificate());
SecurityTokenReference secTokenRef = new SecurityTokenReference(secureMessage.getSOAPPart());
keyIdentifier.insertKey(secTokenRef, secureMessage);
secTokenRef.setWsuId(strId);
X509ThumbPrintIdentifier re = (X509ThumbPrintIdentifier)secTokenRef.getReference();
String id = re.getReferenceValue();
tokenCache.put(id, re);
re.setCertificate(certInfo.getX509Certificate());
keyInfo = dsigHelper.constructKeyInfo(signaturePolicy,secTokenRef);
nextSibling = securityHeader.getNextSiblingOfTimestamp();
nxtSiblingContainer[0] = nextSibling;
return keyInfo;
}else if(referenceType.equals(MessageConstants.X509_ISSUER_TYPE)){