de.flexiprovider.nf.iq.iqrdsa
Class IQRDSAPublicKey

java.lang.Object
  |
  +--de.flexiprovider.api.keys.PublicKey
        |
        +--de.flexiprovider.nf.iq.iqrdsa.IQRDSAPublicKey
All Implemented Interfaces:
java.security.Key, Key, java.security.PublicKey, java.io.Serializable

public class IQRDSAPublicKey
extends PublicKey

Class for public keys pertaining to the IQRDSA algorithm

Author:
Ralf-P. Weinmann
See Also:
PublicKey, Serialized Form

Fields inherited from interface java.security.Key
serialVersionUID
 
Fields inherited from interface java.security.PublicKey
serialVersionUID
 
Constructor Summary
protected IQRDSAPublicKey(IQRDSAParameterSpec params, QuadraticIdeal gamma, QuadraticIdeal alpha)
          Construct an IQRDSA public key from the given parameters, public key value and base element of the NFDL-problem.
protected IQRDSAPublicKey(IQRDSAPublicKeySpec keySpec)
          Construct an IQRDSA public key from the given key specification.
 
Method Summary
 boolean equals(java.lang.Object obj)
           
 java.lang.String getAlgorithm()
          Returns the standard algorithm name for this key.
protected  codec.asn1.ASN1Type getAlgParams()
           
 QuadraticIdeal getAlpha()
          Extract alpha parameter of key
 QuadraticIdeal getGamma()
          Extract alpha parameter of key
protected  byte[] getKeyData()
           
protected  codec.asn1.ASN1ObjectIdentifier getOID()
           
 IQRDSAParameterSpec getParams()
          Extract parameter set from key.
 int hashCode()
           
 java.lang.String toString()
           
 
Methods inherited from class de.flexiprovider.api.keys.PublicKey
getEncoded, getFormat
 
Methods inherited from class java.lang.Object
, clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

IQRDSAPublicKey

protected IQRDSAPublicKey(IQRDSAParameterSpec params,
                          QuadraticIdeal gamma,
                          QuadraticIdeal alpha)
Construct an IQRDSA public key from the given parameters, public key value and base element of the NFDL-problem.
Parameters:
params - parameters consisting of gamma and prime modulus
alpha - the public key value
gamma - the base element of the NFDL-problem

IQRDSAPublicKey

protected IQRDSAPublicKey(IQRDSAPublicKeySpec keySpec)
Construct an IQRDSA public key from the given key specification.
Parameters:
keySpec - the key specification
Method Detail

getAlgorithm

public java.lang.String getAlgorithm()
Returns the standard algorithm name for this key.
Returns:
the name of the algorithm associated with this key.

getGamma

public QuadraticIdeal getGamma()
Extract alpha parameter of key
Returns:
gamma

getAlpha

public QuadraticIdeal getAlpha()
Extract alpha parameter of key
Returns:
alpha

getParams

public IQRDSAParameterSpec getParams()
Extract parameter set from key.
Returns:
object of type IQDHParameterSpec specifying the domain parameters corresponding to key

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object
Returns:
a human-readable form of the key

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

getAlgParams

protected codec.asn1.ASN1Type getAlgParams()
Overrides:
getAlgParams in class PublicKey
Following copied from class: de.flexiprovider.api.keys.PublicKey
Returns:
the algorithm parameters to encode in the SubjectPublicKeyInfo structure

getKeyData

protected byte[] getKeyData()
Overrides:
getKeyData in class PublicKey
Following copied from class: de.flexiprovider.api.keys.PublicKey
Returns:
the keyData to encode in the SubjectPublicKeyInfo structure

getOID

protected codec.asn1.ASN1ObjectIdentifier getOID()
Overrides:
getOID in class PublicKey
Following copied from class: de.flexiprovider.api.keys.PublicKey
Returns:
the OID to encode in the SubjectPublicKeyInfo structure