トップページ >  PGP >  GnuPGのコマンド >  署名の検証
初版2009/09/01: 最終更新日2009/09/01
4-2.  署名の検証
目次
署名の検証とは
--verify
署名の検証とは
署名データを元に、署名データが指すファイルに改変がされていないかどうかを調査・確認することです。
PGPでの証明の検証には、署名を施した秘密鍵と対になった公開鍵が必要です。

なお、署名の作成は別ページ「署名の作成」「鍵への署名」を参照。

--verify
--verifyは、指定の署名データを元に、署名の検証をおこなうためのコマンドです。
GnuPGによって施された署名であれば、普通の署名でもクリア署名でも分離署名でも、種類に関係なく同じように扱うことができます。

コマンドは以下のように入力します。

gpg --veryfy [ファイル名]

例:
gpg --verify イベントの日程について.msg.asc
gpg --verify super_data_security.exe.sig

署名データと比較してファイルが正しければ(改変されていなければ)、コマンド入力後に以下のようなメッセージが表示されます。

gpg: 作成された月/日/年 時:分:秒に+++鍵ID ********で施された署名
gpg: “[ユーザー名] ([コメント]) <[メールアドレス]>”からの正しい署名
主鍵の指紋: ???? ???? ???? ???? ????  ???? ???? ???? ???? ????

例:
gpg: 03/27/08 02:51:54にRSA鍵ID D6ABB386で施された署名
gpg: “Example Taro (I'm very Taro) <example_taro@example.com>”からの正しい署名
主鍵の指紋: A3FA 090A 4EEA 0F08 99AE  8CF6 1CB9 EC58 D6AB B386

署名データと比較してファイルが不正であれば(改変されていれば)、コマンド入力後に以下のようなメッセージが表示されます。

gpg: 作成された月/日/年 時:分:秒に+++鍵ID ********で施された署名
gpg: “[ユーザー名] ([コメント]) <[メールアドレス]>”からの 不正な 署名

例:
gpg: 03/27/08 02:51:54にRSA鍵ID D6ABB386で施された署名
gpg: “Example Taro (I'm very Taro) <example_taro@example.com>”からの 不正な 署名

署名データと被署名データが、別ファイルに分けられていることがあります。
署名データのみが存在していて署名先のデータが存在しない場合は、コマンド入力後に以下のようなメッセージが表示されます。

gpg: 署名されたデータがありません
gpg: can't hash datafile: ファイルのオープン・エラー