Perché c'è un "des-ede3-cbc" nella mia chiave privata rsa?

6

Ho creato una chiave privata OpenSSL RSA e una richiesta di certificato con 4096 bit con il seguente comando:

openssl req -newkey 4096

Quando visualizzo la chiave privata con

openssl asn1parse -in privkey

Ottengo il seguente risultato:

    0:d=0  hl=4 l=2446 cons: SEQUENCE          
    4:d=1  hl=2 l=  64 cons: SEQUENCE          
    6:d=2  hl=2 l=   9 prim: OBJECT            :PBES2
    17:d=2  hl=2 l=  51 cons: SEQUENCE          
    19:d=3  hl=2 l=  27 cons: SEQUENCE          
    21:d=4  hl=2 l=   9 prim: OBJECT            :PBKDF2
    32:d=4  hl=2 l=  14 cons: SEQUENCE          
    34:d=5  hl=2 l=   8 prim: OCTET STRING      [HEX DUMP]:XXXXXXXXX
    44:d=5  hl=2 l=   2 prim: INTEGER           :0800
    48:d=3  hl=2 l=  20 cons: SEQUENCE          
    50:d=4  hl=2 l=   8 prim: OBJECT            :des-ede3-cbc

Ciò che mi infastidisce è la parte con des-ede3-cbc. Perché c'è des-ede3-cbc nella mia chiave privata RSA? Per quanto ne so, "DES" è uno standard di crittografia degli anni settanta e viene considerato rotto.

    
posta rosix 28.06.2015 - 18:12
fonte

2 risposte

8

Why is there des-ede3-cbs in my rsa private key?

Perché la tua chiave privata è crittografata con questo.

As far as I know "DES" is an encryption standard from the seventies and it's considered broken.

Yup. Abbastanza. Prendi in considerazione la possibilità di ricodificarlo con AES in questo modo:

$ openssl rsa -in desencryptedprivkey.pem -out aesencryptedprivkey.pem -aes128

EDIT 2015-06-29: abbastanza buono dopo tutto
Leggendo la risposta di Bruno mi rendo conto ora che in realtà sono ancora 112 bit di sicurezza nella modalità predefinita. E questo è abbastanza buono.
(Ciò che mi ha reso insicuro è che puoi eseguire triple-DES con 1, 2 o 3 tasti e non ero sicuro che questa fosse davvero la versione a 3 tasti, ma risulta che lo sia effettivamente.) - Vedi i commenti sotto la risposta di Bruno Rohée per i dettagli.

EDIT 2015-07-03: alcuni Termini e condizioni possono essere applicati
Come discusso nel thread dei commenti con @ dave_thompson_085 non è abbastanza chiaro.

Mentre AES a 128 bit è in effetti preferibile al Triple-DES a 112 bit (se solo per la velocità e non per la sicurezza pratica), entrambe le crittografie soffrono di un indebolimento dei tasti. - Almeno nel modo in cui è implementato in OpenSSL.

Ciò significa che il meccanismo con cui la password di crittografia viene trasformata in una chiave AES a 128 bit o tre chiavi DES a 56 bit non è all'avanguardia.

Quale allungamento della chiave è MEANT a fare è trasformare una password relativamente debole come Asdf123! in una chiave di crittografia strong. Comunque OpenSSL usa un indebolimento della chiave.

E AFAIK non c'è modo di trasmettere parametri di allungamento della chiave più forti.

Quindi la raccomandazione più pratica, come suggerito da Dave, in questo momento è la seguente: Considerare che lo stretching chiave è praticamente inesistente e utilizzare una password molto strong .

    
risposta data 28.06.2015 - 18:26
fonte
11

La tua chiave privata è crittografata con Triple DES . Mentre DES è facilmente rotto, Triple DES è al sicuro per ora, specialmente in questo contesto. AES è stato creato per sostituire Triple DES non tanto perché Triple DES era rotto, ma perché era troppo lento. Nel contesto della crittografia a chiave privata, un non problema.

    
risposta data 29.06.2015 - 03:27
fonte

Leggi altre domande sui tag