List of usage examples for org.bouncycastle.jce.provider BouncyCastleProvider BouncyCastleProvider
public BouncyCastleProvider()
From source file:cz.muni.ics.remsig.impl.CertificateManagerImplTestRefact.java
/** * //from www . j a v a2 s.c o m * Test of resetPassword method, of class CertificateManagerImpl. */ @Test public void testResetPassword() throws Exception { docInit(); setUpId(); ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); manager = new CertificateManagerImpl(configuration); manager.setJdbcTemplate((JdbcTemplate) ac.getBean("jdbcTemplate")); Security.addProvider(new BouncyCastleProvider()); try { manager.resetPassword(null, andersonCerId); } catch (NullPointerException e) { fail("Uncaught nullPointerException"); } try { manager.checkPassword(anderson, andersonCerId, andersonDefPass); testDocument2 = manager.resetPassword(anderson, andersonCerId); testManager.exportDocIntoXml("testResetpass.xml", testDocument2); manager.checkPassword(anderson, andersonCerId, andersonDefPass); fail("password didnt change"); } catch (RemSigException | TransformerException e) { } try { manager.checkPassword(anderson, andersonCerId, andersonDefPass); testDocument1 = manager.resetPassword(anderson, andersonCerId); testManager.exportDocIntoXml("testResetpass.xml", testDocument1); String newPass = testManager.extractElementFromXmlDoc(testDocument1, "password"); manager.checkPassword(anderson, andersonCerId, newPass); manager.checkPassword(anderson, andersonCerId, andersonDefPass); } catch (Exception e) { fail("failed to reset password "); } }
From source file:cz.muni.ics.remsig.impl.CertificateManagerImplTestRefact.java
@Test public void testChangeCertificateStatus() throws Exception { docInit();/* w w w . java2s . c o m*/ setUpId(); ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); manager = new CertificateManagerImpl(configuration); manager.setJdbcTemplate((JdbcTemplate) ac.getBean("jdbcTemplate")); Security.addProvider(new BouncyCastleProvider()); String rule = "userId =" + bobaFet.getId() + " AND id = " + bobaFetCerId + ""; int ko = -1; String test = "a"; try { if (null != (testManager.extractOneCollumFromDatabase("state", "credentials", rule))) { fail("inicial status should be null"); } manager.changeCertificateStatus(null, bobaFetCerId, STATE_SUSPENDED); } catch (NullPointerException e) { fail("unCaught nullPointerException"); } // testing standard changing of the certificate status try { manager.changeCertificateStatus(bobaFet, bobaFetCerId, STATE_SUSPENDED); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, STATE_SUSPENDED); manager.changeCertificateStatus(bobaFet, bobaFetCerId, STATE_VALID); test = testManager.extractOneCollumFromDatabase("state", "credentials", rule); assertNull(test); manager.changeCertificateStatus(bobaFet, bobaFetCerId, STATE_SUSPENDED); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, STATE_SUSPENDED); manager.changeCertificateStatus(bobaFet, bobaFetCerId, STATE_EXPIRED); test = testManager.extractOneCollumFromDatabase("state", "credentials", rule); assertNull(test); manager.changeCertificateStatus(bobaFet, bobaFetCerId, STATE_SUSPENDED); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, STATE_SUSPENDED); manager.changeCertificateStatus(bobaFet, bobaFetCerId, STATE_NOT_YET_VALID); test = testManager.extractOneCollumFromDatabase("state", "credentials", rule); assertNull(test); } catch (NullPointerException e) { fail("failed to change status as expected"); } // testing if status does change after certificate is revoked try { manager.changeCertificateStatus(bobaFet, bobaFetCerId, STATE_REVOKED); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, STATE_REVOKED); manager.changeCertificateStatus(bobaFet, bobaFetCerId, STATE_SUSPENDED); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, STATE_REVOKED); manager.changeCertificateStatus(bobaFet, bobaFetCerId, STATE_VALID); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, STATE_REVOKED); manager.changeCertificateStatus(bobaFet, bobaFetCerId, STATE_EXPIRED); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, STATE_REVOKED); manager.changeCertificateStatus(bobaFet, bobaFetCerId, STATE_PASSWORD_RESET); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, STATE_REVOKED); } catch (RemSigException | NumberFormatException e) { fail("exception was thrown" + e); } ko = -1; rule = "userId =" + cyril.getId() + " AND id = " + cyrilCerId + ""; if (null != (testManager.extractOneCollumFromDatabase("state", "credentials", rule))) { fail("inicial status should be null"); } // testing if certificate status changes after password is reseted try { manager.changeCertificateStatus(cyril, cyrilCerId, STATE_PASSWORD_RESET); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, STATE_PASSWORD_RESET); manager.changeCertificateStatus(cyril, cyrilCerId, STATE_SUSPENDED); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, STATE_PASSWORD_RESET); manager.changeCertificateStatus(cyril, cyrilCerId, STATE_VALID); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, STATE_PASSWORD_RESET); manager.changeCertificateStatus(cyril, cyrilCerId, STATE_REVOKED); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, STATE_PASSWORD_RESET); manager.changeCertificateStatus(cyril, cyrilCerId, STATE_NOT_YET_VALID); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, STATE_PASSWORD_RESET); manager.changeCertificateStatus(cyril, cyrilCerId, STATE_EXPIRED); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, STATE_PASSWORD_RESET); } catch (RemSigException | NumberFormatException e) { fail("exception was thrown" + e); } // testing if certificate status doesnt change to something weird try { int init = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); manager.changeCertificateStatus(cyril, cyrilCerId, 59); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, init); manager.changeCertificateStatus(cyril, cyrilCerId, -6); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, init); manager.changeCertificateStatus(cyril, cyrilCerId, Integer.MAX_VALUE + 1); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, init); manager.changeCertificateStatus(cyril, cyrilCerId, Integer.MIN_VALUE - 1); ko = Integer.parseInt(testManager.extractOneCollumFromDatabase("state", "credentials", rule)); assertEquals(ko, init); } catch (NumberFormatException | RemSigException e) { } }
From source file:cz.muni.ics.remsig.impl.CertificateManagerImplTestRefact.java
@Test public void testListCertificatesWithStatus() throws Exception { docInit();// www .j ava 2 s . c om setUpId(); ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); manager = new CertificateManagerImpl(configuration); manager.setJdbcTemplate((JdbcTemplate) ac.getBean("jdbcTemplate")); Security.addProvider(new BouncyCastleProvider()); try { manager.listCertificatesWithStatus(null, 1); } catch (NullPointerException e) { fail("unreported nullPpointerException"); } statement.execute("UPDATE credentials SET state= null WHERE userId=" + anderson.getId() + " AND id= " + andersonCerId); statement.execute("UPDATE credentials SET state= null, expiration_from = 1480075200 WHERE userId=" + bobaFet.getId() + " AND id= " + bobaFetCerId); statement.execute("UPDATE credentials SET state= null, expiration_to = 1453161600 WHERE userId=" + cyril.getId() + " AND id= " + cyrilCerId); testDocument1 = manager.listCertificatesWithStatus(anderson, STATE_VALID); testDocument2 = manager.listCertificatesWithStatus(bobaFet, STATE_NOT_YET_VALID); testDocument3 = manager.listCertificatesWithStatus(cyril, STATE_EXPIRED); testManager.exportDocIntoXml("test/testFiles/output/testListCertificateWithStatus1.xml", testDocument1); testManager.exportDocIntoXml("test/testFiles/output/testListCertificateWithStatus2.xml", testDocument2); testManager.exportDocIntoXml("test/testFiles/output/testListCertificateWithStatus3.xml", testDocument3); // chain and certificate is modified in extractMultipleColuumsFromDatabase there is // extra line seperator at the end String[] xmlExtraction = new String[] { "dn", "issuer", "serialNumber", "expirationFrom", "expirationTo", "certificatePEM", "chainPEM" }; String[] databaseExtraction = new String[] { "dn", "issuer", "serial", "expiration_From", "expiration_To", "certificate", "chain" }; String ruleA = "id =" + andersonCerId + " AND userId =" + anderson.getId(); String ruleB = "id =" + bobaFetCerId + " AND userId =" + bobaFet.getId(); String ruleC = "id =" + cyrilCerId + " AND userId =" + cyril.getId(); try { ArrayList<String> dataFromDoc = extractMultipleElementsFromDoc(xmlExtraction, testDocument1); ArrayList<String> dataFromDatabase = extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleA); for (int i = 0; i < dataFromDoc.size(); i++) { assertEquals("at element " + databaseExtraction[i], dataFromDoc.get(i), dataFromDatabase.get(i)); } dataFromDoc = extractMultipleElementsFromDoc(xmlExtraction, testDocument2); dataFromDatabase = extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleB); for (int i = 0; i < dataFromDoc.size(); i++) { assertEquals("at element " + databaseExtraction[i], dataFromDoc.get(i), dataFromDatabase.get(i)); } dataFromDoc = extractMultipleElementsFromDoc(xmlExtraction, testDocument3); dataFromDatabase = extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleC); for (int i = 0; i < dataFromDoc.size(); i++) { assertEquals("at element " + databaseExtraction[i], dataFromDoc.get(i), dataFromDatabase.get(i)); } } catch (Exception e) { fail(e.getMessage()); } try { statement.execute("UPDATE credentials SET state= " + STATE_REVOKED + " WHERE userId=" + anderson.getId() + " AND id= " + andersonCerId); statement.execute("UPDATE credentials SET state= " + STATE_SUSPENDED + ", expiration_from = 1453161600 WHERE userId=" + bobaFet.getId() + " AND id= " + bobaFetCerId); statement.execute("UPDATE credentials SET state= " + STATE_PASSWORD_RESET + ", expiration_to = 1480075200 WHERE userId=" + cyril.getId() + " AND id= " + cyrilCerId); testDocument4 = manager.listCertificatesWithStatus(anderson, STATE_REVOKED); testDocument5 = manager.listCertificatesWithStatus(bobaFet, STATE_SUSPENDED); testDocument6 = manager.listCertificatesWithStatus(cyril, STATE_PASSWORD_RESET); ArrayList<String> dataFromDoc = extractMultipleElementsFromDoc(xmlExtraction, testDocument4); ArrayList<String> dataFromDatabase = extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleA); for (int i = 0; i < dataFromDoc.size(); i++) { assertEquals("at element " + databaseExtraction[i], dataFromDoc.get(i), dataFromDatabase.get(i)); } dataFromDoc = extractMultipleElementsFromDoc(xmlExtraction, testDocument5); dataFromDatabase = extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleB); for (int i = 0; i < dataFromDoc.size(); i++) { assertEquals("at element " + databaseExtraction[i], dataFromDoc.get(i), dataFromDatabase.get(i)); } dataFromDoc = extractMultipleElementsFromDoc(xmlExtraction, testDocument6); dataFromDatabase = extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleC); for (int i = 0; i < dataFromDoc.size(); i++) { assertEquals("at element " + databaseExtraction[i], dataFromDoc.get(i), dataFromDatabase.get(i)); } } catch (SQLException | RemSigException e) { fail("there was error listing certificate " + e); } }
From source file:cz.muni.ics.remsig.impl.CertificateManagerImplTestRefact.java
@Test public void testListAllCertificatesWithStatus() throws Exception { docInit();/*from w ww .j a va 2 s. c o m*/ setUpId(); ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); manager = new CertificateManagerImpl(configuration); manager.setJdbcTemplate((JdbcTemplate) ac.getBean("jdbcTemplate")); Security.addProvider(new BouncyCastleProvider()); String ruleA = "userId =" + anderson.getId() + " AND id = " + andersonCerId + ""; String ruleB = "userId =" + bobaFet.getId() + " AND id = " + bobaFetCerId + ""; String ruleC = "userId =" + cyril.getId() + " AND id = " + cyrilCerId + ""; ArrayList<String> databaseAnderson; ArrayList<String> databaseCyril; ArrayList<String> databaseBobaFet; String[] xmlExtraction = new String[] { "dn", "issuer", "serialNumber", "expirationFrom", "expirationTo", "certificatePEM", "chainPEM" }; String[] databaseExtraction = new String[] { "dn", "issuer", "serial", "expiration_From", "expiration_To", "certificate", "chain" }; databaseAnderson = testManager.extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleA); databaseBobaFet = testManager.extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleB); databaseCyril = testManager.extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleC); statement.execute("UPDATE credentials SET state= " + STATE_REVOKED + " WHERE userId=" + anderson.getId() + " AND id= " + andersonCerId); statement.execute("UPDATE credentials SET state= " + STATE_SUSPENDED + " WHERE userId=" + bobaFet.getId() + " AND id= " + bobaFetCerId); statement.execute("UPDATE credentials SET state= " + STATE_REVOKED + " WHERE userId=" + cyril.getId() + " AND id= " + cyrilCerId); testDocument1 = manager.listAllCertificatesWithStatus(STATE_REVOKED); testDocument2 = manager.listAllCertificatesWithStatus(STATE_SUSPENDED); ArrayList<String[]> revokedData = testManager.parseXmlDoc(testDocument1, xmlExtraction); ArrayList<String[]> suspendedData = testManager.parseXmlDoc(testDocument2, xmlExtraction); if (revokedData.size() == 2) { databaseAnderson = testManager.extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleA); databaseCyril = testManager.extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleC); databaseBobaFet = testManager.extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleB); assertArrayEquals(databaseAnderson.toArray(), revokedData.get(0)); assertArrayEquals(databaseCyril.toArray(), revokedData.get(1)); assertArrayEquals(databaseBobaFet.toArray(), suspendedData.get(0)); } statement.execute("UPDATE credentials SET state= " + "null" + " WHERE userId=" + anderson.getId() + " AND id= " + andersonCerId); statement.execute("UPDATE credentials SET state= " + "null" + " WHERE userId=" + bobaFet.getId() + " AND id= " + bobaFetCerId); statement.execute("UPDATE credentials SET state= " + "null" + " WHERE userId=" + cyril.getId() + " AND id= " + cyrilCerId); testDocument3 = manager.listAllCertificatesWithStatus(STATE_VALID); ArrayList<String[]> validData = testManager.parseXmlDoc(testDocument3, xmlExtraction); assertArrayEquals(databaseAnderson.toArray(), validData.get(0)); assertArrayEquals(databaseBobaFet.toArray(), validData.get(1)); assertArrayEquals(databaseCyril.toArray(), validData.get(2)); statement.execute("UPDATE credentials SET state= " + STATE_PASSWORD_RESET + " WHERE userId=" + anderson.getId() + " AND id= " + andersonCerId); statement.execute("UPDATE credentials SET state= null, expiration_from = 1480075200 WHERE userId=" + bobaFet.getId() + " AND id= " + bobaFetCerId); statement.execute("UPDATE credentials SET state= null, expiration_to = 1453161600 WHERE userId=" + cyril.getId() + " AND id= " + cyrilCerId); testDocument4 = manager.listAllCertificatesWithStatus(STATE_PASSWORD_RESET); testDocument5 = manager.listAllCertificatesWithStatus(STATE_NOT_YET_VALID); testDocument6 = manager.listAllCertificatesWithStatus(STATE_EXPIRED); databaseAnderson = testManager.extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleA); databaseBobaFet = testManager.extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleB); databaseCyril = testManager.extractMultipleCollumsFromDatabase(databaseExtraction, "credentials", ruleC); ArrayList<String[]> resetData = testManager.parseXmlDoc(testDocument4, xmlExtraction); ArrayList<String[]> notYetValidData = testManager.parseXmlDoc(testDocument5, xmlExtraction); ArrayList<String[]> expiredData = testManager.parseXmlDoc(testDocument6, xmlExtraction); assertArrayEquals(databaseAnderson.toArray(), resetData.get(0)); assertArrayEquals(databaseBobaFet.toArray(), notYetValidData.get(0)); assertArrayEquals(databaseCyril.toArray(), expiredData.get(0)); }
From source file:cz.muni.ics.remsig.impl.CertificateManagerImplTestRefact.java
/** * Test of uploadPrivateKey method, of class CertificateManagerImpl. */// w w w . j a v a 2s . co m @Test public void testUploadPrivateKey() throws Exception { docInit(); setUpId(); ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); manager = new CertificateManagerImpl(configuration); manager.setJdbcTemplate((JdbcTemplate) ac.getBean("jdbcTemplate")); Security.addProvider(new BouncyCastleProvider()); byte[] differentData = new byte[] { 4, 2, 3, 4, 1, 23, 4, 1 }; byte[] privateKeyA = testManager.loadFileBytes("test/testFiles/testsubject1-key.pem"); byte[] privateKeyB = testManager.loadFileBytes("test/testFiles/testsubject2-key.pem"); byte[] privateKeyC = testManager.loadFileBytes("test/testFiles/testsubject3-key.pem"); testDocument1 = manager.resetPassword(anderson, andersonCerId); byte[] passHashA = testManager.extractElementFromXmlDoc(testDocument1, "password").getBytes(); testDocument2 = manager.resetPassword(bobaFet, bobaFetCerId); byte[] passHashB = testManager.extractElementFromXmlDoc(testDocument2, "password").getBytes(); String[] dataToBeExtracted = new String[] { "userId", "id", "dn", "issuer", "serial", "expiration_from", "expiration_to" }; String ruleA = "userId =" + anderson.getId() + " AND id = " + andersonCerId + ""; String ruleB = "userId =" + bobaFet.getId() + " AND id = " + bobaFetCerId + ""; String ruleC = "userId =" + cyril.getId() + " AND id = " + cyrilCerId + ""; try { testDocument3 = manager.uploadPrivateKey(null, anderson, cyrilCerId, differentData); testDocument4 = manager.uploadPrivateKey(differentData, anderson, cyrilCerId, null); testDocument5 = manager.uploadPrivateKey(null, anderson, cyrilCerId, null); testDocument6 = manager.uploadPrivateKey(differentData, null, cyrilCerId, differentData); testDocument7 = manager.uploadPrivateKey(null, null, cyrilCerId, differentData); testDocument8 = manager.uploadPrivateKey(null, null, cyrilCerId, null); } catch (NullPointerException e) { fail("uncaught null pointer exception"); } Document[] allDoc = new Document[] { testDocument3, testDocument4, testDocument5, testDocument6, testDocument7, testDocument8 }; if (0 != testManager.chceckDocuments(allDoc, 0, 0)) { fail("some key was uploaded with null values"); } try { String originalKey = testManager.extractOneCollumFromDatabase("private_key", "credentials", ruleA); testDocument2 = manager.uploadPrivateKey(privateKeyA, anderson, cyrilCerId, passHashA); testDocument3 = manager.uploadPrivateKey(privateKeyA, anderson, andersonCerId, differentData); testDocument4 = manager.uploadPrivateKey(privateKeyA, anderson, bobaFetCerId, differentData); String newPrivateKey = testManager.extractOneCollumFromDatabase("private_key", "credentials", ruleA); assertEquals(originalKey, newPrivateKey); } catch (RemSigException e) { } byte[] originalAnderson = testManager.extractOneCollumFromDatabase("private_key", "credentials", ruleA) .getBytes(); byte[] originalBobaFet = testManager.extractOneCollumFromDatabase("private_key", "credentials", ruleB) .getBytes(); byte[] originalCyril = testManager.extractOneCollumFromDatabase("private_key", "credentials", ruleC) .getBytes(); testDocument5 = manager.uploadPrivateKey(privateKeyA, anderson, andersonCerId, passHashA); testDocument6 = manager.uploadPrivateKey(privateKeyB, bobaFet, bobaFetCerId, passHashB); testDocument7 = manager.uploadPrivateKey(privateKeyC, cyril, cyrilCerId, differentData); byte[] uploadedAnderson = testManager.extractOneCollumFromDatabase("private_key", "credentials", ruleA) .getBytes(); byte[] uploadedBobaFet = testManager.extractOneCollumFromDatabase("private_key", "credentials", ruleB) .getBytes(); byte[] uploadedCyril = testManager.extractOneCollumFromDatabase("private_key", "credentials", ruleC) .getBytes(); try { assertThat("Key wasnt changed", originalAnderson, not(uploadedAnderson)); assertThat("Key wasnt changed", originalBobaFet, not(uploadedBobaFet)); assertThat("Key wasnt changed", originalCyril, is(uploadedCyril)); } catch (Error e) { fail(e.getMessage()); } }
From source file:cz.muni.ics.remsig.impl.CertificateManagerImplTestRefact.java
/** * Only testing expected outcome since nothing else can be properly tested * Test of stats method, of class CertificateManagerImpl. *//*from w ww . j a va 2 s .co m*/ @Test public void testStats() throws Exception { docInit(); setUpId(); ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); manager = new CertificateManagerImpl(configuration); manager.setJdbcTemplate((JdbcTemplate) ac.getBean("jdbcTemplate")); Security.addProvider(new BouncyCastleProvider()); testDocument1 = manager.stats(); String[] xmlExtraction = new String[] { "userId", "id", "dn", "issuer", "serialNumber", "expirationFrom", "expirationTo" }; String[] dataToBeExtracted = new String[] { "userId", "id", "dn", "issuer", "serial", "expiration_from", "expiration_to" }; ArrayList<String[]> xmlData = testManager.parseXmlDoc(testDocument1, xmlExtraction); String ruleA = "userId =" + anderson.getId() + " AND id = " + andersonCerId + ""; String ruleB = "userId =" + bobaFet.getId() + " AND id = " + bobaFetCerId + ""; String ruleC = "userId =" + cyril.getId() + " AND id = " + cyrilCerId + ""; ArrayList<String> databaseAndersonData = testManager.extractMultipleCollumsFromDatabase(dataToBeExtracted, "credentials", ruleA); ArrayList<String> databaseBobaFetData = testManager.extractMultipleCollumsFromDatabase(dataToBeExtracted, "credentials", ruleB); ArrayList<String> databaseCyrilData = testManager.extractMultipleCollumsFromDatabase(dataToBeExtracted, "credentials", ruleC); Object[] databaseAnderson = databaseAndersonData.toArray(); Object[] databaseBobaFet = databaseBobaFetData.toArray(); Object[] databaseCyril = databaseCyrilData.toArray(); assertArrayEquals(databaseAnderson, xmlData.get(0)); assertArrayEquals(databaseBobaFet, xmlData.get(1)); assertArrayEquals(databaseCyril, xmlData.get(2)); }
From source file:cz.muni.ics.remsig.impl.CertificateManagerImplTestRefact.java
@Test public void testImportCertificate() throws Exception { docInit();//from ww w . jav a2 s . c o m setUpId(); ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); manager = new CertificateManagerImpl(configuration); manager.setJdbcTemplate((JdbcTemplate) ac.getBean("jdbcTemplate")); Security.addProvider(new BouncyCastleProvider()); String ruleA = "userId =" + anderson.getId() + " AND id = " + andersonCerId + ""; String ruleB = "userId =" + bobaFet.getId() + " AND id = " + bobaFetCerId + ""; String ruleC = "userId =" + cyril.getId() + " AND id = " + cyrilCerId + ""; String certchainA = testManager.extractOneCollumFromDatabase("chain", "credentials", ruleA); String certchainB = testManager.extractOneCollumFromDatabase("chain", "credentials", ruleB); String certchainC = testManager.extractOneCollumFromDatabase("chain", "credentials", ruleC); FileInputStream first = new FileInputStream("test/testFiles/testsubject1-cert.pem"); FileInputStream second = new FileInputStream("test/testFiles/testsubject2-cert.pem"); FileInputStream third = new FileInputStream("test/testFiles/testsubject3-cert.pem"); CertificateFactory cf = CertificateFactory.getInstance("X.509"); X509Certificate firstCert = (X509Certificate) cf.generateCertificate(first); X509Certificate secondCert = (X509Certificate) cf.generateCertificate(second); X509Certificate thirdCert = (X509Certificate) cf.generateCertificate(third); try { testDocument1 = manager.importCertificate(anderson, null, certchainA); testDocument2 = manager.importCertificate(null, firstCert, certchainA); testDocument3 = manager.importCertificate(anderson, firstCert, null); testDocument4 = manager.importCertificate(null, null, certchainA); testDocument5 = manager.importCertificate(null, firstCert, null); testDocument6 = manager.importCertificate(anderson, null, null); testDocument7 = manager.importCertificate(null, null, null); Document[] allDoc = new Document[] { testDocument1, testDocument2, testDocument3, testDocument4, testDocument5, testDocument6, testDocument7 }; if (0 != testManager.chceckDocuments(allDoc, 0, 0)) { fail("some key was uploaded with null values"); } } catch (NullPointerException e) { fail("Unreported nullPinterException"); } try { testDocument1 = manager.importCertificate(anderson, firstCert, certchainC); testDocument2 = manager.importCertificate(bobaFet, firstCert, certchainA); testDocument3 = manager.importCertificate(cyril, thirdCert, certchainA); } catch (Exception e) { } try { testDocument1 = manager.importCertificate(anderson, firstCert, certchainA); testDocument2 = manager.importCertificate(bobaFet, secondCert, certchainB); testDocument3 = manager.importCertificate(cyril, thirdCert, certchainC); int doc1 = Integer.parseInt(testManager.extractElementFromXmlDoc(testDocument1, "Id")); int doc2 = Integer.parseInt(testManager.extractElementFromXmlDoc(testDocument2, "Id")); int doc3 = Integer.parseInt(testManager.extractElementFromXmlDoc(testDocument2, "Id")); ruleA = "userId =" + anderson.getId() + " AND id = " + doc1 + ""; ruleB = "userId =" + bobaFet.getId() + " AND id = " + doc2 + ""; ruleC = "userId =" + cyril.getId() + " AND id = " + doc3 + ""; String[] dataToBeExtracted = new String[] { "dn", "issuer", "serial", "expiration_From", "expiration_To", "certificate", "chain" }; ArrayList<String> databaseAndersonData = testManager .extractMultipleCollumsFromDatabase(dataToBeExtracted, "credentials", ruleA); ArrayList<String> databaseBobaFetData = testManager .extractMultipleCollumsFromDatabase(dataToBeExtracted, "credentials", ruleB); ArrayList<String> databaseCyrilData = testManager.extractMultipleCollumsFromDatabase(dataToBeExtracted, "credentials", ruleC); for (int i = 0; i < databaseAndersonData.size(); i++) { assertNotNull(databaseAndersonData.get(i)); assertNotNull(databaseBobaFetData.get(i)); assertNotNull(databaseCyrilData.get(i)); } } catch (Exception e) { fail("Did not imported certificate " + e.getMessage()); } }
From source file:cz.muni.ics.remsig.impl.SignerImplIT.java
/** * Test of sign method, of class SignerImpl. */// w w w .j a va2 s .co m @Test public void testSign_4args() throws Exception { //testManager.setUpId(); docInit(); ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); SignerImpl signer = new SignerImpl(configuration); signer.setJdbcTemplate((JdbcTemplate) ac.getBean("jdbcTemplate")); Security.addProvider(new BouncyCastleProvider()); try { testDocument1 = signer.sign(null, andersonDefPass, "signData", andersonCerId); testDocument2 = signer.sign(anderson, null, "signData", andersonCerId); testDocument3 = signer.sign(anderson, andersonDefPass, null, andersonCerId); testDocument4 = signer.sign(null, null, "signData", andersonCerId); testDocument5 = signer.sign(null, andersonDefPass, null, andersonCerId); testDocument6 = signer.sign(anderson, null, null, andersonCerId); testDocument7 = signer.sign(null, null, null, andersonCerId); Document[] allDoc = new Document[] { testDocument1, testDocument2, testDocument3, testDocument4, testDocument5, testDocument6, testDocument7 }; if (0 != testManager.chceckDocuments(allDoc, 0, 0)) { fail("Input null value passed"); } } catch (NullPointerException e) { fail("uncaught nullPointerException"); } try { testDocument1 = signer.sign(anderson, andersonDefPass, "data", cyrilCerId); testDocument2 = signer.sign(bobaFet, andersonDefPass, "data", andersonCerId); testDocument3 = signer.sign(anderson, bobaFetDefPass, "data", andersonCerId); assertNull(testManager.extractElementFromXmlDoc(testDocument1, "signature")); assertNull(testManager.extractElementFromXmlDoc(testDocument2, "signature")); assertNull(testManager.extractElementFromXmlDoc(testDocument3, "signature")); } catch (Exception e) { } testDocument1 = signer.sign(anderson, andersonDefPass, "dataToSign", andersonCerId); String signedData = testManager.extractElementFromXmlDoc(testDocument1, "signature"); testDocument2 = signer.sign(anderson, andersonDefPass, "trainRules", andersonCerId); String expectedAnd = testManager.extractElementFromXmlDoc(testDocument2, "signature"); testDocument3 = signer.sign(bobaFet, bobaFetDefPass, "are", bobaFetCerId); String expectedBob = testManager.extractElementFromXmlDoc(testDocument3, "signature"); testDocument4 = signer.sign(cyril, cyrilDefPass, "forEveryOne", cyrilCerId); String expectedCyr = testManager.extractElementFromXmlDoc(testDocument4, "signature"); assertEquals(expectedAnd, defaultSignatureAnderson); assertEquals(expectedBob, defaultSignatureBobaFet); assertEquals(expectedCyr, defaultSignatureCyril); assertThat(signedData, not(defaultSignatureAnderson)); }
From source file:cz.muni.ics.remsig.impl.SignerImplIT.java
@Test public void testSign_3args() throws Exception { ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); SignerImpl signer = new SignerImpl(configuration); signer.setJdbcTemplate((JdbcTemplate) ac.getBean("jdbcTemplate")); TestManager managerTest = new TestManager(); Security.addProvider(new BouncyCastleProvider()); try {// www .j a va 2 s .c o m testDocument1 = signer.sign(anderson, andersonDefPass, null); testDocument2 = signer.sign(null, andersonDefPass, "randomdata"); testDocument3 = signer.sign(anderson, null, "randomdata"); testDocument4 = signer.sign(anderson, null, null); testDocument5 = signer.sign(null, null, "randomdata"); testDocument6 = signer.sign(null, null, null); Document[] allDoc = new Document[] { testDocument1, testDocument2, testDocument3, testDocument4, testDocument5, testDocument6 }; if (0 != testManager.chceckDocuments(allDoc, 0, 0)) { fail("Input null value passed"); } } catch (NullPointerException e) { fail("Uncaught nullPointer exception" + e.getMessage()); } if (testIsusingDefaultCertificates) { testDocument1 = signer.sign(anderson, andersonDefPass, "trainRules"); String expectedAnd = managerTest.extractElementFromXmlDoc(testDocument1, "signature"); testDocument2 = signer.sign(bobaFet, bobaFetDefPass, "are"); String expectedBob = managerTest.extractElementFromXmlDoc(testDocument2, "signature"); testDocument3 = signer.sign(cyril, cyrilDefPass, "forEveryOne"); String expectedCyr = managerTest.extractElementFromXmlDoc(testDocument3, "signature"); assertEquals("Signature doesn't corresnd with preset", defaultSignatureAnderson, expectedAnd); assertEquals("Signature doesn't corresnd with preset", defaultSignatureBobaFet, expectedBob); assertEquals("Signature doesn't corresnd with preset", defaultSignatureCyril, expectedCyr); } try { testDocument10 = signer.sign(anderson, evaDefPass, evaDefPass); assertNull(testManager.extractElementFromXmlDoc(testDocument10, "signature")); } catch (Exception e) { } testDocument7 = signer.sign(anderson, andersonDefPass, "trainRules"); String andersonSig = managerTest.extractElementFromXmlDoc(testDocument7, "signature"); testDocument4 = signer.sign(anderson, andersonDefPass, "Gibberish"); String diffData = managerTest.extractElementFromXmlDoc(testDocument4, "signature"); testDocument5 = signer.sign(bobaFet, bobaFetDefPass, "somethingelse"); String diffDataB = managerTest.extractElementFromXmlDoc(testDocument5, "signature"); assertThat(defaultSignatureAnderson, not(diffData)); assertThat(defaultSignatureBobaFet, not(diffDataB)); testDocument6 = signer.sign(anderson, andersonDefPass, "trainRules"); String originalData = managerTest.extractElementFromXmlDoc(testDocument6, "signature"); assertEquals(andersonSig, originalData); }
From source file:cz.muni.ics.remsig.impl.SignerImplIT.java
/** * Test of signPKCS7 method, of class SignerImpl. * test not complete yet//from www. jav a 2 s.co m * */ @Test public void testSignPKCS7_5args() throws Exception { docInit(); ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml"); SignerImpl signer = new SignerImpl(configuration); signer.setJdbcTemplate((JdbcTemplate) ac.getBean("jdbcTemplate")); Security.addProvider(new BouncyCastleProvider()); String profile = "cnb_01"; String dataToSign = "something"; // testing written in unworking code try { testDocument1 = signer.signPKCS7(null, andersonDefPass, dataToSign, profile, andersonCerId); testDocument2 = signer.signPKCS7(anderson, null, dataToSign, profile, andersonCerId); testDocument3 = signer.signPKCS7(anderson, andersonDefPass, null, profile, andersonCerId); testDocument4 = signer.signPKCS7(anderson, andersonDefPass, dataToSign, null, andersonCerId); testDocument5 = signer.signPKCS7(anderson, andersonDefPass, dataToSign, profile, cyrilCerId); testDocument6 = signer.signPKCS7(anderson, andersonDefPass, null, null, andersonCerId); testDocument7 = signer.signPKCS7(anderson, null, dataToSign, null, andersonCerId); testDocument8 = signer.signPKCS7(null, andersonDefPass, dataToSign, null, andersonCerId); testDocument9 = signer.signPKCS7(null, null, dataToSign, profile, andersonCerId); testDocument10 = signer.signPKCS7(null, andersonDefPass, null, profile, andersonCerId); testDocument11 = signer.signPKCS7(anderson, null, null, profile, andersonCerId); testDocument12 = signer.signPKCS7(null, null, null, profile, andersonCerId); testDocument13 = signer.signPKCS7(null, null, dataToSign, null, andersonCerId); testDocument14 = signer.signPKCS7(anderson, null, null, null, andersonCerId); testDocument15 = signer.signPKCS7(anderson, null, null, null, cyrilCerId); testDocument16 = signer.signPKCS7(null, null, null, null, andersonCerId); } catch (NullPointerException e) { fail("uncaught nullpointer exception"); } Document[] testSubjects = new Document[] { testDocument1, testDocument2, testDocument3, testDocument4, testDocument5, testDocument6, testDocument7, testDocument8, testDocument9, testDocument10, testDocument11, testDocument12, testDocument13, testDocument14, testDocument15, testDocument16 }; if (0 != testManager.chceckDocuments(testSubjects, 0, 0)) { fail("some documents were signed with null data"); } try { testDocument1 = signer.signPKCS7(anderson, andersonDefPass, dataToSign, profile, cyrilCerId); testDocument2 = signer.signPKCS7(anderson, bobaFetDefPass, dataToSign, profile, andersonCerId); testDocument3 = signer.signPKCS7(cyril, andersonDefPass, dataToSign, profile, andersonCerId); testDocument4 = signer.signPKCS7(bobaFet, bobaFetDefPass, dataToSign, "unknown", andersonCerId); testDocument5 = signer.signPKCS7(anderson, cyrilDefPass, dataToSign, profile, cyrilCerId); testDocument6 = signer.signPKCS7(anderson, bobaFetDefPass, dataToSign, profile, andersonCerId); assertNull(testManager.extractElementFromXmlDoc(testDocument1, "pkcs7")); assertNull(testManager.extractElementFromXmlDoc(testDocument2, "pkcs7")); assertNull(testManager.extractElementFromXmlDoc(testDocument3, "pkcs7")); assertNull(testManager.extractElementFromXmlDoc(testDocument4, "pkcs7")); assertNull(testManager.extractElementFromXmlDoc(testDocument5, "pkcs7")); assertNull(testManager.extractElementFromXmlDoc(testDocument6, "pkcs7")); } catch (Exception e) { } try { testDocument1 = signer.signPKCS7(anderson, andersonDefPass, dataToSign, "cnb_01", andersonCerId); testDocument2 = signer.signPKCS7(bobaFet, bobaFetDefPass, dataToSign, "ceskaposta_01", bobaFetCerId); testDocument3 = signer.signPKCS7(anderson, cyrilDefPass, dataToSign, "cnb_01", cyrilCerId); String outputAnderson = testManager.extractElementFromXmlDoc(testDocument1, "pkcs7"); String outputBobaFet = testManager.extractElementFromXmlDoc(testDocument2, "pkcs7"); String outputCyril = testManager.extractElementFromXmlDoc(testDocument3, "pkcs7"); assertEquals(defaultSignatureAnderson7, outputAnderson); assertEquals(defaultSignatureBobaFet7, outputBobaFet); assertEquals(defaultSignatureCyril7, outputCyril); assertThat(defaultSignatureAnderson7, not(outputCyril)); assertThat(defaultSignatureAnderson7, not(outputBobaFet)); assertThat(defaultSignatureCyril7, not(outputBobaFet)); } catch (Exception e) { fail(e.getMessage()); } }