DSIGSignature* sig=sigObj->getXMLSignature();\r
if (!sig)\r
throw ValidationException("Signature does not exist yet.");\r
+ else if (!m_resolver)\r
+ throw ValidationException("No KeyResolver set on Validator.");\r
\r
try {\r
- sig->setSigningKey(m_key->clone());\r
+ XSECCryptoKey* key=m_resolver->resolveKey(sig->getKeyInfoList());\r
+ if (!key)\r
+ throw ValidationException("Unable to resolve signing key.");\r
+ sig->setSigningKey(key);\r
if (!sig->verify())\r
throw ValidationException("Digital signature does not validate with the given key.");\r
}\r