Domande TLS di base: implementazione di una versione e una cifra TLS specifici

1

Ho già lavorato con i certificati TLS, ma solo a un livello base. Sto cercando di capire alcuni consigli specifici per l'implementazione di TLS (citati sotto).

(Per contesto, il mio obiettivo è quello di proteggere le connessioni HTTPS a una pagina Web che raccoglie le informazioni dell'utente tramite un modulo.)

Ecco i consigli (sono tratti da questo articolo ):

If you are not a government organization but have HIPAA-compliance requirements and have to interact with people using a wide array of systems and devices, we would recommend the following:

  • Support TLS 1.0, 1.1, and 1.2+
  • Use all of the non-DES ciphers from [certain lists]

Di seguito è il mio tentativo di interpretare questo. Spero che tu possa dirmi cosa ho sbagliato o sbagliato.

  1. La versione TLS è una proprietà della connessione (nel mio caso, tra il browser e il server web) - non una proprietà del certificato. In altre parole, quando vedo "Protocollo: TLS 1.2" nella scheda Sicurezza degli strumenti di sviluppo di Chrome , significa che il il browser sta comunicando con il server utilizzando la versione 1.2 del protocollo TLS. Non ha senso parlare della versione TLS di un certificato .

  2. La raccomandazione di supportare molti codici diversi si applica solo se sto implementando un client di TLS. Nel mio caso, il browser è il client, quindi, quando creo il mio certificato, devo solo scegliere un singolo codice che (a) si trova nell'elenco approvato e (b) è supportato da tutti i principali browser.

È accurato? Inesatte?

    
posta greenie2600 20.06.2018 - 20:55
fonte

1 risposta

1
  1. The TLS version is a property of the connection

Una corretta. Il certificato non ha nulla a che fare con la versione del protocollo TLS.

  1. The recommendation to support many different ciphers only applies if I'm implementing a TLS client. In my case, the browser is the client – so, when I generate my cert, I just need to choose a single cipher which (a) is on the approved list, and (b) is supported by all major browsers.

Soprattutto sbagliato.
Il server deve supportare almeno alcune delle crittografie (sufficientemente sicure) supportate dal client. Dal momento che diversi client potrebbero supportare diversi codici, il server dovrebbe supportare meglio un insieme di crittogrammi sicuro e sicuro per supportare una varietà di client anziché solo un singolo codice. Vedi consigli da Mozilla .

Inoltre, il codice non ha più nulla a che fare con il certificato. Sebbene le crittografie con autenticazione RSA possano essere utilizzate solo con certificati RSA e cifrari con autenticazione ECDSA solo con certificati ECDSA (ECC), non è possibile scegliere un codice specifico durante la creazione di un certificato. In altre parole: un certificato può essere utilizzato con molti codici diversi. È solo necessario che il tipo di chiave pubblica nel certificato (RSA o ECC) corrisponda al tipo di autenticazione nel codice (RSA o ECDSA).

    
risposta data 20.06.2018 - 21:02
fonte

Leggi altre domande sui tag