org.apache.directory.server.kerberos.shared.crypto.encryption
Class KeyUsage

java.lang.Object
  extended by org.apache.directory.server.kerberos.shared.crypto.encryption.KeyUsage
All Implemented Interfaces:
Comparable<KeyUsage>

public final class KeyUsage
extends Object
implements Comparable<KeyUsage>

From RFC 4120, "The Kerberos Network Authentication Service (V5)": 7.5.1. Key Usage Numbers The encryption and checksum specifications in [RFC3961] require as input a "key usage number", to alter the encryption key used in any specific message in order to make certain types of cryptographic attack more difficult. These are the key usage values assigned in [RFC 4120]:

Author:
Apache Directory Project

Field Summary
static KeyUsage AP_REP_ENC_PART_SESS_KEY
          AP-REP encrypted part (includes application session subkey), encrypted with the application session key (Section 5.5.2)
static KeyUsage AP_REQ_AUTHNT_CKSUM_SESS_KEY
          AP-REQ Authenticator cksum, keyed with the application session key (Section 5.5.1)
static KeyUsage AP_REQ_AUTHNT_SESS_KEY
          AP-REQ Authenticator (includes application authenticator subkey), encrypted with the application session key (Section 5.5.1)
static KeyUsage AS_OR_TGS_REP_TICKET_WITH_SRVKEY
          AS-REP Ticket and TGS-REP Ticket (includes TGS session key or application session key), encrypted with the service key (Section 5.3)
static KeyUsage AS_REP_ENC_PART_WITH_CKEY
          AS-REP encrypted part (includes TGS session key or application session key), encrypted with the client key (Section 5.4.2)
static KeyUsage AS_REQ_PA_ENC_TIMESTAMP_WITH_CKEY
          AS-REQ PA-ENC-TIMESTAMP padata timestamp, encrypted with the client key (Section 5.2.7.2)
static KeyUsage KRB_PRIV_ENC_PART_CHOSEN_KEY
          KRB-PRIV encrypted part, encrypted with a key chosen by the application (Section 5.7.1)
static KeyUsage TGS_REP_ENC_PART_TGS_AUTHNT_SUB_KEY
          TGS-REP encrypted part (includes application session key), encrypted with the TGS authenticator subkey (Section 5.4.2)
static KeyUsage TGS_REP_ENC_PART_TGS_SESS_KEY
          TGS-REP encrypted part (includes application session key), encrypted with the TGS session key (Section 5.4.2)
static KeyUsage TGS_REQ_KDC_REQ_BODY_AUTHZ_DATA_ENC_WITH_AUTHNT_SUB_KEY
          TGS-REQ KDC-REQ-BODY AuthorizationData, encrypted with the TGS authenticator subkey (Section 5.4.1)
static KeyUsage TGS_REQ_KDC_REQ_BODY_AUTHZ_DATA_ENC_WITH_TGS_SESS_KEY
          TGS-REQ KDC-REQ-BODY AuthorizationData, encrypted with the TGS session key (Section 5.4.1)
static KeyUsage TGS_REQ_PA_TGS_REQ_PADATA_AP_REQ_AUTHNT_CKSUM_TGS_SESS_KEY
          TGS-REQ PA-TGS-REQ padata AP-REQ Authenticator cksum, keyed with the TGS session key (Section 5.5.1)
static KeyUsage TGS_REQ_PA_TGS_REQ_PADATA_AP_REQ_TGS_SESS_KEY
          TGS-REQ PA-TGS-REQ padata AP-REQ Authenticator (includes TGS authenticator subkey), encrypted with the TGS session key (Section 5.5.1)
static List<KeyUsage> VALUES
          VALUES needs to be located here, otherwise illegal forward reference.
 
Method Summary
 int compareTo(KeyUsage that)
           
 int getOrdinal()
          Returns the number associated with this key usage number.
static KeyUsage getTypeByOrdinal(int type)
          Returns the key usage number type when specified by its ordinal.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

AS_REQ_PA_ENC_TIMESTAMP_WITH_CKEY

public static final KeyUsage AS_REQ_PA_ENC_TIMESTAMP_WITH_CKEY
AS-REQ PA-ENC-TIMESTAMP padata timestamp, encrypted with the client key (Section 5.2.7.2)


AS_OR_TGS_REP_TICKET_WITH_SRVKEY

public static final KeyUsage AS_OR_TGS_REP_TICKET_WITH_SRVKEY
AS-REP Ticket and TGS-REP Ticket (includes TGS session key or application session key), encrypted with the service key (Section 5.3)


AS_REP_ENC_PART_WITH_CKEY

public static final KeyUsage AS_REP_ENC_PART_WITH_CKEY
AS-REP encrypted part (includes TGS session key or application session key), encrypted with the client key (Section 5.4.2)


TGS_REQ_KDC_REQ_BODY_AUTHZ_DATA_ENC_WITH_TGS_SESS_KEY

public static final KeyUsage TGS_REQ_KDC_REQ_BODY_AUTHZ_DATA_ENC_WITH_TGS_SESS_KEY
TGS-REQ KDC-REQ-BODY AuthorizationData, encrypted with the TGS session key (Section 5.4.1)


TGS_REQ_KDC_REQ_BODY_AUTHZ_DATA_ENC_WITH_AUTHNT_SUB_KEY

public static final KeyUsage TGS_REQ_KDC_REQ_BODY_AUTHZ_DATA_ENC_WITH_AUTHNT_SUB_KEY
TGS-REQ KDC-REQ-BODY AuthorizationData, encrypted with the TGS authenticator subkey (Section 5.4.1)


TGS_REQ_PA_TGS_REQ_PADATA_AP_REQ_AUTHNT_CKSUM_TGS_SESS_KEY

public static final KeyUsage TGS_REQ_PA_TGS_REQ_PADATA_AP_REQ_AUTHNT_CKSUM_TGS_SESS_KEY
TGS-REQ PA-TGS-REQ padata AP-REQ Authenticator cksum, keyed with the TGS session key (Section 5.5.1)


TGS_REQ_PA_TGS_REQ_PADATA_AP_REQ_TGS_SESS_KEY

public static final KeyUsage TGS_REQ_PA_TGS_REQ_PADATA_AP_REQ_TGS_SESS_KEY
TGS-REQ PA-TGS-REQ padata AP-REQ Authenticator (includes TGS authenticator subkey), encrypted with the TGS session key (Section 5.5.1)


TGS_REP_ENC_PART_TGS_SESS_KEY

public static final KeyUsage TGS_REP_ENC_PART_TGS_SESS_KEY
TGS-REP encrypted part (includes application session key), encrypted with the TGS session key (Section 5.4.2)


TGS_REP_ENC_PART_TGS_AUTHNT_SUB_KEY

public static final KeyUsage TGS_REP_ENC_PART_TGS_AUTHNT_SUB_KEY
TGS-REP encrypted part (includes application session key), encrypted with the TGS authenticator subkey (Section 5.4.2)


AP_REQ_AUTHNT_CKSUM_SESS_KEY

public static final KeyUsage AP_REQ_AUTHNT_CKSUM_SESS_KEY
AP-REQ Authenticator cksum, keyed with the application session key (Section 5.5.1)


AP_REQ_AUTHNT_SESS_KEY

public static final KeyUsage AP_REQ_AUTHNT_SESS_KEY
AP-REQ Authenticator (includes application authenticator subkey), encrypted with the application session key (Section 5.5.1)


AP_REP_ENC_PART_SESS_KEY

public static final KeyUsage AP_REP_ENC_PART_SESS_KEY
AP-REP encrypted part (includes application session subkey), encrypted with the application session key (Section 5.5.2)


KRB_PRIV_ENC_PART_CHOSEN_KEY

public static final KeyUsage KRB_PRIV_ENC_PART_CHOSEN_KEY
KRB-PRIV encrypted part, encrypted with a key chosen by the application (Section 5.7.1)


VALUES

public static final List<KeyUsage> VALUES
VALUES needs to be located here, otherwise illegal forward reference.

Method Detail

getTypeByOrdinal

public static KeyUsage getTypeByOrdinal(int type)
Returns the key usage number type when specified by its ordinal.

Parameters:
type -
Returns:
The key usage number type.

getOrdinal

public int getOrdinal()
Returns the number associated with this key usage number.

Returns:
The key usage number

compareTo

public int compareTo(KeyUsage that)
Specified by:
compareTo in interface Comparable<KeyUsage>

toString

public String toString()
Overrides:
toString in class Object


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