JSS 3.1.2

org.mozilla.jss.pkix.crmf
Class POPOPrivKey

java.lang.Object
  |
  +--org.mozilla.jss.pkix.crmf.POPOPrivKey
All Implemented Interfaces:
ASN1Value

public class POPOPrivKey
extends java.lang.Object
implements ASN1Value

CRMF POPOPrivKey:

 POPOPrivKey ::= CHOICE {
      thisMessage         [0] BIT STRING,
      subsequentMessage   [1] SubsequentMessage,
      dhMAC               [2] BIT STRING }

 SubsequentMessage ::= INTEGER {
      encrCert        (0),
      challengeResp   (1) }
 


Inner Class Summary
static class POPOPrivKey.Template
          A Template for decoding a POPOPrivKey.
static class POPOPrivKey.Type
          The type of POPOPrivKey.
 
Field Summary
static int CHALLENGE_RESP
          The SubsequentMessage field is challengeResp.
private  BIT_STRING dhMAC
           
static POPOPrivKey.Type DHMAC
           
static int ENCR_CERT
          The SubsequentMessage field is encrCert.
static POPOPrivKey.Type SUBSEQUENT_MESSAGE
           
private  INTEGER subsequentMessage
           
private static POPOPrivKey.Template templateInstance
           
static POPOPrivKey.Type THIS_MESSAGE
           
private  BIT_STRING thisMessage
           
private  POPOPrivKey.Type type
           
 
Constructor Summary
private POPOPrivKey()
           
private POPOPrivKey(POPOPrivKey.Type type, BIT_STRING thisMessage, INTEGER subsequentMessage, BIT_STRING dhMAC)
           
 
Method Summary
static POPOPrivKey createDhMAC(BIT_STRING dhMAC)
          Creates a new POPOPrivKey with the given dhMAC field.
static POPOPrivKey createSubsequentMessage(int subsequentMessage)
          Creates a new POPOPrivKey with the given subsequentMessage field.
static POPOPrivKey createThisMessage(BIT_STRING thisMessage)
          Creates a new POPOPrivKey with the given thisMessage field.
 void encode(java.io.OutputStream ostream)
          Write this value's DER encoding to an output stream using its own base tag.
 void encode(Tag implicitTag, java.io.OutputStream ostream)
          Should not be called, because POPOPrivKey is a CHOICE and cannot have an implicit tag.
 BIT_STRING getDhMAC()
          If type==DHMAC, returns the dhMAC field.
 INTEGER getSubsequentMessage()
          If type==SUBSEQUENT_MESSAGE, returns the subsequentMessage field.
 Tag getTag()
          Returns the base tag for this type, not counting any tags that may be imposed on it by its context.
static POPOPrivKey.Template getTemplate()
           
 BIT_STRING getThisMessage()
          If type==THIS_MESSAGE, returns the thisMessage field.
 POPOPrivKey.Type getType()
          Returns the type of POPOPrivKey: THIS_MESSAGE, SUBSEQUENT_MESSAGE, or DHMAC.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

THIS_MESSAGE

public static final POPOPrivKey.Type THIS_MESSAGE

SUBSEQUENT_MESSAGE

public static final POPOPrivKey.Type SUBSEQUENT_MESSAGE

DHMAC

public static final POPOPrivKey.Type DHMAC

ENCR_CERT

public static final int ENCR_CERT
The SubsequentMessage field is encrCert.

CHALLENGE_RESP

public static final int CHALLENGE_RESP
The SubsequentMessage field is challengeResp.

type

private POPOPrivKey.Type type

thisMessage

private BIT_STRING thisMessage

subsequentMessage

private INTEGER subsequentMessage

dhMAC

private BIT_STRING dhMAC

templateInstance

private static final POPOPrivKey.Template templateInstance
Constructor Detail

POPOPrivKey

private POPOPrivKey()

POPOPrivKey

private POPOPrivKey(POPOPrivKey.Type type,
                    BIT_STRING thisMessage,
                    INTEGER subsequentMessage,
                    BIT_STRING dhMAC)
Method Detail

getType

public POPOPrivKey.Type getType()
Returns the type of POPOPrivKey: THIS_MESSAGE, SUBSEQUENT_MESSAGE, or DHMAC.

getThisMessage

public BIT_STRING getThisMessage()
If type==THIS_MESSAGE, returns the thisMessage field. Otherwise, returns null.

getSubsequentMessage

public INTEGER getSubsequentMessage()
If type==SUBSEQUENT_MESSAGE, returns the subsequentMessage field. Otherwise, returns null. The return value can be converted to an integer and compared with ENCR_CERT and CHALLENGE_RESP.

getDhMAC

public BIT_STRING getDhMAC()
If type==DHMAC, returns the dhMAC field. Otherwise, returns null.

createThisMessage

public static POPOPrivKey createThisMessage(BIT_STRING thisMessage)
Creates a new POPOPrivKey with the given thisMessage field.

createSubsequentMessage

public static POPOPrivKey createSubsequentMessage(int subsequentMessage)
Creates a new POPOPrivKey with the given subsequentMessage field.

createDhMAC

public static POPOPrivKey createDhMAC(BIT_STRING dhMAC)
Creates a new POPOPrivKey with the given dhMAC field.

getTag

public Tag getTag()
Description copied from interface: ASN1Value
Returns the base tag for this type, not counting any tags that may be imposed on it by its context.
Specified by:
getTag in interface ASN1Value

encode

public void encode(java.io.OutputStream ostream)
            throws java.io.IOException
Description copied from interface: ASN1Value
Write this value's DER encoding to an output stream using its own base tag.
Specified by:
encode in interface ASN1Value

encode

public void encode(Tag implicitTag,
                   java.io.OutputStream ostream)
            throws java.io.IOException
Should not be called, because POPOPrivKey is a CHOICE and cannot have an implicit tag.
Specified by:
encode in interface ASN1Value

getTemplate

public static POPOPrivKey.Template getTemplate()

JSS 3.1.2