SSH key exchange handling.
Function | getKex | Get a description of a named key exchange algorithm. |
Function | isEllipticCurve | Returns True if kexAlgorithm is an elliptic
curve. |
Function | isFixedGroup | Returns True if kexAlgorithm has a fixed prime
/ generator group. |
Function | getHashProcessor | Get the hash algorithm callable to use in key exchange. |
Function | getDHGeneratorAndPrime | Get the generator and the prime to use in key exchange. |
Function | getSupportedKeyExchanges | Get a list of supported key exchange algorithm names in order of preference. |
Interface | _IKexAlgorithm | An _IKexAlgorithm
describes a key exchange algorithm. |
Interface | _IFixedGroupKexAlgorithm | An _IFixedGroupKexAlgorithm
describes a key exchange algorithm with a fixed prime / generator
group. |
Interface | _IEllipticCurveExchangeKexAlgorithm | An _IEllipticCurveExchangeKexAlgorithm
describes a key exchange algorithm that uses an elliptic curve exchange
between the client and server. |
Interface | _IGroupExchangeKexAlgorithm | An _IGroupExchangeKexAlgorithm
describes a key exchange algorithm that uses group exchange between the
client and server. |
Class | _Curve25519SHA256 | Elliptic Curve Key Exchange using Curve25519 and SHA256. Defined in https://datatracker.ietf.org/doc/draft-ietf-curdle-ssh-curves/. |
Class | _Curve25519SHA256LibSSH | As _Curve25519SHA256 ,
but with a pre-standardized algorithm name. |
Class | _ECDH256 | Elliptic Curve Key Exchange with SHA-256 as HASH. Defined in RFC 5656. |
Class | _ECDH384 | Elliptic Curve Key Exchange with SHA-384 as HASH. Defined in RFC 5656. |
Class | _ECDH512 | Elliptic Curve Key Exchange with SHA-512 as HASH. Defined in RFC 5656. |
Class | _DHGroupExchangeSHA256 | Diffie-Hellman Group and Key Exchange with SHA-256 as HASH. Defined in RFC 4419, 4.2. |
Class | _DHGroupExchangeSHA1 | Diffie-Hellman Group and Key Exchange with SHA-1 as HASH. Defined in RFC 4419, 4.1. |
Class | _DHGroup14SHA1 | Diffie-Hellman key exchange with SHA-1 as HASH and Oakley Group 14 (2048-bit MODP Group). Defined in RFC 4253, 8.2. |
Get a description of a named key exchange algorithm.
Parameters | kexAlgorithm | The key exchange algorithm name. (type: bytes ) |
Returns | A description of the key exchange algorithm named by
kexAlgorithm . (type: _IKexAlgorithm ) | |
Raises | ConchError | if the key exchange algorithm is not found. |
Returns True
if kexAlgorithm
is an elliptic
curve.
Parameters | kexAlgorithm | The key exchange algorithm name. (type: str ) |
Returns | True if kexAlgorithm is an elliptic curve,
otherwise False . (type: bool ) |
Get the hash algorithm callable to use in key exchange.
Parameters | kexAlgorithm | The key exchange algorithm name. (type: bytes ) |
Returns | A callable hash algorithm constructor (e.g. hashlib.sha256 ). (type: callable ) |
Get a list of supported key exchange algorithm names in order of preference.
Returns | A list of supported key exchange algorithm names. (type: list of bytes ) |