JSS 3.1

org.mozilla.jss.pkix.crmf
Class ProofOfPossession

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

public class ProofOfPossession
extends java.lang.Object
implements ASN1Value

CRMF ProofOfPossession:

 ProofOfPossession ::= CHOICE {
      raVerified          [0] NULL,
      signature           [1] POPOSigningKey,
      keyEncipherment     [2] POPOPrivKey,
      keyAgreement        [3] POPOPrivKey }
 


Inner Class Summary
static class ProofOfPossession.Template
          A Template for decoding a ProofOfPossession.
static class ProofOfPossession.Type
          The type of ProofOfPossesion.
 
Field Summary
static ProofOfPossession.Type KEY_AGREEMENT
           
static ProofOfPossession.Type KEY_ENCIPHERMENT
           
private  POPOPrivKey keyAgreement
           
private  POPOPrivKey keyEncipherment
           
static ProofOfPossession.Type RA_VERIFIED
           
private  POPOSigningKey signature
           
static ProofOfPossession.Type SIGNATURE
           
private  ProofOfPossession.Type type
           
 
Constructor Summary
private ProofOfPossession()
           
private ProofOfPossession(ProofOfPossession.Type type, POPOSigningKey signature, POPOPrivKey keyEncipherment, POPOPrivKey keyAgreement)
           
 
Method Summary
static ProofOfPossession createKeyAgreement(POPOPrivKey keyAgreement)
          Creates a new ProofOfPossesion with the given keyAgreement field.
static ProofOfPossession createKeyEncipherment(POPOPrivKey keyEncipherment)
          Creates a new ProofOfPossesion with the given keyEncipherment field.
static ProofOfPossession createRaVerified()
          Creates a new ProofOfPossesion with an raVerified field.
static ProofOfPossession createSignature(POPOSigningKey signature)
          Creates a new ProofOfPossesion with the given signature field.
 void encode(java.io.OutputStream ostream)
           
 void encode(Tag implicitTag, java.io.OutputStream ostream)
           
 POPOPrivKey getKeyAgreement()
          If type == KEY_AGREEMENT, returns the keyAgreement field.
 POPOPrivKey getKeyEncipherment()
          If type == KEY_ENCIPHERMENT, returns the keyEncipherment field.
 POPOSigningKey getSignature()
          If type == SIGNATURE, returns the signature field.
 Tag getTag()
           
 ProofOfPossession.Type getType()
          Returns the type of ProofOfPossesion: RA_VERIFIED SIGNATURE KEY_ENCIPHERMENT KEY_AGREEMENT
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

RA_VERIFIED

public static ProofOfPossession.Type RA_VERIFIED

SIGNATURE

public static ProofOfPossession.Type SIGNATURE

KEY_ENCIPHERMENT

public static ProofOfPossession.Type KEY_ENCIPHERMENT

KEY_AGREEMENT

public static ProofOfPossession.Type KEY_AGREEMENT

type

private ProofOfPossession.Type type

signature

private POPOSigningKey signature

keyEncipherment

private POPOPrivKey keyEncipherment

keyAgreement

private POPOPrivKey keyAgreement
Constructor Detail

ProofOfPossession

private ProofOfPossession()

ProofOfPossession

private ProofOfPossession(ProofOfPossession.Type type,
                          POPOSigningKey signature,
                          POPOPrivKey keyEncipherment,
                          POPOPrivKey keyAgreement)
Method Detail

getType

public ProofOfPossession.Type getType()
Returns the type of ProofOfPossesion:

getSignature

public POPOSigningKey getSignature()
If type == SIGNATURE, returns the signature field. Otherwise, returns null.

getKeyEncipherment

public POPOPrivKey getKeyEncipherment()
If type == KEY_ENCIPHERMENT, returns the keyEncipherment field. Otherwise, returns null.

getKeyAgreement

public POPOPrivKey getKeyAgreement()
If type == KEY_AGREEMENT, returns the keyAgreement field. Otherwise, returns null.

createRaVerified

public static ProofOfPossession createRaVerified()
Creates a new ProofOfPossesion with an raVerified field.

createSignature

public static ProofOfPossession createSignature(POPOSigningKey signature)
Creates a new ProofOfPossesion with the given signature field.

createKeyEncipherment

public static ProofOfPossession createKeyEncipherment(POPOPrivKey keyEncipherment)
Creates a new ProofOfPossesion with the given keyEncipherment field.

createKeyAgreement

public static ProofOfPossession createKeyAgreement(POPOPrivKey keyAgreement)
Creates a new ProofOfPossesion with the given keyAgreement 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
Specified by:
encode in interface ASN1Value

JSS 3.1