Egregoros

Signal feed

Timeline

Post

Remote status

Context

2

minipgp6 is happening.

https://codeberg.org/minipgp6/ ๐Ÿ”๐Ÿค

For the past four weeks I've immersed myself in writing an extremely minimal, modern #OpenPGP software stack.

There's still a lot of work ahead, but the current draft code already feels quite exciting.
It's very modular and currently weighs just over 5k LOC (including a small Stateless OpenPGP CLI tool).

I look forward to publishing a first version of the code in the coming weeks ๐Ÿš€

#rfc9580 #RustLang #PGP

The initial plan for minipgp6 was to support only the "mandatory to implement" algorithms from RFC 9580.

In terms of public key algorithms, this would mean: only Ed25519 and X25519.

However, in the meantime, draft-ietf-openpgp-pqc has made much progress - IETF-standardized PQC support in #OpenPGP is going to get rolled out in various places soon.

So I'm amending the plan: minipgp will optionally support the two "mandatory" composite #PQC algorithms "ML-KEM-768+X25519" and "ML-DSA-65+Ed25519".

Update on #minipgp6

My draft implementation is almost feature complete, albeit still rough around some edges.

It supports traditional Ed25519/X25519 plus the two MTI PQC hybrids from draft-ietf-openpgp-pqc.

("OpenPGP component validity" semantics is still missing.)

The (very modular) stack of libraries currently weighs a total of ~4.2k LOC.

The SOP CLI tool implementation is 1.5k LOC.
A build of the SOP binary is 1.3 mbyte (with size-optimization settings for the compiler/linker)

#OpenPGP

Replies

1

That minipgp6-based SOP binary interoperates nicely with all other RFC 9580 implementations I've tested, including with PQC algorithms.

And the entire binary literally fits on a ๐Ÿ’พ

๐Ÿฅณ

As I anticipated, RFC 9580 *really shines* โœจ in implementations that leave out all of the legacy parts.

The #OpenPGP WG at the #IETF specified an excellent modernization, with the "v6" formats. RFC 9580 perfectly balances full backward compatibility with *massive* forward-looking simplifications.