La chiave RSA a 512 bit è sicura se usata temporaneamente?

4

Una chiave RSA a 512 bit è sicura quando una nuova chiave viene generata e utilizzata approssimativamente una volta alla settimana? La chiave è utilizzata solo per la firma dei messaggi, non per la crittografia dei dati sensibili.

Questo è per un sistema dove ci sono molte connessioni estremamente brevi p2p (si pensi ad un pacchetto UDP come richiesta, e uno indietro come risposta), e l'overhead per 1024 o anche 2048 bit RSA è molto alto.

    
posta orlp 07.01.2013 - 21:39
fonte

3 risposte

9

Per firmare solo, una chiave RSA a 512 bit dovrebbe resistere almeno a qualche giorno, probabilmente a poche settimane, anche contro determinati aggressori. Questo è ancora "ragionevole" finché si verifica la firma "presto". Puoi immaginare che dal momento in cui la chiave pubblica è stata resa pubblica, hai pochi minuti, al massimo delle ore di sicurezza, dopo di che devi considerare la chiave come scaduta e rifiutare di fidarti delle firme calcolate con quella chiave.

Però trovo il tuo caso d'uso un po 'dubbioso. Generare le chiavi RSA sarà piuttosto costoso per quanto riguarda il calcolo di una firma. Se ti preoccupi della dimensione della firma, dovresti esaminare DSA o le sue varianti di curve ellittiche. ECDSA con una curva a 160 bit utilizzerà firme a 320 bit (molto più piccole delle firme a 512 bit per RSA-512) pur essendo sostanzialmente più strong (ECDSA con una curva a 160 bit è ancora oltre la tecnologicamente fattibile) e sarà ancora competitivo per quanto riguarda l'utilizzo della CPU.

Inoltre, la parte più difficile della crittografia asimmetrica è la distribuzione delle chiavi (questo è ciò che è PKI ); se generi più chiavi, rendi questa parte solo più difficile.

    
risposta data 07.01.2013 - 21:48
fonte
3

Il tempo non è così importante. La domanda è quanti soldi quell'attaccante è disposto a spendere. Da quanto ho sentito, la rottura di RSA 512 costa attualmente 75-150 $ e 30 ore con il cloud computing.

Abbiamo una domanda molto simile su crypto.SE: L'RSA a 512 bit è ancora sicuro per la generazione di firme?

Ma hai preso in considerazione l'utilizzo della crypto della curva ellittica? Ad esempio, l'implementazione di Curve25519 in NaCl può fare > 10000 scambi di chiavi al secondo su un computer moderno. Non firma, ma utilizza la crittografia autenticata, che in genere funziona bene in uno schema di richiesta-risposta. Se si scambiano più messaggi con la stessa parte, è possibile memorizzare nella cache il risultato dello scambio di chiavi e ancora autenticarli tutti. Se hai davvero bisogno di firmare, puoi usare Ed25519 che ha prestazioni piuttosto simili.

    
risposta data 07.01.2013 - 21:49
fonte
2

Le metriche generali indicano che lo spazio delle chiavi dovrebbe essere abbastanza grande da non poter indovinare la chiave entro il tempo di protezione della trasmissione.

Temo di non sapere a priori quale sia il tempo medio in cui la forza bruta forza una chiave RSA a 512 bit è con i computer attuali .... ma questo è il valore che cerco, e quindi confrontalo per quanto tempo hai bisogno che il controllo di integrità sia fattibile. Ad esempio, se il controllo dell'integrità è importante solo per la durata di una connessione (minuti), potrebbe andare bene, ma se il controllo di integrità si trova su un messaggio che viene archiviato e poi verificato e considerato attendibile, dopo la settimana è scaduto, la validità della tua chiave è molto più di una settimana e tu (probabilmente) hai bisogno di uno spazio chiave più grande.

    
risposta data 07.01.2013 - 21:49
fonte