Go to the latest version of this document.

# ``twisted`.`conch`.`client`.`knownhosts``

module documentation
(source)

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.

log = (source)

Undocumented

def _b64encode(s: `bytes`) -> `bytes`: (source)

Encode a binary string as base64 with no trailing newline.

Parameters
s:`bytes` | The string to encode.

Returns
`bytes` | The base64-encoded string.

def _extractCommon(string: `bytes`) -> `tuple[bytes, bytes, Key, bytes | None]`: (source)

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

Parameters
string:`bytes` | A known hosts file entry (a single line).

Returns
`tuple[bytes, bytes, Key, bytes | None]` | a 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: `bytes`, string: `bytes | str`) -> `bytes`: (source)

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

Parameters
key:`bytes` | The HMAC key.
string:`bytes | str` | The string to be hashed.

Returns
`bytes` | The keyed hash value.