)]}'
{
  "log": [
    {
      "commit": "460c26e9875833dc494575b5c43f08c8baa15f34",
      "tree": "4b05bdabfe75c0a29dfc1fd8161be9dbb42c1cd1",
      "parents": [
        "7ab17a3426d3565f72c6832bb650d1709cbf52cf"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Nov 11 16:42:09 2010 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Nov 11 16:42:09 2010 -0800"
      },
      "message": "Use deliberately public API rather than org.apache cruft.\n\nInputStreamHelper is scheduled for deletion. As a bonus, the new code is more\nefficient.\n\nChange-Id: Ied8b87fa24f8506cf748b0d4c99ee7e2ae201483\n"
    },
    {
      "commit": "8bdf5935c0db4a66ab33a10b43398d2523cfa15d",
      "tree": "5483e26cd1fb2de239b2f01f3d35c52aeeb7b598",
      "parents": [
        "efb581018bbede2ecdc76bcd9722ded5b6903254"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Oct 15 12:54:40 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Oct 15 14:46:33 2010 -0700"
      },
      "message": "Work on issue #3101415: Crespo apps seem to have their UID changed over time.\n\nfsync!\n\nChange-Id: Ie6c5397202579935ac69bf61d3e7b3081ecf269c\n"
    },
    {
      "commit": "c5e630a004d144ba1d4cd1d37dd98eb70a7ec1d8",
      "tree": "65c495d05a6c378e0820dfb6f7a58d1d08d98b14",
      "parents": [
        "70f1a3b8a0fcf332e35f87be85ae3a9e37a85e9c"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Oct 08 08:20:16 2010 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Oct 08 08:21:17 2010 +0800"
      },
      "message": "Use explicit intent for installing credentials.\n\nhttp://b/issue?id\u003d3020049\n\nChange-Id: I429c5b2c9f3b876e6197894a9437952d71d5c472\n"
    },
    {
      "commit": "8d578836dc4f9fb41532b8b3dd7a6b168d6f4f9d",
      "tree": "0b1d4c4c5f51e723f9139244d9ac05d0a77fa847",
      "parents": [
        "76e4fa19264793e3ed7e2ee7afccfc808a1a7458"
      ],
      "author": {
        "name": "Rich Cannings",
        "email": "richc@google.com",
        "time": "Thu Sep 09 15:12:40 2010 -0700"
      },
      "committer": {
        "name": "Rich Cannings",
        "email": "richc@google.com",
        "time": "Thu Sep 09 16:28:48 2010 -0700"
      },
      "message": "Remove the use of FileInputStream.available()\n\nBug: 2976294\nChange-Id: I34b13cedbf1d2338163ef74454817c318a3a24f5\n"
    },
    {
      "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"
    },
    {
      "commit": "1ff8fee7c8e4fcd4ef12c6c5d1055b7eccf5809b",
      "tree": "5c7f8f94fd6878b890a1f284eff87028f7301610",
      "parents": [
        "bcea8124a1d85c610b4bd4e6d360a861d2f61793"
      ],
      "author": {
        "name": "Oscar Montemayor",
        "email": "oam@google.com",
        "time": "Mon Feb 22 11:16:51 2010 -0800"
      },
      "committer": {
        "name": "Oscar Montemayor",
        "email": "oam@google.com",
        "time": "Mon Feb 22 11:17:38 2010 -0800"
      },
      "message": "Better file permissions enforcement on system keystore.\n"
    },
    {
      "commit": "d12feb97667498378a472c5a7895a9fcd8056ec5",
      "tree": "bb0dea6d297e753abfd9611ee75e27a517537656",
      "parents": [
        "6004edc67c94a0d034dfb8981b7d4b7a0172a814"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Feb 06 10:43:22 2010 +0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Sat Feb 06 10:43:22 2010 +0800"
      },
      "message": "KeyStore: minor improvements.\n\nMake constants final.\nOnly converts ArrayLists to arrays when necessary.\n"
    },
    {
      "commit": "b62e8132df0d19a39a700324475b3df2de78e0b0",
      "tree": "e5679e990fc995de73fc2c35dd03082c0efd7ebb",
      "parents": [
        "013b9c249dbcb5ca293c5cfe6a0e7908ced32418"
      ],
      "author": {
        "name": "Oscar Montemayor",
        "email": "oam@google.com",
        "time": "Thu Jan 14 16:38:40 2010 -0800"
      },
      "committer": {
        "name": "Oscar Montemayor",
        "email": "oam@google.com",
        "time": "Fri Jan 15 11:16:31 2010 -0800"
      },
      "message": "Apps on SD card.\nAdded support for retrieving and generating keys as Hex Strings.\n"
    },
    {
      "commit": "8da98e30d8b2ae6e203f769dab0d6ec34cab3011",
      "tree": "16dcc138f20b9880b4eff88eb4f47743c29b683f",
      "parents": [
        "5e3f6caeb08c54fb79f427a528e084711652bbdb"
      ],
      "author": {
        "name": "Oscar Montemayor",
        "email": "oam@google.com",
        "time": "Wed Jan 06 11:35:59 2010 -0800"
      },
      "committer": {
        "name": "Oscar Montemayor",
        "email": "oam@google.com",
        "time": "Wed Jan 06 16:23:57 2010 -0800"
      },
      "message": "Apps on SD card project.\nA simple keystore to store system-only key material, by leveraging file system access permissions.\n"
    },
    {
      "commit": "8c596c6cce542dcd5c73e8b1aaef666757e36ec4",
      "tree": "0822092e3db464d05ffa0e0bff97edc7829d2975",
      "parents": [
        "f1ece5d0c16fa3e79390e41ad9bec020c77d7720"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Sep 24 13:32:40 2009 +0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Sep 24 13:32:40 2009 +0800"
      },
      "message": "KeyStore: remove classes used by old keystore.\n"
    },
    {
      "commit": "f1ece5d0c16fa3e79390e41ad9bec020c77d7720",
      "tree": "c5c8b20551a9dcf1bb3dcaf52223866a31164a16",
      "parents": [
        "46a41e0e7f95f43aa7251114f12fd5e2b9933bc7"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Sep 24 13:29:58 2009 +0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Thu Sep 24 13:29:58 2009 +0800"
      },
      "message": "KeyStore: return null when response code indicates an error.\n"
    },
    {
      "commit": "ec05c46ea9d1dc175b09f93df0b9fea5a43b2d5a",
      "tree": "206c5b70008d30a0176ebe986efef58a7bc59fc6",
      "parents": [
        "85abdc59c3a31df6dc6ac4f20e64d5c91fa70023"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Thu Sep 24 13:13:44 2009 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Thu Sep 24 13:13:44 2009 +0800"
      },
      "message": "Remove old keystore and related files.\n"
    },
    {
      "commit": "613fcc850686dfe71cec9809c3694be9cf02cdc7",
      "tree": "6e7ef01214267a7d8a09ddd50e77c776af7cdcf4",
      "parents": [
        "1f6802295e2dba50a4549b8a22537dcb4c4dda03"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Tue Sep 22 03:04:46 2009 +0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Tue Sep 22 03:04:46 2009 +0800"
      },
      "message": "KeyStore: rename scan() to saw().\n"
    },
    {
      "commit": "44039172627d1c15737ea73836ad375559d76211",
      "tree": "0f4969e1216a9dbdb863268a2f46375eefb8192d",
      "parents": [
        "626c46b016118edbea3a3938425b5d4e959f6f2d"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Mon Sep 21 11:53:59 2009 +0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Mon Sep 21 15:52:00 2009 +0800"
      },
      "message": "KeyStore: add java interface.\n"
    },
    {
      "commit": "9b7a3f1a6437605022568cad0b92d5006a2ab391",
      "tree": "4d3dcf473cb06af26bc2b6bc68bd54a65422c92c",
      "parents": [
        "adbc99be6d7e35f71bbbdcdfef5562c5a9b53b07"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Sep 18 12:00:12 2009 +0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Sep 18 12:03:04 2009 +0800"
      },
      "message": "Add a helper class to send out credentials.\n\nChange-Id: I9a550c6edc55d5c2c601223c011922b183cb4d30\n"
    },
    {
      "commit": "5b680802b6774491fbcee69e394d097d4bfcf42e",
      "tree": "7ad1163a5de706df8c48dbc9c1e9c7fd0421fc2a",
      "parents": [
        "972f0e3806f379b7fb6e43265f56ddd91c38107e"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Wed Sep 16 15:43:15 2009 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Thu Sep 17 12:17:29 2009 +0800"
      },
      "message": "Fix a minor bug in is_alnum_string()...\n\nand remove some verbose logging\n"
    },
    {
      "commit": "a7df557aa2573a4718c7bbd069268e62bc036753",
      "tree": "606824416def47dd79b782fb4037aa180fca8d93",
      "parents": [
        "d304ae583d862250a21b5949fc3dbdf3af1febac"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Sep 11 18:34:28 2009 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Sep 11 19:30:13 2009 +0800"
      },
      "message": "Add tests and misc fixes on keystore.\n\n* Refactor netkeystore.c to make client and server code testable.\n* Add a client test for setting new passwd and changing passwd.\n* Exclude \".\" and \"..\" from reset_keystore().\n* Change ServerCommand.executeCommand() to accept variable length of\n  arguments and add convert() to marshalling the args to bytes.\n* Keystore.java is revised accordingly.\n"
    },
    {
      "commit": "9249cc69b83c7b055ae477c4539bdc451fe7f9b9",
      "tree": "c46cac7e798f63e379a5684931cc362d97165f31",
      "parents": [
        "24d237db943051942b5966f5e788d67050ec0ba5"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Tue Sep 08 16:47:51 2009 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Thu Sep 10 12:51:07 2009 +0800"
      },
      "message": "Add two CertTool helper classes.\n\nAlso add the unlock action string to Keystore.\n"
    },
    {
      "commit": "801b73f661cbdf92de94b7e552a190fcbbdc3168",
      "tree": "d67ad7b9bca1e97a7cc4ecbab4c6e680933ab1b6",
      "parents": [
        "88e625795943dea84b2e7c32f37e71303143b728"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Tue Sep 08 03:52:45 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Sep 09 15:00:43 2009 +0800"
      },
      "message": "Replace the delimiter whitespace with \u0027\\0\u0027.\n\n+ Use \u0027\\0\u0027 as the delimiter.\n+ Allow whitespace character for keystore password.\n\nIn previous implementation, we use space as the delimiter. That\nwill stop user from using passphrase with whitespace character.\n"
    },
    {
      "commit": "09960230bf3d46ec1e7cbcfd8b07dfe007b9fa96",
      "tree": "0cdb96cc728125bcae41709a027811cbd6beee2b",
      "parents": [
        "c98d68cd56338ec57695b3c35114fbde88d4bde8"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Tue Sep 01 16:45:13 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Tue Sep 01 16:45:13 2009 +0800"
      },
      "message": "Store CA certificate chain into one single key entry with PEM format.\n\nExtract all CA certificates in a PKCS12 keystore into a single entry in keystore with multiple PEMs.\n"
    },
    {
      "commit": "20a1156c6fd30f3ec1336894d6ae7e00298ad65b",
      "tree": "fa4fcc5c2c3d03272493eb572a0d8fd8ed1be24b",
      "parents": [
        "a31deaf4a960058e533da35d6229f7aa8d4f00c1"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Jul 31 20:34:03 2009 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Aug 14 18:35:44 2009 +0800"
      },
      "message": "Make certificate-handling-related constants public\n"
    },
    {
      "commit": "f1ab36f9ab82220de679ff0ca5164995b7d30214",
      "tree": "bdf73fa71e3ac244eb57ba123b634d5ca78b6f52",
      "parents": [
        "0f0767d4daa847314bd9473ef3650d26d1c51c8c"
      ],
      "author": {
        "name": "repo sync",
        "email": "cywang@google.com",
        "time": "Wed Aug 05 18:06:27 2009 +0800"
      },
      "committer": {
        "name": "repo sync",
        "email": "cywang@google.com",
        "time": "Mon Aug 10 16:13:00 2009 +0800"
      },
      "message": "Fix network order for marshalling in keystore interface.\n\nThis will fix the endian issue for heterogeneous architectures in keystore marshalling interface.\n"
    },
    {
      "commit": "dc1d5704a725d207b98de1b117847297958d9148",
      "tree": "dd2e823cd931992d8bbafd054dcfedf567bf7055",
      "parents": [
        "b86bad9493a331a09dd765bc6e725c0aec969ff6"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Mon Aug 03 15:01:58 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Mon Aug 03 15:11:36 2009 +0800"
      },
      "message": "Fix the auto notification cleanup when vpn is disconnected.\n\n+ add the log print if the browser give the incorrect data in addCertificate().\n"
    },
    {
      "commit": "e81f51f44b4cfb8316de1d206038414ee6f6e96b",
      "tree": "e0ea02d004c77df56fb98fc5d9d48b875420ed7f",
      "parents": [
        "1f1602e7291ab2b4d8d76db33c89828b6e58e6c0"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Sat Aug 01 10:11:46 2009 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Sat Aug 01 10:11:46 2009 +0800"
      },
      "message": "Change some log.i to log.d.\n"
    },
    {
      "commit": "fd3db87e28e5b9ed186a15944234f6ff520773c6",
      "tree": "e21771e9cf7e20c51676f7a86ab659592441dffe",
      "parents": [
        "191452378639f1135c9591e21911ce250d140769"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Tue Jul 28 18:37:13 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Tue Jul 28 18:37:13 2009 +0800"
      },
      "message": "Support x509-user-cert mime type in browser.\n\n+ Fix the public key matching and intent parameter mismatch.\n"
    },
    {
      "commit": "719eba5bb1fbc72e3b55450f16b38a6be5640055",
      "tree": "edd5b5178e70733642d9d5275d6a6102bcd657f3",
      "parents": [
        "75b681639d3945d22d4ab90856a65a05405d2538"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Fri Jul 24 11:33:45 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Fri Jul 24 11:33:45 2009 +0800"
      },
      "message": "Change to SPKAC certificate request format for keygen.\n"
    },
    {
      "commit": "24988b34919d65d4e66be69ec0885154c47e85b7",
      "tree": "ca4dd6c8e9827c0af5d7ccdedf147ca48f03f734",
      "parents": [
        "841ed8596a745d90822467bc2c0e13880bb59cc9"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Jul 22 06:04:58 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Jul 22 06:04:58 2009 +0800"
      },
      "message": "Cleanup the old keystore APIs.\n"
    },
    {
      "commit": "22726cf8174fe00a097c89b8da397b10626cdd00",
      "tree": "f724f69a84275a72f1b0f0d7949740b418c17bb2",
      "parents": [
        "8ece3445e8c95d02a47737ea2ac2d52a696143cd"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Jul 22 05:31:48 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Jul 22 05:35:20 2009 +0800"
      },
      "message": "Return error codes for storing the key/cert in addPkcs12Keystore()\n"
    },
    {
      "commit": "c9c119e7338cab292385118229f884a88fead3a2",
      "tree": "cb4e8f22b73aacbfc45ec80c66b693a47af5e3bc",
      "parents": [
        "f32f746b83826303350417ff9937a6f9e5488f24"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Thu Jul 16 19:54:33 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Sat Jul 18 01:17:20 2009 +0800"
      },
      "message": "Support addPkcs12Keystore function in CertTool library.\n\nThe function will be called from the credential storage for decoding\nthe pkcs12 file and saving the certs/keys into mini-keystore.\n"
    },
    {
      "commit": "699ca3f2518360ea3250ff5a0e5d39e122c64a91",
      "tree": "dcdeefe39f5cb52cc02d63039be4c9a4427eb9bc",
      "parents": [
        "4492bcb851f4ee862a446664eb9045045ebb7b5e"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Sat Jul 04 22:19:51 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Sun Jul 05 11:06:01 2009 +0800"
      },
      "message": "Add password field for WiFi configuration.\n\n1. the certtool.h is modified for avoiding the side effect,\n   for saving the configuration with wpa_supplicant.\n2. put the loadLibrary back in CertTool.java\n3. Fix incorrect JNI declarations.\n"
    },
    {
      "commit": "bf20b9963add781a35de658f3228760015a163c9",
      "tree": "ab310659e9be96273833221ba4dbf9863eba1407",
      "parents": [
        "24ad29c6dbbf62096bcb41ddb2fa3975720ee625"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Thu Jul 02 23:42:12 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Sat Jul 04 00:22:51 2009 +0800"
      },
      "message": "Migrate to the CertTool library.\n\nKeystore is reimplemented and it is mainly for storing\n(key, value) pair generically. The certificate related\nAPIs are moved to the class CertTool instead.\n\nUpdates:\n  Provide the getInstance() which gives the singleton.\n  Fix the missing construction of the BIO in cert.c.\n"
    },
    {
      "commit": "116d890aea63a4191a93412f5cecf5defad25201",
      "tree": "b0bd5d04e6cce6717ecb3d62e19ead62d3fd1a26",
      "parents": [
        "4bca97ecaf04c50d5ed49920d119f9ffa6c29402"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Jul 03 17:38:59 2009 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Fri Jul 03 17:38:59 2009 +0800"
      },
      "message": "Fix null data handling in ServiceCommand.writeCommand()\n"
    },
    {
      "commit": "fa927c046a916fceb077d1ecf2552d76e73da912",
      "tree": "1bd090be6f71aa36b96e3a2218b6f9b97316af3e",
      "parents": [
        "eec11827a6c06b029030f43c8d54fd871cc3347d"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Thu Jul 02 19:11:11 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Thu Jul 02 23:08:39 2009 +0800"
      },
      "message": "Remove the null-termination for Java string compatibility.\n\n1. Also change the keyname delimiter in CertTool.java.\n2. Return NOTFOUND if the result.len\u003d\u003d0 in the listKeys().\n3. Define the keystore states in the class Keystore.\n"
    },
    {
      "commit": "eec11827a6c06b029030f43c8d54fd871cc3347d",
      "tree": "6ed138af9f9d632cc6e74dbb517626adb802ac96",
      "parents": [
        "d45dcbec856710f9478ffc5689e7cdf95d757ab8"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Thu Jul 02 00:22:04 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Thu Jul 02 18:56:12 2009 +0800"
      },
      "message": "Add CertTool for handling the keygen and certificate download.\n\n1. Have the new Keystore for mini-keystore impelemntation.\n2. Add CertTool library and jni dll for handling keygen and certificates.\n3. Make Reply hidden.\n4. Revert some \u0027incorrect\u0027 change and correct the description.\n"
    },
    {
      "commit": "3af8e9389e008c0076b86cc6b3c6f005e7473d10",
      "tree": "84acce43fa9a460e2d888cea9df28b0bbe1ec5ee",
      "parents": [
        "5254657540b0a6ad54be6229b68fa5626e4ef9e5"
      ],
      "author": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Fri Jun 19 15:03:46 2009 -0700"
      },
      "committer": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Fri Jun 19 15:09:34 2009 -0700"
      },
      "message": "Change addCertificate to take byte[] instead of String as we don\u0027t know the encoding.\n\nIn WebView, if we run into the certificate, we will save it to the Keystore instead of sending it to the WebKit.\n"
    },
    {
      "commit": "6d531bf0513de7778c380d649bc0e554478f78f9",
      "tree": "10ac2aad8a0d60d7990a9ac538b64b2d98a5aa15",
      "parents": [
        "653349fe48f2995d9e17b5e0a4110925cffdaeab"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Jun 17 01:29:21 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Jun 17 14:32:05 2009 +0800"
      },
      "message": "Change the keystore APIs.\n\n1. simplify the keypair selection in UI.\n2. add the user certificate and key into the keystore for keygen feature.\n"
    },
    {
      "commit": "396c69ca8d938c8705faf602b87729072bf8839c",
      "tree": "3db9a82ce6f79a804091f6037cb55786d6dd9fb5",
      "parents": [
        "1d51e50d5d484c5d9e620b1d6736adc9aa99ae84"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Tue Jun 16 23:51:51 2009 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Tue Jun 16 23:57:16 2009 +0800"
      },
      "message": "Change the first parameter of Keystore.generateKeyPair() to int.\n\n* changes\n  change the parameter to the index to the supported key strengths\n  remove the exception class as it is not useful now\n"
    },
    {
      "commit": "1d51e50d5d484c5d9e620b1d6736adc9aa99ae84",
      "tree": "20793d63fda275271d8433554591b9157feeb375",
      "parents": [
        "0304325dd72ff8713c8444e909d387af1447f86f"
      ],
      "author": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Tue Jun 16 16:14:14 2009 +0800"
      },
      "committer": {
        "name": "Hung-ying Tyan",
        "email": "tyanh@google.com",
        "time": "Tue Jun 16 17:14:38 2009 +0800"
      },
      "message": "Add keygen API to Keystore.\n"
    },
    {
      "commit": "10e371f18247dc7fb64bfa0f0528501acc17be79",
      "tree": "630ce090cba0314696dd405f6cd3155773cc445a",
      "parents": [
        "a05487dd856222bacf57a41f2dfe1194d3776f05"
      ],
      "author": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Wed Jun 10 18:45:14 2009 +0800"
      },
      "committer": {
        "name": "Chung-yih Wang",
        "email": "cywang@google.com",
        "time": "Thu Jun 11 17:28:40 2009 +0800"
      },
      "message": "Provide the Keystore feature in the framework.\n\n-- added the keystore library for Java application.\n-- changed the marshalling of the keystore function return.\n"
    }
  ]
}
