)]}'
{
  "log": [
    {
      "commit": "0a270321dbf948963aeb0e8382fe17d2c2eb3771",
      "tree": "bdb6c12f88bd02b62853ff6bf26bf9d4a736fdbd",
      "parents": [
        "45d44eb56ad197cfccb8f84b5df64abff8b7cb96"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Nov 30 21:38:37 2007 +1100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:48 2008 +1100"
      },
      "message": "[CRYPTO] seqiv: Add Sequence Number IV Generator\n\nThis generator generates an IV based on a sequence number by xoring it\nwith a salt.  This algorithm is mainly useful for CTR and similar modes.\n\nThis patch also sets it as the default IV generator for ctr.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "5311f248b7764ba8b59e6d477355f766e5609686",
      "tree": "228910c68fc3d29a6bfe82cccfdc042e4003ebd2",
      "parents": [
        "653ebd9c8510a7d647ed23e66e1338f848ebdbab"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Dec 17 21:34:32 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:41 2008 +1100"
      },
      "message": "[CRYPTO] ctr: Refactor into ctr and rfc3686\n\nAs discussed previously, this patch moves the basic CTR functionality\ninto a chainable algorithm called ctr.  The IPsec-specific variant of\nit is now placed on top with the name rfc3686.\n\nSo ctr(aes) gives a chainable cipher with IV size 16 while the IPsec\nvariant will be called rfc3686(ctr(aes)).  This patch also adjusts\ngcm accordingly.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "0971eb0de9446b66bd45696338f54948314db379",
      "tree": "379cd3396219f9187a23ea6c57bae62de1d4cef9",
      "parents": [
        "06e1a8f0505426a97292174a959560fd86ea0a3d"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Nov 30 00:23:53 2007 +1100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:24 2008 +1100"
      },
      "message": "[CRYPTO] ctr: Fix multi-page processing\n\nWhen the data spans across a page boundary, CTR may incorrectly process\na partial block in the middle because the blkcipher walking code may\nsupply partial blocks in the middle as long as the total length of the\nsupplied data is more than a block.  CTR is supposed to return any unused\npartial block in that case to the walker.\n\nThis patch fixes this by doing exactly that, returning partial blocks to\nthe walker unless we received less than a block-worth of data to start\nwith.\n\nThis also allows us to optimise the bulk of the processing since we no\nlonger have to worry about partial blocks until the very end.\n\nThanks to Tan Swee Heng for fixes and actually testing this :)\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "3f8214ea335e422702340d7e835921e78367f99d",
      "tree": "ef8b7ef5c7e2d079e05e2a048db22eb183498235",
      "parents": [
        "d0b9007a27206fe944d9db72e13dab157b8e118c"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 20 20:32:56 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:20 2008 +1100"
      },
      "message": "[CRYPTO] ctr: Use crypto_inc and crypto_xor\n\nThis patch replaces the custom inc/xor in CTR with the generic functions.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "41fdab3dd385dde36caae60ed2df82aecb7a32f0",
      "tree": "aed4c4e7630cebc8b66d33fa6e26ec20f564bbd8",
      "parents": [
        "d3e7480572bf882dee5baa2891bccbfa3db0b1a1"
      ],
      "author": {
        "name": "Joy Latten",
        "email": "latten@austin.ibm.com",
        "time": "Wed Nov 07 22:59:47 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:08 2008 +1100"
      },
      "message": "[CRYPTO] ctr: Add countersize\n\nThis patch adds countersize to CTR mode.\nThe template is now ctr(algo,noncesize,ivsize,countersize).\n\nFor example, ctr(aes,4,8,4) indicates the counterblock\nwill be composed of a salt/nonce that is 4 bytes, an iv\nthat is 8 bytes and the counter is 4 bytes.\n\nWhen noncesize + ivsize \u003c blocksize, CTR initializes the\nlast block - ivsize - noncesize portion of the block to\nzero.  Otherwise the counter block is composed of the IV\n(and nonce if necessary).\n\nIf noncesize + ivsize \u003d\u003d blocksize, then this indicates that\nuser is passing in entire counterblock. Thus countersize\nindicates the amount of bytes in counterblock to use as\nthe counter for incrementing. CTR will increment counter\nportion by 1, and begin encryption with that value.\n\nNote that CTR assumes the counter portion of the block that\nwill be incremented is stored in big endian.\n\nSigned-off-by: Joy Latten \u003clatten@austin.ibm.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "23e353c8a681cc30d42fbd4f2c2be85c44fe209b",
      "tree": "d64934fa42e3e1e2b3fcccb4e86168a1614e250d",
      "parents": [
        "490fe3f05be3f7c87d7932bcb6e6e53e3db2cd9c"
      ],
      "author": {
        "name": "Joy Latten",
        "email": "latten@austin.ibm.com",
        "time": "Tue Oct 23 08:50:32 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:01 2008 +1100"
      },
      "message": "[CRYPTO] ctr: Add CTR (Counter) block cipher mode\n\nThis patch implements CTR mode for IPsec.\nIt is based off of RFC 3686.\n\nPlease note:\n1. CTR turns a block cipher into a stream cipher.\nEncryption is done in blocks, however the last block\nmay be a partial block.\n\nA \"counter block\" is encrypted, creating a keystream\nthat is xor\u0027ed with the plaintext. The counter portion\nof the counter block is incremented after each block\nof plaintext is encrypted.\nDecryption is performed in same manner.\n\n2. The CTR counterblock is composed of,\n        nonce + IV + counter\n\nThe size of the counterblock is equivalent to the\nblocksize of the cipher.\n        sizeof(nonce) + sizeof(IV) + sizeof(counter) \u003d blocksize\n\nThe CTR template requires the name of the cipher\nalgorithm, the sizeof the nonce, and the sizeof the iv.\n        ctr(cipher,sizeof_nonce,sizeof_iv)\n\nSo for example,\n        ctr(aes,4,8)\nspecifies the counterblock will be composed of 4 bytes\nfrom a nonce, 8 bytes from the iv, and 4 bytes for counter\nsince aes has a blocksize of 16 bytes.\n\n3. The counter portion of the counter block is stored\nin big endian for conformance to rfc 3686.\n\nSigned-off-by: Joy Latten \u003clatten@austin.ibm.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    }
  ]
}
