mirror of
https://gitlab.com/android_translation_layer/android_translation_layer.git
synced 2025-04-28 12:17:57 +03:00
add stub AndroidKeyStore security provider
This commit is contained in:
parent
820b9d7ec5
commit
e72c579fd4
3 changed files with 127 additions and 0 deletions
|
@ -60,6 +60,8 @@ import java.io.IOException;
|
|||
import java.io.InputStream;
|
||||
import java.lang.reflect.Constructor;
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.security.Provider;
|
||||
import java.security.Security;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
|
@ -126,6 +128,10 @@ public class Context extends Object {
|
|||
application_info.sourceDir = native_get_apk_path();
|
||||
package_manager = new PackageManager();
|
||||
|
||||
Provider provider = new Provider("AndroidKeyStore", 1.0, "Android KeyStore provider") {};
|
||||
provider.put("KeyStore.AndroidKeyStore", "android.security.keystore.AndroidKeyStore");
|
||||
Security.addProvider(provider);
|
||||
|
||||
r.applyPackageQuirks(application_info.packageName);
|
||||
}
|
||||
|
||||
|
|
120
src/api-impl/android/security/keystore/AndroidKeyStore.java
Normal file
120
src/api-impl/android/security/keystore/AndroidKeyStore.java
Normal file
|
@ -0,0 +1,120 @@
|
|||
package android.security.keystore;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
import java.security.Key;
|
||||
import java.security.KeyStoreException;
|
||||
import java.security.KeyStoreSpi;
|
||||
import java.security.NoSuchAlgorithmException;
|
||||
import java.security.UnrecoverableKeyException;
|
||||
import java.security.cert.Certificate;
|
||||
import java.security.cert.CertificateException;
|
||||
import java.util.Date;
|
||||
import java.util.Enumeration;
|
||||
import java.util.HashMap;
|
||||
|
||||
public class AndroidKeyStore extends KeyStoreSpi {
|
||||
|
||||
HashMap<String, String> map = new HashMap<>();
|
||||
|
||||
@Override
|
||||
public Key engineGetKey(String alias, char[] password) throws NoSuchAlgorithmException, UnrecoverableKeyException {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'engineGetKey'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Certificate[] engineGetCertificateChain(String alias) {
|
||||
// TODO Auto-generated method stub
|
||||
System.out.println("engineGetCertificateChain(" + alias + ") called");
|
||||
return new Certificate[0];
|
||||
}
|
||||
|
||||
@Override
|
||||
public Certificate engineGetCertificate(String alias) {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'engineGetCertificate'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Date engineGetCreationDate(String alias) {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'engineGetCreationDate'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void engineSetKeyEntry(String alias, Key key, char[] password, Certificate[] chain)
|
||||
throws KeyStoreException {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'engineSetKeyEntry'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void engineSetKeyEntry(String alias, byte[] key, Certificate[] chain) throws KeyStoreException {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'engineSetKeyEntry'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void engineSetCertificateEntry(String alias, Certificate cert) throws KeyStoreException {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'engineSetCertificateEntry'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void engineDeleteEntry(String alias) throws KeyStoreException {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'engineDeleteEntry'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Enumeration<String> engineAliases() {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'engineAliases'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean engineContainsAlias(String alias) {
|
||||
// TODO Auto-generated method stub
|
||||
System.out.println("engineContainsAlias(" + alias + ") called");
|
||||
return map.containsKey(alias);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int engineSize() {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'engineSize'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean engineIsKeyEntry(String alias) {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'engineIsKeyEntry'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean engineIsCertificateEntry(String alias) {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'engineIsCertificateEntry'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public String engineGetCertificateAlias(Certificate cert) {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'engineGetCertificateAlias'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void engineStore(OutputStream stream, char[] password)
|
||||
throws IOException, NoSuchAlgorithmException, CertificateException {
|
||||
// TODO Auto-generated method stub
|
||||
throw new UnsupportedOperationException("Unimplemented method 'engineStore'");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void engineLoad(InputStream stream, char[] password)
|
||||
throws IOException, NoSuchAlgorithmException, CertificateException {
|
||||
}
|
||||
|
||||
}
|
|
@ -354,6 +354,7 @@ srcs = [
|
|||
'android/provider/CalendarContract.java',
|
||||
'android/provider/ContactsContract.java',
|
||||
'android/provider/Settings.java',
|
||||
'android/security/keystore/AndroidKeyStore.java',
|
||||
'android/service/media/MediaBrowserService.java',
|
||||
'android/telecom/ConnectionService.java',
|
||||
'android/telecom/TelecomManager.java',
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue