History log of /frameworks/base/core/java/android/util/ByteStringUtils.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
f27d080d1aa101fa4407d2b3ec6b4d1a4a0e5787 09-Feb-2018 Dan Cashman <dcashman@google.com> ByteStringUtils: fix hex parsing to include lowercase input.

fromHexToByteArray() should be able to handle any hex input, not
just input specified as upper-case.

Bug: 73001469
Test: Builds, boots.
Change-Id: I89dcbaeb95d6fc540b532d897ff27fb5f40381c7
/frameworks/base/core/java/android/util/ByteStringUtils.java
7599f1366e8a08781f415e73f65cf270aae36868 23-Jan-2017 Mark Rathjen <mrathjen@google.com> Resolve Android security comments for Android ID migration.

- Use 32 byte key instead of 16 byte.
- Use HMAC-SHA256 instead of SHA256 for ssaid generation.
- Update HMAC with all package signatures.
- Use delimiter in between digest arguments.

This change will cause the ssaid of non-legacy installed apps (apps installed
post Android ID migration OTA) to change after an uninstall and reinstall sequence.

Bug: 34395671
Test: Unit tests, CTS tests, Manual tests
Change-Id: I19dec57947368ee5000c2c630b1e4030d46a4ab3
/frameworks/base/core/java/android/util/ByteStringUtils.java
d891f01d96cbaa3b1329c3d476084f3fedb30a89 19-Jan-2017 Mark Rathjen <mrathjen@google.com> Roll forward SSAID Migration to be Per App/User Unique Values.

SSAID is currently shared across all applications for each
user on the device, giving developers the ability to track
users across multiple applications. Using SSAID for tracking
is an abuse of the original intention of the SSAID and has
inherent privacy concerns.

This change will make the SSAID unique per application, per
user on a device. To not affect applications installed prior
to this change they will retain the legacy SSAID value until
uninstalled and reinstalled again.

Across subsequent installations the application will receive
the same SSAID as long as the package name and signature remain
consistent.

Tested manually the following cases:
- App retains the legacy sssaid after OTA.
- App gets a new ssaid upon post-OTA installation.
- App retrieves same ssaid across post-OTA unistall/reinstalls.
- Different Apps receive different ssaids.
- Factory reset removes ssaid data and generates a different
ssaid after App install.
- System retains legacy ssaid.

Bug: 34395671
Test: CTS tests passed, Manual testing passed

This reverts commit be43257005d086ff7d93c15dae22ac40bc0d545e.

Change-Id: Ibf20e7949304c30d65bb8aa24cdbbe6e104b1002
/frameworks/base/core/java/android/util/ByteStringUtils.java
be43257005d086ff7d93c15dae22ac40bc0d545e 19-Jan-2017 Mark Rathjen <mrathjen@google.com> Revert "SSAID Migration to be Per App/User Unique Values."

This reverts commit 5514fb7aba781d8eabbbfc27a5d27a6b3a447b40.

Change-Id: I0d6b9b9ef3ecda3b7ec1b7160c492ec16c65b125
/frameworks/base/core/java/android/util/ByteStringUtils.java
5514fb7aba781d8eabbbfc27a5d27a6b3a447b40 12-Jan-2017 Mark Rathjen <mrathjen@google.com> SSAID Migration to be Per App/User Unique Values.

SSAID is currently shared across all applications for each
user on the device, giving developers the ability to track
users across multiple applications. Using SSAID for tracking
is an abuse of the original intention of the SSAID and has
inherent privacy concerns.

This change will make the SSAID unique per application, per
user on a device. To not affect applications installed prior
to this change they will retain the legacy SSAID value until
uninstalled and reinstalled again.

Across subsequent installations the application will receive
the same SSAID as long as the package name and signature remain
consistent.

Tested manually the following cases:
- App retains the legacy sssaid after OTA.
- App gets a new ssaid upon post-OTA installation.
- App retrieves same ssaid across post-OTA unistall/reinstalls.
- Different Apps receive different ssaids.
- Factory reset removes ssaid data and generates a different
ssaid after App install.
- System retains legacy ssaid.

Bug: 30979321
Test: CTS tests passed, Manual testing passed
Change-Id: I4acc190c14ec249e6365e05e7943148ed6f17f71
/frameworks/base/core/java/android/util/ByteStringUtils.java