Bouncy Castle Cryptography 1.32

org.bouncycastle.asn1.pkcs
Class RSAPrivateKeyStructure

java.lang.Object
  extended by org.bouncycastle.asn1.ASN1Encodable
      extended by org.bouncycastle.asn1.pkcs.RSAPrivateKeyStructure
All Implemented Interfaces:
DEREncodable

public class RSAPrivateKeyStructure
extends ASN1Encodable


Field Summary
 
Fields inherited from class org.bouncycastle.asn1.ASN1Encodable
BER, DER
 
Constructor Summary
RSAPrivateKeyStructure(ASN1Sequence seq)
           
RSAPrivateKeyStructure(java.math.BigInteger modulus, java.math.BigInteger publicExponent, java.math.BigInteger privateExponent, java.math.BigInteger prime1, java.math.BigInteger prime2, java.math.BigInteger exponent1, java.math.BigInteger exponent2, java.math.BigInteger coefficient)
           
 
Method Summary
 java.math.BigInteger getCoefficient()
           
 java.math.BigInteger getExponent1()
           
 java.math.BigInteger getExponent2()
           
static RSAPrivateKeyStructure getInstance(ASN1TaggedObject obj, boolean explicit)
           
static RSAPrivateKeyStructure getInstance(java.lang.Object obj)
           
 java.math.BigInteger getModulus()
           
 java.math.BigInteger getPrime1()
           
 java.math.BigInteger getPrime2()
           
 java.math.BigInteger getPrivateExponent()
           
 java.math.BigInteger getPublicExponent()
           
 int getVersion()
           
 DERObject toASN1Object()
          This outputs the key in PKCS1v2 format.
 
Methods inherited from class org.bouncycastle.asn1.ASN1Encodable
equals, getDEREncoded, getDERObject, getEncoded, getEncoded, hashCode
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RSAPrivateKeyStructure

public RSAPrivateKeyStructure(java.math.BigInteger modulus,
                              java.math.BigInteger publicExponent,
                              java.math.BigInteger privateExponent,
                              java.math.BigInteger prime1,
                              java.math.BigInteger prime2,
                              java.math.BigInteger exponent1,
                              java.math.BigInteger exponent2,
                              java.math.BigInteger coefficient)

RSAPrivateKeyStructure

public RSAPrivateKeyStructure(ASN1Sequence seq)
Method Detail

getInstance

public static RSAPrivateKeyStructure getInstance(ASN1TaggedObject obj,
                                                 boolean explicit)

getInstance

public static RSAPrivateKeyStructure getInstance(java.lang.Object obj)

getVersion

public int getVersion()

getModulus

public java.math.BigInteger getModulus()

getPublicExponent

public java.math.BigInteger getPublicExponent()

getPrivateExponent

public java.math.BigInteger getPrivateExponent()

getPrime1

public java.math.BigInteger getPrime1()

getPrime2

public java.math.BigInteger getPrime2()

getExponent1

public java.math.BigInteger getExponent1()

getExponent2

public java.math.BigInteger getExponent2()

getCoefficient

public java.math.BigInteger getCoefficient()

toASN1Object

public DERObject toASN1Object()
This outputs the key in PKCS1v2 format.
      RSAPrivateKey ::= SEQUENCE {
                          version Version,
                          modulus INTEGER, -- n
                          publicExponent INTEGER, -- e
                          privateExponent INTEGER, -- d
                          prime1 INTEGER, -- p
                          prime2 INTEGER, -- q
                          exponent1 INTEGER, -- d mod (p-1)
                          exponent2 INTEGER, -- d mod (q-1)
                          coefficient INTEGER, -- (inverse of q) mod p
                          otherPrimeInfos OtherPrimeInfos OPTIONAL
                      }

      Version ::= INTEGER { two-prime(0), multi(1) }
        (CONSTRAINED BY {-- version must be multi if otherPrimeInfos present --})
 

This routine is written to output PKCS1 version 2.1, private keys.

Specified by:
toASN1Object in class ASN1Encodable

Bouncy Castle Cryptography 1.32