org.apache.directory.shared.kerberos.messages
Class Authenticator

java.lang.Object
  extended by org.apache.directory.shared.asn1.AbstractAsn1Object
      extended by org.apache.directory.shared.kerberos.messages.KerberosMessage
          extended by org.apache.directory.shared.kerberos.messages.Authenticator
All Implemented Interfaces:
org.apache.directory.shared.asn1.Asn1Object

public class Authenticator
extends KerberosMessage

A structure to hold the authenticator data. It will store the object described by the ASN.1 grammar :

 Authenticator   ::= [APPLICATION 2] SEQUENCE  {
         authenticator-vno       [0] INTEGER (5),
         crealm                  [1] Realm,
         cname                   [2] ,
         cksum                   [3]  OPTIONAL,
         cusec                   [4] Microseconds,
         ctime                   [5] KerberosTime,
         subkey                  [6]  OPTIONAL,
         seq-number              [7] UInt32 OPTIONAL,
         authorization-data      [8]  OPTIONAL
 }
 

Author:
Apache Directory Project

Constructor Summary
Authenticator()
          Creates a new instance of Authenticator.
 
Method Summary
 int computeLength()
          Compute the Authenticator length
 ByteBuffer encode(ByteBuffer buffer)
          Encode the Authenticator message to a PDU.
 AuthorizationData getAuthorizationData()
          Returns the AuthorizationData.
 Checksum getCksum()
           
 PrincipalName getCName()
           
 String getCRealm()
           
 KerberosTime getCtime()
           
 int getCusec()
           
 int getSeqNumber()
           
 EncryptionKey getSubKey()
           
 int getVersionNumber()
          Returns the version number of the Authenticator.
 void setAuthorizationData(AuthorizationData authorizationData)
           
 void setCksum(Checksum cksum)
           
 void setCName(PrincipalName cname)
           
 void setCRealm(String crealm)
           
 void setCTime(KerberosTime ctime)
           
 void setCusec(int cusec)
           
 void setSeqNumber(int seqNumber)
           
 void setSubKey(EncryptionKey subKey)
           
 void setVersionNumber(int versionNumber)
           
 String toString()
           
 
Methods inherited from class org.apache.directory.shared.kerberos.messages.KerberosMessage
getMessageType, getProtocolVersionNumber, setMessageType, setProtocolVersionNumber
 
Methods inherited from class org.apache.directory.shared.asn1.AbstractAsn1Object
addLength, getCurrentLength, getExpectedLength, getParent, getTlvId, setCurrentLength, setExpectedLength, setParent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Authenticator

public Authenticator()
Creates a new instance of Authenticator.

Method Detail

getAuthorizationData

public AuthorizationData getAuthorizationData()
Returns the AuthorizationData.

Returns:
The AuthorizationData.

setAuthorizationData

public void setAuthorizationData(AuthorizationData authorizationData)
Parameters:
authorizationData - the authorizationData to set

getCksum

public Checksum getCksum()
Returns:
the cksum

setCksum

public void setCksum(Checksum cksum)
Parameters:
cksum - the cksum to set

getCName

public PrincipalName getCName()
Returns:
the cname

setCName

public void setCName(PrincipalName cname)
Parameters:
cname - the cname to set

getCRealm

public String getCRealm()
Returns:
the crealm

setCRealm

public void setCRealm(String crealm)
Parameters:
crealm - the crealm to set

getCtime

public KerberosTime getCtime()
Returns:
the ctime

setCTime

public void setCTime(KerberosTime ctime)
Parameters:
ctime - the ctime to set

getCusec

public int getCusec()
Returns:
the cusec

setCusec

public void setCusec(int cusec)
Parameters:
cusec - the cusec to set

getSeqNumber

public int getSeqNumber()
Returns:
the seqNumber

setSeqNumber

public void setSeqNumber(int seqNumber)
Parameters:
seqNumber - the seqNumber to set

getSubKey

public EncryptionKey getSubKey()
Returns:
the subKey

setSubKey

public void setSubKey(EncryptionKey subKey)
Parameters:
subKey - the subKey to set

getVersionNumber

public int getVersionNumber()
Returns the version number of the Authenticator.

Returns:
The version number of the Authenticator.

setVersionNumber

public void setVersionNumber(int versionNumber)
Parameters:
versionNumber - the versionNumber to set

computeLength

public int computeLength()
Compute the Authenticator length
 Authenticator :
 
 0x62 L1 Authenticator [APPLICATION 2]
  |
  +--> 0x30 L2 Authenticator SEQUENCE
        |
        +--> 0xA0 03 authenticator-vno tag
        |     |
        |     +--> 0x02 0x01 0x05 authenticator-vno (int, 5)
        |
        +--> 0xA1 L3 crealm tag
        |     |
        |     +--> 0x1B L3-1 crealm (KerberosString)
        |
        +--> 0xA2 L4 cname (PrincipalName)
        |
        +--> 0xA3 L5 cksum (CheckSum)
        |
        +--> 0xA4 L6 cusec tag
        |     |
        |     +--> 0x02 L6-1 nnn cusec value (Integer)
        |
        +--> 0xA5 0x11 ctime tag
        |     |
        |     +--> 0x18 0x0F ttt ctime (KerberosTime)
        |
        +--> 0xA6 L7 subkey (EncryptionKey)
        |
        +--> 0xA7 L8 seq-number tag
        |     |
        |     +--> 0x02 L8-1 nnn seq-number (Integer)
        |
        +--> 0xA8 L9 authorization-data (AuthorizationData)
 


encode

public ByteBuffer encode(ByteBuffer buffer)
                  throws org.apache.directory.shared.asn1.EncoderException
Encode the Authenticator message to a PDU.
 Authenticator :
 
 0x62 LL
   0x30 LL
     0xA0 0x03
       0x02 0x01 0x05 authenticator-vno
     0xA1 LL
       0x1B LL abcd crealm
     0xA2 LL
       0x30 LL abcd cname
    [0xA3 LL
       0x30 LL abcd] cksum
     0xA4 LL
       0x02 LL nnn  cusec
     0xA5 0x11
       0x18 0x0F ttt ctime
    [0xA6 LL
       0x30 LL abcd] subkey
    [0xA7 LL
       0x02 LL nnn] seq-number
    [0xA8 LL
       0x30 LL abcd] authorization-data
 

Specified by:
encode in interface org.apache.directory.shared.asn1.Asn1Object
Overrides:
encode in class org.apache.directory.shared.asn1.AbstractAsn1Object
Returns:
The constructed PDU.
Throws:
org.apache.directory.shared.asn1.EncoderException

toString

public String toString()
Overrides:
toString in class Object
See Also:
Object.toString()


Copyright © 2003-2012 The Apache Software Foundation. All Rights Reserved.