android - I would like to backport the AndroidKeystore from 4.4, but I receive an "access to class not allowed" -
i propose new security provider
public class backportandroidkeystoreprovider extends provider { private static final long serialversionuid = 1l; public static final string provider_name = "xxxandroidkeystore"; public backportandroidkeystoreprovider() { super(provider_name, 1.0, "android keystore security provider"); // java.security.keystore put("keystore." + backportandroidkeystore.name, backportandroidkeystore.class.getname()); // java.security.keypairgenerator put("keypairgenerator.rsa", backportandroidkeypairgenerator.class.getname()); } }
a keystore provider
class backportandroidkeystore extends java.security.keystorespi { public static string name = "aa"; @override public key enginegetkey(string alias, char[] password) throws nosuchalgorithmexception, unrecoverablekeyexception { ... }
and keypair generator.
public class backportandroidkeypairgenerator extends keypairgeneratorspi { @override public keypair generatekeypair() { ... }
then, register , instantiate key store provider.
security.addprovider(provider); keystore = keystore.getinstance(backportandroidkeystore.name);
but receive exception
java.lang.illegalaccessexception: access class not allowed
i can instantiate provider new or newinstance, when it's called in java.security.provider$service.newinstance(provider.java:989) exception throw.
any idea ? can explain why it's not possible ?
thank's
Comments
Post a Comment