JSS 3.1

org.mozilla.jss.pkix.crmf
Class POPOPrivKey

java.lang.Object
  |
  +--org.mozilla.jss.pkix.crmf.POPOPrivKey

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)
           
 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()
           
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()
Specified by:
getTag in interface ASN1Value

encode

public void encode(java.io.OutputStream ostream)
            throws java.io.IOException
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