⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testcertificatedata.java

📁 JAVA做的J2EE下CA认证系统 基于EJB开发
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
        ICertificateStoreSessionRemote store = storehome.create();        CertificateInfo data3 = store.getCertificateInfo(admin, fp);        assertNotNull("Failed to find cert", data3);        log.debug("found by key! =" + data3);        log.debug("fp=" + data3.getFingerprint());        log.debug("issuer=" + data3.getIssuerDN());        log.debug("subject=" + data3.getSubjectDN());        log.debug("cafp=" + data3.getCAFingerprint());        assertNotNull("wrong CAFingerprint", data3.getCAFingerprint());        log.debug("status=" + data3.getStatus());        assertTrue("wrong status", data3.getStatus() == CertificateDataBean.CERT_REVOKED);        log.debug("type=" + data3.getType());        assertTrue("wrong type", (data3.getType() & SecConst.USER_ENDUSER) == SecConst.USER_ENDUSER);        log.debug("serno=" + data3.getSerialNumber());        log.debug("expiredate=" + data3.getExpireDate());        log.debug("revocationdate=" + data3.getRevocationDate());        log.debug("revocationreason=" + data3.getRevocationReason());        assertEquals("Wrong revocation reason", data3.getRevocationReason(), RevokedCertInfo.REVOKATION_REASON_KEYCOMPROMISE);        log.debug("Looking for cert with DN=" + CertTools.getSubjectDN(cert));        Collection certs = store.findCertificatesBySubjectAndIssuer(new Admin(Admin.TYPE_INTERNALUSER), CertTools.getSubjectDN(cert), CertTools.getIssuerDN(cert));        Iterator iter = certs.iterator();        while (iter.hasNext()) {            X509Certificate xcert = (X509Certificate) iter.next();            log.debug(CertTools.getSubjectDN(xcert) + " - " + xcert.getSerialNumber().toString());            //log.debug(certs[i].toString());        }        log.debug("<test05FindAgain()");    }    /**     * finds certs by expire time     *     * @throws Exception error     */    public void test06FindByExpireTime() throws Exception {        log.debug(">test06FindByExpireTime()");        ICertificateStoreSessionRemote store = storehome.create();        String fp = CertTools.getFingerprintAsString(cert);        CertificateInfo data = store.getCertificateInfo(admin, fp);        assertNotNull("Failed to find cert", data);        log.debug("expiredate=" + data.getExpireDate());        // Seconds in a year        long yearmillis = 365 * 24 * 60 * 60 * 1000;        long findDateSecs = data.getExpireDate().getTime() - (yearmillis * 100);        Date findDate = new Date(findDateSecs);        log.info("1. Looking for cert with expireDate=" + findDate);        Collection certs = store.findCertificatesByExpireTime(new Admin(Admin.TYPE_INTERNALUSER), findDate);        log.debug("findCertificatesByExpireTime returned " + certs.size() + " certs.");        assertTrue("No certs should have expired before this date", certs.size() == 0);        findDateSecs = data.getExpireDate().getTime() + 10000;        findDate = new Date(findDateSecs);        log.info("2. Looking for cert with expireDate=" + findDate);        certs = store.findCertificatesByExpireTime(new Admin(Admin.TYPE_INTERNALUSER), findDate);        log.debug("findCertificatesByExpireTime returned " + certs.size() + " certs.");        assertTrue("Some certs should have expired before this date", certs.size() != 0);        Iterator iter = certs.iterator();        while (iter.hasNext()) {            X509Certificate cert = (X509Certificate) iter.next();            Date retDate = cert.getNotAfter();            log.debug(retDate);            assertTrue("This cert is not expired by the specified Date.", retDate.getTime() < findDate.getTime());        }        log.debug("<test06FindByExpireTime()");    }    /**     * finds certs by issuer and serialno     *     * @throws Exception error     */    public void test07FindByIssuerAndSerno() throws Exception {        log.debug(">test07FindByIssuerAndSerno()");        String issuerDN = CertTools.getIssuerDN(cert);        ICertificateStoreSessionRemote store = storehome.create();        String fp = CertTools.getFingerprintAsString(cert);        CertificateInfo data3 = store.getCertificateInfo(admin, fp);        assertNotNull("Failed to find cert", data3);        log.debug("Looking for cert with DN:" + CertTools.getIssuerDN(cert) + " and serno " + cert.getSerialNumber());        Certificate fcert = store.findCertificateByIssuerAndSerno(new Admin(Admin.TYPE_INTERNALUSER), issuerDN, cert.getSerialNumber());        assertNotNull("Cant find by issuer and serno", fcert);        //log.debug(fcert.toString());        log.debug("<test07FindByIssuerAndSerno()");    }    /**     * checks if a certificate is revoked     *     * @throws Exception error     */    public void test08IsRevoked() throws Exception {        log.debug(">test08IsRevoked()");        ICertificateStoreSessionRemote store = storehome.create();        String fp = CertTools.getFingerprintAsString(cert);        CertificateInfo data3 = store.getCertificateInfo(admin, fp);        assertNotNull("Failed to find cert", data3);        log.debug("found by key! =" + data3);        log.debug("fp=" + data3.getFingerprint());        log.debug("issuer=" + data3.getIssuerDN());        log.debug("subject=" + data3.getSubjectDN());        log.debug("cafp=" + data3.getCAFingerprint());        assertNotNull("wrong CAFingerprint", data3.getCAFingerprint());        log.debug("status=" + data3.getStatus());        assertTrue("wrong status", data3.getStatus() == CertificateDataBean.CERT_REVOKED);        log.debug("type=" + data3.getType());        assertTrue("wrong type", (data3.getType() == CertificateDataBean.CERTTYPE_ENDENTITY));        log.debug("serno=" + data3.getSerialNumber());        log.debug("expiredate=" + data3.getExpireDate());        log.debug("revocationdate=" + data3.getRevocationDate());        log.debug("revocationreason=" + data3.getRevocationReason());        assertEquals("wrong reason", data3.getRevocationReason(), RevokedCertInfo.REVOKATION_REASON_KEYCOMPROMISE);        log.debug("Checking if cert is revoked DN:'" + CertTools.getIssuerDN(cert) + "', serno:'" + cert.getSerialNumber().toString() + "'.");        RevokedCertInfo revinfo = store.isRevoked(new Admin(Admin.TYPE_INTERNALUSER), CertTools.getIssuerDN(cert), cert.getSerialNumber());        assertNotNull("Certificate not found, it should be!", revinfo);        int reason = revinfo.getReason();        assertEquals("Certificate not revoked, it should be!", RevokedCertInfo.REVOKATION_REASON_KEYCOMPROMISE, reason);        assertTrue("Wrong revocationDate!", revinfo.getRevocationDate().compareTo(data3.getRevocationDate()) == 0);        assertTrue("Wrong reason!", revinfo.getReason() == data3.getRevocationReason());        log.debug("Removed it!");        log.debug("<test08IsRevoked()");    }    /**     * Adds two certificate request histroy datas to the database.     *     * @throws Exception error     */    public void test09addCertReqHist() throws Exception {        log.debug(">test09addCertReqHist()");        ICertificateStoreSessionRemote store = storehome.create();                        cert1 = CertTools.genSelfCert("C=SE,O=PrimeCA,OU=TestCertificateData,CN=CertReqHist1", 24, null, keyPair.getPrivate(), keyPair.getPublic(), false);        cert2 = CertTools.genSelfCert("C=SE,O=PrimeCA,OU=TestCertificateData,CN=CertReqHist2", 24, null, keyPair.getPrivate(), keyPair.getPublic(), false);                UserDataVO userdata = new UserDataVO();        Random rand = new Random(new Date().getTime() + 4711);                for (int i = 0; i < 6; i++) {            int randint = rand.nextInt(9);            username += (new Integer(randint)).toString();        }        log.debug("Generated random username: username =" + username);        userdata.setUsername(username);        userdata.setDN("C=SE,O=PrimeCA,OU=TestCertificateData,CN=CertReqHist1");                store.addCertReqHistoryData(admin,cert1, userdata);                userdata.setDN("C=SE,O=PrimeCA,OU=TestCertificateData,CN=CertReqHist2");        store.addCertReqHistoryData(admin,cert2, userdata);               log.debug("<test09addCertReqHist()");    }        /**     * checks that getCertReqHistory(Admin admin, BigInteger certificateSN, String issuerDN)     * returns the right data.     *     * @throws Exception error     */    public void test10getCertReqHistByIssuerDNAndSerial() throws Exception {        log.debug(">test10getCertReqHistByIssuerDNAndSerial()");        ICertificateStoreSessionRemote store = storehome.create();                CertReqHistory certreqhist = store.getCertReqHistory(admin, cert1.getSerialNumber(),cert1.getIssuerDN().toString());                assertNotNull("Error couldn't find the certificate request data stored previously", certreqhist);                UserDataVO userdata = certreqhist.getUserDataVO();        assertTrue("Error wrong username.", (userdata.getUsername().equals(username)));        assertTrue("Error wrong DN.", (userdata.getDN().equals("C=SE,O=PrimeCA,OU=TestCertificateData,CN=CertReqHist1")));               log.debug("<test10getCertReqHistByIssuerDNAndSerial()");    }            /**     * checks that getCertReqHistory(Admin admin, String username)     * returns the the two CertReqHistory object previously stored.     *     * @throws Exception error     */    public void test11getCertReqHistByUsername() throws Exception {        log.debug(">test11getCertReqHistByUsername()");        ICertificateStoreSessionRemote store = storehome.create();                Collection result = store.getCertReqHistory(admin, username);        assertTrue("Error size of the returned collection.", (result.size() == 2));        Iterator iter = result.iterator();        while(iter.hasNext()){          CertReqHistory certreqhist = (CertReqHistory) iter.next();          assertTrue("Error wrong DN", ((certreqhist.getUserDataVO().getDN().equals("C=SE,O=PrimeCA,OU=TestCertificateData,CN=CertReqHist1"))||          		(certreqhist.getUserDataVO().getDN().equals("C=SE,O=PrimeCA,OU=TestCertificateData,CN=CertReqHist2"))));        }                 log.debug("<test11getCertReqHistByUsername()");    }        /**     * Removes all the previously stored certreqhist data.     *     * @throws Exception error     */    public void test12removeCertReqHistData() throws Exception {        log.debug(">test12removeCertReqHistData()");        ICertificateStoreSessionRemote store = storehome.create();                store.removeCertReqHistoryData(admin, CertTools.getFingerprintAsString(cert1));        store.removeCertReqHistoryData(admin, CertTools.getFingerprintAsString(cert2));                CertReqHistory certreqhist = store.getCertReqHistory(admin, cert1.getSerialNumber(),cert1.getIssuerDN().toString());        assertNull("Error removing cert req history data, cert1 data is still there", certreqhist);                certreqhist = store.getCertReqHistory(admin, cert2.getSerialNumber(),cert2.getIssuerDN().toString());        assertNull("Error removing cert req history data, cert2 data is still there", certreqhist);                log.debug("<test12removeCertReqHistData()");    }    }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -