Posso aggiungere una password a una chiave privata esistente?

54

Suppongo di aver precedentemente creato una combinazione di chiavi privata / pubblica e di decidere al momento di non proteggere la chiave privata con una password. Se in seguito decidessi di "rinforzare" la sicurezza e utilizzare una chiave privata protetta da password, dovrei generare una nuova coppia di chiavi privata / pubblica, o posso semplicemente aggiungere una password alla mia chiave privata esistente?

È possibile anche il contrario? Posso "rimuovere" una password da una chiave privata esistente?

    
posta IQAndreas 31.05.2014 - 22:18
fonte

2 risposte

72

Ovviamente puoi aggiungere / rimuovere una passphrase in un secondo momento.

  • aggiungi uno (supponendo che fosse una chiave rsa , altrimenti usa dsa )

    openssl rsa -aes256 -in your.key -out your.encrypted.key
    mv your.encrypted.key your.key
    chmod 600 your.key
    

    il -aes256 indica openssl per crittografare la chiave con AES256.

    Come ha correttamente sottolineato ArianFaurtosh: Per l'algoritmo di crittografia puoi usare aes128 , aes192 , aes256 , camellia128 , camellia192 , camellia256 , des (che dovresti assolutamente evitare ), des3 o idea

  • rimuovilo

    openssl rsa -in your.key -out your.open.key
    

    ti verrà chiesta la passphrase un'ultima volta
    omettendo -aes256 dici a openssl di non crittografare l'output.

    mv your.open.key your.key
    chmod 600 your.key
    
risposta data 01.06.2014 - 19:10
fonte
7

Quando un privato è "protetto da una password", significa semplicemente che i byte chiave, come memorizzati da qualche parte, sono crittografati con una chiave simmetrica derivata da password. Una chiave privata è prontamente codificabile come una sequenza di byte e può essere copiata, crittografata e decrittografata come qualsiasi file. Il punto importante qui è che la password è tutto su storage : quando si usa la chiave privata (ad esempio per firmare qualcosa), allora viene prima decifrata nella RAM di un computer, che poi procede utilizzare la chiave privata non crittografata. Corrispondentemente, non c'è nulla di speciale in una coppia di chiavi RSA che lo renda adatto o non adatto alla protezione tramite password. La protezione tramite password è davvero un problema ortogonale.

Naturalmente, se una chiave privata è mai stata memorizzata su un supporto fisico (ad esempio, un disco rigido) senza alcuna protezione aggiuntiva, potrebbe essersi lasciata tracce utili. I dettagli dipendono molto da quale sistema è effettivamente utilizzato per la memorizzazione delle chiavi private. Ad esempio, i sistemi Windows utilizzano DPAPI per l'archiviazione delle chiavi private dell'utente e DPAPI compie ulteriori sforzi per evitare perdite di chiavi archiviate ( se questi sforzi hanno successo rimane da dimostrare).

    
risposta data 31.05.2014 - 22:28
fonte

Leggi altre domande sui tag