Android 默认情况下,我们无法在受信任密钥存储中获取Symantec

Android 默认情况下,我们无法在受信任密钥存储中获取Symantec,android,ssl,ssl-certificate,Android,Ssl,Ssl Certificate,验证证书是否由受信任的CA签名。我尝试使用GetAcceptedAssuers()方法获取受信任的X509证书列表 该列表中的通用名称(赛门铁克3级EV SSL CA-G3)不可用。 如何在默认信任管理器中获取此值 @Override public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException { if (!false) { X5

验证证书是否由受信任的CA签名。我尝试使用GetAcceptedAssuers()方法获取受信任的X509证书列表

该列表中的通用名称(赛门铁克3级EV SSL CA-G3)不可用。 如何在默认信任管理器中获取此值

 @Override
public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException {
    if (!false) {
        X509Certificate cert=chain[0];
        Log.d("bucky validate 0",chain[0].getIssuerDN().getName());
        boolean found = false;
        try {
            String dns= String.valueOf(cert.getIssuerDN());
            Log.d("bucky validate",dns);
            X509Certificate[] cert2= getAcceptedIssuers();
            int length=cert2.length;
            for (int i=0;i<length;i++){
               String dnName= String.valueOf(cert2[i].getIssuerDN());
                Log.d("bucky validate2",dnName);
            }
            cert.checkValidity(new Date());
        } catch (Exception e) {
            e.printStackTrace();
        }}


@Override
public X509Certificate[] getAcceptedIssuers()
{
    return defaultTrustManager.getAcceptedIssuers() ;
}



public ApplicationTrustManager() throws NoSuchAlgorithmException, KeyStoreException {

    TrustManagerFactory tmf = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
    tmf.init((KeyStore) null);
    defaultTrustManager = (X509TrustManager) tmf.getTrustManagers()[0];
}
@覆盖
public void checkServerTrusted(X509Certificate[]链,字符串authType)引发CertificateException{
如果(!false){
X509证书证书证书=链[0];
Log.d(“bucky验证0”,链[0].getIssuerDN().getName());
布尔值=false;
试一试{
String dns=String.valueOf(cert.getIssuerDN());
Log.d(“bucky验证”,dns);
X509Certificate[]cert2=getAcceptedIssuers();
int length=cert2.length;

对于(inti=0;i最后,我得到了答案。这是一个小错误

     @Override
public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException 
链数组的最后一个值,我得到了受信任的证书名

     @Override
public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException