package dns

  1. Overview
  2. Docs

Secure shell fingerprint

The secure shell (SSH) applies trust on first use, and can store fingerprints as SSHFP records in DNS, which is then used as a second channel.

type algorithm =
  1. | Rsa
  2. | Dsa
  3. | Ecdsa
  4. | Ed25519
  5. | Unknown of int
    (*

    The type of supported algorithms.

    *)
val algorithm_to_int : algorithm -> int

algorithm_to_int a is the 8 bit integer representation of algorithm a.

val int_to_algorithm : int -> algorithm

int_to_algorithm i decodes i to the algorithm constructor.

  • raises Invalid_argument

    if i does not fit in one octet.

val pp_algorithm : algorithm Fmt.t

pp_algorithm ppf a pretty-prints the algorithm a on ppf.

type typ =
  1. | SHA1
  2. | SHA256
  3. | Unknown of int
    (*

    The type of supported SSH fingerprint types.

    *)
val typ_to_int : typ -> int

typ_to_int t is the 8 bit integer representation of typ t.

val int_to_typ : int -> typ

int_to_typ i decodes i to the typ constructor.

  • raises Invalid_argument

    if i does not fit in one octet.

val pp_typ : typ Fmt.t

pp_typ ppf t pretty-prints the typ t on ppf.

type t = {
  1. algorithm : algorithm;
  2. typ : typ;
  3. fingerprint : Cstruct.t;
}

The type of a SSH fingerprint record, consisting of algorithm, typ, and actual fingerprint.

val pp : t Fmt.t

pp ppf t pretty-prints the SSH fingerprint record t on ppf.

val compare : t -> t -> int

compare a b compares the SSH fingerprint record a with b by comparing the individual fields in order.