net.handle.hdllib
Class SessionSetupInfo

java.lang.Object
  extended by net.handle.hdllib.SessionSetupInfo

public class SessionSetupInfo
extends java.lang.Object

Class for passing session options to HandleResolver. keyExchangeMode indicates what key exchange method to use: KEY_EXCHANGE_NONE - No session KEY_EXCHANGE_CIPHER_CLIENT - Exchange key is encrypted with client's asymmetric key. Requires RSA. KEY_EXCHANGE_CIPHER_SERVER - Exchange key is encrypted with server's asymmetric key, which should be stored in the NA handle. Requires RSA. KEY_EXCHANGE_DH - Use diffie-hellman key exchange The public variables used depend on the key mode. Polymorphism might be a cleaner way to go than the different modes, but this should be simple enough to rely on delegation. The different constructors can be used as shortcuts for particular modes.


Field Summary
 boolean authenticated
           
 boolean encrypted
           
 byte[] exchangeKeyHandle
           
 int exchangeKeyIndex
           
 int keyExchangeMode
           
 java.security.PrivateKey privateExchangeKey
           
 byte[] publicExchangeKey
           
 int timeout
           
 
Constructor Summary
SessionSetupInfo()
           
SessionSetupInfo(AuthenticationInfo authInfo)
          Deprecated. Use new SessionSetupInfo() instead.
SessionSetupInfo(byte[] exchangeHandle, int exchangeIndex, java.security.PrivateKey privateKey)
           
SessionSetupInfo(int mode)
           
SessionSetupInfo(int mode, byte[] exchangekey, java.security.PrivateKey privateKey)
           
SessionSetupInfo(int mode, java.security.PublicKey exchangekey, java.security.PrivateKey privateKey)
           
SessionSetupInfo(java.lang.String exchangeHandle, int exchangeIndex, java.security.PrivateKey privateKey)
           
 
Method Summary
 void initDHKeys()
           
 void reset()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

keyExchangeMode

public int keyExchangeMode

exchangeKeyHandle

public byte[] exchangeKeyHandle

exchangeKeyIndex

public int exchangeKeyIndex

publicExchangeKey

public byte[] publicExchangeKey

privateExchangeKey

public java.security.PrivateKey privateExchangeKey

timeout

public int timeout

encrypted

public boolean encrypted

authenticated

public boolean authenticated
Constructor Detail

SessionSetupInfo

public SessionSetupInfo(byte[] exchangeHandle,
                        int exchangeIndex,
                        java.security.PrivateKey privateKey)

SessionSetupInfo

public SessionSetupInfo(java.lang.String exchangeHandle,
                        int exchangeIndex,
                        java.security.PrivateKey privateKey)

SessionSetupInfo

@Deprecated
public SessionSetupInfo(AuthenticationInfo authInfo)
Deprecated. Use new SessionSetupInfo() instead.

Constructs a SessionSetupInfo. The authentication info is not used.

Parameters:
authInfo - ignored

SessionSetupInfo

public SessionSetupInfo()

SessionSetupInfo

public SessionSetupInfo(int mode,
                        byte[] exchangekey,
                        java.security.PrivateKey privateKey)

SessionSetupInfo

public SessionSetupInfo(int mode,
                        java.security.PublicKey exchangekey,
                        java.security.PrivateKey privateKey)
                 throws java.lang.Exception
Throws:
java.lang.Exception

SessionSetupInfo

public SessionSetupInfo(int mode)
Method Detail

reset

public void reset()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

initDHKeys

public void initDHKeys()
                throws HandleException
Throws:
HandleException