什么是 ed25519
ed25519 是一个相对较新的加密算法,实现了 Edwards-curve Digital Signature Algorithm(EdDSA)。但实际上 ed25519 早已经在 5 年前就被 OpenSSH 实现,并不算什么前沿科技。但很多人,即使是每天都使用 SSH/SCP 的人可能并不清楚这个新类型 key。
不过要注意的是并不是所有的软件目前都实现了 ed25519,但是大多数最近的操作系统 SSH 都已经支持了。
ed25519 的好处
- 相较于 RSA key,最明显的一个好处就是 ed25519 key 非常短,这就非常方便存储以及传输 key
- 另外就是产生和校验更快
- collision resilience,这意味着可以有效的避免 hash 碰撞攻击
生成 ed25519 SSH key
ssh-keygen -t ed25519 -C "[email protected]"
可以检查 ~/.ssh
目录下的 key,会发现 ed25519 的公钥只有简短的一行:
ssh-ed25519 AAAACxxxx [email protected]