如何使用加密领域与API级别18中存储在KeyStore中的密钥

时间:2017-02-05 19:18:20

标签: android realm keystore android-keystore

如何创建密钥库并设置/获取我的领域密钥。目标api 24和minapi 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)
}

1 个答案:

答案 0 :(得分:0)

您可以在密钥库中生成RSA密钥,因为您的min sdk设置为18. https://developer.android.com/training/articles/keystore.html

然后,您可以使用它们加密生成的AES密钥,并将其存储在共享首选项中,以用作领域加密密钥。