From 684d6f9f4d1a11069d9c9c1996fbc45cda7e7f04 Mon Sep 17 00:00:00 2001 From: Christopher Tate Date: Mon, 13 Jan 2014 13:48:22 -0800 Subject: Adapt to underlying changes in the PBKDF2 implementation We need to specify "PBKDF2WithHmacSHA1And8bit" now in order to get precisely the same output as was previously generated with "PBKDF2WithHmacSHA1". We also now try both when it's ambiguous which was used to generate the archive checksums. Bug 12494407 Change-Id: I5443f31a5e13c24f44445768b6e9a6eea221ede6 --- tests/LegacyRestoreTest/README | 18 ++++++++++++++++++ .../jbmr2-encrypted-settings-abcd.ab | Bin 0 -> 2229 bytes .../kk-fixed-encrypted-settings-abcd.ab | Bin 0 -> 2293 bytes 3 files changed, 18 insertions(+) create mode 100644 tests/LegacyRestoreTest/README create mode 100644 tests/LegacyRestoreTest/jbmr2-encrypted-settings-abcd.ab create mode 100644 tests/LegacyRestoreTest/kk-fixed-encrypted-settings-abcd.ab (limited to 'tests/LegacyRestoreTest') diff --git a/tests/LegacyRestoreTest/README b/tests/LegacyRestoreTest/README new file mode 100644 index 0000000..cdd157e --- /dev/null +++ b/tests/LegacyRestoreTest/README @@ -0,0 +1,18 @@ +The file "jbmr2-encrypted-settings-abcd.ab" in this directory is an encrypted +"adb backup" archive of the settings provider package. It was generated on a +Nexus 4 running Android 4.3 (API 18), and so predates the Android 4.4 changes +to the PBKDF2 implementation. The archive's encryption password, entered on-screen, +is "abcd" (with no quotation marks). + +'adb restore' decrypts and applies the restored archive successfully on a device +running Android 4.3, but fails to restore correctly on a device running Android 4.4, +reporting an invalid password in logcat. This is the situation reported in bug +. + +The file "kk-fixed-encrypted-settings-abcd.ab" is a similar encrypted "adb backup" +archive, using the same key, generated on a Nexus 4 running Android 4.4 with a fix +to this bug in place. This archive should be successfully restorable on any +version of Android which incorporates the fix. + +These archives can be used as an ongoing test to verify that historical encrypted +archives from various points in Android's history can be successfully restored. diff --git a/tests/LegacyRestoreTest/jbmr2-encrypted-settings-abcd.ab b/tests/LegacyRestoreTest/jbmr2-encrypted-settings-abcd.ab new file mode 100644 index 0000000..192dcf5 Binary files /dev/null and b/tests/LegacyRestoreTest/jbmr2-encrypted-settings-abcd.ab differ diff --git a/tests/LegacyRestoreTest/kk-fixed-encrypted-settings-abcd.ab b/tests/LegacyRestoreTest/kk-fixed-encrypted-settings-abcd.ab new file mode 100644 index 0000000..bf2b558 Binary files /dev/null and b/tests/LegacyRestoreTest/kk-fixed-encrypted-settings-abcd.ab differ -- cgit v1.1