// 
// Decompiled by Procyon v0.6.0
// 

package org.bouncycastle.jcajce.provider.asymmetric;

import java.security.InvalidParameterException;
import java.security.SignatureException;
import java.security.PrivateKey;
import java.security.InvalidKeyException;
import java.security.PublicKey;
import java.security.SignatureSpi;
import org.bouncycastle.asn1.x509.X509ObjectIdentifiers;
import org.bouncycastle.jcajce.provider.config.ConfigurableProvider;
import org.bouncycastle.jcajce.provider.util.AsymmetricAlgorithmProvider;

public class NoSig
{
    private static final String PREFIX = "org.bouncycastle.jcajce.provider.asymmetric.NoSig$";
    
    public static class Mappings extends AsymmetricAlgorithmProvider
    {
        @Override
        public void configure(final ConfigurableProvider configurableProvider) {
            configurableProvider.addAlgorithm("Signature." + X509ObjectIdentifiers.id_alg_noSignature, "org.bouncycastle.jcajce.provider.asymmetric.NoSig$SigSpi");
            configurableProvider.addAlgorithm("Signature." + X509ObjectIdentifiers.id_alg_unsigned, "org.bouncycastle.jcajce.provider.asymmetric.NoSig$SigSpi");
        }
    }
    
    public static class SigSpi extends SignatureSpi
    {
        @Override
        protected void engineInitVerify(final PublicKey publicKey) throws InvalidKeyException {
            throw new InvalidKeyException("attempt to pass public key to NoSig");
        }
        
        @Override
        protected void engineInitSign(final PrivateKey privateKey) throws InvalidKeyException {
            throw new InvalidKeyException("attempt to pass private key to NoSig");
        }
        
        @Override
        protected void engineUpdate(final byte b) throws SignatureException {
        }
        
        @Override
        protected void engineUpdate(final byte[] array, final int n, final int n2) throws SignatureException {
        }
        
        @Override
        protected byte[] engineSign() throws SignatureException {
            return new byte[0];
        }
        
        @Override
        protected boolean engineVerify(final byte[] array) throws SignatureException {
            return false;
        }
        
        @Override
        protected void engineSetParameter(final String s, final Object o) throws InvalidParameterException {
        }
        
        @Override
        protected Object engineGetParameter(final String s) throws InvalidParameterException {
            return null;
        }
    }
}
