Skip to content

Keys

Verification sessions compare the public keys offered by a user’s SSH client against the keys configured on the session.

The public_key field accepts public keys in OpenSSH authorized key format or PEM format.

OpenSSH example:

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAA... user@example.com

PEM example:

-----BEGIN PUBLIC KEY-----
...
-----END PUBLIC KEY-----

Each configured key can include:

FieldDescription
nameOptional label for display in the app.
external_idOptional identifier from your system.
public_keyThe key to verify, sent when creating or updating the session.

Responses include normalized key data:

FieldDescription
public_key_sshKey in OpenSSH format.
public_key_pemKey in PEM format.
public_key_md5MD5 fingerprint.
public_key_sha256SHA256 fingerprint.
public_key_algorithmAlgorithm, such as ssh-ed25519 or ssh-rsa.
verified_atTime the key was verified, or null if it has not been verified.

Use SHA256 fingerprints for user-facing comparisons whenever possible.

When match_all_keys is disabled, the session can be verified by one matching key. When match_all_keys is enabled, all configured keys must be verified before the session succeeds.

Enable multi_key when SSHVerify should continue checking multiple keys from the same connection instead of stopping at the first match.