Ho appena richiesto un CSR dal mio provider di hosting web condiviso, per generare un certificato che invierò a loro per l'installazione. (Il certificato stesso deve essere generato correttamente da un'organizzazione che lavoro per chi può fornire certificati per il nostro uso ufficiale.) La società di hosting mi ha prontamente inviato la CSR ma anche la chiave privata! Hanno persino effettuato il CC di qualcun altro, ed è in Gmail, quindi Google probabilmente lo ha già ingerito per scopi pubblicitari.
A mio modesto parere questa sembra una cosa terribile da fare. Sto per rispedire a loro rifiutando questo e chiedendo di rinnovare il CSR e questa volta mantenere la chiave privata - privata.
Prima di prendere in giro me stesso, vorrei confermare che la chiave privata per un certificato "SSL" (TLS) non dovrebbe mai lasciare il server?
Ho lavorato nei settori legati alla sicurezza per molti anni, ed ero un programmatore di crittografia, quindi sento di conoscere un po 'l'argomento, ma so che le cose cambiano nel tempo.
Ho letto questa domanda correlata: Quali problemi sorgono dalla condivisione di una chiave privata del 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. Ci scusiamo per questo: tutte le risposte hanno riguardato aspetti diversi e altrettanto interessanti. Inizialmente mi sono chiesto come esprimerlo a tale scopo, ma ho disegnato uno spazio vuoto.
Aggiornamento: l'ho seguito con l'host e loro si sono "scusati per qualsiasi inconveniente", promettendo di mantenere le future chiavi private "sicure" e mi hanno rilasciato un nuovo CSR diverso. Che sia generato dalla stessa chiave privata esposta di cui attualmente non sono sicuro. Ora mi chiedo anche, in quanto host condiviso, se mi hanno inviato la chiave per l'intero server o se ogni cliente / dominio / host virtuale riceve una coppia di chiavi.
È una lezione interessante in che modo tutta la forza crittografica del mondo può essere resa nulla e vuota da un semplice errore umano. Kevin Mitnik avrebbe annuito.
Aggiornamento 2: In risposta a una risposta dell'utente @Beau, ho utilizzato i seguenti comandi per verificare che il secondo CSR sia stato generato da una chiave privata segreta diversa.
openssl rsa -noout -modulus -in pk1.txt | openssl md5
openssl req -noout -modulus -in csr1.txt | openssl md5
openssl req -noout -modulus -in csr2.txt | openssl md5
I primi due hash sono identici, il terzo è diverso. Ecco le buone notizie.