SSH keys
GitPersona manages the SSH keys your profiles authenticate with. It can generate new keys, import existing ones, and keep a managed block in your SSH config so connections use the right identity.
Overview
Each SSH key is tracked with its algorithm, fingerprint, file paths, an optional comment, and an optional host alias. A key can be assigned to a profile so it activates together with that profile.
Generating a key
When you generate a key, GitPersona asks for:
- A label to identify the key.
- An algorithm — Ed25519 or RSA.
- An output folder and file name for the key pair.
- An optional comment.
- An optional host alias and host name for the SSH config entry.
GitPersona writes the key pair to disk and registers it. You can then assign it to a profile.
Importing a key
Already have keys under ~/.ssh? Import them instead of generating new ones:
- Choose the private key file to import.
- Optionally set a host alias and host name for its SSH config entry.
- GitPersona reads the key's algorithm and fingerprint and adds it to the list.
GitPersona can also scan your SSH directory to discover importable keys, and reveal a key's location in your file manager.
Assigning a key to a profile
Assign a key to a profile so the two travel together. When the profile is active, its assigned key is the one SSH uses. Un-assigning a key detaches it without deleting the file.
The managed SSH config
GitPersona maintains a managed block of Host stanzas in your ~/.ssh/config. Each stanza maps a host alias to a host name, user, and identity file, so Git picks the correct key for the active identity. You can preview the generated configuration before it's applied, and open the config file directly.
What is stored
GitPersona stores references and metadata only— algorithm, fingerprint, file paths, comment, and host alias. Private key bytes are never held in GitPersona's data, serialized, or logged; the keys stay in their files on disk where SSH expects them.