letsencrypt / letsencrypt/boulder
sa/ra: store mtcLogID and mtcEntryIndex on order objects
Open
@jsha is already working on this.
Since Aug 25, 2026.
- Dominant language
- Go
- Stars
- 5.8k
- Forks
- 649
- Avg merge
- 3d 23h
- Merged PRs (30d)
- 24
Description
Right now, when the RA issues an MTC, at calls mtca.Issue(), waits for a response, and then drops that response on the floor. To finish plumbing up this code, we need to:
- Add fields mtcLogID and mtcEntryIndex to
message Orderin core.proto. - Add a new SA method,
FinalizeMTCOrder, that takesId,mtcLogID, andmtcEntryIndex(instead ofIdandCertificateSerialasFinalizeOrdertakes today). - In
ra.issueMTC(), callFinalizeMTCOrderaftermtca.Issue()returns. - In
wfe.orderToOrderJSON(), handle the case whereorder.CertificateSerialis empty butorder.mtcLogIDandmtcEntryIndexare present. Rendering a stub URL that 404s seems okay for now, until we implement MTC certificate building.
Note that 01-boulder_sa_next.sql currently has this:
ALTER TABLE `orders`
ADD COLUMN `mtcLogID` varchar(255) DEFAULT NULL,
ADD COLUMN `mtcSerialNumber` bigint(20) unsigned DEFAULT NULL;
That's a little wrong. We should change mtcSerialNumber to mtcEntryIndex, since the full serial contains the log number, which is redundant with mtcLogID.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.