Ogni bit di una chiave aumenta la difficoltà di un attacco di forza bruta in modo esponenziale, ma c'è un compromesso. L'aggiunta di più bit alla chiave influirà negativamente sulla velocità di crittografia / decrittografia. La quantità effettiva di questa perdita di velocità dipende dall'algoritmo, ad esempio in RSA (in teoria) per una chiave n-bit
, lo sforzo computazionale per la crittografia è proporzionale a n^2
, mentre lo sforzo per la decifratura è proporzionale a n^3
, quindi raddoppiando la chiave in RSA significa che la crittografia sarà quattro volte più lenta e la decrittografia sarà (quasi) otto volte più lenta.
Un'altra cosa che penso merita di essere menzionata e ringrazia per Perseids per averlo indicato.
C'è un limite in cui più tempo necessario per rompere l'algoritmo diventa privo di significato, perché per scopi pratici è già "per sempre". Come un'analogia del "mondo reale", immagina di preparare razioni per un breve viaggio nel deserto e stai decidendo quanta acqua vuoi portare con te. Per una piccola quantità di acqua "più è meglio" è un approccio ragionevole, perché potrebbe essere necessario rimanere più a lungo del previsto o versare dell'acqua. Ma quando porti già con te l'intera Amazzonia, aumentare quella quantità di acqua sul pianeta non aiuta. Queste sono le dimensioni di cui stiamo parlando quando qualcuno cerca di convincerti a usare RSA a 8192 bit.
(Diagramma da Javamex )
Per gli algoritmi di curva ellittica, assumiamo che non sia possibile trovare il logaritmo discreto di un elemento di curva ellittica casuale rispetto a un punto base noto pubblicamente. Il vantaggio principale di ECC è in effetti la dimensione della chiave più piccola, ad esempio una chiave pubblica ECC a 256 bit dovrebbe fornire una sicurezza comparabile a una chiave pubblica RSA a 3072 bit. Sulla base del fatto che i principali algoritmi utilizzati per risolvere ECDLP (ad es. Passo gigante passo bambino) necessitano di n ^ (1/2) passi, l'aumento / diminuzione in n-bit influirà sulle velocità di de / encrption.
Per quanto riguarda la tua domanda a parte, non mi preoccuperei troppo ma, considerando che stai parlando di lunghezza, è preferibile "più a lungo".