1561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes/* 2561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Licensed to the Apache Software Foundation (ASF) under one or more 3561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * contributor license agreements. See the NOTICE file distributed with 4561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * this work for additional information regarding copyright ownership. 5561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * The ASF licenses this file to You under the Apache License, Version 2.0 6561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * (the "License"); you may not use this file except in compliance with 7561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * the License. You may obtain a copy of the License at 8561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * 9561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * http://www.apache.org/licenses/LICENSE-2.0 10561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * 11561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Unless required by applicable law or agreed to in writing, software 12561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * distributed under the License is distributed on an "AS IS" BASIS, 13561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * See the License for the specific language governing permissions and 15561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * limitations under the License. 16561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 17561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 18561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes/** 198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath * @author Vera Y. Petrashkova 208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath */ 21561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 22561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughespackage org.apache.harmony.security.tests.java.security; 238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 24561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.security.*; 25561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport java.security.spec.AlgorithmParameterSpec; 26561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 27561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport org.apache.harmony.security.tests.support.MyKeyPairGenerator1; 28561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport org.apache.harmony.security.tests.support.MyKeyPairGenerator2; 29561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport org.apache.harmony.security.tests.support.SpiEngUtils; 30561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 31561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughesimport junit.framework.TestCase; 32561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 33561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 34561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes/** 35561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Tests for <code>KeyPairGenerator</code> class constructors and methods. 36561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 37561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 38561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughespublic class KeyPairGenerator2Test extends TestCase { 39561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes private String KeyPairGeneratorProviderClass = ""; 40561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 41561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes private static final String KeyPairGeneratorProviderClass1 = "org.apache.harmony.security.tests.support.MyKeyPairGenerator1"; 42561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes private static final String KeyPairGeneratorProviderClass2 = "org.apache.harmony.security.tests.support.MyKeyPairGenerator2"; 43561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes private static final String KeyPairGeneratorProviderClass3 = "org.apache.harmony.security.tests.support.MyKeyPairGenerator3"; 44561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes private static final String KeyPairGeneratorProviderClass4 = "org.apache.harmony.security.tests.support.MyKeyPairGeneratorSpi"; 45e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes 46561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes private static final String defaultAlg = "KPGen"; 47561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 48561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes private static final String[] invalidValues = SpiEngUtils.invalidValues; 49561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 50561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes private static final String[] validValues; 51561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 52561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes String post; 53e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes 54561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes static { 55561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes validValues = new String[4]; 56561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes validValues[0] = defaultAlg; 57561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes validValues[1] = defaultAlg.toLowerCase(); 58561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes validValues[2] = "kpGEN"; 59561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes validValues[3] = "kPGEn"; 60561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 61561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 62e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes Provider mProv; 63561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes String resAlg; 64561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 65561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /* 66561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * @see TestCase#tearDown() 67561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 68561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes protected void tearDown() throws Exception { 69561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes super.tearDown(); 70561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes Security.removeProvider(mProv.getName()); 71561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 72561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 73561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes protected void setProv() { 74561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes mProv = (new SpiEngUtils()).new MyProvider("MyKPGenProvider".concat(post), 75561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes "Testing provider", KeyPairGenerator1Test.srvKeyPairGenerator.concat(".") 768d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath .concat(defaultAlg.concat(post)), 77561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGeneratorProviderClass); 78561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes Security.insertProviderAt(mProv, 1); 79561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 80561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 81561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public KeyPairGenerator2Test(String arg0) { 82561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes super(arg0); 83561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 84561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 85561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes private void checkResult(KeyPairGenerator keyPairGen, int mode) 86561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes throws InvalidAlgorithmParameterException { 87561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes AlgorithmParameterSpec pp = null; 88561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes switch (mode) { 898d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath case 1: 908d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 918d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(pp, new SecureRandom()); 928d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("InvalidAlgorithmParameterException must be thrown"); 938d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (InvalidAlgorithmParameterException e) { 948d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 958d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(1000, new SecureRandom()); 968d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 978d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(-1024, new SecureRandom()); 988d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("InvalidParameterException must be thrown"); 998d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (InvalidParameterException e) { 1008d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("Incorrect exception", e.getMessage(), 1018d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "Incorrect keysize parameter"); 1028d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1038d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 1048d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(100, null); 1058d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("InvalidParameterException must be thrown"); 1068d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (InvalidParameterException e) { 1078d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertEquals("Incorrect exception", e.getMessage(), 1088d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath "Incorrect random"); 1098d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1108d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.generateKeyPair(); 1118d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.genKeyPair(); 1128d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath break; 1138d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath case 2: 1148d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 1158d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(pp, new SecureRandom()); 1168d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (UnsupportedOperationException e) { 1178d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath // js2e does not throw this exception 1188d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1198d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(1000, new SecureRandom()); 1208d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 1218d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(63, new SecureRandom()); 1228d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("InvalidParameterException must be thrown"); 1238d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (InvalidParameterException e) { 1248d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 125561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes keyPairGen.initialize(100, null); 1268d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull("Not null KeyPair", keyPairGen.generateKeyPair()); 1278d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull("Not null KeyPair", keyPairGen.genKeyPair()); 1288d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath break; 1298d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath case 3: 130561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes keyPairGen.initialize(pp, new SecureRandom()); 1318d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(pp); 1328d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(1000, new SecureRandom()); 1338d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(100); 1348d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath 1358d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNotNull("Null KeyPair", keyPairGen.generateKeyPair()); 1368d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNotNull("Null KeyPair", keyPairGen.genKeyPair()); 1378d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath break; 1388d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath case 4: 1398d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 1408d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(pp, null); 1418d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("UnsupportedOperationException must be thrown"); 1428d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (UnsupportedOperationException e) { 1438d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1448d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(pp, new SecureRandom()); 1458d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(101, new SecureRandom()); 1468d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(10000); 1478d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 1488d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(101, null); 1498d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("IllegalArgumentException must be thrown for null random"); 1508d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (IllegalArgumentException e) { 1518d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1528d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 1538d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(99, new SecureRandom()); 1548d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("InvalidParameterException must be thrown for invalid key"); 1558d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (InvalidParameterException e) { 1568d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1578d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 1588d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(99); 1598d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("InvalidParameterException must be thrown for invalid key"); 1608d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (InvalidParameterException e) { 1618d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1628d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath try { 1638d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath keyPairGen.initialize(199, null); 1648d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath fail("IllegalArgumentException must be thrown for null random"); 1658d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } catch (IllegalArgumentException e) { 1668d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath } 1678d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull("Not null KeyPair", keyPairGen.generateKeyPair()); 1688d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath assertNull("Not null KeyPair", keyPairGen.genKeyPair()); 1698d8858e39800de641b50f6e8e864af9cf68bedeaNarayan Kamath break; 170561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 171561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 172561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 173561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 174561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 175561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Test for <code>getInstance(String algorithm)</code> method Assertions: 176561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * throws NullPointerException when algorithm is null throws 177561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * NoSuchAlgorithmException when algorithm is incorrect; returns 178561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * KeyPairGenerator object 179561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 180561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes private void GetInstance01(int mode) throws NoSuchAlgorithmException, 181561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes InvalidAlgorithmParameterException { 182561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 183561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGenerator.getInstance(null); 184561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("NullPointerException or KeyStoreException must be thrown"); 185561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NoSuchAlgorithmException e) { 186561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 187561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 188561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes for (int i = 0; i < invalidValues.length; i++) { 189561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 190561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGenerator.getInstance(invalidValues[i]); 191561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("NoSuchAlgorithmException must be thrown (algorithm: " 192561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes .concat(invalidValues[i]).concat(")")); 193561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NoSuchAlgorithmException e) { 194561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 195561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 196561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGenerator kpG; 197561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes for (int i = 0; i < validValues.length; i++) { 198561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes String alg = validValues[i].concat(post); 199561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes kpG = KeyPairGenerator.getInstance(alg); 200561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Incorrect algorithm", kpG.getAlgorithm() 201561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes .toUpperCase(), (mode <= 2 ? resAlg : alg).toUpperCase()); 202561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Incorrect provider", kpG.getProvider(), mProv); 203561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes checkResult(kpG, mode); 204561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 205561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 206561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 207561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 208561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Test for <code>getInstance(String algorithm, String provider)</code> 209e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes * method 210e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes * Assertions: 211561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * throws NullPointerException when algorithm is null 212e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes * throws NoSuchAlgorithmException when algorithm is incorrect; 213561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * throws IllegalArgumentException when provider is null; 214e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes * throws NoSuchProviderException when provider is available; 215561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * returns 216561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * KeyPairGenerator object 217561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 218561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void GetInstance02(int mode) throws NoSuchAlgorithmException, 219561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes NoSuchProviderException, IllegalArgumentException, 220561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes InvalidAlgorithmParameterException { 221561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 222561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGenerator.getInstance(null, mProv.getName()); 223561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("NullPointerException or KeyStoreException must be thrown"); 224561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NoSuchAlgorithmException e) { 225561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 226561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 227561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes for (int i = 0; i < invalidValues.length; i++) { 228561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 229561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGenerator.getInstance(invalidValues[i], mProv.getName()); 230561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("NoSuchAlgorithmException must be thrown (algorithm: " 231561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes .concat(invalidValues[i]).concat(")")); 232561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NoSuchAlgorithmException e) { 233561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 234561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 235561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes String prov = null; 236561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes for (int i = 0; i < validValues.length; i++) { 237561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes String alg = validValues[i].concat(post); 238561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 239561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGenerator.getInstance(alg, prov); 240561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("IllegalArgumentException must be thrown when provider is null (algorithm: " 241561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes .concat(alg).concat(")")); 242561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 243561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 244561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 245561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes for (int i = 0; i < validValues.length; i++) { 246561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes String alg = validValues[i].concat(post); 247561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes for (int j = 1; j < invalidValues.length; j++) { 248561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 249561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGenerator.getInstance(alg, invalidValues[j]); 250561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("NoSuchProviderException must be thrown (algorithm: " 251561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes .concat(alg).concat(" provider: ").concat( 252561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes invalidValues[j]).concat(")")); 253561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NoSuchProviderException e) { 254561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 255561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 256561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 257561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGenerator kpG; 258561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes for (int i = 0; i < validValues.length; i++) { 259561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes String alg = validValues[i].concat(post); 260561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes kpG = KeyPairGenerator.getInstance(alg, mProv.getName()); 261561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Incorrect algorithm", kpG.getAlgorithm() 262561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes .toUpperCase(), (mode <= 2 ? resAlg : alg).toUpperCase()); 263561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Incorrect provider", kpG.getProvider().getName(), 264561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes mProv.getName()); 265561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes checkResult(kpG, mode); 266561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 267561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 268561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 269561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes /** 270561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * Test for <code>getInstance(String algorithm, Provider provider)</code> 271e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes * method 272e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes * Assertions: 273561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * throws NullPointerException when algorithm is null 274e98fbf8686c5289bf03fe5c3de7ff82d3a77104dElliott Hughes * throws NoSuchAlgorithmException when algorithm is incorrect; 275561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * throws IllegalArgumentException when provider is null; 276561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes * returns KeyPairGenerator object 277561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes */ 278561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes private void GetInstance03(int mode) throws NoSuchAlgorithmException, 279561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes IllegalArgumentException, InvalidAlgorithmParameterException { 280561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 281561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGenerator.getInstance(null, mProv); 282561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("NullPointerException or KeyStoreException must be thrown"); 283561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NoSuchAlgorithmException e) { 284561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NullPointerException e) { 285561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 286561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes for (int i = 0; i < invalidValues.length; i++) { 287561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 288561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGenerator.getInstance(invalidValues[i], mProv); 289561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("NoSuchAlgorithmException must be thrown (algorithm: " 290561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes .concat(invalidValues[i]).concat(")")); 291561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (NoSuchAlgorithmException e) { 292561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 293561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 294561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes Provider prov = null; 295561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes for (int i = 0; i < validValues.length; i++) { 296561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes String alg = validValues[i].concat(post); 297561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes try { 298561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGenerator.getInstance(alg, prov); 299561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes fail("IllegalArgumentException must be thrown when provider is null (algorithm: " 300561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes .concat(alg).concat(")")); 301561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } catch (IllegalArgumentException e) { 302561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 303561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 304561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGenerator kpG; 305561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes for (int i = 0; i < validValues.length; i++) { 306561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes String alg = validValues[i].concat(post); 307561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes kpG = KeyPairGenerator.getInstance(alg, mProv); 308561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Incorrect algorithm", kpG.getAlgorithm() 309561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes .toUpperCase(), (mode <= 2 ? resAlg : alg).toUpperCase()); 310561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes assertEquals("Incorrect provider", kpG.getProvider(), mProv); 311561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes checkResult(kpG, mode); 312561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 313561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 314561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 315561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetInstance01() throws NoSuchAlgorithmException, 316561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes InvalidAlgorithmParameterException { 317561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGeneratorProviderClass = KeyPairGeneratorProviderClass1; 318561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes resAlg = MyKeyPairGenerator1.getResAlgorithm(); 319561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes post = "_1"; 320561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes setProv(); 321561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes GetInstance01(1); 322561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 323561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 324561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetInstance02() throws NoSuchAlgorithmException, 325561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes NoSuchProviderException, IllegalArgumentException, 326561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes InvalidAlgorithmParameterException { 327561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGeneratorProviderClass = KeyPairGeneratorProviderClass1; 328561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes resAlg = MyKeyPairGenerator1.getResAlgorithm(); 329561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes post = "_1"; 330561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes setProv(); 331561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes GetInstance02(1); 332561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 333561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 334561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetInstance03() throws NoSuchAlgorithmException, 335561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes IllegalArgumentException, InvalidAlgorithmParameterException { 336561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGeneratorProviderClass = KeyPairGeneratorProviderClass1; 337561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes resAlg = MyKeyPairGenerator1.getResAlgorithm(); 338561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes post = "_1"; 339561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes setProv(); 340561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes GetInstance03(1); 341561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 342561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 343561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetInstance04() throws NoSuchAlgorithmException, 344561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes InvalidAlgorithmParameterException { 345561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGeneratorProviderClass = KeyPairGeneratorProviderClass2; 346561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes resAlg = MyKeyPairGenerator2.getResAlgorithm(); 347561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes post = "_2"; 348561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes setProv(); 349561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes GetInstance01(2); 350561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 351561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 352561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetInstance05() throws NoSuchAlgorithmException, 353561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes NoSuchProviderException, IllegalArgumentException, 354561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes InvalidAlgorithmParameterException { 355561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGeneratorProviderClass = KeyPairGeneratorProviderClass2; 356561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes resAlg = MyKeyPairGenerator2.getResAlgorithm(); 357561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes post = "_2"; 358561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes setProv(); 359561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes GetInstance02(2); 360561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 361561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 362561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetInstance06() throws NoSuchAlgorithmException, 363561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes IllegalArgumentException, InvalidAlgorithmParameterException { 364561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGeneratorProviderClass = KeyPairGeneratorProviderClass2; 365561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes resAlg = MyKeyPairGenerator2.getResAlgorithm(); 366561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes post = "_2"; 367561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes setProv(); 368561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes GetInstance03(2); 369561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 370561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 371561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetInstance07() throws NoSuchAlgorithmException, 372561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes InvalidAlgorithmParameterException { 373561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGeneratorProviderClass = KeyPairGeneratorProviderClass3; 374561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes resAlg = ""; 375561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes post = "_3"; 376561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes setProv(); 377561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes GetInstance01(3); 378561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 379561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 380561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetInstance08() throws NoSuchAlgorithmException, 381561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes NoSuchProviderException, IllegalArgumentException, 382561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes InvalidAlgorithmParameterException { 383561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGeneratorProviderClass = KeyPairGeneratorProviderClass3; 384561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes resAlg = ""; 385561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes post = "_3"; 386561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes setProv(); 387561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes GetInstance02(3); 388561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 389561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 390561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetInstance09() throws NoSuchAlgorithmException, 391561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes IllegalArgumentException, InvalidAlgorithmParameterException { 392561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGeneratorProviderClass = KeyPairGeneratorProviderClass3; 393561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes resAlg = ""; 394561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes post = "_3"; 395561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes setProv(); 396561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes GetInstance03(3); 397561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 398561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 399561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetInstance10() throws NoSuchAlgorithmException, 400561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes InvalidAlgorithmParameterException { 401561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGeneratorProviderClass = KeyPairGeneratorProviderClass4; 402561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes resAlg = ""; 403561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes post = "_4"; 404561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes setProv(); 405561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes GetInstance01(4); 406561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 407561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 408561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetInstance11() throws NoSuchAlgorithmException, 409561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes NoSuchProviderException, IllegalArgumentException, 410561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes InvalidAlgorithmParameterException { 411561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGeneratorProviderClass = KeyPairGeneratorProviderClass4; 412561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes resAlg = ""; 413561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes post = "_4"; 414561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes setProv(); 415561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes GetInstance02(4); 416561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 417561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes 418561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes public void testGetInstance12() throws NoSuchAlgorithmException, 419561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes IllegalArgumentException, InvalidAlgorithmParameterException { 420561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes KeyPairGeneratorProviderClass = KeyPairGeneratorProviderClass4; 421561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes resAlg = ""; 422561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes post = "_4"; 423561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes setProv(); 424561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes GetInstance03(4); 425561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes } 426561ee011997c6c2f1befbfaa9d5f0a99771c1d63Elliott Hughes} 427