module documentation

An implementation of the OpenSSH known_hosts database.

Present Since
8.2
Class ConsoleUI A UI object that can ask true/false questions and post notifications on the console, to be used during key verification.
Class HashedEntry A HashedEntry is a representation of an entry in a known_hosts file where the hostname has been hashed and salted.
Class KnownHostsFile A structured representation of an OpenSSH-format ~/.ssh/known_hosts file.
Class PlainEntry A PlainEntry is a representation of a plain-text entry in a known_hosts file.
Class UnparsedEntry UnparsedEntry is an entry in a KnownHostsFile which can't actually be parsed; therefore it matches no keys and no hosts.
Variable log Undocumented
Class _BaseEntry Abstract base of both hashed and non-hashed entry objects, since they represent keys and key types the same way.
Function _b64encode Encode a binary string as base64 with no trailing newline.
Function _extractCommon Extract common elements of base64 keys from an entry in a hosts file.
Function _hmacedString Return the SHA-1 HMAC hash of the given key and string.

Undocumented

def _b64encode(s): (source)

Encode a binary string as base64 with no trailing newline.

Parameters
s:bytesThe string to encode.
Returns
bytesThe base64-encoded string.
def _extractCommon(string): (source)

Extract common elements of base64 keys from an entry in a hosts file.

Parameters
string:bytesA known hosts file entry (a single line).
Returns
tuplea 4-tuple of hostname data (bytes), ssh key type (bytes), key (Key), and comment (bytes or None). The hostname data is simply the beginning of the line up to the first occurrence of whitespace.
def _hmacedString(key, string): (source)

Return the SHA-1 HMAC hash of the given key and string.

Parameters
key:bytesThe HMAC key.
string:bytesThe string to be hashed.
Returns
bytesThe keyed hash value.