public class DHGEXClient extends AbstractDHClientKeyExchange
Modifier and Type | Field and Description |
---|---|
protected AbstractDH |
dh |
protected byte |
expected |
protected DHFactory |
factory |
protected byte[] |
g |
protected int |
max |
protected int |
min |
protected byte[] |
p |
protected int |
prf |
static java.lang.String |
PROP_DHGEX_CLIENT_MAX_KEY |
static java.lang.String |
PROP_DHGEX_CLIENT_MIN_KEY |
static java.lang.String |
PROP_DHGEX_CLIENT_PRF_KEY |
serverKey
e, f, h, hash, i_c, i_s, k, v_c, v_s
log
GROUP_KEX_OPCODES_MAP, SIMPLE_KEX_OPCODES_MAP
BY_NAME_COMPARATOR, NAME_EXTRACTOR
Modifier | Constructor and Description |
---|---|
protected |
DHGEXClient(DHFactory factory,
Session session) |
Modifier and Type | Method and Description |
---|---|
protected AbstractDH |
getDH(java.math.BigInteger p,
java.math.BigInteger g) |
java.lang.String |
getName() |
void |
init(byte[] v_s,
byte[] v_c,
byte[] i_s,
byte[] i_c)
Initialize the key exchange algorithm.
|
static KeyExchangeFactory |
newFactory(DHFactory delegate) |
boolean |
next(int cmd,
Buffer buffer)
Process the next packet
|
getClientSession, getServerKey
getH, getHash, getK, getSession, toString
getSimplifiedLogger
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getGroupKexOpcodeName, getSimpleKexOpcodeName
findByName, getNameList, getNames, ofName, removeByName
getSessionContext
public static final java.lang.String PROP_DHGEX_CLIENT_MIN_KEY
public static final java.lang.String PROP_DHGEX_CLIENT_MAX_KEY
public static final java.lang.String PROP_DHGEX_CLIENT_PRF_KEY
protected final DHFactory factory
protected byte expected
protected int min
protected int prf
protected int max
protected AbstractDH dh
protected byte[] p
protected byte[] g
public final java.lang.String getName()
public static KeyExchangeFactory newFactory(DHFactory delegate)
public void init(byte[] v_s, byte[] v_c, byte[] i_s, byte[] i_c) throws java.lang.Exception
KeyExchange
init
in interface KeyExchange
init
in class AbstractDHKeyExchange
v_s
- the server identification stringv_c
- the client identification stringi_s
- the server key initialization packeti_c
- the client key initialization packetjava.lang.Exception
- if an error occurspublic boolean next(int cmd, Buffer buffer) throws java.lang.Exception
KeyExchange
cmd
- the commandbuffer
- the packet contents positioned after the commandjava.lang.Exception
- if an error occursprotected AbstractDH getDH(java.math.BigInteger p, java.math.BigInteger g) throws java.lang.Exception
java.lang.Exception