com.maverick.sshd.components.jce
Class DiffieHellmanGroupExchangeSha1JCE
java.lang.Object
com.maverick.sshd.components.SshKeyExchangeServer
com.maverick.sshd.components.jce.DiffieHellmanGroupExchangeSha1JCE
- All Implemented Interfaces:
- com.maverick.ssh.components.jce.AbstractKeyExchange
public class DiffieHellmanGroupExchangeSha1JCE
- extends SshKeyExchangeServer
- implements com.maverick.ssh.components.jce.AbstractKeyExchange
| Fields inherited from class com.maverick.sshd.components.SshKeyExchangeServer |
clientId, clientKexInit, exchangeHash, firstPacketFollows, hostKey, prvkey, pubkey, secret, serverId, serverKexInit, signature, transport, useFirstPacket |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DIFFIE_HELLMAN_GROUP_EXCHANGE_SHA1
public static final String DIFFIE_HELLMAN_GROUP_EXCHANGE_SHA1
- Constant for the algorithm name "diffie-hellman-group1-sha1".
- See Also:
- Constant Field Values
DiffieHellmanGroupExchangeSha1JCE
public DiffieHellmanGroupExchangeSha1JCE()
- Construct an uninitialized instance.
getAlgorithm
public String getAlgorithm()
- Get the algorithm name for this key exchange
- Specified by:
getAlgorithm in class SshKeyExchangeServer
- Returns:
- "diffie-hellman-group1-sha1"
init
public void init(TransportProtocol transport,
String clientIdentification,
String serverIdentification,
byte[] clientKexInit,
byte[] serverKexInit,
com.maverick.ssh.components.SshPrivateKey prvkey,
com.maverick.ssh.components.SshPublicKey pubkey,
boolean firstPacketFollows,
boolean useFirstPacket)
throws IOException
- Specified by:
init in class SshKeyExchangeServer
- Throws:
IOException
getProvider
public String getProvider()
- Specified by:
getProvider in interface com.maverick.ssh.components.jce.AbstractKeyExchange
exchangeGroup
public boolean exchangeGroup(byte[] msg)
throws com.maverick.ssh.SshException,
IOException
- Throws:
com.maverick.ssh.SshException
IOException
processMessage
public boolean processMessage(byte[] msg)
throws com.maverick.ssh.SshException,
IOException
- Specified by:
processMessage in class SshKeyExchangeServer
- Throws:
com.maverick.ssh.SshException
IOException
calculateExchangeHash
protected void calculateExchangeHash()
throws com.maverick.ssh.SshException
Calculates the exchange hash as an SHA1 hash of the following data.
String the client's version string (CR and NL excluded)
String the server's version string (CR and NL excluded)
String the payload of the client's SSH_MSG_KEXINIT
String the payload of the server's SSH_MSG_KEXINIT
String the host key
UnsignedInteger32 min
UnsignedInteger32 n
UnsignedInteger32 max
BigInteger p
BigInteger g
BigInteger e, exchange value sent by the client
BigInteger f, exchange value sent by the server
BigInteger K, the shared secret
- Throws:
IOException
com.maverick.ssh.SshException
Copyright © 2012. All Rights Reserved.