Вам все они нужны?
Нет, вашему ssh-серверу нужен только один, а клиенту нужно только поддерживать этот тип ключа для ssh-соединений.
RSA, DSA, ECDSA, EdDSA и Ed25519 все используются для цифровой подписи, но только RSA также может использоваться для шифрования.
RSA ( Rivest-Shamir-Adleman ) является одной из первых криптосистем с открытым ключом и широко используется для безопасной передачи данных. Его безопасность зависит от целочисленной факторизации , поэтому безопасный RNG (генератор случайных чисел) никогда не нужен. По сравнению с DSA RSA быстрее для проверки подписи, но медленнее для генерации.
DSA ( алгоритм цифровой подписи ) является федеральным стандартом обработки информации для цифровых подписей. Это безопасность зависит от дискретной логарифмической проблемы. По сравнению с RSA DSA быстрее для генерации подписи, но медленнее для проверки. Безопасность может быть нарушена, если используются плохие генераторы чисел .
ECDSA ( алгоритм цифровой подписи эллиптической кривой ) является реализацией алгоритма цифровой подписи DSA (эллиптической кривой). Криптография с эллиптической кривой способна обеспечить относительно тот же уровень безопасности, что и RSA, с меньшим ключом. Это также разделяет недостаток DSA в том, что он чувствителен к плохим RNG.
EdDSA ( алгоритм цифровой подписи с кривой Эдвардса ) представляет собой схему цифровой подписи, использующую вариант подписи Шнорра на основе кривых скрученных Эдвардса . Создание подписи является детерминированным в EdDSA, и ее безопасность основана на неразрешимости некоторых дискретных логарифмических проблем, поэтому она более безопасна, чем DSA и ECDSA, которая требует высокого качества случайности для каждой подписи.
Ed25519 , схема подписи EdDSA, но с использованием SHA-512/256 и Curve25519 ; это безопасная эллиптическая кривая, которая обеспечивает лучшую безопасность, чем DSA, ECDSA и EdDSA, плюс имеет лучшую производительность (не заметно для человека).
Другие примечания
Наиболее широко используются ключи RSA, поэтому они лучше всего поддерживаются.
ECDSA, (представленный в OpenSSH v5.7 ), вычислительно легче, чем DSA, но разница не заметна, если у вас нет машины с очень низкой вычислительной мощностью.
Начиная с OpenSSH 7.0 , SSH больше не поддерживает ключи DSA (ssh-dss) по умолчанию. Ключ DSA используется везде, согласно стандарту SSH (RFC 4251 и последующие).
Ed25519 был представлен в openSSH 6.5 .