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.
def getKex(kexAlgorithm):

Get a description of a named key exchange algorithm.

ParameterskexAlgorithmThe key exchange algorithm name. (type: bytes)
ReturnsA description of the key exchange algorithm named by kexAlgorithm. (type: _IKexAlgorithm)
RaisesConchErrorif the key exchange algorithm is not found.
def isEllipticCurve(kexAlgorithm):

Returns True if kexAlgorithm is an elliptic curve.

ParameterskexAlgorithmThe key exchange algorithm name. (type: str)
ReturnsTrue if kexAlgorithm is an elliptic curve, otherwise False. (type: bool)
def isFixedGroup(kexAlgorithm):

Returns True if kexAlgorithm has a fixed prime / generator group.

ParameterskexAlgorithmThe key exchange algorithm name. (type: bytes)
ReturnsTrue if kexAlgorithm has a fixed prime / generator group, otherwise False. (type: bool)
def getHashProcessor(kexAlgorithm):

Get the hash algorithm callable to use in key exchange.

ParameterskexAlgorithmThe key exchange algorithm name. (type: bytes)
ReturnsA callable hash algorithm constructor (e.g. hashlib.sha256). (type: callable)
def getDHGeneratorAndPrime(kexAlgorithm):

Get the generator and the prime to use in key exchange.

ParameterskexAlgorithmThe key exchange algorithm name. (type: bytes)
ReturnsA tuple containing long generator and long prime. (type: tuple)
def getSupportedKeyExchanges():

Get a list of supported key exchange algorithm names in order of preference.

ReturnsA list of supported key exchange algorithm names. (type: list of bytes)
API Documentation for twisted, generated by pydoctor at 2020-03-25 17:34:30.