2017-02-05 25 views
3

Как создать Keystore и установить/получить свой королевский ключ. в целевой апи 24 и minapi 18Как использовать Encrypting Realm с ключом, хранящимся в KeyStore в API-интерфейсе 18

Realm.init(this); 
    RealmConfiguration realmConfig = new RealmConfiguration.Builder() 
      .encryptionKey(getKey()) 
      .name("realm") 
      .schemaVersion(0) 
      .deleteRealmIfMigrationNeeded() 
      .build(); 
    Realm.setDefaultConfiguration(realmConfig); 

public byte[] getKey() { 
    if key exist return else generate new SecureRandom().nextBytes(key) 
} 
+0

Я уверен, что вы можете взять некоторые идеи из https://github.com/realm/realm-android-user-store/blob/master/app/src/main/java/io/realm/android/internal /android/crypto/api_18/SyncCryptoApi18Impl.java – EpicPandaForce

ответ

0

Вы можете генерировать ключи RSA в хранилище, так как ваш мин SDK установлен в 18 https://developer.android.com/training/articles/keystore.html

Затем вы можете использовать их для шифрования сгенерированного ключа AES и магазина, в общих настройках для использования в качестве ключа шифрования вашего царства.