|
Oracle Security Developer Tools Crypto FIPS Java API Reference 11g (11.1.1) E10696-02 |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object
oracle.security.crypto.core.DSAPrivateKey
public class DSAPrivateKey
A DSA private key.
A DSA private key contains, in addition to the DSA parameters p, q, and g, an additional integer, x.
The OID used to identify the key algorithm may be set via setKeyAlgOID
. The encoding used for keys of this class is based on the PrivateKeyInfo structure of PKCS #8, and is compatible with that used in JDK 1.2.
Note: To input a DSA private key (e.g., from a file), it is preferred to use CryptoUtils.inputPrivateKey
. This method is required to input a CDSA format DSA private key.
CryptoUtils.inputPrivateKey(java.io.File)
, Serialized FormConstructor Summary | |
---|---|
DSAPrivateKey() Creates a new uninitialized DSAPrivateKey instance. |
|
DSAPrivateKey(ASN1Sequence s) Deprecated. Use DSAPrivateKey(InputStream is) instead. |
|
DSAPrivateKey(java.math.BigInteger x, DSAParams params) Makes a new instance with the give value of x and DSAParams . |
|
DSAPrivateKey(byte[] data) Makes a new instance by reading its encoding from the given byte array. |
|
DSAPrivateKey(java.io.File f) Makes a new instance by reading its encoding from the given file. |
|
DSAPrivateKey(java.io.InputStream is) Makes a new instance by reading its encoding from the given InputStream. |
Method Summary | |
---|---|
java.lang.Object |
clone() Creates a deep copy of this DSAPrivateKey instance. |
void |
erase() Erases the key material making the key un-usable. |
void |
finalize() Erases this object prior to being reclaimed by the garbage collector. |
AlgorithmIdentifier |
getAlgID() Returns the algorithm identifier for this key. |
java.lang.String |
getAlgorithm() Gets the algorithm name for this key. |
boolean |
getAllowExport() Returns false if plaintext export of this key's key material is not allowed; returns true if plaintext export is allowed. |
int |
getBitLength() Returns the number of bits needed to represent the DSAPrivateKey's public component P. |
ASN1Object |
getContents() Returns the contents of this key. |
byte[] |
getEncoded() Returns ASN.1 DER bytes containing the PKCS#8 PrivateKeyInfo encoding of this private key. |
java.lang.String |
getFormat() Returns a string which indicates the format of this object's encoding. |
ASN1ObjectID |
getKeyAlgOID() Returns the key algorithm OID. |
DSAParams |
getParams() Returns the DSA algorithm parameters for this private key. |
java.math.BigInteger |
getX() Returns the private key value x. |
void |
initialize(AlgorithmIdentifier algID, ASN1Object contents) Initializes this instance from the given algorithm paramters and key contents. |
void |
input(java.io.InputStream is) Inputs a DSAPrivateKey object by reading its encoding from the given input stream. |
int |
length() Gets the length of the encoding of this object. |
void |
output(java.io.OutputStream os) Outputs encoding of this object to a given output stream. |
void |
readExternal(java.io.ObjectInput is) Reads the input stream and initializes the DSA private key. |
void |
setAllowExport(boolean value) Set to false to disallow plaintext export of this key's key material; set to true to allow plaintext export if the global value in FIPS_140_2 is also set to true . |
void |
setKeyAlgOID(ASN1ObjectID oid) Sets the key algorithm OID. |
void |
setParams(DSAParams params) Sets the DSA algorithm parameters for this public key. |
java.lang.String |
toString() Returns a description of this private key. |
void |
writeExternal(java.io.ObjectOutput os) Writes to the output stream the DER encoding of this object. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public DSAPrivateKey()
DSAPrivateKey
instance.public DSAPrivateKey(java.math.BigInteger x, DSAParams params)
DSAParams
.
x
- The private key value x.params
- The DSAParams
for this DSAPrivateKey
.public DSAPrivateKey(java.io.File f) throws java.io.IOException
f
- The file from which the DSAPrivateKey object will be read.java.io.IOException
- If an input exception occured.public DSAPrivateKey(byte[] data) throws java.io.IOException
data
- The byte array from which the DSAPrivateKey object will be read.java.io.IOException
- If an input exception occured.public DSAPrivateKey(java.io.InputStream is) throws java.io.IOException
is
- The InputStream from which the DSAPrivateKey object will be read.java.io.IOException
- If an input exception occured.public DSAPrivateKey(ASN1Sequence s) throws java.io.IOException
DSAPrivateKey(InputStream is)
instead.
java.io.IOException
Method Detail |
---|
public java.lang.String getFormat()
getFormat
in interface Key
public java.lang.String getAlgorithm()
getAlgorithm
in interface Key
public void erase()
Keys can be erased multiple times with no consequence.
erase
in interface Key
public void finalize()
Note: There is no guarantee of when, if ever, finalize
will be invoked by the Java runtime.
finalize
in class java.lang.Object
public java.lang.Object clone()
DSAPrivateKey
instance.clone
in interface Key
clone
in class java.lang.Object
public int getBitLength()
0 will be returned if the key has not been initialized.
getBitLength
in interface Key
public byte[] getEncoded()
getEncoded
in interface Key
public boolean getAllowExport()
false
if plaintext export of this key's key material is not allowed; returns true
if plaintext export is allowed.
If either this value or the global value is false
, the output(java.io.OutputStream)
, getContents()
and getEncoded()
methods will throw a KeyExportException
.
getAllowExport
in interface Key
false
if plaintext key material export is not allowed, true
if allowed.FIPS_140_2.getAllowKeyExport()
, Cipher.wrapKey(PrivateKey key)
public void setAllowExport(boolean value)
false
to disallow plaintext export of this key's key material; set to true
to allow plaintext export if the global value in FIPS_140_2
is also set to true
.
If either this value or the global value is false
, the output(java.io.OutputStream)
, getContents()
and getEncoded()
methods will throw a KeyExportException
.
value
- false
to disallow plaintext key material export, true
to allow.FIPS_140_2.setAllowKeyExport(boolean)
, Cipher.wrapKey(PrivateKey key)
public void initialize(AlgorithmIdentifier algID, ASN1Object contents) throws AlgorithmIdentifierException, InvalidInputException
PrivateKey
initialize
in interface PrivateKey
AlgorithmIdentifierException
InvalidInputException
public AlgorithmIdentifier getAlgID()
PrivateKey
getAlgID
in interface PrivateKey
public ASN1Object getContents()
PrivateKey
getContents
in interface PrivateKey
public java.math.BigInteger getX()
public void setParams(DSAParams params)
public DSAParams getParams()
public java.lang.String toString()
toString
in class java.lang.Object
public ASN1ObjectID getKeyAlgOID()
DSA.dsaKeyOID
, is returned.DSA.dsaKeyOID
public void setKeyAlgOID(ASN1ObjectID oid)
oid
- The key algorithm OID.public void input(java.io.InputStream is) throws java.io.IOException
DSAPrivateKey
object by reading its encoding from the given input stream.input
in interface Streamable
is
- The input stream from which this object will be read.java.io.IOException
- If an input exception occured.public void output(java.io.OutputStream os) throws java.io.IOException
output
in interface Streamable
os
- The output stream to which the encoding of this object will be written.java.io.IOException
- If an output exception occured.public int length()
length
in interface Streamable
public void writeExternal(java.io.ObjectOutput os) throws java.io.IOException
writeExternal
in interface java.io.Externalizable
os
- The output stream to write the encoding to.java.io.IOException
public void readExternal(java.io.ObjectInput is) throws java.io.IOException, java.lang.ClassNotFoundException
readExternal
in interface java.io.Externalizable
is
- The stream to read from.java.io.IOException
java.lang.ClassNotFoundException
|
Oracle Security Developer Tools Crypto FIPS Java API Reference 11g (11.1.1) E10696-02 |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |