IbeProvider.class
package nuim.cs.crypto.ibe;
import java.security.Provider;
/** * This class provides a key pair generator and an El-Gamal based cipher for * Identity Based Encryption (IBE). */ public class IbeProvider extends Provider { /** the name of the cipher and key pair generators for ibe */ public static final String IBE = new String("ibe"); /** * */ private static final long serialVersionUID = 1L;
/** * Creates a new instance of the Crypto Group's provider for IBE. */ public IbeProvider() { super("NUIMCSCGIBE", 1.0, "NUIM CS CG IBE Crypto Provider");
// clears the superclass provider - don't want any surprises clear(); // add in our own implementations put("KeyPairGenerator." + IBE, IbeKeyPairGenerator.class.getName()); put("Cipher." + IBE, IbeCipher.class.getName()); } }
出错报告:
testCipher(nuim.cs.crypto.ibe.test.IbeProviderTest) Time elapsed: 0.109 sec <<< ERROR! java.lang.SecurityException: JCE cannot authenticate the provider NUIMCSCGIBE at javax.crypto.Cipher.getInstance(Cipher.java:642) at nuim.cs.crypto.ibe.test.IbeProviderTest.testCipher(IbeProviderTest.java:41) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at junit.framework.TestCase.runTest(TestCase.java:176) at junit.framework.TestCase.runBare(TestCase.java:141) at junit.framework.TestResult$1.protect(TestResult.java:122) at junit.framework.TestResult.runProtected(TestResult.java:142) at junit.framework.TestResult.run(TestResult.java:125) at junit.framework.TestCase.run(TestCase.java:129) at junit.framework.TestSuite.runTest(TestSuite.java:255) at junit.framework.TestSuite.run(TestSuite.java:250) at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:84) at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252) at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141) at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75) Caused by: java.lang.SecurityException: Cannot verify jar:file:/F:/Workspace/GitHub/IBE/framework/target/classes/!/ at javax.crypto.JarVerifier.verifySingleJar(JarVerifier.java:406) at javax.crypto.JarVerifier.verifyJars(JarVerifier.java:322) at javax.crypto.JarVerifier.verify(JarVerifier.java:250) at javax.crypto.JceSecurity.verifyProviderJar(JceSecurity.java:161) at javax.crypto.JceSecurity.getVerificationResult(JceSecurity.java:187) at javax.crypto.Cipher.getInstance(Cipher.java:638) ... 26 more Caused by: java.security.PrivilegedActionException: java.io.FileNotFoundException: F:\Workspace\GitHub\IBE\framework\target\classes (拒绝访问。) at java.security.AccessController.doPrivileged(Native Method) at javax.crypto.JarVerifier.verifySingleJar(JarVerifier.java:384) ... 31 more Caused by: java.io.FileNotFoundException: F:\Workspace\GitHub\IBE\framework\target\classes (拒绝访问。) at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.<init>(ZipFile.java:215) at java.util.zip.ZipFile.<init>(ZipFile.java:145) at java.util.jar.JarFile.<init>(JarFile.java:154) at java.util.jar.JarFile.<init>(JarFile.java:91) at sun.net.www.protocol.jar.URLJarFile.<init>(URLJarFile.java:93) at sun.net.www.protocol.jar.URLJarFile.getJarFile(URLJarFile.java:69) at sun.net.www.protocol.jar.JarFileFactory.get(JarFileFactory.java:109) at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:122) at sun.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:89) at javax.crypto.JarVerifier$2.run(JarVerifier.java:399) ... 33 more
testCreateCipher(nuim.cs.crypto.ibe.test.IbeProviderTest) Time elapsed: 0 sec <<< ERROR! java.lang.SecurityException: JCE cannot authenticate the provider NUIMCSCGIBE at javax.crypto.Cipher.getInstance(Cipher.java:642) at nuim.cs.crypto.ibe.test.IbeProviderTest.testCreateCipher(IbeProviderTest.java:147) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at junit.framework.TestCase.runTest(TestCase.java:176) at junit.framework.TestCase.runBare(TestCase.java:141) at junit.framework.TestResult$1.protect(TestResult.java:122) at junit.framework.TestResult.runProtected(TestResult.java:142) at junit.framework.TestResult.run(TestResult.java:125) at junit.framework.TestCase.run(TestCase.java:129) at junit.framework.TestSuite.runTest(TestSuite.java:255) at junit.framework.TestSuite.run(TestSuite.java:250) at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:84) at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252) at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141) at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189) at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165) at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75) Caused by: java.lang.SecurityException: Cannot verify jar:file:/F:/Workspace/GitHub/IBE/framework/target/classes/!/ at javax.crypto.JarVerifier.verifySingleJar(JarVerifier.java:406) at javax.crypto.JarVerifier.verifyJars(JarVerifier.java:322) at javax.crypto.JarVerifier.verify(JarVerifier.java:250) at javax.crypto.JceSecurity.verifyProviderJar(JceSecurity.java:161) at javax.crypto.JceSecurity.getVerificationResult(JceSecurity.java:187) at javax.crypto.Cipher.getInstance(Cipher.java:638) ... 26 more Caused by: java.security.PrivilegedActionException: java.io.FileNotFoundException: F:\Workspace\GitHub\IBE\framework\target\classes (拒绝访问。) at java.security.AccessController.doPrivileged(Native Method) at javax.crypto.JarVerifier.verifySingleJar(JarVerifier.java:384) ... 31 more Caused by: java.io.FileNotFoundException: F:\Workspace\GitHub\IBE\framework\target\classes (拒绝访问。) at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.<init>(ZipFile.java:215) at java.util.zip.ZipFile.<init>(ZipFile.java:145) at java.util.jar.JarFile.<init>(JarFile.java:154) at java.util.jar.JarFile.<init>(JarFile.java:91) at sun.net.www.protocol.jar.URLJarFile.<init>(URLJarFile.java:93) at sun.net.www.protocol.jar.URLJarFile.getJarFile(URLJarFile.java:69) at sun.net.www.protocol.jar.JarFileFactory.get(JarFileFactory.java:109) at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:122) at sun.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:89) at javax.crypto.JarVerifier$2.run(JarVerifier.java:399) ... 33 more
Results :
Tests in error: testCipher(nuim.cs.crypto.ibe.test.IbeProviderTest): JCE cannot authenticate the provider NUIMCSCGIBE testCreateCipher(nuim.cs.crypto.ibe.test.IbeProviderTest): JCE cannot authenticate the provider NUIMCSCGIBE
Tests run: 3, Failures: 0, Errors: 2, Skipped: 0