com.maverick.ssh.components.jce
Class DiffieHellmanGroup14Sha1
java.lang.Object
com.maverick.ssh.components.SshKeyExchangeClient
com.maverick.ssh.components.jce.DiffieHellmanGroup14Sha1
- All Implemented Interfaces:
- AbstractKeyExchange, SshKeyExchange
public class DiffieHellmanGroup14Sha1
- extends SshKeyExchangeClient
- implements AbstractKeyExchange
An implementation of the diffie-hellman-group1-sha1 key exchange mechanism
that uses JCE provider for DH agreement and Digest.
- Author:
- Lee David Painter
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DIFFIE_HELLMAN_GROUP14_SHA1
public static final String DIFFIE_HELLMAN_GROUP14_SHA1
- Constant for the algorithm name "diffie-hellman-group1-sha1".
- See Also:
- Constant Field Values
DiffieHellmanGroup14Sha1
public DiffieHellmanGroup14Sha1()
performClientExchange
public void performClientExchange(String clientIdentification,
String serverIdentification,
byte[] clientKexInit,
byte[] serverKexInit)
throws SshException
- Specified by:
performClientExchange in class SshKeyExchangeClient
- Throws:
SshException
getProvider
public String getProvider()
- Specified by:
getProvider in interface AbstractKeyExchange
calculateExchangeHash
protected void calculateExchangeHash()
throws 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
BigInteger e, exchange value sent by the client
BigInteger f, exchange value sent by the server
BigInteger K, the shared secret
- Throws:
IOException
SshException
getAlgorithm
public String getAlgorithm()
- Specified by:
getAlgorithm in class SshKeyExchangeClient
isKeyExchangeMessage
public boolean isKeyExchangeMessage(int messageid)
- Specified by:
isKeyExchangeMessage in class SshKeyExchangeClient
Copyright © 2012. All Rights Reserved.