You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@santuario.apache.org by co...@apache.org on 2020/01/13 19:53:54 UTC

svn commit: r1872737 [2/2] - in /santuario/xml-security-java/trunk/src: main/java/org/apache/xml/security/encryption/ main/java/org/apache/xml/security/keys/ main/java/org/apache/xml/security/keys/keyresolver/ main/java/org/apache/xml/security/keys/key...

Modified: santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509DigestResolver.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509DigestResolver.java?rev=1872737&r1=1872736&r2=1872737&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509DigestResolver.java (original)
+++ santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509DigestResolver.java Mon Jan 13 19:53:53 2020
@@ -18,6 +18,7 @@
  */
 package org.apache.xml.security.keys.keyresolver.implementations;
 
+import java.security.PrivateKey;
 import java.security.PublicKey;
 import java.security.cert.Certificate;
 import java.security.cert.X509Certificate;
@@ -46,8 +47,9 @@ public class X509DigestResolver extends
     private static final org.slf4j.Logger LOG =
         org.slf4j.LoggerFactory.getLogger(X509DigestResolver.class);
 
-    /** {{@inheritDoc}}. */
-    public boolean engineCanResolve(Element element, String baseURI, StorageResolver storage) {
+    /** {@inheritDoc} */
+    @Override
+    protected boolean engineCanResolve(Element element, String baseURI, StorageResolver storage) {
         if (XMLUtils.elementIsInSignatureSpace(element, Constants._TAG_X509DATA)) {
             try {
                 X509Data x509Data = new X509Data(element, baseURI);
@@ -60,11 +62,12 @@ public class X509DigestResolver extends
         }
     }
 
-    /** {{@inheritDoc}}. */
-    public PublicKey engineLookupAndResolvePublicKey(Element element, String baseURI, StorageResolver storage)
+    /** {@inheritDoc} */
+    @Override
+    protected PublicKey engineResolvePublicKey(Element element, String baseURI, StorageResolver storage, boolean secureValidation)
         throws KeyResolverException {
 
-        X509Certificate cert = this.engineLookupResolveX509Certificate(element, baseURI, storage);
+        X509Certificate cert = this.engineResolveX509Certificate(element, baseURI, storage, secureValidation);
 
         if (cert != null) {
             return cert.getPublicKey();
@@ -73,16 +76,11 @@ public class X509DigestResolver extends
         return null;
     }
 
-    /** {{@inheritDoc}}. */
-    public X509Certificate engineLookupResolveX509Certificate(Element element, String baseURI, StorageResolver storage)
+    /** {@inheritDoc} */
+    @Override
+    protected X509Certificate engineResolveX509Certificate(Element element, String baseURI, StorageResolver storage, boolean secureValidation)
         throws KeyResolverException {
 
-        LOG.debug("Can I resolve {}", element.getTagName());
-
-        if (!engineCanResolve(element, baseURI, storage)) {
-            return null;
-        }
-
         try {
             return resolveCertificate(element, baseURI, storage);
         } catch (XMLSecurityException e) {
@@ -92,8 +90,9 @@ public class X509DigestResolver extends
         return null;
     }
 
-    /** {{@inheritDoc}}. */
-    public SecretKey engineLookupAndResolveSecretKey(Element element, String baseURI, StorageResolver storage)
+    /** {@inheritDoc} */
+    @Override
+    protected SecretKey engineResolveSecretKey(Element element, String baseURI, StorageResolver storage, boolean secureValidation)
         throws KeyResolverException {
         return null;
     }
@@ -165,4 +164,11 @@ public class X509DigestResolver extends
         }
     }
 
+    /** {@inheritDoc} */
+    @Override
+    protected PrivateKey engineResolvePrivateKey(
+        Element element, String baseURI, StorageResolver storage, boolean secureValidation
+    ) {
+        return null;
+    }
 }

Modified: santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509IssuerSerialResolver.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509IssuerSerialResolver.java?rev=1872737&r1=1872736&r2=1872737&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509IssuerSerialResolver.java (original)
+++ santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509IssuerSerialResolver.java Mon Jan 13 19:53:53 2020
@@ -18,6 +18,7 @@
  */
 package org.apache.xml.security.keys.keyresolver.implementations;
 
+import java.security.PrivateKey;
 import java.security.PublicKey;
 import java.security.cert.Certificate;
 import java.security.cert.X509Certificate;
@@ -29,8 +30,8 @@ import org.apache.xml.security.keys.cont
 import org.apache.xml.security.keys.keyresolver.KeyResolverException;
 import org.apache.xml.security.keys.keyresolver.KeyResolverSpi;
 import org.apache.xml.security.keys.storage.StorageResolver;
-import org.apache.xml.security.signature.XMLSignatureException;
 import org.apache.xml.security.utils.Constants;
+import org.apache.xml.security.utils.XMLUtils;
 import org.w3c.dom.Element;
 
 public class X509IssuerSerialResolver extends KeyResolverSpi {
@@ -38,14 +39,29 @@ public class X509IssuerSerialResolver ex
     private static final org.slf4j.Logger LOG =
         org.slf4j.LoggerFactory.getLogger(X509IssuerSerialResolver.class);
 
+    /** {@inheritDoc} */
+    @Override
+    protected boolean engineCanResolve(Element element, String baseURI, StorageResolver storage) {
+        if (XMLUtils.elementIsInSignatureSpace(element, Constants._TAG_X509DATA)) {
+            try {
+                X509Data x509Data = new X509Data(element, baseURI);
+                return x509Data.containsIssuerSerial();
+            } catch (XMLSecurityException e) {
+                return false;
+            }
+        } else {
+            return false;
+        }
+    }
 
     /** {@inheritDoc} */
-    public PublicKey engineLookupAndResolvePublicKey(
-        Element element, String baseURI, StorageResolver storage
+    @Override
+    protected PublicKey engineResolvePublicKey(
+        Element element, String baseURI, StorageResolver storage, boolean secureValidation
     ) throws KeyResolverException {
 
         X509Certificate cert =
-            this.engineLookupResolveX509Certificate(element, baseURI, storage);
+            this.engineResolveX509Certificate(element, baseURI, storage, secureValidation);
 
         if (cert != null) {
             return cert.getPublicKey();
@@ -55,19 +71,15 @@ public class X509IssuerSerialResolver ex
     }
 
     /** {@inheritDoc} */
-    public X509Certificate engineLookupResolveX509Certificate(
-        Element element, String baseURI, StorageResolver storage
+    @Override
+    protected X509Certificate engineResolveX509Certificate(
+        Element element, String baseURI, StorageResolver storage, boolean secureValidation
     ) throws KeyResolverException {
-        LOG.debug("Can I resolve {}?", element.getTagName());
 
         X509Data x509data = null;
         try {
             x509data = new X509Data(element, baseURI);
-        } catch (XMLSignatureException ex) {
-            LOG.debug("I can't");
-            return null;
         } catch (XMLSecurityException ex) {
-            LOG.debug("I can't");
             return null;
         }
 
@@ -117,8 +129,17 @@ public class X509IssuerSerialResolver ex
     }
 
     /** {@inheritDoc} */
-    public javax.crypto.SecretKey engineLookupAndResolveSecretKey(
-        Element element, String baseURI, StorageResolver storage
+    @Override
+    protected javax.crypto.SecretKey engineResolveSecretKey(
+        Element element, String baseURI, StorageResolver storage, boolean secureValidation
+    ) {
+        return null;
+    }
+
+    /** {@inheritDoc} */
+    @Override
+    protected PrivateKey engineResolvePrivateKey(
+        Element element, String baseURI, StorageResolver storage, boolean secureValidation
     ) {
         return null;
     }

Modified: santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509SKIResolver.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509SKIResolver.java?rev=1872737&r1=1872736&r2=1872737&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509SKIResolver.java (original)
+++ santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509SKIResolver.java Mon Jan 13 19:53:53 2020
@@ -18,6 +18,7 @@
  */
 package org.apache.xml.security.keys.keyresolver.implementations;
 
+import java.security.PrivateKey;
 import java.security.PublicKey;
 import java.security.cert.Certificate;
 import java.security.cert.X509Certificate;
@@ -39,21 +40,26 @@ public class X509SKIResolver extends Key
         org.slf4j.LoggerFactory.getLogger(X509SKIResolver.class);
 
 
-    /**
-     * Method engineResolvePublicKey
-     *
-     * @param element
-     * @param baseURI
-     * @param storage
-     * @return null if no {@link PublicKey} could be obtained
-     * @throws KeyResolverException
-     */
-    public PublicKey engineLookupAndResolvePublicKey(
-        Element element, String baseURI, StorageResolver storage
+    /** {@inheritDoc} */
+    @Override
+    protected boolean engineCanResolve(Element element, String baseURI, StorageResolver storage) {
+        if (!XMLUtils.elementIsInSignatureSpace(element, Constants._TAG_X509DATA)) {
+            return false;
+        }
+        Element[] x509childNodes =
+            XMLUtils.selectDsNodes(element.getFirstChild(), Constants._TAG_X509SKI);
+
+        return x509childNodes != null && x509childNodes.length > 0;
+    }
+
+    /** {@inheritDoc} */
+    @Override
+    protected PublicKey engineResolvePublicKey(
+        Element element, String baseURI, StorageResolver storage, boolean secureValidation
     ) throws KeyResolverException {
 
         X509Certificate cert =
-            this.engineLookupResolveX509Certificate(element, baseURI, storage);
+            this.engineResolveX509Certificate(element, baseURI, storage, secureValidation);
 
         if (cert != null) {
             return cert.getPublicKey();
@@ -62,33 +68,17 @@ public class X509SKIResolver extends Key
         return null;
     }
 
-    /**
-     * Method engineResolveX509Certificate
-     * {@inheritDoc}
-     * @param element
-     * @param baseURI
-     * @param storage
-     *
-     * @throws KeyResolverException
-     */
-    public X509Certificate engineLookupResolveX509Certificate(
-        Element element, String baseURI, StorageResolver storage
+    /** {@inheritDoc} */
+    @Override
+    protected X509Certificate engineResolveX509Certificate(
+        Element element, String baseURI, StorageResolver storage, boolean secureValidation
     ) throws KeyResolverException {
-        LOG.debug("Can I resolve {}?", element.getTagName());
-        if (!XMLUtils.elementIsInSignatureSpace(element, Constants._TAG_X509DATA)) {
-            LOG.debug("I can't");
-            return null;
-        }
-        /** Field _x509childObject[] */
-        XMLX509SKI x509childObject[] = null;
-
-        Element x509childNodes[] = null;
-        x509childNodes = XMLUtils.selectDsNodes(element.getFirstChild(), Constants._TAG_X509SKI);
-
+        Element[] x509childNodes =
+            XMLUtils.selectDsNodes(element.getFirstChild(), Constants._TAG_X509SKI);
         if (!(x509childNodes != null && x509childNodes.length > 0)) {
-            LOG.debug("I can't");
             return null;
         }
+
         try {
             if (storage == null) {
                 Object[] exArgs = { Constants._TAG_X509SKI };
@@ -100,7 +90,7 @@ public class X509SKIResolver extends Key
                 throw ex;
             }
 
-            x509childObject = new XMLX509SKI[x509childNodes.length];
+            XMLX509SKI[] x509childObject = new XMLX509SKI[x509childNodes.length];
 
             for (int i = 0; i < x509childNodes.length; i++) {
                 x509childObject[i] = new XMLX509SKI(x509childNodes[i], baseURI);
@@ -126,16 +116,18 @@ public class X509SKIResolver extends Key
         return null;
     }
 
-    /**
-     * Method engineResolveSecretKey
-     * {@inheritDoc}
-     * @param element
-     * @param baseURI
-     * @param storage
-     *
-     */
-    public javax.crypto.SecretKey engineLookupAndResolveSecretKey(
-        Element element, String baseURI, StorageResolver storage
+    /** {@inheritDoc} */
+    @Override
+    protected javax.crypto.SecretKey engineResolveSecretKey(
+        Element element, String baseURI, StorageResolver storage, boolean secureValidation
+    ) {
+        return null;
+    }
+
+    /** {@inheritDoc} */
+    @Override
+    protected PrivateKey engineResolvePrivateKey(
+        Element element, String baseURI, StorageResolver storage, boolean secureValidation
     ) {
         return null;
     }

Modified: santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509SubjectNameResolver.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509SubjectNameResolver.java?rev=1872737&r1=1872736&r2=1872737&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509SubjectNameResolver.java (original)
+++ santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/keys/keyresolver/implementations/X509SubjectNameResolver.java Mon Jan 13 19:53:53 2020
@@ -18,6 +18,7 @@
  */
 package org.apache.xml.security.keys.keyresolver.implementations;
 
+import java.security.PrivateKey;
 import java.security.PublicKey;
 import java.security.cert.Certificate;
 import java.security.cert.X509Certificate;
@@ -38,22 +39,26 @@ public class X509SubjectNameResolver ext
     private static final org.slf4j.Logger LOG =
         org.slf4j.LoggerFactory.getLogger(X509SubjectNameResolver.class);
 
+    /** {@inheritDoc} */
+    @Override
+    protected boolean engineCanResolve(Element element, String baseURI, StorageResolver storage) {
+        if (!XMLUtils.elementIsInSignatureSpace(element, Constants._TAG_X509DATA)) {
+            return false;
+        }
+        Element[] x509childNodes =
+            XMLUtils.selectDsNodes(element.getFirstChild(), Constants._TAG_X509SUBJECTNAME);
 
-    /**
-     * Method engineResolvePublicKey
-     *
-     * @param element
-     * @param baseURI
-     * @param storage
-     * @return null if no {@link PublicKey} could be obtained
-     * @throws KeyResolverException
-     */
-    public PublicKey engineLookupAndResolvePublicKey(
-        Element element, String baseURI, StorageResolver storage
+        return x509childNodes != null && x509childNodes.length > 0;
+    }
+
+    /** {@inheritDoc} */
+    @Override
+    protected PublicKey engineResolvePublicKey(
+        Element element, String baseURI, StorageResolver storage, boolean secureValidation
     ) throws KeyResolverException {
 
         X509Certificate cert =
-            this.engineLookupResolveX509Certificate(element, baseURI, storage);
+            this.engineResolveX509Certificate(element, baseURI, storage, secureValidation);
 
         if (cert != null) {
             return cert.getPublicKey();
@@ -62,31 +67,14 @@ public class X509SubjectNameResolver ext
         return null;
     }
 
-    /**
-     * Method engineResolveX509Certificate
-     * {@inheritDoc}
-     * @param element
-     * @param baseURI
-     * @param storage
-     *
-     * @throws KeyResolverException
-     */
-    public X509Certificate engineLookupResolveX509Certificate(
-        Element element, String baseURI, StorageResolver storage
+    /** {@inheritDoc} */
+    @Override
+    protected X509Certificate engineResolveX509Certificate(
+        Element element, String baseURI, StorageResolver storage, boolean secureValidation
     ) throws KeyResolverException {
-        LOG.debug("Can I resolve {}?", element.getTagName());
-        Element[] x509childNodes = null;
-        XMLX509SubjectName x509childObject[] = null;
-
-        if (!XMLUtils.elementIsInSignatureSpace(element, Constants._TAG_X509DATA)) {
-            LOG.debug("I can't");
-            return null;
-        }
-        x509childNodes =
+        Element[] x509childNodes =
             XMLUtils.selectDsNodes(element.getFirstChild(), Constants._TAG_X509SUBJECTNAME);
-
         if (!(x509childNodes != null && x509childNodes.length > 0)) {
-            LOG.debug("I can't");
             return null;
         }
 
@@ -101,7 +89,7 @@ public class X509SubjectNameResolver ext
                 throw ex;
             }
 
-            x509childObject = new XMLX509SubjectName[x509childNodes.length];
+            XMLX509SubjectName[] x509childObject = new XMLX509SubjectName[x509childNodes.length];
 
             for (int i = 0; i < x509childNodes.length; i++) {
                 x509childObject[i] = new XMLX509SubjectName(x509childNodes[i], baseURI);
@@ -135,16 +123,18 @@ public class X509SubjectNameResolver ext
         }
     }
 
-    /**
-     * Method engineResolveSecretKey
-     * {@inheritDoc}
-     * @param element
-     * @param baseURI
-     * @param storage
-     *
-     */
-    public javax.crypto.SecretKey engineLookupAndResolveSecretKey(
-        Element element, String baseURI, StorageResolver storage
+    /** {@inheritDoc} */
+    @Override
+    protected javax.crypto.SecretKey engineResolveSecretKey(
+        Element element, String baseURI, StorageResolver storage, boolean secureValidation
+    ) {
+        return null;
+    }
+
+    /** {@inheritDoc} */
+    @Override
+    protected PrivateKey engineResolvePrivateKey(
+        Element element, String baseURI, StorageResolver storage, boolean secureValidation
     ) {
         return null;
     }

Modified: santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/dom/encryption/BaltimoreEncTest.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/dom/encryption/BaltimoreEncTest.java?rev=1872737&r1=1872736&r2=1872737&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/dom/encryption/BaltimoreEncTest.java (original)
+++ santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/dom/encryption/BaltimoreEncTest.java Mon Jan 13 19:53:53 2020
@@ -127,7 +127,7 @@ public class BaltimoreEncTest {
         org.apache.xml.security.Init.init();
 
         // Register our key resolver
-        KeyResolver.register("org.apache.xml.security.test.dom.encryption.BobKeyResolver", false);
+        KeyResolver.register("org.apache.xml.security.test.dom.encryption.BobKeyResolver");
 
         // Check what algorithms are available
 

Modified: santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/dom/encryption/BobKeyResolver.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/dom/encryption/BobKeyResolver.java?rev=1872737&r1=1872736&r2=1872737&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/dom/encryption/BobKeyResolver.java (original)
+++ santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/dom/encryption/BobKeyResolver.java Mon Jan 13 19:53:53 2020
@@ -20,6 +20,7 @@ package org.apache.xml.security.test.dom
 
 import java.security.cert.X509Certificate;
 import java.nio.charset.StandardCharsets;
+import java.security.PrivateKey;
 import java.security.PublicKey;
 import javax.crypto.SecretKey;
 import javax.crypto.SecretKeyFactory;
@@ -44,15 +45,8 @@ public class BobKeyResolver extends KeyR
 
     private KeyName _kn;
 
-    /**
-     * Method engineCanResolve
-     *
-     * @param element
-     * @param BaseURI
-     * @param storage
-     *
-     */
-    public boolean engineCanResolve(Element element, String BaseURI, StorageResolver storage) {
+    @Override
+    protected boolean engineCanResolve(Element element, String BaseURI, StorageResolver storage) {
         if (element == null) {
             return false;
         }
@@ -73,65 +67,43 @@ public class BobKeyResolver extends KeyR
         return false;
     }
 
-    /**
-     * Method engineResolvePublicKey
-     *
-     * @param element
-     * @param BaseURI
-     * @param storage
-     * @return null if no {@link PublicKey} could be obtained
-     * @throws KeyResolverException
-     */
-    public PublicKey engineLookupAndResolvePublicKey(
-        Element element, String BaseURI, StorageResolver storage
+    @Override
+    protected PublicKey engineResolvePublicKey(
+        Element element, String BaseURI, StorageResolver storage, boolean secureValidation
     ) throws KeyResolverException {
         return null;
     }
 
-    /**
-     * Method engineResolveX509Certificate
-     *
-     * @param element
-     * @param BaseURI
-     * @param storage
-     *
-     * @throws KeyResolverException
-     */
-    public X509Certificate engineLookupResolveX509Certificate(
-        Element element, String BaseURI, StorageResolver storage
+    @Override
+    protected X509Certificate engineResolveX509Certificate(
+        Element element, String BaseURI, StorageResolver storage, boolean secureValidation
     ) throws KeyResolverException {
         return null;
     }
 
-    /**
-     * Method engineResolveSecretKey
-     *
-     * @param element
-     * @param BaseURI
-     * @param storage
-     *
-     * @throws KeyResolverException
-     */
-    public SecretKey engineLookupAndResolveSecretKey(
-        Element element, String BaseURI, StorageResolver storage
+    @Override
+    protected SecretKey engineResolveSecretKey(
+        Element element, String BaseURI, StorageResolver storage, boolean secureValidation
     ) throws KeyResolverException {
-        if (engineCanResolve(element, BaseURI, storage)) {
-            try {
-                DESedeKeySpec keySpec =
-                    new DESedeKeySpec("abcdefghijklmnopqrstuvwx".getBytes(StandardCharsets.US_ASCII));
-                SecretKeyFactory keyFactory =
-                    SecretKeyFactory.getInstance("DESede");
-                SecretKey key = keyFactory.generateSecret(keySpec);
+        try {
+            DESedeKeySpec keySpec =
+                new DESedeKeySpec("abcdefghijklmnopqrstuvwx".getBytes(StandardCharsets.US_ASCII));
+            SecretKeyFactory keyFactory =
+                SecretKeyFactory.getInstance("DESede");
+            SecretKey key = keyFactory.generateSecret(keySpec);
 
-                return key;
-            }
-            catch (Exception e) {
-                throw new KeyResolverException("Something badly wrong in creation of bob's key");
-            }
+            return key;
+        }
+        catch (Exception e) {
+            throw new KeyResolverException("Something badly wrong in creation of bob's key");
         }
+    }
 
+    @Override
+    protected PrivateKey engineResolvePrivateKey(
+        Element element, String BaseURI, StorageResolver storage, boolean secureValidation
+    ) throws KeyResolverException {
         return null;
     }
-
 }
 

Modified: santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/dom/keys/keyresolver/KeyResolverTest.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/dom/keys/keyresolver/KeyResolverTest.java?rev=1872737&r1=1872736&r2=1872737&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/dom/keys/keyresolver/KeyResolverTest.java (original)
+++ santuario/xml-security-java/trunk/src/test/java/org/apache/xml/security/test/dom/keys/keyresolver/KeyResolverTest.java Mon Jan 13 19:53:53 2020
@@ -289,7 +289,7 @@ public class KeyResolverTest {
         decryptDocument(document, new MyPrivateKeyResolver());
 
         // Now test with a static KeyResolver
-        KeyResolver.registerAtStart(MyPrivateKeyResolver.class.getName(), false);
+        KeyResolver.registerAtStart(MyPrivateKeyResolver.class.getName());
         KeyResolverSpi resolver = KeyResolver.iterator().next();
         assertEquals(MyPrivateKeyResolver.class.getName(), resolver.getClass().getName());
 
@@ -321,21 +321,41 @@ public class KeyResolverTest {
         private static PrivateKey pk;
         private static String pkName;
 
-        public boolean engineCanResolve(Element element, String BaseURI, StorageResolver storage) {
-            return false;
+        @Override
+        protected boolean engineCanResolve(Element element, String baseURI, StorageResolver storage) {
+            return Constants.SignatureSpecNS.equals(element.getNamespaceURI()) &&
+                Constants._TAG_KEYNAME.equals(element.getLocalName());
         }
 
-        public PrivateKey engineLookupAndResolvePrivateKey(
-            Element element, String BaseURI, StorageResolver storage
+        @Override
+        protected PublicKey engineResolvePublicKey(
+            Element element, String BaseURI, StorageResolver storage, boolean secureValidation
         ) throws KeyResolverException {
-            if (Constants.SignatureSpecNS.equals(element.getNamespaceURI()) &&
-                Constants._TAG_KEYNAME.equals(element.getLocalName())) {
-                String keyName = element.getFirstChild().getNodeValue();
-                if (pkName.equals(keyName)) {
-                    return pk;
-                }
+            return null;
+        }
+
+        @Override
+        protected X509Certificate engineResolveX509Certificate(
+            Element element, String BaseURI, StorageResolver storage, boolean secureValidation
+        ) throws KeyResolverException {
+            return null;
+        }
+
+        @Override
+        protected PrivateKey engineResolvePrivateKey(
+            Element element, String baseURI, StorageResolver storage, boolean secureValidation
+        ) throws KeyResolverException {
+            String keyName = element.getFirstChild().getNodeValue();
+            if (pkName.equals(keyName)) {
+                return pk;
             }
+            return null;
+        }
 
+        @Override
+        protected javax.crypto.SecretKey engineResolveSecretKey(
+            Element element, String baseURI, StorageResolver storage, boolean secureValidation
+        ) {
             return null;
         }
     }