Skip to content

Host Key Verification

To defend against Man-In-The-Middle (MITM) attacks, every time you connect to a server, the server presents its Host Key Fingerprint to prove its identity.

PhanTerm features an exceptionally strict and transparent known_hosts trust verification mechanism, prioritizing your security whenever any inconsistency occurs.

When connecting to a new, unknown host, PhanTerm displays a confirmation dialog in the center of the screen, showing:

  • The server’s address and port
  • The negotiated encryption algorithm (Key Type, e.g., ssh-ed25519 or ecdsa-sha2-nistp256)
  • The secure hash fingerprint (SHA-256)

You must verify this fingerprint. After pressing y to accept trust, PhanTerm securely records this combination (host:port + key_type) locally in known_hosts.yaml.

PhanTerm employs a trust mechanism isolated by specific algorithm:

  1. Multi-Algorithm Trust per Host: A server may present fingerprints for multiple algorithms simultaneously. If you previously trusted a server’s RSA fingerprint but today it prefers Ed25519 for the handshake, PhanTerm still treats this as a “new key type” and asks for your confirmation again. This is secure, as a server can legitimately possess multiple keys of different algorithms.
  2. Silent Pass: For host:port + key_type combinations that have already been confirmed and trusted, subsequent connections will securely pass without prompting.
  3. Fail-Closed Security Block: If you previously trusted an Ed25519 key for a machine, but one day that host returns a different Ed25519 key, PhanTerm will immediately block the connection and display a red security alert.