)]}'
{
  "commit": "5cdda3425ccf3c62e400a1646615f4479a8266af",
  "tree": "f8942116930669c5170dad00cac8df019a8a35b1",
  "parents": [
    "77029c5b16351775cb2333369ef9a4bc1d9acf58"
  ],
  "author": {
    "name": "Daniel Cashman",
    "email": "dcashman@google.com",
    "time": "Fri Jan 19 07:22:52 2018 -0800"
  },
  "committer": {
    "name": "Dan Cashman",
    "email": "dcashman@google.com",
    "time": "Tue Jan 23 09:10:13 2018 -0800"
  },
  "message": "Add API to expose signing certificate proof-of-rotation.\n\nWith the addition of APK Signature Scheme v3, the platform now can\nsupport key rotation by using the proof-of-rotation provided by the\nnew scheme.  Create a new API which allows checking of the entire\nprovided history of an APK\u0027s signing certificates, not just the\ncurrent signer.  This should allow for changes of APK signing\ncertificates without fear of losing access to resources that would\nhave been provided under the old signing certificate.\n\nChange getPackageInfo(GET_SIGNATURES) to return the oldest signing\ncertificate in the chain so that apps which do programmatic checks,\nbut are not updated to use the new API, still get the same information\nthey would have gotten had there been no rotation.\n\nBug: 64686581\nTest: Builds, boots.\nChange-Id: I8982fd4cce60f5d85a6180d157a6e2a661b1a6d7\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bb4c383e4c9a95fcef2b44957a0183028dc9df64",
      "old_mode": 33188,
      "old_path": "api/current.txt",
      "new_id": "fe6004f5d063e870f165853c3310219cf10c7eb7",
      "new_mode": 33188,
      "new_path": "api/current.txt"
    },
    {
      "type": "modify",
      "old_id": "4048e6596cfcd8d0c4f90a46a08c2e4be1043cae",
      "old_mode": 33188,
      "old_path": "core/java/android/app/ApplicationPackageManager.java",
      "new_id": "b72f002e09ee53e8c751ae54b4b23884fa3c3501",
      "new_mode": 33188,
      "new_path": "core/java/android/app/ApplicationPackageManager.java"
    },
    {
      "type": "modify",
      "old_id": "cce6b848e6aea1c72284eb124df7a062bc73d22d",
      "old_mode": 33188,
      "old_path": "core/java/android/content/pm/IPackageManager.aidl",
      "new_id": "379bff49c9116a979baa3614798844fcbf1d440a",
      "new_mode": 33188,
      "new_path": "core/java/android/content/pm/IPackageManager.aidl"
    },
    {
      "type": "modify",
      "old_id": "5a91e94781d7ec0120408306f3295b68b4f63749",
      "old_mode": 33188,
      "old_path": "core/java/android/content/pm/PackageInfo.java",
      "new_id": "13ec4fdb7956b8afb4582099ad38f2e5df3aa2db",
      "new_mode": 33188,
      "new_path": "core/java/android/content/pm/PackageInfo.java"
    },
    {
      "type": "modify",
      "old_id": "bcf80eeaaee7a7b45acafddcef5280800dda14bd",
      "old_mode": 33188,
      "old_path": "core/java/android/content/pm/PackageManager.java",
      "new_id": "cab1e746c4b7a9d7eee5389cf0c392b5abf9cf65",
      "new_mode": 33188,
      "new_path": "core/java/android/content/pm/PackageManager.java"
    },
    {
      "type": "modify",
      "old_id": "4efd081340653f2cbd483ac4ac73b12f5c37ddf4",
      "old_mode": 33188,
      "old_path": "core/java/android/content/pm/PackageParser.java",
      "new_id": "5b5ccf547b540676334ef69fa22c665cf476d753",
      "new_mode": 33188,
      "new_path": "core/java/android/content/pm/PackageParser.java"
    },
    {
      "type": "modify",
      "old_id": "e2e9d53e7e9e618a9ec26932c1f87484939b52ef",
      "old_mode": 33188,
      "old_path": "core/java/android/util/PackageUtils.java",
      "new_id": "a5e38189f39b0b5cc2adbc55e1b6acec957c7b88",
      "new_mode": 33188,
      "new_path": "core/java/android/util/PackageUtils.java"
    },
    {
      "type": "modify",
      "old_id": "b8720a592a74d27c566f6cf4e2741ea1d49c2172",
      "old_mode": 33188,
      "old_path": "services/core/java/com/android/server/pm/PackageManagerService.java",
      "new_id": "f6d924c81fce659835d7850b8373874216256956",
      "new_mode": 33188,
      "new_path": "services/core/java/com/android/server/pm/PackageManagerService.java"
    },
    {
      "type": "modify",
      "old_id": "cfc12de022670cd7e6cfcf2a1d4d65bd6a5bed20",
      "old_mode": 33188,
      "old_path": "services/core/java/com/android/server/pm/PackageManagerServiceUtils.java",
      "new_id": "021c4b8a24c10ddfe4045cbc0ad3edfc220d4093",
      "new_mode": 33188,
      "new_path": "services/core/java/com/android/server/pm/PackageManagerServiceUtils.java"
    },
    {
      "type": "modify",
      "old_id": "13e3693cada0694a5f014e3fad8584674dc79dac",
      "old_mode": 33188,
      "old_path": "test-mock/src/android/test/mock/MockPackageManager.java",
      "new_id": "c0d148fb1b77d5a39753d727dfdf47d6af27912a",
      "new_mode": 33188,
      "new_path": "test-mock/src/android/test/mock/MockPackageManager.java"
    }
  ]
}
