PGPdump Version
PGPdump is a PGP packet visualizer written by Kazu Yamamoto <kazu@iij.ad.jp>
It supports OpenPGP (RFC 2440 + bis)
and PGP v2 (RFC 1991) packet formats.
Please visit Kazu's pgpdump homepage for more.
Running pgpdump locally has several advantages:
- You can safely inspect sensitive (private) key material
- You can dump binary data blocks
Example Public Key Block
Note that ASCII armor includes the -----BEGIN PGP and -----END PGP lines.
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.0.7 (GNU/Linux)
mQGiBD0YNDoRBACozk2rb+7AzCUIvEOaEUKobptHJhakD4+4K9incK1SGF5zurQd
rnxKSGK1SI/E4BhalBT1cxMIbV5KredUDuWrbVGtzJHeZEf7/rTWAV2TMT1GYdiP
b9ZLP83HrmR7F2WvXBhqkzCZXzlrXjw+rl4TumkRFC0iH3UlghAJ2XrrrwCg5pd6
vJuLI9oGGj1GhnyY7+/3Wy8D/2NwW6tOAteLCQ+26aay9RFhNSZao0XTMTA/2I/H
ZTb+NFh9fBN8VuvOWWbNZpwQB/GMkSHl7dQ13SH9WLzxyCk2RuXmcEF6u0/h36XU
7WlO5Thxk8Yf3iaowSinuyrrW9VcW5/iOtqiube26tWn8nZ5OZNmhbwMK68487oV
Aw/4BACJGK2bpos8cy72nPE+/+DVHNb5LYdf9W6FA8GfzhAFeF/DhnIIfBBPK3ZS
Z4xFySLF2qA1OwrEMiePDLilZHVrNhXdTglpkzB3kSXLb+96gcYps+V2k56PFNX5
rRhZSUun3OuEAwWJ3DGuVJCygZgdqzwffsLIP6RtU0Y8XwXWprQqRXhhbXBsZSBL
ZXkgSG9sZGVyIDxleGFtcGxlQHNvbWV3aGVyZS5uZXQ+iF8EExECAB8FAj0YNDoF
CQlmAYAECwcDAgMVAgMDFgIBAh4BAheAAAoJEMbPNoeWzCPdvwcAnjy3A6bIuvzz
yfc1GY5cVbpiLHDRAKDTsqcIcBbmanwUZ8iyx4oPwN8efLjNBD0YND4QAwCOSjz6
R82J3g53OLEyl1/V8ZQIvodnrk2s6LOCCejlDlpM+3LFHULaWEoEqgxO+FNqAM4W
aeCWE52kV3P93bXEwcSvNda+Qp887F7nbm+jtcqw82YRIGveM9Qcqg9uXP8ABAsD
AIk/DLF9z/8hKkiaE4i2RmOetpcuNDEpoxkwQEd5MDPsdAKOLQMtImsfDhNCeIh8
R9G/ii2A0ZnCwPwLxo++2qJI3XUptOgXKTwjZLtkAqyHgddESCmCwl4vgSxCs989
SohMBBgRAgAMBQI9GDQ+BQkJZgGAAAoJEMbPNoeWzCPdtMsAnj2xa9y06DA3+dBR
c2QDAOwFwDdOAKDBnsKzmytjvaZvZTL/mFmR/RVJwQ==
=myE5
-----END PGP PUBLIC KEY BLOCK-----
CHANGES for pgpdump-0.26
0.26 2007/09/06
* Catching up to 2440bis-22.
0.25 2006/10/02
* Catching up to 2440bis-18.
- Adding SHA224.
0.24 2004/12/24
* More secure programming style.
* Adding GnuPG string-to-key.
* Adding a missing key flag.
0.23 2004/10/27
* Catching up to 2440bis-10/11.
- 'u' for Literal Data
- embedded signature
- Primary Key Binding Signature
* Bug fix for plain_Secret_Key().
* Fixing Symmetrically_Encrypted_Data_Packet() and Secret_Key_Packet()
especially for IDEA.
0.22 2004/01/23
* parse_subpacket() are split into parse_signature_subpacket() and
parse_userattr_subpacket(). A bug of length calculation is fixed.
* The critical bit of the signature subpackets are supported.
Peter Palfrader
0.21 2004/01/13
* Removing compiler warnings.
* Using getopt().
* Supporting RISC OS.
Stefan Bellon
* Correct casting for Bzip2.
Stefan Bellon
* Prepared os/riscos/{config.h,Makefile} since "sh" does not exist on
RISC OS.
Stefan Bellon
0.20 2003/12/08
* Catching up to 2440bis-09. Bzip2 was supported.
0.19 2003/06/06
* Catching up to 2440bis-08.
* Supporting MINGW32. This is dirty and needs to be refined.
* autotime.h -> types.c
0.18 2003/05/20
* Supporting Mac OS X.
Stefan H. Holek
* Catching up to 2440bis-07.
Stefan H. Holek
* A bug fix of old_Public_Key_Packet.
Shigeru NAKAMURA
0.17 2002/06/28
* Defining the SHA-1 hash for Secret Key Packet.
* Defining the -a and -g option.
* Catching up to 2440bis-05.
* Implementing User_Attribute_Packet.
* Implementing features and revocation_target.
* Removing macros to avoid side-effects.
* Most modifications above come from:
Stefan H. Holek
0.16 2001/12/06
* Key ID hack.
Jason Harris
0.15 2001/11/13
* Old man style for pgpdump.1.
* The symmetric encryption algorithm is displayed more user-friendly.
0.14 2001/11/09
* Catching up to 2440bis-03.
0.13 2001/10/24
* Workaround for minus date.
Stefan H. Holek
* No-libz hack.
Bruce Kroeze
* Small fixes.
Stefan H. Holek
0.12 2001/08/14
* Portability hack.
Stefan Bellon
0.11 2001/05/20
* Defining line_not_blank().
Stefan H. Holek
* Enhancing Public_Key_Encrypted_Session_Key_Packet().
Stefan H. Holek
Brian M. Carlson
0.10 2001/05/08
* Fixing key_server_preferences().
* Fixing signature_multi_precision_integer().
0.09 2001/05/05
* Implementing additional_decryption_key() like revocation_key().
Stefan H. Holek
0.08 2001/04/12
* Fixing IV length.
Stefan H. Holek
disastry@saiknes.lv
* Skipping the tail of armor.
Stefan H. Holek
0.07 2001/04/05
* New scheme to handle partial bodies.
* Sophisticated buffering mechanism. No temporary files are created.
* Creating pgpdump.1.
Stefan H. Holek kindly contributes the followings:
* Fixed keyserver preferences (can be >1 octet)
* Changed display of time fields to include timezone information
* Added -u flag to display time fields in UTC instead of the local
timezone (PGP time fields == seconds since 00:00:00, January 1,
1970, UTC)
* Fixed key and signature expiration time calculations
(expiration time == seconds since creation time)
* Added capability to read from stdin when no file is specifed on the
commandline
* Implemented missing subpackets
- revocation_key
- reason_for_revocation
- key_flags
- signer_user_id (not tested)
- notation_data (not tested)
0.06 2001/03/30
* Supporting old-format packet length 3 ("until the end of the file").
0.05 2001/03/22
* Adding the "-p" option.
* Adding some tags and algorithms.
* A serious bug fix of Public_Key_Packet(). "len" was wrong.
* A serious bug fix of Getc(). Defined Getc1().
0.04 2000/10/18
* configure support.
0.03 2000/08/27
* Uncompress support.
* Sophisticate armor support.
* Partial Body Length
ARAI Shun-ichi
0.02 1998/12/25
* Clean up the "data" directory.
* Linux's mktemp(3) requires 6 "X"s.
* Replace "uncompress.c" with "uncomp.c" due to the file length
limitation of MS-DOS.
0.01 1998/12/04
* The first release