Update FDE decrypt to pie from CAF

cryptfs.cpp based on CAF tag LA.UM.7.3.r1-05900-sdm845.0
Used CAF because AOSP no longer contains code for qcom's hardware
crypto.

Change-Id: I921cbe9bed70989f91449e23b5ac3ec1037b7b97
This commit is contained in:
Ethan Yonker
2019-03-20 15:33:48 -05:00
parent 08f91e84e0
commit 98661c1a29
14 changed files with 1993 additions and 1733 deletions
+4
View File
@@ -218,6 +218,7 @@ bool Keymaster::isSecure() {
using namespace ::android::vold;
/*
int keymaster_compatibility_cryptfs_scrypt() {
Keymaster dev;
if (!dev) {
@@ -226,6 +227,7 @@ int keymaster_compatibility_cryptfs_scrypt() {
}
return dev.isSecure();
}
*/
static bool write_string_to_buf(const std::string& towrite, uint8_t* buffer, uint32_t buffer_size,
uint32_t* out_size) {
@@ -253,6 +255,7 @@ static km::AuthorizationSet keyParams(uint32_t rsa_key_size, uint64_t rsa_expone
.Authorization(km::TAG_MIN_SECONDS_BETWEEN_OPS, ratelimit);
}
/*
int keymaster_create_key_for_cryptfs_scrypt(uint32_t rsa_key_size, uint64_t rsa_exponent,
uint32_t ratelimit, uint8_t* key_buffer,
uint32_t key_buffer_size, uint32_t* key_out_size) {
@@ -269,6 +272,7 @@ int keymaster_create_key_for_cryptfs_scrypt(uint32_t rsa_key_size, uint64_t rsa_
if (!write_string_to_buf(key, key_buffer, key_buffer_size, key_out_size)) return -1;
return 0;
}
*/
int keymaster_upgrade_key_for_cryptfs_scrypt(uint32_t rsa_key_size, uint64_t rsa_exponent,
uint32_t ratelimit, const uint8_t* key_blob,