xsecsize_t x;
XMLByte* decoded = Base64::decode(reinterpret_cast<const XMLByte*>(buf.rawCharBuffer()), &x);
if (decoded) {
- string xdig = SecurityHelper::doHash("SHA1", reinterpret_cast<char*>(decoded), x);
+ string xdig = SecurityHelper::doHash("SHA1", reinterpret_cast<char*>(decoded), x, false);
#ifdef XMLTOOLING_XERCESC_HAS_XMLBYTE_RELEASE
XMLString::release(&decoded);
#else
#endif
X509Digest* x509dig = X509DigestBuilder::buildX509Digest();
x509dig->setValue(widenit.get());
+ x509dig->setAlgorithm(DSIGConstants::s_unicodeStrURISHA1);
m_compactKeyInfo->getX509Datas().front()->getX509Digests().push_back(x509dig);
}
}
};
class XMLTOOL_DLLLOCAL X509DigestImpl : public virtual X509Digest,
- public AbstractComplexElement,
+ public AbstractSimpleElement,
public AbstractDOMCachingXMLObject,
public AbstractXMLObjectMarshaller,
public AbstractXMLObjectUnmarshaller
}
X509DigestImpl(const X509DigestImpl& src)
- : AbstractXMLObject(src), AbstractComplexElement(src), AbstractDOMCachingXMLObject(src), m_Algorithm(nullptr) {
+ : AbstractXMLObject(src), AbstractSimpleElement(src), AbstractDOMCachingXMLObject(src), m_Algorithm(nullptr) {
IMPL_CLONE_ATTRIB(Algorithm);
}