Penso che tu debba essere più specifico su cosa intendi con "Cosa succede se Alice non si fida esplicitamente di C." Alice, e solo Alice, ha deciso di non fidarsi di C, o A ha revocato il certificato di C?
La mia comprensione del processo (astratto) di Alice è:
// trova una firma che può verificare
1 . Alice vedrà che cert_Doris
è firmata da cert_C
e chiede "ho una chiave di verifica per cert_C
?" .... No .
2 . cert_C
è firmato da cert_A
, "ho una chiave di verifica per cert_A
?" ... Sì .
// quindi torna indietro lungo la catena che esegue verifiche
3 . La firma su cert_A
controlla, ed è valido il certificato (cioè non revocato)? ... Sì
4 . La firma su cert_C
controlla, ed è valido il certificato (cioè non revocato)? ... Sì
5 . La firma su cert_Doris
controlla, ed è valido il certificato (cioè non revocato)? ... Sì
6 . Ora Alice si fida di Doris perché hanno un'ancora comune di fiducia.
I dettagli di questo processo dipenderanno ovviamente dal software PKI utilizzato dall'organizzazione.
Come sottolinea @MaartenBodewes: nota che questo processo non richiede che Alice sia connessa ad A, infatti, quel processo funzionerebbe bene per Eric che non ha nemmeno i certificati, fintanto che ha deciso di fidarsi A. (Questo è il modo in cui il blocco dei certificati nei browser funziona, poiché i client di TLS in genere non hanno certificati, sono come Eric.)
Come per
What happens if Alice explicitly does not trust C.
È del tutto possibile che il tuo software PKI consenta ad Alice (oa qualsiasi CA sopra Alice) di mettere in blacklist un utente specifico o una CA specifica, senza revocare globalmente il certificato, sebbene non abbia mai sentito parlare di una PKI che lo offre.
Come per
Does Alice need to have a certificate of D, B and C as well?
Tecnicamente no, avere la chiave di verifica per A è crittograficamente sufficiente, anche se per grandi organizzazioni, come un governo, con molte CA e utenti dipartimentali, fare una ricerca completa ogni volta può essere molto lento, così Alice può localmente memorizzare i certificati una volta che li ha ritenuti affidabili in modo che le ricerche future siano più veloci. Questo potrebbe portare a problemi di sicurezza se la revoca non viene verificata fino alla radice ogni volta. Dipende dal software specifico e dalle politiche dell'organizzazione per decidere se quel rischio valga l'inconveniente delle ricerche lente.