Il blocco dei certificati e un TrustStore sono non lo stesso concetto. La differenza non è necessariamente quella di fidarsi del certificato, piuttosto che fidarsi della chiave pubblica utilizzata in esso. Puoi appuntare anche i certificati.
L'archivio Trust di Android contiene essenzialmente un gruppo di autorità di certificazione che è considerato affidabile dagli sviluppatori o dagli utenti Android (possono aggiungere manualmente certificati radice). Quando si convalida un certificato utilizzando un archivio sicuro, si sa che il certificato è stato creato dalla radice attendibile e il certificato era destinato a un determinato host. Questo approccio ti rende vulnerabile a situazioni come root CA perde la sua chiave privata .
Come menzionato su OWASP , il blocco dei certificati è un buon modo per evitare problemi come questi. Prenderò in prestito un paragrafo tratto da quell'articolo che potrebbe aiutarti a capire la differenza:
When Do You Pin?
You should pin anytime you want to be relatively certain of the remote host's identity or when operating in a hostile environment. Since one or both are almost always true, you should probably pin all the time.
A perfect case in point: during the two weeks or so of preparation for the presentation and cheat sheet, we've observed three relevant and related failures. First was Nokia/Opera willfully breaking the secure channel; second was DigiCert issuing a code signing certificate for malware; and third was Bit9's loss of its root signing key. The environment is not only hostile, it's toxic.