aboutsummaryrefslogtreecommitdiffstats
path: root/libraries/spongycastle/pg/src/main/java/org/spongycastle/openpgp/operator/jcajce/JcaPGPContentVerifierBuilderProvider.java
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/spongycastle/pg/src/main/java/org/spongycastle/openpgp/operator/jcajce/JcaPGPContentVerifierBuilderProvider.java')
-rw-r--r--libraries/spongycastle/pg/src/main/java/org/spongycastle/openpgp/operator/jcajce/JcaPGPContentVerifierBuilderProvider.java112
1 files changed, 0 insertions, 112 deletions
diff --git a/libraries/spongycastle/pg/src/main/java/org/spongycastle/openpgp/operator/jcajce/JcaPGPContentVerifierBuilderProvider.java b/libraries/spongycastle/pg/src/main/java/org/spongycastle/openpgp/operator/jcajce/JcaPGPContentVerifierBuilderProvider.java
deleted file mode 100644
index c933c7447..000000000
--- a/libraries/spongycastle/pg/src/main/java/org/spongycastle/openpgp/operator/jcajce/JcaPGPContentVerifierBuilderProvider.java
+++ /dev/null
@@ -1,112 +0,0 @@
-package org.spongycastle.openpgp.operator.jcajce;
-
-import java.io.OutputStream;
-import java.security.InvalidKeyException;
-import java.security.Provider;
-import java.security.Signature;
-import java.security.SignatureException;
-
-import org.spongycastle.jcajce.DefaultJcaJceHelper;
-import org.spongycastle.jcajce.NamedJcaJceHelper;
-import org.spongycastle.jcajce.ProviderJcaJceHelper;
-import org.spongycastle.openpgp.PGPException;
-import org.spongycastle.openpgp.PGPPublicKey;
-import org.spongycastle.openpgp.operator.PGPContentVerifier;
-import org.spongycastle.openpgp.operator.PGPContentVerifierBuilder;
-import org.spongycastle.openpgp.operator.PGPContentVerifierBuilderProvider;
-
-public class JcaPGPContentVerifierBuilderProvider
- implements PGPContentVerifierBuilderProvider
-{
- private OperatorHelper helper = new OperatorHelper(new DefaultJcaJceHelper());
- private JcaPGPKeyConverter keyConverter = new JcaPGPKeyConverter();
-
- public JcaPGPContentVerifierBuilderProvider()
- {
- }
-
- public JcaPGPContentVerifierBuilderProvider setProvider(Provider provider)
- {
- this.helper = new OperatorHelper(new ProviderJcaJceHelper(provider));
- keyConverter.setProvider(provider);
-
- return this;
- }
-
- public JcaPGPContentVerifierBuilderProvider setProvider(String providerName)
- {
- this.helper = new OperatorHelper(new NamedJcaJceHelper(providerName));
- keyConverter.setProvider(providerName);
-
- return this;
- }
-
- public PGPContentVerifierBuilder get(int keyAlgorithm, int hashAlgorithm)
- throws PGPException
- {
- return new JcaPGPContentVerifierBuilder(keyAlgorithm, hashAlgorithm);
- }
-
- private class JcaPGPContentVerifierBuilder
- implements PGPContentVerifierBuilder
- {
- private int hashAlgorithm;
- private int keyAlgorithm;
-
- public JcaPGPContentVerifierBuilder(int keyAlgorithm, int hashAlgorithm)
- {
- this.keyAlgorithm = keyAlgorithm;
- this.hashAlgorithm = hashAlgorithm;
- }
-
- public PGPContentVerifier build(final PGPPublicKey publicKey)
- throws PGPException
- {
- final Signature signature = helper.createSignature(keyAlgorithm, hashAlgorithm);
-
- try
- {
- signature.initVerify(keyConverter.getPublicKey(publicKey));
- }
- catch (InvalidKeyException e)
- {
- throw new PGPException("invalid key.", e);
- }
-
- return new PGPContentVerifier()
- {
- public int getHashAlgorithm()
- {
- return hashAlgorithm;
- }
-
- public int getKeyAlgorithm()
- {
- return keyAlgorithm;
- }
-
- public long getKeyID()
- {
- return publicKey.getKeyID();
- }
-
- public boolean verify(byte[] expected)
- {
- try
- {
- return signature.verify(expected);
- }
- catch (SignatureException e)
- { // TODO: need a specific runtime exception for PGP operators.
- throw new IllegalStateException("unable to verify signature");
- }
- }
-
- public OutputStream getOutputStream()
- {
- return new SignatureOutputStream(signature);
- }
- };
- }
- }
-}