You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
"body": "Filing some follow-up work for myself after we merge https://github.com/ietf-plants-wg/merkle-tree-certs/pull/213. Filing this so I can reference this in TODOs\n\n- [x] Make the serial numbers fit in 64 bits again\n- [x] Fix up the slightly awkward sectioning\n- [ ] Some text discussing how you use multiple logs, like how CAs should only be appending to the latest and other considerations",
"body": "After #213, null_entry is no longer needed for avoiding the zero serial. Should we still have it?\n\nBenefits:\n* Exercises the entry type extension point ahead of time\n* Maybe useful for liveness checks?\n* Maaaybe useful if someone wants to pad out the tree to some multiple of a power of 2 and avoid partial subtrees????\n\nDownsides:\n* Doesn't _really_ do anything. :-)\n* The spec text right now doesn't particularly motivate it so maybe we should fix that if we keep it",
3601
3601
"createdAt": "2026-05-24T15:13:53Z",
3602
-
"updatedAt": "2026-05-25T11:50:20Z",
3603
-
"closedAt": null,
3602
+
"updatedAt": "2026-06-24T19:52:38Z",
3603
+
"closedAt": "2026-06-24T19:52:38Z",
3604
3604
"comments": [
3605
3605
{
3606
3606
"author": "bwesterb",
3607
3607
"authorAssociation": "COLLABORATOR",
3608
3608
"body": "I like it for liveness checks.",
3609
3609
"createdAt": "2026-05-25T11:50:20Z",
3610
3610
"updatedAt": "2026-05-25T11:50:20Z"
3611
+
},
3612
+
{
3613
+
"author": "davidben",
3614
+
"authorAssociation": "COLLABORATOR",
3615
+
"body": "Hehe, good enough reason for me. Closing.",
"body": "While comparing the full entry_hash construction with the single-pass shortcut, I noticed that the latter appears to omit the RFC 9162 leaf prefix.\n\nThe full procedure in \"Verifying Certificate Signatures\" defines `entry_hash` as:\n\n> Let `entry_hash` be the hash of the entry, `MTH({entry}) = HASH(0x00 || entry)`, as defined in Section 2.1.1 of RFC9162.\n\nThe single-pass procedure described right after it, however, appears to start hashing the serialized `MerkleTreeCertEntry` directly:\n\n1. Initialize a hash instance.\n2. Write the big-endian, two-byte `tbs_cert_entry` value to the hash.\n3. Write the `TBSCertificate` contents octets to the hash, up to the `subjectPublicKeyInfo` field.\n\nThere is no step that writes the required `0x00` Merkle leaf prefix before the entry bytes. Without that prefix, the single-pass procedure computes `HASH(entry)` rather than `HASH(0x00 || entry)`, so it is not equivalent to `MTH({entry})`.\n\nSuggested fix: add an explicit first hashing step before writing the `MerkleTreeCertEntry` contents:\n\n> Write the octet `0x00` to the hash.",
3688
+
"createdAt": "2026-06-24T05:51:54Z",
3689
+
"updatedAt": "2026-06-24T15:42:39Z",
3690
+
"closedAt": "2026-06-24T15:42:38Z",
3691
+
"comments": [
3692
+
{
3693
+
"author": "davidben",
3694
+
"authorAssociation": "COLLABORATOR",
3695
+
"body": "Thanks! Already fixed in #243. (You can look at the editor's draft in GitHub. We haven't cut draft-05 yet, but it'll be in there.)",
3696
+
"createdAt": "2026-06-24T15:42:39Z",
3697
+
"updatedAt": "2026-06-24T15:42:39Z"
3698
+
}
3699
+
]
3700
+
},
3701
+
{
3702
+
"number": 259,
3703
+
"id": "I_kwDOJIBkVc8AAAABGmdO-w",
3704
+
"title": "Whither relative OIDs in RDN attributes?",
"body": "See this thread https://mailarchive.ietf.org/arch/msg/plants/sQSyFQkAXUGp-YxTJDzyD4S-vc8/\n\nMixed responses so far. Filing this just so we don't forget this is a decision we have to make.",
3712
+
"createdAt": "2026-06-24T19:53:17Z",
3713
+
"updatedAt": "2026-06-24T19:53:17Z",
3714
+
"closedAt": null,
3715
+
"comments": []
3669
3716
}
3670
3717
],
3671
3718
"pulls": [
@@ -18123,26 +18170,216 @@
18123
18170
"id": "PR_kwDOJIBkVc7pZCri",
18124
18171
"title": "Define a CA's current issuance log and rules around that",
"body": "This clarifies that log numbers are not a free-for-all for CAs to just start issuing at any point. We care about monotonicity of sequence numbers for something like minSeriael to work, and we care that only one issuance log's landmarks are enough in normal operation.\r\n\r\nSee issue #232. This still isn't quite everything. I'd like to add some discussion on log failures, to clarify what this mechanism is actually for, and also discuss things that transparency-enforcing relying parties should do as a result. (Still working on that text, but this PR was ready in the meantime.)",
"body": "Feel free to reject to keep it more general, but this just makes it clear whose 'trustworthy or not' opinion ultimately matters.\n```suggestion\n* If relying parties consider the CA operator and the CA instance still trustworthy, repairing the incident without changing the CA requires less overhead.\n```",
18252
+
"createdAt": "2026-06-24T12:21:42Z",
18253
+
"updatedAt": "2026-06-24T12:31:07Z"
18254
+
},
18255
+
{
18256
+
"originalPosition": 53,
18257
+
"body": "```suggestion\n* If relying parties consider either the CA operator or the CA instance no longer trustworthy and in need of replacement, the CA may still be needed to serve older, unupdated relying parties.\n```",
18258
+
"createdAt": "2026-06-24T12:23:07Z",
18259
+
"updatedAt": "2026-06-24T12:31:07Z"
18260
+
},
18261
+
{
18262
+
"originalPosition": 51,
18263
+
"body": "minor nit: We're a bit inconsistent with having a period or not terminating list items. Probably can all be cleaned up in an editorial pass down the road.",
18264
+
"createdAt": "2026-06-24T12:27:56Z",
18265
+
"updatedAt": "2026-06-24T12:31:07Z"
18266
+
}
18267
+
]
18268
+
},
18269
+
{
18270
+
"id": "PRR_kwDOJIBkVc8AAAABEA8T2Q",
18271
+
"commit": {
18272
+
"abbreviatedOid": "405b8bb"
18273
+
},
18274
+
"author": "davidben",
18275
+
"authorAssociation": "COLLABORATOR",
18276
+
"state": "COMMENTED",
18277
+
"body": "",
18278
+
"createdAt": "2026-06-24T17:15:24Z",
18279
+
"updatedAt": "2026-06-24T17:15:51Z",
18280
+
"comments": [
18281
+
{
18282
+
"originalPosition": 51,
18283
+
"body": "I've usually done it based on whether it's a list of clauses (no period) or a list of sentences (period), but maybe that's not right?",
"body": "```suggestion\nThis is similar to the \"alternate\" link relation, except that it specifies the substitute is optional. In some applications, a client may fetch all alternates, so that it may forward one of the alternates to another party. For example, {{Section 7.4.2 of !RFC8555}} describes how an ACME server uses the \"alternate\" link relation to serve multiple certificate chains for an ACME order. An ACME client might then fetch all of them and configure them in a TLS server, which presents them to TLS clients. Different TLS clients need different chains, so the ACME client might reasonably treat any unavailable alternate as an error.\n```",
0 commit comments