I've been upgrading my ssh keys on all my machines, and came across a bit of weirdness with ssh-add.
If I create an ed25519 key and then try to ssh-add it fails. If I take the original rsa key, and convert it with ssh-keygen then ssh-add it works.
reproduce the problem
# ssh-keygen -t ed25519 -a 256
Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/trevor/.ssh/id_ed25519):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/trevor/.ssh/id_ed25519.
Your public key has been saved in /home/trevor/.ssh/id_ed25519.pub.
Now lets try to add it.
$ ssh-add
Enter passphrase for /home/trevor/.ssh/id_ed25519:
Could not add identity "/home/trevor/.ssh/id_ed25519": communication with agent failed
If I try to add a normal rsa key it works
# ssh-add
Enter passphrase for /home/trevor/.ssh/id_rsa:
Identity added: /home/trevor/.ssh/id_rsa (/home/trevor/.ssh/id_rsa)
Have I found a bug with ssh-add or is it a problem with Ubuntu.
Running all the above on Ubuntu 16.04LTS
apt list --installed | grep ssh
libssh-4/xenial,now 0.6.3-4.3 amd64 [installed,automatic]
libssh-gcrypt-4/xenial,now 0.6.3-4.3 amd64 [installed,automatic]
libssh2-1/xenial-updates,xenial-security,now 1.5.0-2ubuntu0.1 amd64 [installed,automatic]
openssh-client/xenial-security,now 1:7.2p2-4ubuntu2.1 amd64 [installed,upgradable to: 1:7.2p2-4ubuntu2.2]
openssh-server/xenial-security,now 1:7.2p2-4ubuntu2.1 amd64 [installed,upgradable to: 1:7.2p2-4ubuntu2.2]
openssh-sftp-server/xenial-security,now 1:7.2p2-4ubuntu2.1 amd64 [installed,upgradable to: 1:7.2p2-4ubuntu2.2]
ssh-askpass/xenial,now 1:1.2.4.1-9 amd64 [installed]
ssh-import-id/xenial,xenial,now 5.5-0ubuntu1 all [installed,automatic]
sshpass/xenial,now 1.05-1 amd64 [installed,automatic]
Doing this on RHEL v7 has no issues.