public class DiffieHellmanEcdh extends SshKeyExchangeClient implements SshKeyExchange<SshClientContext>
| Modifier and Type | Field and Description |
|---|---|
static int |
SSH_MSG_KEX_ECDH_INIT |
static int |
SSH_MSG_KEX_ECDH_REPLY |
e, exchangeHash, f, firstPacketFollows, hostKey, key, secret, signature, transport, useFirstPacket| Modifier | Constructor and Description |
|---|---|
protected |
DiffieHellmanEcdh(java.lang.String name,
java.lang.String curve,
java.lang.String hashAlgorithm,
SecurityLevel securityLevel,
int priority) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
calculateExchangeHash()
Calculates the exchange hash as an SHA1 hash of the following data.
|
java.lang.String |
getAlgorithm() |
java.lang.String |
getProvider() |
void |
init(SshTransport<SshClientContext> transport,
java.lang.String clientId,
java.lang.String serverId,
byte[] clientKexInit,
byte[] serverKexInit,
SshPrivateKey prvkey,
SshPublicKey pubkey,
boolean firstPacketFollows,
boolean useFirstPacket) |
boolean |
processMessage(byte[] msg)
Process a key exchange message
|
void |
test() |
getExchangeHash, getHashAlgorithm, getHostKey, getPriority, getSecret, getSecurityLevel, getSignature, hasReceivedNewKeys, hasSentNewKeys, isComplete, reset, setReceivedNewKeys, setSentNewKeysclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetExchangeHash, getHashAlgorithm, getHostKey, getSecret, getSignature, hasReceivedNewKeys, hasSentNewKeys, setReceivedNewKeys, setSentNewKeysgetPriority, getSecurityLevelpublic static final int SSH_MSG_KEX_ECDH_INIT
public static final int SSH_MSG_KEX_ECDH_REPLY
protected DiffieHellmanEcdh(java.lang.String name,
java.lang.String curve,
java.lang.String hashAlgorithm,
SecurityLevel securityLevel,
int priority)
public java.lang.String getAlgorithm()
getAlgorithm in interface SshComponentgetAlgorithm in interface SecureComponentgetAlgorithm in interface SshKeyExchange<SshClientContext>protected void calculateExchangeHash()
throws SshException
SshKeyExchangeClientCalculates 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
calculateExchangeHash in class SshKeyExchangeClientSshExceptionpublic void init(SshTransport<SshClientContext> transport, java.lang.String clientId, java.lang.String serverId, byte[] clientKexInit, byte[] serverKexInit, SshPrivateKey prvkey, SshPublicKey pubkey, boolean firstPacketFollows, boolean useFirstPacket) throws java.io.IOException, SshException
init in interface SshKeyExchange<SshClientContext>java.io.IOExceptionSshExceptionpublic boolean processMessage(byte[] msg)
throws SshException,
java.io.IOException
SshKeyExchangeClientprocessMessage in interface SshKeyExchange<SshClientContext>processMessage in class SshKeyExchangeClientSshExceptionjava.io.IOExceptionpublic java.lang.String getProvider()
getProvider in interface SshKeyExchange<SshClientContext>public void test()
throws java.io.IOException,
SshException
test in interface SshKeyExchange<SshClientContext>java.io.IOExceptionSshExceptionCopyright © 2022. All rights reserved.