)]}'
{
  "commit": "f3230c304a6e77b78d43e52b3ab4da013272d318",
  "tree": "aa3ae2ffd5861e1403e0eafcc0f63ba993f173d8",
  "parents": [
    "3682758ef1494a830615531b0e8f9cd02b4e4ad2"
  ],
  "author": {
    "name": "David Benjamin",
    "email": "davidben@google.com",
    "time": "Tue Sep 02 15:24:02 2025 -0400"
  },
  "committer": {
    "name": "Boringssl LUCI CQ",
    "email": "boringssl-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed Sep 03 08:53:29 2025 -0700"
  },
  "message": "Test verifying signatures over \"unusual\" TBSCertificates\n\nTest that, signatures over unusual TBSCertificates are verified\ncorrectly. This tests that encoding is correctly round-tripped through\nthe parser to the verifier.\n\nIn principle, this should never happen because a DER parser will only\naccept the canonical encoding of an object. However, it is possible for\nencoding to not round-trip if we accept any BER inputs, or our in-memory\nrepresentation does not capture the full range of abstract\nTBSCertificate values.\n\nX509 objects cache the encoded TBSCertificate, so all encoding\nvariations should be captured. This test tries to exercise the cache\u0027s\neffects on signature verification. In reality, the cache is barely\nload-bearing. We now reject most non-DER inputs, and X509_NAME also\nsaves its encoding. Still, the test ensures this remains the case.\n\nAmusingly, you\u0027re actually formally *not* supposed to do this. An X.509\nsignature is defined to use the DER encoding of the TBSCertificate. An\nASN.1 type is independent of the particular encoding used. If you parsed\na BER (or XER!) X.509 Certificate, you\u0027re meant to canonicalize the\nencoding back to DER to verify it. As far as I know, no one does it that\nway.\n\nChange-Id: I67c4932ec87d1f6fedfc8c711cf0f7837759947e\nReviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/81768\nCommit-Queue: David Benjamin \u003cdavidben@google.com\u003e\nReviewed-by: Adam Langley \u003cagl@google.com\u003e\nAuto-Submit: David Benjamin \u003cdavidben@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "eec602de3ab8aac8219a6b279dec82fd388fbb94",
      "new_mode": 33188,
      "new_path": "crypto/x509/test/make_unusual_tbs.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d43f7efe53feb55f59f5b476786ae035881db31a",
      "new_mode": 33188,
      "new_path": "crypto/x509/test/unusual_tbs_empty_extension_not_omitted.pem"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "966dd5547c0eeaa1631f11c35913eea96fa1dc4a",
      "new_mode": 33188,
      "new_path": "crypto/x509/test/unusual_tbs_key.pem"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1c0e2bb6ad73a27a0eafacb1469204bece0279d2",
      "new_mode": 33188,
      "new_path": "crypto/x509/test/unusual_tbs_null_sigalg_param.pem"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7f7923c5f3bf6a128499672cf97657af23d71f87",
      "new_mode": 33188,
      "new_path": "crypto/x509/test/unusual_tbs_uid_both.pem"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8f8724b1403f1c16dfc060a870c3e3fdafa37379",
      "new_mode": 33188,
      "new_path": "crypto/x509/test/unusual_tbs_uid_issuer.pem"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "776363a3060809e1ce2c9c01c7b7067e69eef44c",
      "new_mode": 33188,
      "new_path": "crypto/x509/test/unusual_tbs_uid_subject.pem"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2e090281a942bbadfd42aa96295034cb0b1aa742",
      "new_mode": 33188,
      "new_path": "crypto/x509/test/unusual_tbs_v1_not_omitted.pem"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "12e9bde12eba844ab796a2a9817051471bb954ca",
      "new_mode": 33188,
      "new_path": "crypto/x509/test/unusual_tbs_wrong_attribute_order.pem"
    },
    {
      "type": "modify",
      "old_id": "d76330d65b3f9fd45909b99e0eefafa35a7ada36",
      "old_mode": 33188,
      "old_path": "crypto/x509/x509_test.cc",
      "new_id": "7b49cdcc70c4774dc6c94afe2d072af2e401c917",
      "new_mode": 33188,
      "new_path": "crypto/x509/x509_test.cc"
    },
    {
      "type": "modify",
      "old_id": "660914fd1a984a9e1a435cf3d3ee74051bb23de4",
      "old_mode": 33188,
      "old_path": "gen/sources.bzl",
      "new_id": "6793c33f13686dd7eff7119b51d40ccc4db22b0d",
      "new_mode": 33188,
      "new_path": "gen/sources.bzl"
    },
    {
      "type": "modify",
      "old_id": "b3df5a8488a7b53d4ce7a861fb1fca6f1556ec92",
      "old_mode": 33188,
      "old_path": "gen/sources.cmake",
      "new_id": "4b73d17181e0cb75bc45187b86ef2b9ee7418487",
      "new_mode": 33188,
      "new_path": "gen/sources.cmake"
    },
    {
      "type": "modify",
      "old_id": "703e0bd52b3b4b17e0b3933229ee5e837ebf464a",
      "old_mode": 33188,
      "old_path": "gen/sources.gni",
      "new_id": "b846755b3303abf0e8fd1313b30b32d4b7f54a0a",
      "new_mode": 33188,
      "new_path": "gen/sources.gni"
    },
    {
      "type": "modify",
      "old_id": "3a6d5b05ba369487543ba4eba83a96893303e788",
      "old_mode": 33188,
      "old_path": "gen/sources.json",
      "new_id": "49a26a483bc3e029b89ad3d8f5e692a42fcee57c",
      "new_mode": 33188,
      "new_path": "gen/sources.json"
    },
    {
      "type": "modify",
      "old_id": "8bda4c0879b9bec70f76aa55091009b9cc9f9b05",
      "old_mode": 33188,
      "old_path": "gen/sources.mk",
      "new_id": "5c57c2776ccbf7560264a47ba72d97b393e09f23",
      "new_mode": 33188,
      "new_path": "gen/sources.mk"
    }
  ]
}
