Package org.bouncycastle.asn1.pkcs
Class PrivateKeyInfo
- java.lang.Object
-
- org.bouncycastle.asn1.ASN1Object
-
- org.bouncycastle.asn1.pkcs.PrivateKeyInfo
-
- All Implemented Interfaces:
ASN1Encodable
,Encodable
public class PrivateKeyInfo extends ASN1Object
RFC 5958[IMPLICIT TAGS] OneAsymmetricKey ::= SEQUENCE { version Version, privateKeyAlgorithm PrivateKeyAlgorithmIdentifier, privateKey PrivateKey, attributes [0] Attributes OPTIONAL, ..., [[2: publicKey [1] PublicKey OPTIONAL ]], ... } PrivateKeyInfo ::= OneAsymmetricKey Version ::= INTEGER { v1(0), v2(1) } (v1, ..., v2) PrivateKeyAlgorithmIdentifier ::= AlgorithmIdentifier { PUBLIC-KEY, { PrivateKeyAlgorithms } } PrivateKey ::= OCTET STRING -- Content varies based on type of key. The -- algorithm identifier dictates the format of -- the key. PublicKey ::= BIT STRING -- Content varies based on type of key. The -- algorithm identifier dictates the format of -- the key. Attributes ::= SET OF Attribute { { OneAsymmetricKeyAttributes } }
-
-
Constructor Summary
Constructors Constructor Description PrivateKeyInfo(AlgorithmIdentifier privateKeyAlgorithm, ASN1Encodable privateKey)
PrivateKeyInfo(AlgorithmIdentifier privateKeyAlgorithm, ASN1Encodable privateKey, ASN1Set attributes)
PrivateKeyInfo(AlgorithmIdentifier privateKeyAlgorithm, ASN1Encodable privateKey, ASN1Set attributes, byte[] publicKey)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ASN1Set
getAttributes()
static PrivateKeyInfo
getInstance(java.lang.Object obj)
static PrivateKeyInfo
getInstance(ASN1TaggedObject obj, boolean explicit)
ASN1OctetString
getPrivateKey()
AlgorithmIdentifier
getPrivateKeyAlgorithm()
ASN1BitString
getPublicKeyData()
for when the public key is raw bits.ASN1Integer
getVersion()
boolean
hasPublicKey()
Return true if a public key is present, false otherwise.ASN1Encodable
parsePrivateKey()
ASN1Encodable
parsePublicKey()
for when the public key is an encoded object - if the bitstring can't be decoded this routine throws an IOException.ASN1Primitive
toASN1Primitive()
Method providing a primitive representation of this object suitable for encoding.-
Methods inherited from class org.bouncycastle.asn1.ASN1Object
encodeTo, encodeTo, equals, getEncoded, getEncoded, hasEncodedTagValue, hashCode
-
-
-
-
Constructor Detail
-
PrivateKeyInfo
public PrivateKeyInfo(AlgorithmIdentifier privateKeyAlgorithm, ASN1Encodable privateKey) throws java.io.IOException
- Throws:
java.io.IOException
-
PrivateKeyInfo
public PrivateKeyInfo(AlgorithmIdentifier privateKeyAlgorithm, ASN1Encodable privateKey, ASN1Set attributes) throws java.io.IOException
- Throws:
java.io.IOException
-
PrivateKeyInfo
public PrivateKeyInfo(AlgorithmIdentifier privateKeyAlgorithm, ASN1Encodable privateKey, ASN1Set attributes, byte[] publicKey) throws java.io.IOException
- Throws:
java.io.IOException
-
-
Method Detail
-
getInstance
public static PrivateKeyInfo getInstance(ASN1TaggedObject obj, boolean explicit)
-
getInstance
public static PrivateKeyInfo getInstance(java.lang.Object obj)
-
getVersion
public ASN1Integer getVersion()
-
getAttributes
public ASN1Set getAttributes()
-
getPrivateKeyAlgorithm
public AlgorithmIdentifier getPrivateKeyAlgorithm()
-
getPrivateKey
public ASN1OctetString getPrivateKey()
-
parsePrivateKey
public ASN1Encodable parsePrivateKey() throws java.io.IOException
- Throws:
java.io.IOException
-
hasPublicKey
public boolean hasPublicKey()
Return true if a public key is present, false otherwise.- Returns:
- true if public included, otherwise false.
-
parsePublicKey
public ASN1Encodable parsePublicKey() throws java.io.IOException
for when the public key is an encoded object - if the bitstring can't be decoded this routine throws an IOException.- Returns:
- the public key as an ASN.1 primitive.
- Throws:
java.io.IOException
- - if the bit string doesn't represent a DER encoded object.
-
getPublicKeyData
public ASN1BitString getPublicKeyData()
for when the public key is raw bits.- Returns:
- the public key as the raw bit string...
-
toASN1Primitive
public ASN1Primitive toASN1Primitive()
Description copied from class:ASN1Object
Method providing a primitive representation of this object suitable for encoding.- Specified by:
toASN1Primitive
in interfaceASN1Encodable
- Specified by:
toASN1Primitive
in classASN1Object
- Returns:
- a primitive representation of this object.
-
-