java解析CRL文件


import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.security.cert.CRLException;
import java.security.cert.CertificateException;
import java.security.cert.CertificateFactory;
import java.security.cert.X509CRL;
import java.security.cert.X509CRLEntry;
import java.text.SimpleDateFormat;
import java.util.Iterator;
import java.util.Set;

public class testCRL {

public static void main(String[] args) throws FileNotFoundException, CertificateException, CRLException {

        FileInputStream fis = new FileInputStream("./XXX.crl");
        CertificateFactory cf = CertificateFactory.getInstance("X.509");
        X509CRL aCrl = (X509CRL)cf.generateCRL(fis);

        int i = 0;
        Set tSet = aCrl.getRevokedCertificates();
        Iterator tIterator = tSet.iterator();
                while (tIterator.hasNext()) {
                X509CRLEntry tEntry = (X509CRLEntry) tIterator.next();
                String sn = tEntry.getSerialNumber().toString(16).toUpperCase();
                String issName = aCrl.getIssuerDN().toString();
                String time = new SimpleDateFormat("yyyyMMddHHmmss").format(tEntry.getRevocationDate());
                i++;
                        if(sn.compareTo("XXX") == 0){
                                System.out.println(sn);
                                System.out.println(issName);
                                System.out.println(time);
                                System.out.println("***************************");
                        }

                }
        }
}



 把XXX 替換成自己實際的文件地址,主要是查找當前的證書是不是在被CA 機構吊銷了。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章