Dati statistici sulle prestazioni di vari algoritmi di crittografia

4

Come posso trovare dati statistici sulle prestazioni di vari sistemi di crittografia, come RSA, DSA, ECC ecc.?

    
posta adyusuf 26.11.2011 - 13:13
fonte

2 risposte

7

Troverai molti dati sul sito eBACS (in particolare nella sezione "eBATS" per crittografia asimmetrica). Nota, tuttavia, che:

  • Questo sito aggrega molte misure, quindi il tutto è piuttosto travolgente.
  • Le prestazioni dipendono non solo dall'algoritmo, ma anche dagli sforzi di ottimizzazione investiti da chiunque abbia scritto il codice.
  • L'ottimizzazione a basso livello dipende molto dai dettagli del sistema di destinazione, quindi puoi osservare variazioni semi-drammatiche quando usi lo stesso codice su sistemi simili ma non identici (specialmente se la dimensione del codice è vicina alla dimensione della cache L1 ).
  • Su tutte le misure eBACS ci sono macchine piuttosto "grandi", che possono eseguire il framework. Quindi questi sono PC, sistemi desktop e server. eBACS singolarmente manca di misure su sistemi più piccoli come ARM9 o piccoli processori Mips, come si trovano nei router domestici, nei telefoni cellulari economici e in apparecchi simili. E nessun dato su oggetti ancora più piccoli (smartcard).
  • Se si dispone di un server che utilizza una chiave privata per la generazione di firme o la decrittografia asimmetrica e se si è intenzionati a fare qualcosa di serio, la chiave privata verrà memorizzata in un Modulo di sicurezza hardware , che è una sorta di smart card gonfiata. L'operazione della chiave privata avviene quindi nell'HSM e le prestazioni del sistema host (un PC) sono totalmente irrilevanti. L'HSM utilizzerà un circuito appositamente progettato per ottimizzare l'operazione e quel circuito non reagisce come una CPU generica, in termini di prestazioni.

(Per l'ultimo punto, un esempio è la velocità delle operazioni della curva ellittica su vari campi.L'implementazione basata sulla CPU, cioè il software, sarà molto più veloce con curve sui campi primi GF (p) di per curve su campi binari GF (2 m ) ; ma FPGA / ASIC dedicati è vero il contrario.)

Quindi, mentre puoi accumulare cifre, tieni presente che il problema di definire una misura generale di misura adatta a tutte le dimensioni per un algoritmo crittografico asimmetrico, è difficile.

    
risposta data 26.11.2011 - 15:11
fonte
7

Se stai chiedendo informazioni sulle prestazioni dei vari algoritmi di crittografia, è possibile ottenere un buon punto di partenza eseguendo openssl speed . Ad esempio, ecco un esempio di output da OpenSSL:

                  sign    verify    sign/s verify/s
rsa 1024 bits 0.000489s 0.000025s   2046.5  39673.9
rsa 2048 bits 0.003075s 0.000089s    325.3  11241.0
                  sign    verify    sign/s verify/s
dsa 1024 bits 0.000256s 0.000291s   3899.0   3435.1
dsa 2048 bits 0.000880s 0.001048s   1136.3    954.2

È possibile vedere che la verifica della firma RSA e le operazioni di crittografia RSA sono estremamente veloci (operazioni da 10.000 a 40.000 al secondo, a seconda del livello di sicurezza). La generazione delle firme RSA e la decifrazione RSA sono più lente (300-2K ops / sec). La generazione delle firme DSA e la verifica delle firme vengono eseguite all'incirca alla stessa velocità (1K-3K ops / sec).

Questo benchmark non mostra la crittografia ECC, ma in generale, dovresti aspettarti che la crittografia ECC sia più veloce e produca firme / cipherti più brevi di DSA, per un determinato livello di sicurezza.

    
risposta data 26.11.2011 - 14:13
fonte

Leggi altre domande sui tag