[openpgp] Re: I-D Action: draft-ietf-openpgp-hkp-01.txt
Songbo Bu <[email protected]> Sun, 7 Jun 2026 00:55:29 +0800
| Newsgroups | gmane.ietf.openpgp |
|---|---|
| Message-ID | <CAK08nYZGvrLLzCHewe=Ur_BA440bBE4BrMeBDmZn2hSDXNkC-w@mail.gmail.com> |
--===============3721662125300883444== Content-Type: multipart/alternative; boundary="000000000000c1cf35065398a50a" --000000000000c1cf35065398a50a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Andrew, all, I took a first pass through the -01 text with the JSON/schema and static-serving points in mind. For the JSON side, I think the useful thing would be to keep the schema appendix fairly small and directly aligned with the tables already in the draft: - v2 index certificate objects; - algorithm objects; - User ID objects; - subkey objects; - submission response objects; - the JSON-LD sendtoken example, if the WG wants that covered by the same appendix or by a separate one. The compatibility point I would try to preserve is that required fields match the current tables, while clients still ignore unknown fields and servers can omit optional arrays such as algorithms, subkeys, and User IDs where the draft already permits that. For the static-serving case, a short non-normative checklist might be enough. Something like: - serve /pks/v2/canonical/<identity> for discovery; - serve certificate bundles with application/pgp; - return 404 or another appropriate unsuccessful response for absent static files; - do not rely on 400/404 distinction for client behavior; - make clear whether submission and OPTIONS are unsupported. If this direction seems useful, I can write a first cut of either the schema-alignment checklist or the static-serving checklist for the draft, whichever is more helpful. Best, Songbo Bu On Fri, 5 Jun 2026 16:23:44 +0100, Andrew Gallagher [email protected] wrote: Hi, all. I=E2=80=99ve published a new HKP draft that contains (almost!) all the chan= ges discussed on the list. The only caveat is that there is not yet a formal JSON schema in the document. The corresponding hockeypuck PR has been merged and is running on test.pgpkeys.eu now. Thanks, A On 05/06/2026 16:00, [email protected] wrote: Internet-Draft draft-ietf-openpgp-hkp-01.txt is now available. It is a work item of the Open Specification for Pretty Good Privacy (OPENPGP) WG of the IETF. Title: OpenPGP HTTP Keyserver Protocol Authors: Daphne Shaw Andrew Gallagher Daniel Huigens Name: draft-ietf-openpgp-hkp-01.txt Pages: 51 Dates: 2026-06-05 Abstract: This document specifies a series of conventions to implement an OpenPGP keyserver using the Hypertext Transfer Protocol (HTTP). As this document is a codification and extension of a protocol that is already in wide use, strict attention is paid to backward compatibility with these existing implementations. The IETF datatracker status page for this Internet-Draft is: https://datatracker.ietf.org/doc/draft-ietf-openpgp-hkp/ There is also an HTMLized version available at: https://datatracker.ietf.org/doc/html/draft-ietf-openpgp-hkp-01 A diff from the previous version is available at: https://author-tools.ietf.org/iddiff?url2=3Ddraft-ietf-openpgp-hkp-01 Internet-Drafts are also available by rsync at: rsync.ietf.org::internet-drafts openpgp mailing list =E2=80=93 [email protected] To unsubscribe send an email to [email protected] --000000000000c1cf35065398a50a Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><p>Hi Andrew, all,</p> <p>I took a first pass through the -01 text with the JSON/schema and static= -serving points in mind.</p> <p>For the JSON side, I think the useful thing would be to keep the schema = appendix fairly small and directly aligned with the tables already in the d= raft:</p> <ul> <li>v2 index certificate objects;</li> <li>algorithm objects;</li> <li>User ID objects;</li> <li>subkey objects;</li> <li>submission response objects;</li> <li>the JSON-LD sendtoken example, if the WG wants that covered by the same= appendix or by a separate one.</li> </ul> <p>The compatibility point I would try to preserve is that required fields = match the current tables, while clients still ignore unknown fields and ser= vers can omit optional arrays such as algorithms, subkeys, and User IDs whe= re the draft already permits that.</p> <p>For the static-serving case, a short non-normative checklist might be en= ough. Something like:</p> <ul> <li>serve <code>/pks/v2/canonical/<identity></code> for discovery;</l= i> <li>serve certificate bundles with <code>application/pgp</code>;</li> <li>return 404 or another appropriate unsuccessful response for absent stat= ic files;</li> <li>do not rely on 400/404 distinction for client behavior;</li> <li>make clear whether submission and OPTIONS are unsupported.</li> </ul> <p>If this direction seems useful, I can write a first cut of either the sc= hema-alignment checklist or the static-serving checklist for the draft, whi= chever is more helpful.</p> <p>Best,<br> Songbo Bu</p> <p>On Fri, 5 Jun 2026 16:23:44 +0100, Andrew Gallagher <a href=3D"mailto:an= [email protected]" target=3D"_blank">andrewg=3D40andrewg= [email protected]</a> wrote:</p> <blockquote> <p>Hi, all.</p> <p>I=E2=80=99ve published a new HKP draft that contains (almost!) all the c= hanges<br> discussed on the list. The only caveat is that there is not yet a formal<br= > JSON schema in the document.</p> <p>The corresponding hockeypuck PR has been merged and is running on<br> <a href=3D"http://test.pgpkeys.eu" target=3D"_blank">test.pgpkeys.eu</a> no= w.</p> <p>Thanks,<br> A</p> <p>On 05/06/2026 16:00, <a href=3D"mailto:[email protected]" target= =3D"_blank">[email protected]</a> wrote:</p> <blockquote> <p>Internet-Draft draft-ietf-openpgp-hkp-01.txt is now available. It is a w= ork<br> item of the Open Specification for Pretty Good Privacy (OPENPGP) WG of the<= br> IETF.</p> <p>Title: OpenPGP HTTP Keyserver Protocol<br> Authors: Daphne Shaw<br> Andrew Gallagher<br> Daniel Huigens<br> Name: draft-ietf-openpgp-hkp-01.txt<br> Pages: 51<br> Dates: 2026-06-05</p> <p>Abstract:</p> <p>This document specifies a series of conventions to implement an<br> OpenPGP keyserver using the Hypertext Transfer Protocol (HTTP). As<br> this document is a codification and extension of a protocol that is<br> already in wide use, strict attention is paid to backward<br> compatibility with these existing implementations.</p> <p>The IETF datatracker status page for this Internet-Draft is:<br> <a href=3D"https://datatracker.ietf.org/doc/draft-ietf-openpgp-hkp/" target= =3D"_blank">https://datatracker.ietf.org/doc/draft-ietf-openpgp-hkp/</a></p= > <p>There is also an HTMLized version available at:<br> <a href=3D"https://datatracker.ietf.org/doc/html/draft-ietf-openpgp-hkp-01"= target=3D"_blank">https://datatracker.ietf.org/doc/html/draft-ietf-openpgp= -hkp-01</a></p> <p>A diff from the previous version is available at:<br> <a href=3D"https://author-tools.ietf.org/iddiff?url2=3Ddraft-ietf-openpgp-h= kp-01" target=3D"_blank">https://author-tools.ietf.org/iddiff?url2=3Ddraft-= ietf-openpgp-hkp-01</a></p> <p>Internet-Drafts are also available by rsync at:<br> rsync.ietf.org::internet-drafts</p> <p>openpgp mailing list =E2=80=93 <a href=3D"mailto:[email protected]" targe= t=3D"_blank">[email protected]</a><br> To unsubscribe send an email to <a href=3D"mailto:[email protected]" t= arget=3D"_blank">[email protected]</a></p> </blockquote> </blockquote> </div> --000000000000c1cf35065398a50a-- --===============3721662125300883444== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18Kb3BlbnBncCBt YWlsaW5nIGxpc3QgLS0gb3BlbnBncEBpZXRmLm9yZwpUbyB1bnN1YnNjcmliZSBzZW5kIGFuIGVt YWlsIHRvIG9wZW5wZ3AtbGVhdmVAaWV0Zi5vcmcK --===============3721662125300883444==--