Search in sources :

Example 11 with ExemptionMechanism

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
    }
}
Also used : SpiEngUtils(org.apache.harmony.security.tests.support.SpiEngUtils) SecureRandom(java.security.SecureRandom) InvalidKeyException(java.security.InvalidKeyException) MyExemptionMechanismSpi(org.apache.harmony.crypto.tests.support.MyExemptionMechanismSpi) KeyGenerator(javax.crypto.KeyGenerator) ExemptionMechanismException(javax.crypto.ExemptionMechanismException) ExemptionMechanism(javax.crypto.ExemptionMechanism) MyExemptionMechanismSpi.tmpKey(org.apache.harmony.crypto.tests.support.MyExemptionMechanismSpi.tmpKey) Key(java.security.Key) MyExemptionMechanismSpi.tmpKey(org.apache.harmony.crypto.tests.support.MyExemptionMechanismSpi.tmpKey) Provider(java.security.Provider)

Example 12 with ExemptionMechanism

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);
}
Also used : SpiEngUtils(org.apache.harmony.security.tests.support.SpiEngUtils) MyExemptionMechanismSpi(org.apache.harmony.crypto.tests.support.MyExemptionMechanismSpi) ExemptionMechanism(javax.crypto.ExemptionMechanism) MyExemptionMechanismSpi.tmpKey(org.apache.harmony.crypto.tests.support.MyExemptionMechanismSpi.tmpKey) Key(java.security.Key) MyExemptionMechanismSpi.tmpKey(org.apache.harmony.crypto.tests.support.MyExemptionMechanismSpi.tmpKey) Provider(java.security.Provider)

Example 13 with ExemptionMechanism

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
    }
}
Also used : SpiEngUtils(org.apache.harmony.security.tests.support.SpiEngUtils) ShortBufferException(javax.crypto.ShortBufferException) ExemptionMechanismException(javax.crypto.ExemptionMechanismException) ExemptionMechanism(javax.crypto.ExemptionMechanism) MyExemptionMechanismSpi.tmpKey(org.apache.harmony.crypto.tests.support.MyExemptionMechanismSpi.tmpKey) Key(java.security.Key) MyExemptionMechanismSpi.tmpKey(org.apache.harmony.crypto.tests.support.MyExemptionMechanismSpi.tmpKey) Provider(java.security.Provider)

Example 14 with ExemptionMechanism

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
    }
}
Also used : SpiEngUtils(org.apache.harmony.security.tests.support.SpiEngUtils) ShortBufferException(javax.crypto.ShortBufferException) ExemptionMechanismException(javax.crypto.ExemptionMechanismException) ExemptionMechanism(javax.crypto.ExemptionMechanism) MyExemptionMechanismSpi.tmpKey(org.apache.harmony.crypto.tests.support.MyExemptionMechanismSpi.tmpKey) Key(java.security.Key) MyExemptionMechanismSpi.tmpKey(org.apache.harmony.crypto.tests.support.MyExemptionMechanismSpi.tmpKey) Provider(java.security.Provider)

Aggregations

Provider (java.security.Provider)14 ExemptionMechanism (javax.crypto.ExemptionMechanism)14 SpiEngUtils (org.apache.harmony.security.tests.support.SpiEngUtils)14 Key (java.security.Key)11 MyExemptionMechanismSpi.tmpKey (org.apache.harmony.crypto.tests.support.MyExemptionMechanismSpi.tmpKey)11 MyExemptionMechanismSpi (org.apache.harmony.crypto.tests.support.MyExemptionMechanismSpi)10 ExemptionMechanismException (javax.crypto.ExemptionMechanismException)6 InvalidKeyException (java.security.InvalidKeyException)4 SecureRandom (java.security.SecureRandom)3 KeyGenerator (javax.crypto.KeyGenerator)3 InvalidAlgorithmParameterException (java.security.InvalidAlgorithmParameterException)2 NoSuchAlgorithmException (java.security.NoSuchAlgorithmException)2 ShortBufferException (javax.crypto.ShortBufferException)2 BigInteger (java.math.BigInteger)1 RSAKeyGenParameterSpec (java.security.spec.RSAKeyGenParameterSpec)1 ExemptionMechanismSpi (javax.crypto.ExemptionMechanismSpi)1