)]}'
{
  "commit": "34c47c855815d731e6deb55748ff690b0ec7b53f",
  "tree": "3e6a6668f093bcf88bba3bb6c8e4438a212ceea8",
  "parents": [
    "15b3287994b92bb9bff10e65a56bc8a663d0e05d"
  ],
  "author": {
    "name": "Nick Kralevich",
    "email": "nnk@google.com",
    "time": "Tue Mar 09 13:28:14 2010 -0800"
  },
  "committer": {
    "name": "Nick Kralevich",
    "email": "nnk@google.com",
    "time": "Wed Mar 10 11:25:53 2010 -0800"
  },
  "message": "Don\u0027t rely on the system locale for converting to/from bytes.\n\nBy default, when java converts Strings to bytes, it uses the\ndefault system locale.  This can be specified by the -Dfile.encoding\noption.  If no file encoding is specified, java uses ISO8859_1.\n\nUnfortunately, not all unicode characters can be mapped to\nISO8859_1.  Unmappable characters may be replaced by a byte\nwithin ISO8859_1, which may change the meaning of the String.\nThis is especially problematic for password strings, and has\nbeen used to compromise the security of passwords in the\npast.\n\nThankfully, Android uses UTF-8 by default, so this bug doesn\u0027t\neffect Android devices.  However, it\u0027s recommended to explicitly\nlist the character set when converting to/from bytes to\navoid the potential ambiguity.\n\nChange-Id: Iec927e27ed3fc103696c439f6bd3e8779a37ade8\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6041b837730ee217e402c211d25e6fae722087d5",
      "old_mode": 33188,
      "old_path": "keystore/java/android/security/KeyStore.java",
      "new_id": "4614b530e99590ce859031e963ad14e1edaa15eb",
      "new_mode": 33188,
      "new_path": "keystore/java/android/security/KeyStore.java"
    },
    {
      "type": "modify",
      "old_id": "569d8da7fc88515fd202b3904e415b7785b04f57",
      "old_mode": 33261,
      "old_path": "keystore/tests/src/android/security/KeyStoreTest.java",
      "new_id": "6630a4f1c148e369bb317b0e6069f77433e6d8af",
      "new_mode": 33261,
      "new_path": "keystore/tests/src/android/security/KeyStoreTest.java"
    }
  ]
}
