2009-02-26 5 views
83

Sono in procinto di creare una CSR e mi chiedo quale sia probabilmente la lunghezza migliore per la mia chiave RSA.Quale lunghezza della chiave RSA dovrei usare per i miei certificati SSL?

Ovviamente 384 è probabilmente troppo debole e 16384 è probabilmente troppo lento.

Esiste un consenso sulla lunghezza della chiave da utilizzare, in base alla durata del certificato?

Modifica: Come la maggior parte delle persone, voglio che la mia chiave sia ragionevolmente forte. Non sono preoccupato che la NSA possa forse rompere la mia chiave nel 2019. Voglio solo sapere qual è la migliore pratica quando si intende fare affari normali (ad esempio un sito di e-commerce)

risposta

91

Questa risposta è un po 'antiquato. Tieni presente che potrebbe non rappresentare la migliore pratica corrente.

Se si è tenuto aggiornato con il campo, si prega di considerare di migliorare questa risposta.


Bruce Schneier ha scritto nel 1999:

lunghezze chiave sono meglio, ma solo fino a un certo punto. AES [symmetric cypher] avrà chiavi a 128-bit, 192-bit e 256-bit lunghezze. Questo è molto più lungo di necessario per il prossimo futuro. Nel caso , non possiamo nemmeno immaginare un mondo in cui le ricerche di forza bruta a 256 bit sono possibili . Richiede alcune scoperte fondamentali in fisica e la nostra comprensione dell'universo . Per crittografia a chiave pubblica [cyphers asimmetrici], le chiavi a 2048 bit hanno lo stesso tipo di proprietà; più lungo è senza significato.

Wikipedia scrive:

RSA sostiene che a 1024 bit tasti [asimmetriche] rischiano di diventare violabile po 'di tempo tra il 2006 e 2010 e che le chiavi 2048 bit sono sufficienti fino al 2030 È necessario utilizzare una chiave RSA di lunghezza di 3072 bit se è richiesta la protezione oltre il 2030. suggerire che le chiavi RSA [asimmetriche] da 15360 bit sono equivalente in forza a 256 chiavi simmetriche .

RSA Laboratories scrive (l'ultima volta cambiato 2007 secondo archive.org):

RSA Laboratories raccomanda attualmente [asimmetrico] dimensioni chiave di 1024 bit per uso aziendale e 2048 bit per estremamente chiavi di valore come la coppia di chiavi radice utilizzata da un'autorità di certificazione

Sarebbe bello, se qualcuno che conosce di più, potrebbe rispondere perché c'è questa differenza.

+10

Le differenze ("256 bit funzionerà per sempre" da una parte e "1024 bit già schifo" dall'altra) sono dovute alle differenze tra * simmetrico * e * algoritmi asimmetrici * e tipi di chiavi usati in ciascuno. Con un dato "livello di sicurezza equivalente", vedrai numeri grezzi molto diversi per le lunghezze delle chiavi in ​​simmetrico rispetto asimmetrico. –

+1

A partire da settembre 2015, sembra che il settore non abbia accettato meno CSR a 2048 bit. Vedi sotto le risposte e [articolo di supporto Comodo] (https://support.comodo.com/index.php?/Default/Knowledgebase/Article/View/689/17/your-rsa-key-is-too-small-or -this-csr-uses-an-unsupported-key-size) – angularsen

+1

@anjdreas, Anche se è vero che 2048 è [il minimo indispensabile] (http://stackoverflow.com/questions/8453529/are-there-any-disadvantages -to-using-a-4096-bit-encrypted-ssl-certificate/8453915 # comment60753920_8453915), farò [attenzione] (http://webmasters.stackexchange.com/questions/3836/what-are-the -benefits-of-a-more-expensive-ssl-certificate/3837 # comment114486_3837) dei punti di quotazione degli articoli CA. – Pacerier

12

Dato che molti clienti richiedono la conformità con gli standard di crittografia NIST, utilizzo le indicazioni nella pubblicazione speciale NIST 800-57, Recommendation for Key Management Part 1, §5.6. La maggior parte delle nostre applicazioni è adatta per 112 "bit" di sicurezza, quindi corrisponde a triple-DES (o a un piccolo bump fino a 128 bit AES) per crittografie simmetriche e una chiave a 2048 bit per RSA. Vedere la Tabella 2 per un'equivalenza approssimativa.

Valido o no, essere in grado di riferirli a una pubblicazione NIST aiuta i clienti a sentirsi meglio in merito alla sicurezza (se si preoccupano di chiedere).

+0

L'articolo menzionato in questa risposta è stato rivisto in [Raccomandazione per la gestione delle chiavi: Parte 1: Generale (Revisione 3)] (http://csrc.nist.gov/publications/nistpubs/ 800-57/sp800-57_part1_rev3_general.pdf). La revisione attuale è luglio 2012 – AaA

+0

@BobSort Grazie, ho aggiornato il collegamento. – erickson

7

Il prossimo agosto, Microsoft distribuirà una patch a Server 2003/2008, Win7 ect .. che richiederà l'utilizzo di una chiave RSA a 1024 bit minima. Quindi potresti anche iniziare a fare quello standard "minimo indispensabile".

10

Le autorità di certificazione non firmano csr con dimensioni inferiori a 2048 bit, pertanto è necessario generare csr in modo che sia 2048 bit.

+5

[citazione necessaria] – CodesInChaos

+2

Fonte: http://answers.ssl.com/877/signing-request-needs-to-be-2048-bit-key-size - alcune CA come Affirmtrust/Trend Micro incorporano già 4096 bit radici quindi probabilmente cambieremo quelle nei prossimi anni – Yogi

+0

Ho appena provato Comodo e loro [non accettano meno di 2048 bit] (https://support.comodo.com/index.php?/Default/Knowledgebase/Article/ Vedi/689/17/il-tuo-rsa-chiave-è-troppo-piccolo-o-questo-CSR-uso-di-non supportato-key-size). – angularsen

0
+3

Non esattamente. La raccomandazione per il breve termine (almeno dieci anni) è 3072. RSA 15360 è a lungo termine (da trenta a cinquanta anni) e ha senso solo se si prevede di essere in grado di mantenere la chiave privata segreta per così tanto tempo. –

5

Per i certificati SSL utilizzati su siti web, il testo dal sito web Thawte.com (al 2014/07/22) è importante notare:

Gli standard di settore stabiliti dal Certification Authority/Browser (CA/B) Forum richiedono che i certificati emessi dopo il 1 gennaio 2014 DEVONO avere una lunghezza della chiave di almeno 2048 bit.

+0

Mouais, Facebook è ancora su 256 lunghezze chiave => http://b3.ms/XmWn0e1BMYOk –

+0

Per chiarire che Facebook non usa RSA usa ECDHE_ECDSA quindi la lunghezza della chiave più piccola. – Michael

1

Penso 4096 è ok per RSA

check This link

La fine della firma SHA-1 non è una novità, ma Google ha accelerato il processo di cromo. Nelle prossime settimane dovresti controllare i loro certificati SSL.

This may be helpful

+1

Potresti postare qualche link in inglese anche per favore? Il mio tedesco è piuttosto debole. –

+0

De juro, le chiavi RSA possono essere solo di lunghezza 1024, 2048 o 3072 bit (secondo PKCS # 1 2.2 e FIPS 186-4). – aprelev

+0

[Flame] (https://en.wikipedia.org/wiki/Flame_ (malware)) ha mostrato che gli attaccanti attaccheranno l'hash piuttosto che il modulo più grande. Se si utilizza SHA-1, allora si può anche usare un modulo a 1024 bit poiché l'hash e il modulo forniscono una sicurezza equivalente. Il modulo a 1024 bit renderà le operazioni più veloci del modulo 4096 più grande. – jww

3

avevo bisogno di creare diversi nuovi certificati SSL e non era soddisfatto delle risposte di cui sopra perché sembravano vaghe o datate così ho fatto un po 'di scavo. In conclusione, la risposta selezionata è corretta. "Le chiavi da 2048 bit ... più lunghe sono prive di significato".

L'aumento della lunghezza di bit a 4096 aggiunge un potentially meaningful load to your server (a seconda del carico esistente), offrendo in pratica un insignificant security upgrade

Se vi trovate in una situazione in cui avete bisogno di più di una chiave a 2048 bit che non è necessario un più lungo, è necessario un nuovo algoritmo