---
name: "pgpdump"
section: "1"
platform: "linux"
package: "pgpdump"
version: "0.38-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/pgpdump"
---

# pgpdump(1)

A PGP packet visualizer

## NAME

pgpdump - A PGP packet visualizer

## SYNOPSIS

pgpdump \[*options*\] \[*PGPfile*\]

## DESCRIPTION

The **pgpdump** is a PGP packet visualizer which displays the packet format of OpenPGP (RFC 9580 and RFC 4880), including the post-quantum algorithms of RFC 9980, and PGP version 2 (RFC 1991). It also displays the LibrePGP extensions generated by GnuPG: version 5 keys and signatures, the OCB Encrypted Data packet, and version 5 Symmetric-Key Encrypted Session Key packets. If *PGPfile* is not specified, the standard input is read. Both binary and ASCII armored input are accepted.

The options are as follows:

- **-a**

  Accepts ASCII input only.

- **-g**

  Selects alternate dump format, which displays printable characters as they are and others as \\xNN (like GnuPG).

- **-h**

  Displays a help message.

- **-i**

  Dumps multi-precision integers and fixed-length key material.

- **-l**

  Dumps literal packets.

- **-m**

  Dumps marker packets.

- **-p**

  Dumps private packets.

- **-u**

  Displays UTC time.

- **-v**

  Displays the version.

## OUTPUT

Each packet starts with a line such as

New: Signature Packet(tag 2)(63 bytes)

**Old:** or **New:** is the format of the packet header: **Old:** is the legacy format (also used by PGP 2.x) and **New:** is the OpenPGP format. This is independent of the version of the packet itself. **(tag 2)** is the packet type ID and **(63 bytes)** is the length of the packet body.

The indented lines are the fields of the packet body. **Ver 3 - old,** **Ver 4 - new,** **Ver 5 - librepgp,** and **Ver 6 - latest** are the versions of keys and signatures defined in RFC 1991, RFC 4880, LibrePGP, and RFC 9580, respectively. A number in parentheses, such as **(pub 17)** or **(hash 8)**, is the algorithm ID or the subpacket type ID defined in the RFCs and LibrePGP. **Hashed Sub:** and **Sub:** are subpackets in the hashed and unhashed areas of a signature. **...** means that the data is omitted; use the options above to show it.

## SEE ALSO

[**gpg**(1)](/gpg/1.md), [**sq**(1)](/sq/1.md)

RFC 9580, RFC 9980, RFC 4880, RFC 1991, draft-koch-librepgp (LibrePGP)
