)]}'
{
  "commit": "141062fe7f9aa4e1b9a1a3d2f59489eefcff4df8",
  "tree": "ecb2ae67d4839ff82e665be7287e49183ef631d4",
  "parents": [
    "ce9b8737cb3e113c9f986d6a94aeedb09e8207b2"
  ],
  "author": {
    "name": "David Benjamin",
    "email": "davidben@google.com",
    "time": "Fri Feb 28 17:12:13 2020 -0500"
  },
  "committer": {
    "name": "CQ bot account: commit-bot@chromium.org",
    "email": "commit-bot@chromium.org",
    "time": "Tue Mar 31 23:11:26 2020 +0000"
  },
  "message": "Remove LCM dependency from RSA_check_key.\n\nInstead of checking d * e \u003d 1 (mod lcm(p-1, q-1)), we can separately\ncheck d * e \u003d 1 (mod p-1) and d * e \u003d 1 (mod q-1). This drops an LCM\ndependency from key import and is 2x faster.\n\n(Our constant-time LCM implementation can probably be faster if we\ntried, but now it\u0027s only used in RSA keygen, so it doesn\u0027t matter much.\nIt\u0027s also using the unoptimized constant-time division, which is\nprobably the next target if we decide we care about speeding this up.)\n\nBefore:\nDid 6768 RSA 2048 checking operations in 3015824us (2244.2 ops/sec)\nDid 5610 RSA 2048 signing operations in 3033396us (1849.4 ops/sec)\nDid 1953 RSA 4096 checking operations in 3060828us (638.1 ops/sec)\nDid 817 RSA 4096 signing operations in 3021092us (270.4 ops/sec)\nAfter:\nDid 13175 RSA 2048 checking operations in 3090576us (4263.0 ops/sec)\nDid 5610 RSA 2048 signing operations in 3032966us (1849.7 ops/sec)\nDid 3720 RSA 4096 checking operations in 3085971us (1205.5 ops/sec)\nDid 820 RSA 4096 signing operations in 3027312us (270.9 ops/sec)\n\nBug: 316\nChange-Id: Ie29554c02d31f586dd0f8bdee03a227f1d5dc916\nReviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/40146\nCommit-Queue: Adam Langley \u003cagl@google.com\u003e\nReviewed-by: Adam Langley \u003cagl@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a7fb7ae2c4c7fdb2dc6b162ce5e50947770a25e0",
      "old_mode": 33188,
      "old_path": "crypto/fipsmodule/rsa/rsa.c",
      "new_id": "29296737e02d44bc2c1c3d7185dd274bf70590bd",
      "new_mode": 33188,
      "new_path": "crypto/fipsmodule/rsa/rsa.c"
    }
  ]
}
