rsa-sha2-512.

The current way an RSA key signs over SSH. It keeps the RSA key you already have but pairs it with SHA-512, replacing the old SHA-1 algorithm that everyone has moved off.

// definition

rsa-sha2-512 is an SSH signature algorithm that signs with an RSA key using the SHA-512 hash. It is the modern replacement for the legacy ssh-rsa algorithm, which used SHA-1. The RSA key itself is unchanged; only the hash function differs.

What it is

RSA keys have been usable with SSH for a long time, but the original signature algorithm, named ssh-rsa, relied on SHA-1. SHA-1 is no longer considered safe against collision attacks, so OpenSSH introduced rsa-sha2-256 and rsa-sha2-512, which use the SHA-2 family instead. The same RSA private key can produce any of these signatures; the algorithm name records which hash was used.

Why it matters

It means an existing RSA key is not a reason to stay on deprecated cryptography. You can sign with the RSA key you already carry and still produce a signature verifiers accept today. For new keys, ed25519 is smaller and simpler, but RSA support removes a migration step for people who are not ready to rotate.

// in AgePony From 4.0, AgePony can sign with an in-app RSA key as well as ed25519. RSA signatures are produced as rsa-sha2-512, so they use SHA-512 rather than the deprecated SHA-1, and they verify with standard ssh-keygen.

Related terms

Common questions.

Is RSA still safe to sign with?

A sufficiently large RSA key signed with rsa-sha2-512 is fine. What is deprecated is the old ssh-rsa algorithm, which paired RSA keys with SHA-1. The key can be the same; the hash is what changed.

Should I use RSA or ed25519?

ed25519 is smaller and the usual default. RSA support exists so you can sign with a key you already have, rather than minting a new one.

Get AgePony

Free file encryption for iOS and Android. No accounts, no tracking, no servers.