PKI, certificati

0

Sto cercando di capire come funziona la crittografia a chiave pubblica, o meglio come funziona il processo di autenticazione.

Per quanto comprendo, le CA sono qui per fissare una determinata chiave pubblica a una certa organizzazione o persona in modo che da una parte una persona che ha firmato qualcosa con la sua chiave privata non può dire "questa non è la mia chiave pubblica" (non ripudio), e d'altra parte nessun attaccante può mandare la sua chiave pubblica e dirla da qualcun altro (altrimenti cripterebbe il tuo messaggio con la chiave dell'attaccante).

Ma ora l'intera sicurezza dipende da:

  • sviluppatori di browser che aggiungono certificati al browser
  • CA che crea certificati

Non è uno standard molto basso? Ho letto articoli sui governi che obbligano CA a distribuire certificati falsi (per esempio link ) o forse i CA vengono hackerati da soli. E mette le CA in una posizione molto potente, che non è mai una buona cosa. Quindi gli sviluppatori del browser decidono quali certificati andare nel browser.

Inoltre, sembra che il problema sia stato appena spostato, dal momento che è necessario ottenere la chiave pubblica della CA per verificare il certificato che a sua volta può anche essere una chiave pubblica di un utente malintenzionato (come ha scritto Thomas Pomin qui: come funziona il processo di verifica della firma digitale ) Dice che il problema è anche concentrato il che ha senso, ma ancora, non riesco davvero a vedere come questo dovrebbe essere affidabile.

Quindi per avere l'autenticazione è necessario disporre di un segreto condiviso prima dell'inizio della comunicazione vera e propria, che non è possibile quando non si conosce l'altra persona (Internet, ecc.). Quindi l'autenticazione a chiave pubblica "reale" non esiste, giusto? O meglio formulato, non puoi proteggerti da un aggressore sofisticato.

Ho anche letto che molti problemi con SSL sono dovuti principalmente agli utenti che non sono ben istruiti in questo argomento (ad esempio, potresti usare i certificati client che il server sa anche con chi sta parlando, ma lo sarebbe anche complicato per l'utente medio). Ma la distribuzione delle chiavi sembra anche tecnicamente irrisolvibile, cosa ne pensi?

    
posta ph0t3k 10.08.2016 - 20:22
fonte

1 risposta

1

E mette le CA in una posizione molto potente, che non è mai una buona cosa.

Il ruolo delle CA è quello di proteggere le loro chiavi segrete e anche di garantire un protocollo sicuro per generare i certificati per i browser (quindi le chiavi segrete non vengono versate). E anche per convalidare quando rilasciano cert al dominio che il dominio appartiene al richiedente.

Questo è il loro modello di business e il solo scopo. Devono rispondere anche a nuovi tipi di hack e continuare a migliorare gli standard.

Poiché il loro scopo è limitato a queste chiavi segrete, questo è gestibile e con poche invenzioni possono impedire perdite massicce in quanto il numero di informazioni segrete non è grande e non diffuso. Ecco perché è così che ci si può fidare di queste aziende.

Un'altra cosa è che oggi la maggior parte dei browser riceve aggiornamenti automatici (a partire dalla seconda metà del 2016, i browser Web inclusi i dispositivi mobili).

Ci sono stati singoli episodi di furto di chiavi private come Comodo e il mondo non si è concluso.

Per quanto riguarda il browser, dipende solo dal controllo del codice sorgente e dalla distribuzione del software. Ad esempio, il codice sorgente è protetto dalla manomissione di Git, quindi c'è il controllo sulla sorgente e su quali certificati sono inclusi. Quindi, il browser è costruito in un ambiente sicuro senza accesso esterno e file binari noti e sicuri, quindi con checksum e firma. Quindi, possono monitorare i loro canali di distribuzione indipendentemente dal fatto che i binari siano firmati correttamente e abbiano un buon checksum.

    
risposta data 10.08.2016 - 20:40
fonte

Leggi altre domande sui tag