anon.client
Class KeyExchangeManager

java.lang.Object
  extended by anon.client.KeyExchangeManager

public class KeyExchangeManager
extends java.lang.Object

Author:
Stefan Lieske

Field Summary
private  boolean m_chainProtocolWithFlowControl
           
private  SymCipher m_firstMixSymmetricCipher
           
private  FixedRatioChannelsDescription m_fixedRatioChannelsDescription
           
private  java.lang.Object m_internalSynchronization
           
private  int m_mixCascadeCertificateLock
          Stores the lock on the certificate used by the mixcascade to sign all cascade related messages, like the MixCascade or MixCascadeStatus structures.
private  MixParameters[] m_mixParameters
           
private  SymCipher m_multiplexerInputStreamCipher
           
private  SymCipher m_multiplexerOutputStreamCipher
           
private  boolean m_paymentRequired
           
private  boolean m_protocolWithTimestamp
           
 
Constructor Summary
KeyExchangeManager(java.io.InputStream a_inputStream, java.io.OutputStream a_outputStream, MixCascade a_cascade, ITrustModel a_trustModel)
           
 
Method Summary
 SymCipher getFirstMixSymmetricCipher()
           
 FixedRatioChannelsDescription getFixedRatioChannelsDescription()
           
 MixParameters[] getMixParameters()
           
 SymCipher getMultiplexerInputStreamCipher()
           
 SymCipher getMultiplexerOutputStreamCipher()
           
 boolean isChainProtocolWithFlowControl()
           
 boolean isPaymentRequired()
           
 boolean isProtocolWithTimestamp()
           
 void removeCertificateLock()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_mixCascadeCertificateLock

private int m_mixCascadeCertificateLock
Stores the lock on the certificate used by the mixcascade to sign all cascade related messages, like the MixCascade or MixCascadeStatus structures. The certificate will be stored within the signature verification certificate store until the lock is released (done when the connection to the mixcascade is closed).


m_internalSynchronization

private java.lang.Object m_internalSynchronization

m_protocolWithTimestamp

private boolean m_protocolWithTimestamp

m_paymentRequired

private boolean m_paymentRequired

m_firstMixSymmetricCipher

private SymCipher m_firstMixSymmetricCipher

m_chainProtocolWithFlowControl

private boolean m_chainProtocolWithFlowControl

m_fixedRatioChannelsDescription

private FixedRatioChannelsDescription m_fixedRatioChannelsDescription

m_mixParameters

private MixParameters[] m_mixParameters

m_multiplexerInputStreamCipher

private SymCipher m_multiplexerInputStreamCipher

m_multiplexerOutputStreamCipher

private SymCipher m_multiplexerOutputStreamCipher
Constructor Detail

KeyExchangeManager

public KeyExchangeManager(java.io.InputStream a_inputStream,
                          java.io.OutputStream a_outputStream,
                          MixCascade a_cascade,
                          ITrustModel a_trustModel)
                   throws XMLParseException,
                          java.security.SignatureException,
                          java.io.IOException,
                          UnknownProtocolVersionException,
                          ITrustModel.TrustException
Parameters:
a_inputStream - InputStream
a_outputStream - OutputStream
a_cascade - the cascade to connect to; this is only used to update database entries
Throws:
XMLParseException
java.security.SignatureException
java.io.IOException
UnknownProtocolVersionException
ITrustModel.TrustException
Method Detail

isProtocolWithTimestamp

public boolean isProtocolWithTimestamp()

isPaymentRequired

public boolean isPaymentRequired()

isChainProtocolWithFlowControl

public boolean isChainProtocolWithFlowControl()

getFixedRatioChannelsDescription

public FixedRatioChannelsDescription getFixedRatioChannelsDescription()

getFirstMixSymmetricCipher

public SymCipher getFirstMixSymmetricCipher()

getMultiplexerInputStreamCipher

public SymCipher getMultiplexerInputStreamCipher()

getMultiplexerOutputStreamCipher

public SymCipher getMultiplexerOutputStreamCipher()

getMixParameters

public MixParameters[] getMixParameters()

removeCertificateLock

public void removeCertificateLock()