SEIPDv2.

The OpenPGP v6 encrypted-message packet. SEIPDv2 wraps your ciphertext in authenticated encryption (AEAD, in OCB mode) so that any tampering is detected cryptographically — a cleaner, stronger design than the integrity check bolted onto v4 messages.

// definition

SEIPDv2 stands for Symmetrically Encrypted Integrity Protected Data, version 2. It's the packet type that OpenPGP v6 (RFC 9580) uses to carry an encrypted message. It encrypts with a symmetric cipher (AES) in an AEAD mode — specifically OCB — which produces ciphertext and an authentication tag in one operation.

Why AEAD matters.

"AEAD" means Authenticated Encryption with Associated Data. The cipher doesn't just hide the message — it also produces a tag that proves the ciphertext wasn't altered. If even a single byte is flipped in transit, decryption fails loudly instead of returning garbage or, worse, attacker-chosen plaintext.

v4 OpenPGP achieved integrity with a separate MDC packet appended to the message — effective, but a bolt-on. SEIPDv2 makes integrity an intrinsic property of the encryption itself, which is both simpler and harder to get wrong.

// how PGPony chooses
recipients all v6? -> SEIPDv2 (AEAD-OCB) any recipient v4? -> classic v4 SEIPD + MDC

PGPony picks the format automatically: SEIPDv2 when every recipient holds a v6 key, classic v4 otherwise — so older contacts keep working without you thinking about it.

// in PGPony When you encrypt to recipients whose keys are all OpenPGP v6, PGPony produces SEIPDv2 (AEAD-OCB) output. The implementation uses a 5-byte AAD and a GnuPG-compatible chunk size, and the output round-trips with Sequoia (sq) and the RFC 9580 Appendix A test vectors.

Related terms

Get PGPony

Free OpenPGP encryption for iOS and Android. No accounts, no tracking.