"Il che è più sicuro" non è la migliore domanda da porre. Tutti sono sufficientemente sicuri fintanto che:
- Sono implementati e utilizzati correttamente;
- Sono utilizzati con una dimensione della chiave sufficientemente grande.
ECDSA e Ed25519 sono basati su curve ellittiche . Il vantaggio è che possono raggiungere lo stesso obiettivo di sicurezza con chiavi più brevi di quelle richieste da RSA, il che si traduce in prestazioni migliori. Le chiavi a curve ellittiche a 256-bit sono generalmente intese a fornire sicurezza simile a cifrari simmetrici a 128 bit come AES-128. Con RSA, le chiavi da 2.048 bit sono considerate le attuali dimensioni minime della chiave sicura, fornendo qualcosa come la sicurezza a 112 bit (che non è meno sicura in pratica della sicurezza a 128 bit).
Il sito KeyLength contiene vari consigli per la dimensione della chiave per questi algoritmi.
Ed25519 è più recente di ECDSA. I suoi principali vantaggi sono velocità, semplicità e infallibilità : entrambi sono sicuri se usati correttamente, ma ECDSA è più difficile da usare correttamente. L'errore ECDSA più famoso è Bug della firma PS3 di Sony , causato dai programmatori di Sony che hanno implementato ECDSA in modo errato. Ed25519 non è vulnerabile all'errore commesso dai programmatori di Sony, né ad altri "trucchi" che sono le implementazioni ECDSA.
Quindi è ampiamente ritenuto che Ed25519 sia il migliore dei tre, poiché fornisce:
- Una sicurezza sufficiente per il prossimo futuro. (Tutti e tre saranno brindisi se viene costruito un computer quantistico pratico).
- Molto buono a prova di errore - meno vulnerabile agli errori del programmatore e dell'utente;
- Tasti più piccoli e prestazioni molto veloci.
... ma nessuno di questi fattori dovrebbe impedirti di utilizzare ECDSA o RSA se, per esempio, stai utilizzando un sistema in cui uno di questi è disponibile ma non lo è Ed25519. Allo stesso modo, se si dispone di un sistema che utilizza RSA o ECDSA, probabilmente non ha senso aggiornarlo a Ed25519. Anche RSA ed ECDSA hanno l'approvazione NIST e NSA e Ed25519 no, quindi se questo è importante per te allora Ed25519 è fuori.