)]}'
{
  "commit": "144d924e0b3c3a5ceb7083a408ba69b7cca1a25c",
  "tree": "751fab8b67cda40bacbe836948ac6cca56a0b587",
  "parents": [
    "aa8d29dbd1eca56888ca07fc954124ebd270653a"
  ],
  "author": {
    "name": "armfazh",
    "email": "armfazh@cloudflare.com",
    "time": "Mon Oct 22 09:59:57 2018 -0700"
  },
  "committer": {
    "name": "CQ bot account: commit-bot@chromium.org",
    "email": "commit-bot@chromium.org",
    "time": "Mon Oct 29 18:26:27 2018 +0000"
  },
  "message": "Fix EVP_tls_cbc_digest_record is slow using SHA-384 and short messages\n\nSymptom: When using larger hash functions and short messages,\nthese six blocks take too much time to be conditionally copied.\n\nObservations:\n - SHA-384 consumes more data per iteration, unlike SHA-256.\n - The value of `kVarianceBlocks` must depend on the parameters\n   of the selected hash algorithm.\n - Avoid magic constants.\n\nChanges:\n - A new formula for the kVarianceBlocks value.\n - Stronger test vectors were created in change: 32724.\n - The new formula passes these tests.\n\nDiscussion:\n OpenSSL team: https://github.com/openssl/openssl/pull/7342\n Quoting mattcaswell:\n\u003e The \"real\" data that needs to be hashed has to be padded for the\n\u003e hashing algorithm. For SHA1 the smallest amount of padding that\n\u003e can be added is the \"0x80\" byte plus 8 bytes containing the message\n\u003e length, i.e. 9 bytes. If the data length is within 9 bytes of the\n\u003e end of the hash block boundary then the padding will push it into\n\u003e an extra block to be hashed.\n\nChange-Id: Id1ad2389927014316eed2b453aac6e4c2a585c5c\nReviewed-on: https://boringssl-review.googlesource.com/c/32624\nReviewed-by: Adam Langley \u003cagl@google.com\u003e\nReviewed-by: David Benjamin \u003cdavidben@google.com\u003e\nCommit-Queue: Adam Langley \u003cagl@google.com\u003e\nCQ-Verified: CQ bot account: commit-bot@chromium.org \u003ccommit-bot@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a24602bb802f32dbec3caefc84cc9f0d1ad2d886",
      "old_mode": 33188,
      "old_path": "crypto/cipher_extra/tls_cbc.c",
      "new_id": "52353f2a57f2a5547211b2374ea452c4a34cb744",
      "new_mode": 33188,
      "new_path": "crypto/cipher_extra/tls_cbc.c"
    }
  ]
}
