Background: see separate page
Notation: con = argument against the draft; pro = argument for the draft; fix = potential way forward; indenting B under A indicates that B is a supporting argument for A (if same pro/con) or counterargument to A (if opposite pro/con) or fix for A
BCP 79 issues:
con: the draft does not comply with BCP 79 saying “An IETF consensus has developed that no mandatory-to-implement security technology can be specified in an IETF specification unless it has no known IPR claims against it or a royalty-free license is available to implementers of the specification”
con: can’t implement draft without implementing Kyber
con: Zhao claiming “Kyber is covered by our patents” is a known IPR claim regarding Kyber
pro: Zhao hasn’t filed an IPR disclosure
pro: Zhao wrote patents are only for “credit (not for economic reasons)”
con: that’s irrelevant to this BCP 79 criterion
con: researchers normally say this; this doesn’t trigger estoppel and doesn’t stop them from asking for money (Ding asked Google for money re New Hope)
pro: will be good enough if there’s a royalty-free license before RFC publication, so WG can ignore this issue
fix: BCP 79 has an exception procedure for this requirement: “It is possible to specify such a technology in violation of this principle if there is a very good reason to do so and if that reason is documented and agreed to through IETF consensus.”
fix: BCP 79 says “The IETF, following normal processes, can decide to use technology for which IPR disclosures have been made if it decides that such a use is warranted”
con: the draft does not comply with BCP 79 saying “The IETF must have change control over the technology described in any Standards Track IETF Documents in order to fix problems that may be discovered or to produce other derivative works”
con: BCP 79 continues by saying it isn’t prohibiting proprietary cryptography, but requires negotiations with the patent holders to ensure change control, as in RFC 1790 and RFC 2339
con: the available edited license excerpts for Kyber say “any modification, extension, or derivation of the parameters of the PQC ALGORITHM, is not an implementation or use of the PQC algorithm”
fix: don’t put document on standards track
pro: the document specifies ML-KEM only by reference
pro: without change control over ML-KEM, IETF can handle problems with ML-KEM by deprecating ML-KEM