ED25519 keys
Would it be possible to add support for them, or is there a limitation which prevents that?
I'm not really sure what ED25519, but a quick look into it, the TPM doesn't support it. Do you have or know of TPMs that support this?
Basically it's a ssh key type that uses an alternative curve (Curve25519) to the standard NIST P-256 one (ie an alternative to ECDSA keys, which seems to be generally preferred). I don't know any (though I don't really know where to find that information), but good to know that it's something that has to be specifically supported in the hardware itself.
So TCG does know about it's in the registered algorithms https://trustedcomputinggroup.org/resource/tcg-algorithm-registry/ as TPM_ECC_CURVE_25519 but I don't find any mentions of it in the specification for the TPM https://trustedcomputinggroup.org/resource/tpm-library-specification/ and the PC Client Specification of https://trustedcomputinggroup.org/wp-content/uploads/TCG_PC_Client_Platform_TPM_Profile_PTP_Specification_Family_2.0_Revision_1.3v22.pdf. So my guess is their is no TPM that supports this in the wild and nothing in the pipeline.
Just FYI, it seems to be in the spec now, though not sure whether it's already supported anywhere: https://trustedcomputinggroup.org/wp-content/uploads/Trusted-Platform-Module-2.0-Library-Part-2-Version-184_pub.pdf#subsection.6.4 Though it does not seem to be in the PC recommendations (yet?): https://trustedcomputinggroup.org/wp-content/uploads/PC-Client-Specific-Platform-TPM-Profile-for-TPM-2p0-Version-1p06_pub.pdf
Reopened it since we could support it now