Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package org.bouncycastle.jcajce.provider.asymmetric.dsa;
  
 
 
 public class BCDSAPublicKey
     implements DSAPublicKey
 {
     private static final long serialVersionUID = 1752452449903495175L;
 
     private BigInteger      y;
     private transient DSAParams       dsaSpec;
 
     BCDSAPublicKey(
         DSAPublicKeySpec spec)
     {
         this. = spec.getY();
         this. = new DSAParameterSpec(spec.getP(), spec.getQ(), spec.getG());
     }
 
     BCDSAPublicKey(
         DSAPublicKey key)
     {
         this. = key.getY();
         this. = key.getParams();
     }
 
     BCDSAPublicKey(
         DSAPublicKeyParameters params)
     {
         this. = params.getY();
         this. = new DSAParameterSpec(params.getParameters().getP(), params.getParameters().getQ(), params.getParameters().getG());
     }
 
     BCDSAPublicKey(
         BigInteger y,
         DSAParameterSpec dsaSpec)
     {
         this. = y;
         this. = dsaSpec;
     }
 
     public BCDSAPublicKey(
         SubjectPublicKeyInfo info)
     {
 
         ASN1Integer              derY;
 
         try
         {
             derY = (ASN1Integer)info.parsePublicKey();
         }
         catch (IOException e)
         {
             throw new IllegalArgumentException("invalid info structure in DSA public key");
         }
 
         this. = derY.getValue();
 
         if (isNotNull(info.getAlgorithm().getParameters()))
         {
             DSAParameter params = DSAParameter.getInstance(info.getAlgorithm().getParameters());
             
             this. = new DSAParameterSpec(params.getP(), params.getQ(), params.getG());
         }
     }
 
     private boolean isNotNull(ASN1Encodable parameters)
     {
         return parameters != null && !..equals(parameters.toASN1Primitive());
     }
 
     public String getAlgorithm()
     {
         return "DSA";
     }
 
     public String getFormat()
     {
         return "X.509";
     }
 
     public byte[] getEncoded()
    {
        if ( == null)
        {
            return KeyUtil.getEncodedSubjectPublicKeyInfo(new AlgorithmIdentifier(.), new ASN1Integer());
        }
    }
    public DSAParams getParams()
    {
        return ;
    }
    public BigInteger getY()
    {
        return ;
    }
    public String toString()
    {
        StringBuffer    buf = new StringBuffer();
        String          nl = System.getProperty("line.separator");
        buf.append("DSA Public Key").append(nl);
        buf.append("            y: ").append(this.getY().toString(16)).append(nl);
        return buf.toString();
    }
    public int hashCode()
    {
        return this.getY().hashCode() ^ this.getParams().getG().hashCode() 
                ^ this.getParams().getP().hashCode() ^ this.getParams().getQ().hashCode();
    }
    public boolean equals(
        Object o)
    {
        if (!(o instanceof DSAPublicKey))
        {
            return false;
        }
        
        DSAPublicKey other = (DSAPublicKey)o;
        
        return this.getY().equals(other.getY()) 
            && this.getParams().getG().equals(other.getParams().getG()) 
            && this.getParams().getP().equals(other.getParams().getP()) 
            && this.getParams().getQ().equals(other.getParams().getQ());
    }
    private void readObject(
        ObjectInputStream in)
        throws IOExceptionClassNotFoundException
    {
        in.defaultReadObject();
        this. = new DSAParameterSpec((BigInteger)in.readObject(), (BigInteger)in.readObject(), (BigInteger)in.readObject());
    }
    private void writeObject(
        ObjectOutputStream out)
        throws IOException
    {
        out.defaultWriteObject();
        out.writeObject(.getP());
        out.writeObject(.getQ());
        out.writeObject(.getG());
    }
New to GrepCode? Check out our FAQ X