use of javax.crypto.ExemptionMechanism in project robovm by robovm.
the class ExemptionMechanismTest method test_initLjava_security_Key.
public void test_initLjava_security_Key() throws Exception {
Provider mProv = (new SpiEngUtils()).new MyProvider("MyExMechProvider", "Provider for ExemptionMechanism testing", srvExemptionMechanism.concat(".").concat(defaultAlg), ExemptionMechanismProviderClass);
ExemptionMechanism em = new ExemptionMechanism(new MyExemptionMechanismSpi(), mProv, defaultAlg) {
};
Key key = new MyExemptionMechanismSpi().new tmpKey("Proba", new byte[0]);
em.init(key);
KeyGenerator kg = KeyGenerator.getInstance("DES");
kg.init(56, new SecureRandom());
key = kg.generateKey();
try {
em.init(null);
fail("InvalidKeyException expected");
} catch (InvalidKeyException e) {
//expected
}
try {
em.init(key);
fail("ExemptionMechanismException expected");
} catch (ExemptionMechanismException e) {
//expected
}
}
use of javax.crypto.ExemptionMechanism in project robovm by robovm.
the class ExemptionMechanismTest method testGenExemptionBlob.
/**
* Test for <code>genExemptionBlob((byte[] output, int outputOffset)</code> method
*/
public void testGenExemptionBlob() throws Exception {
//Regression for HARMONY-1029
Provider mProv = (new SpiEngUtils()).new MyProvider("MyExMechProvider", "Provider for ExemptionMechanism testing", srvExemptionMechanism.concat(".").concat(defaultAlg), ExemptionMechanismProviderClass);
ExemptionMechanism em = new ExemptionMechanism(new MyExemptionMechanismSpi(), mProv, defaultAlg) {
};
Key key = new MyExemptionMechanismSpi().new tmpKey("Proba", new byte[0]);
em.init(key);
// ExemptionMechanism doesn't check parameters
// it is a responsibility of ExemptionMechanismSpi
em.genExemptionBlob(null, 0);
em.genExemptionBlob(new byte[0], 0);
em.genExemptionBlob(new byte[10], -5);
}
use of javax.crypto.ExemptionMechanism in project robovm by robovm.
the class ExemptionMechanismTest method test_genExemptionBlob$BI.
public void test_genExemptionBlob$BI() throws InvalidKeyException, ExemptionMechanismException, ShortBufferException {
Provider mProv = (new SpiEngUtils()).new MyProvider("MyExMechProvider", "Provider for ExemptionMechanism testing", srvExemptionMechanism.concat(".").concat(defaultAlg), ExemptionMechanismProviderClass);
ExemptionMechanism em = new ExemptionMechanism(new Mock_ExemptionMechanismSpi(), mProv, defaultAlg) {
};
Key key = new Mock_ExemptionMechanismSpi().new tmpKey("Proba", new byte[0]);
try {
em.genExemptionBlob(new byte[10], 2);
fail("IllegalStateException expected");
} catch (IllegalStateException e) {
//failed
}
em.init(key);
assertEquals(5, (em.genExemptionBlob(new byte[10], 5)));
try {
em.genExemptionBlob(new byte[7], 3);
fail("ShortBufferException expected");
} catch (ShortBufferException e) {
//failed
}
byte[] b = new byte[] { 0, 0, 0, 1, 2, 3, 33, 0 };
try {
em.genExemptionBlob(b, 3);
fail("ExemptionMechanismException expected");
} catch (ExemptionMechanismException e) {
//failed
}
}
use of javax.crypto.ExemptionMechanism in project robovm by robovm.
the class ExemptionMechanismTest method test_genExemptionBlob$B.
public void test_genExemptionBlob$B() throws InvalidKeyException, ExemptionMechanismException, ShortBufferException {
Provider mProv = (new SpiEngUtils()).new MyProvider("MyExMechProvider", "Provider for ExemptionMechanism testing", srvExemptionMechanism.concat(".").concat(defaultAlg), ExemptionMechanismProviderClass);
ExemptionMechanism em = new ExemptionMechanism(new Mock_ExemptionMechanismSpi(), mProv, defaultAlg) {
};
Key key = new Mock_ExemptionMechanismSpi().new tmpKey("Proba", new byte[0]);
try {
em.genExemptionBlob(new byte[10]);
fail("IllegalStateException expected");
} catch (IllegalStateException e) {
//failed
}
em.init(key);
assertEquals(5, (em.genExemptionBlob(new byte[10])));
try {
em.genExemptionBlob(new byte[2]);
fail("ShortBufferException expected");
} catch (ShortBufferException e) {
//failed
}
byte[] b = new byte[] { 0, 0, 0, 33, 0 };
try {
em.genExemptionBlob(b);
fail("ExemptionMechanismException expected");
} catch (ExemptionMechanismException e) {
//failed
}
}
Aggregations