org.apache.ws.security.message.token
Class DerivedKeyToken

java.lang.Object
  extended by org.apache.ws.security.message.token.DerivedKeyToken

public class DerivedKeyToken
extends Object

Version:
1.0
Author:
Ruchith Fernando

Field Summary
protected  Element element
           
protected  Element elementGeneration
           
protected  Element elementLabel
           
protected  Element elementLength
           
protected  Element elementNonce
           
protected  Element elementOffset
           
protected  Element elementProperties
           
protected  Element elementSecurityTokenReference
           
 
Constructor Summary
DerivedKeyToken(Document doc)
          This will create an empty DerivedKeyToken
DerivedKeyToken(Element elem)
          This will create a DerivedKeyToken object with the given DerivedKeyToken element
DerivedKeyToken(Element elem, boolean bspCompliant)
          This will create a DerivedKeyToken object with the given DerivedKeyToken element
DerivedKeyToken(int version, Document doc)
          This will create an empty DerivedKeyToken
 
Method Summary
 void addWSUNamespace()
          Add the WSU Namespace to this DKT.
 Principal createPrincipal()
          Create a WSDerivedKeyTokenPrincipal from this DerivedKeyToken object
 byte[] deriveKey(int length, byte[] secret)
          Derive a key from this DerivedKeyToken instance
 boolean equals(Object object)
           
 String getAlgorithm()
          Gets the derivation algorithm
 Element getElement()
          Returns the dom element of this SecurityContextToken object.
 int getGeneration()
           
 String getID()
          Gets the id.
 String getLabel()
          Returns the label of the derived key token
 int getLength()
           
 String getNonce()
          Return the nonce of the derived key token
 int getOffset()
           
 Map<String,String> getProperties()
           
 SecurityTokenReference getSecurityTokenReference()
          Returns the SecurityTokenReference of the derived key token
 Element getSecurityTokenReferenceElement()
          Returns the SecurityTokenReference element of the derived key token
 int hashCode()
           
 void setAlgorithm(String algo)
          Set the derivation algorithm of this derived key token.
 void setGeneration(int generation)
          Sets the generation of the derived key
 void setID(String id)
          Set the id of this derived key token.
 void setLabel(String label)
          Sets the label of the derived key
 void setLength(int length)
          Sets the length of the derived key
 void setNonce(String nonce)
          Sets the nonce value of the derived key
 void setOffset(int offset)
          Sets the offset
 void setProperties(Map<String,String> properties)
          If there are other types of properties other than Name, Label and Nonce This is provided for extensibility purposes
 void setProperties(String name, String label, String nonce)
          This is used to set the Name, Label and Nonce element values in the properties element At this point I'm not sure if these are the only properties that will appear in the Properties element.
 void setSecurityTokenReference(Element elem)
           
 void setSecurityTokenReference(SecurityTokenReference ref)
          Sets the security token reference of the derived key token This is the reference to the shared secret used in the conversation/context
 String toString()
          Returns the string representation of the token.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

element

protected Element element

elementSecurityTokenReference

protected Element elementSecurityTokenReference

elementProperties

protected Element elementProperties

elementGeneration

protected Element elementGeneration

elementOffset

protected Element elementOffset

elementLength

protected Element elementLength

elementLabel

protected Element elementLabel

elementNonce

protected Element elementNonce
Constructor Detail

DerivedKeyToken

public DerivedKeyToken(Document doc)
                throws ConversationException
This will create an empty DerivedKeyToken

Parameters:
doc - The DOM document
Throws:
ConversationException

DerivedKeyToken

public DerivedKeyToken(int version,
                       Document doc)
                throws ConversationException
This will create an empty DerivedKeyToken

Parameters:
doc - The DOM document
Throws:
ConversationException

DerivedKeyToken

public DerivedKeyToken(Element elem)
                throws WSSecurityException
This will create a DerivedKeyToken object with the given DerivedKeyToken element

Parameters:
elem - The DerivedKeyToken DOM element
Throws:
WSSecurityException - If the element is not a derived key token

DerivedKeyToken

public DerivedKeyToken(Element elem,
                       boolean bspCompliant)
                throws WSSecurityException
This will create a DerivedKeyToken object with the given DerivedKeyToken element

Parameters:
elem - The DerivedKeyToken DOM element
bspCompliant - whether the DerivedKeyToken processing complies with the BSP spec
Throws:
WSSecurityException - If the element is not a derived key token
Method Detail

addWSUNamespace

public void addWSUNamespace()
Add the WSU Namespace to this DKT. The namespace is not added by default for efficiency purposes.


setSecurityTokenReference

public void setSecurityTokenReference(SecurityTokenReference ref)
Sets the security token reference of the derived key token This is the reference to the shared secret used in the conversation/context

Parameters:
ref - Security token reference

setSecurityTokenReference

public void setSecurityTokenReference(Element elem)

getSecurityTokenReference

public SecurityTokenReference getSecurityTokenReference()
                                                 throws WSSecurityException
Returns the SecurityTokenReference of the derived key token

Returns:
the Security Token Reference of the derived key token
Throws:
WSSecurityException

getSecurityTokenReferenceElement

public Element getSecurityTokenReferenceElement()
Returns the SecurityTokenReference element of the derived key token

Returns:
the Security Token Reference element of the derived key token

setProperties

public void setProperties(String name,
                          String label,
                          String nonce)
This is used to set the Name, Label and Nonce element values in the properties element At this point I'm not sure if these are the only properties that will appear in the Properties element. There fore this method is provided If this is not required feel free to remove this :D

Parameters:
name - Value of the Properties/Name element
label - Value of the Properties/Label element
nonce - Value of the Properties/Nonce element

setProperties

public void setProperties(Map<String,String> properties)
If there are other types of properties other than Name, Label and Nonce This is provided for extensibility purposes

Parameters:
properties - The properties and values in a Map

getProperties

public Map<String,String> getProperties()

setLength

public void setLength(int length)
Sets the length of the derived key

Parameters:
length - The length of the derived key as a long

getLength

public int getLength()

setOffset

public void setOffset(int offset)
               throws ConversationException
Sets the offset

Parameters:
offset - The offset value as an integer
Throws:
ConversationException

getOffset

public int getOffset()

setGeneration

public void setGeneration(int generation)
                   throws ConversationException
Sets the generation of the derived key

Parameters:
generation - generation value as an integer
Throws:
ConversationException

getGeneration

public int getGeneration()

setLabel

public void setLabel(String label)
Sets the label of the derived key

Parameters:
label - Label value as a string

setNonce

public void setNonce(String nonce)
Sets the nonce value of the derived key

Parameters:
nonce - Nonce value as a string

getLabel

public String getLabel()
Returns the label of the derived key token

Returns:
Label of the derived key token

getNonce

public String getNonce()
Return the nonce of the derived key token

Returns:
Nonce of the derived key token

getElement

public Element getElement()
Returns the dom element of this SecurityContextToken object.

Returns:
the DerivedKeyToken element

toString

public String toString()
Returns the string representation of the token.

Overrides:
toString in class Object
Returns:
a XML string representation

getID

public String getID()
Gets the id.

Returns:
the value of the wsu:Id attribute of this DerivedKeyToken

setID

public void setID(String id)
Set the id of this derived key token.

Parameters:
id - the value for the wsu:Id attribute of this DerivedKeyToken

getAlgorithm

public String getAlgorithm()
Gets the derivation algorithm

Returns:
the value of the wsc:Algorithm attribute of this DerivedKeyToken

createPrincipal

public Principal createPrincipal()
                          throws WSSecurityException
Create a WSDerivedKeyTokenPrincipal from this DerivedKeyToken object

Throws:
WSSecurityException

setAlgorithm

public void setAlgorithm(String algo)
Set the derivation algorithm of this derived key token.

Parameters:
algo - the value for the Algorithm attribute of this DerivedKeyToken

deriveKey

public byte[] deriveKey(int length,
                        byte[] secret)
                 throws WSSecurityException
Derive a key from this DerivedKeyToken instance

Parameters:
length -
secret -
Throws:
WSSecurityException

hashCode

public int hashCode()
Overrides:
hashCode in class Object

equals

public boolean equals(Object object)
Overrides:
equals in class Object


Copyright © 2004-2013 The Apache Software Foundation. All Rights Reserved.