Ho appena richiesto una CSR dal mio provider di hosting web condiviso, per generare un certificato che invierò loro per l'installazione. (Il certificato stesso deve essere generato correttamente da un'organizzazione per cui lavoro che può fornire certificati per il nostro uso ufficiale.) La società di hosting mi ha prontamente inviato il CSR ma anche la chiave privata! Hanno persino mandato in CC qualcun altro, ed è in Gmail, quindi presumibilmente Google lo ha già ingerito per scopi pubblicitari.
A mio modesto parere questa sembra una cosa terribile da fare. Sto per rispondergli rifiutando questo e chiedendo di rinnovare la CSR e questa volta di mantenere la chiave privata - privata.
Prima di prendere in giro me stesso, vorrei confermarlo la chiave privata per un certificato "SSL" (TLS) non dovrebbe mai lasciare il server?
Lavoro da molti anni in settori legati alla sicurezza e sono un programmatore di crittografia, quindi mi sento Conosco un po 'l'argomento, ma so che le cose cambiano nel tempo.
Ho letto questa domanda correlata: Quali problemi sorgono dalla condivisione della chiave privata di un certificato SSL?
Meta Update: mi sono reso conto di aver scritto un formato di domanda di scarsa qualità per Stack Exchange, poiché ora è difficile accettare una risposta specifica. Mi scuso per questo: tutte le risposte coprivano aspetti diversi e ugualmente interessanti. Inizialmente mi chiedevo come esprimerlo a tale scopo, ma ho lasciato uno spazio vuoto.
Aggiornamento: l'ho seguito anche se con l'host e si sono scusati per qualsiasi inconveniente, promesso di mantenere future chiavi private "sicure" e mi hanno rilasciato un nuovo, diverso CSR. Al momento non sono sicuro se sia generato dalla stessa chiave privata esposta. Ora mi chiedo anche, dato che si tratta di un host condiviso, se mi hanno inviato la chiave per l'intero server o se ogni cliente / dominio / host virtuale ottiene una coppia di chiavi.
È una lezione interessante su come tutti la forza crittografica nel mondo può essere resa nulla da un semplice errore umano. Kevin Mitnik annuirà.
Aggiornamento 2: In risposta a una risposta dell'utente @Beau, ho utilizzato i seguenti comandi per verificare che la seconda CSR sia stata generata da una diversa chiave privata segreta.
openssl rsa -noout -modulus -in pk1. txt | openssl md5openssl req -noout -modulus -in csr1.txt | openssl md5openssl req -noout -modulus -in csr2.txt | openssl md5
I primi due hash sono identici, il terzo è diverso. Quindi questa è una buona notizia.