pgpdump

English

山本和彦

pgpdumpは、OpenPGP (RFC 4880)や PGP version 2 (RFC 1991)のデータ構造を可視化するツールです。

pgpdump の動作

PGP は、バイナリ・ファイルか(MIME の Base64 と等価な) ASCII armor ファイルを生成します。以下が、ASCII armor ファイルの例です(sig.pgp と呼びましょう)。

% cat sig.pgp
-----BEGIN PGP MESSAGE-----
Version: GnuPG v1.2.6 (NetBSD)
Comment: For info see http://www.gnupg.org
 
owGbwMvMwCSYq3dE6sEMJU7GNYZJLGmZOanWn4xaQzIyixWAKFEhN7W4ODE9VaEk
XyEpVaE4Mz0vNUUhqVIhwD1Aj6vDnpmVAaQeZogg060chvkFjPMr2CZNmPnwyebF
fJP+td+b6biAYb779N1eL3gcHUyNsjliW1ekbZk6wRwA
=+jUx
-----END PGP MESSAGE-----

このままでは、この内部のデータ構造を理解するのは困難です。pgpdump は、これを以下のように可視化します。

% pgpdump sig.pgp
Old: Signature Packet(tag 2)(63 bytes)
        Ver 3 - old
        Hash material(5 bytes):
                Sig type - Signature of a binary document(0x00).
                Creation time - Fri Nov 27 18:35:42 JST 1998
        Key ID - 0xA79778E247B63037
        Pub alg - DSA Digital Signature Algorithm(pub 17)
        Hash alg - SHA1(hash 2)
        Hash left 2 bytes - 27 ae 
        DSA r(159 bits) - ...
        DSA s(159 bits) - ...
                -> hash(DSA q bits)
Old: Literal Data Packet(tag 11)(45 bytes)
        Format - binary
        Filename - hoge
        File modified time - Sun Apr 27 04:41:04 JST 1975
         Literal - ...

pgpdump の入手方法

PGP のデータ構造の歴史