ostore.mac
Class PartyInfo

java.lang.Object
  |
  +--ostore.mac.PartyInfo

public class PartyInfo
extends Object

Party information for DHMessage and MacStage to keep track of what stage of STS is established between this computer and another party

This is tailored specifically for internal HMACDHHandler usage


Field Summary
 DHPrivateKey dhpri
          My private Diffie-Hellman key
 DHPublicKey dhpub
          My public Diffie-Hellman key
 DHPublicKey dhpubOther
          The other party's public Diffie-Hellman key
static int ESTABLISHED
          A connection has been established and secret ready for use.
 SecretKey secret
          Our little secret (generated from the DH handshake, acts as seed for other shared secrets, in this case the HMAC)
 int sessionRetries
          A counter for number of restarts during a handshake session.
 QSPublicKey sigpub
          Their public signature key
 int state
          The my current state during the handshake
 Object timerToken
          Timer token for use with session timeouts.
static int UNINIT
          Uninitiated State.
 Vector usedKeys
          Keeps track of DH keys that have been used with this DH key pair as a protection against replay attacks.
static int WAITFORFINAL
          Waiting for DHMessage.FINALIZE from other party
static int WAITFORRESPONSE
          Waiting for DHMessage.RESPOND from other party
 
Method Summary
 void print()
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

UNINIT

public static int UNINIT
Uninitiated State.


WAITFORRESPONSE

public static int WAITFORRESPONSE
Waiting for DHMessage.RESPOND from other party


WAITFORFINAL

public static int WAITFORFINAL
Waiting for DHMessage.FINALIZE from other party


ESTABLISHED

public static int ESTABLISHED
A connection has been established and secret ready for use.


dhpub

public DHPublicKey dhpub
My public Diffie-Hellman key


dhpri

public DHPrivateKey dhpri
My private Diffie-Hellman key


secret

public SecretKey secret
Our little secret (generated from the DH handshake, acts as seed for other shared secrets, in this case the HMAC)


dhpubOther

public DHPublicKey dhpubOther
The other party's public Diffie-Hellman key


sigpub

public QSPublicKey sigpub
Their public signature key


state

public int state
The my current state during the handshake


sessionRetries

public int sessionRetries
A counter for number of restarts during a handshake session. An implementing MacHandler will decide what a reasonable ceiling for this is. Should be set to zero upon a sucessful handshake session.


timerToken

public Object timerToken
Timer token for use with session timeouts.


usedKeys

public Vector usedKeys
Keeps track of DH keys that have been used with this DH key pair as a protection against replay attacks. TODO: if too big need to stop talking to this person. threshold at 100, then we'd have to worry about an attacker changing their guid over and over again to fill up memory space. DDOS attack.

Method Detail

toString

public String toString()
Overrides:
toString in class Object

print

public void print()