GnuPGでファイルに対する電子署名の生成と検証を行う!

鍵の作成が完了したところで、GnuPG(GPG)を使用して、ファイルに対して電子署名を行います。

はじめに

GnuPG(GPG)を使用して、ファイルの暗号化と復号化を行います。
・ファイルに対する電子署名
・電子署名によるファイルの検証

ファイルに対する電子署名

"gpg --sign"コマンドでファイルに対して電子署名を行います。
<コマンド>
電子署名     :gpg --output <電子署名後ファイル名> --sign <電子署名前ファイル名>
電子署名による検証:gpg --output <電子署名検証後ファイル名> --decrypt <電子署名後ファイル名>
<実行例>
============================================================
D:\gpg>type test.txt
TESTD:\gpg>gpg --output test.txt.sig --sign test.txt
次のユーザの秘密鍵のロックを解除するには
パスフレーズがいります:"ICT Lab (sun) <ict-lab@example.com>"
4096ビットRSA鍵, ID 7AB452DA作成日付は2015-03-29 (主鍵ID CBCA1C1B)
D:\gpg>gpg --output test.txt.sig.txt --decrypt test.txt.sig
gpg: 03/29/15 16:20:12 東京 (標準時)にRSA鍵ID 7AB452DAで施された署名
gpg: "ICT Lab (sun) <ict-lab@example.com>"からの正しい署名 [究極] D:\gpg>type test.txt.sig.txt
TEST
============================================================

クリアサインによる電子署名と検証

"gpg --clearsign"コマンドでファイルに対してクリアサインによる電子証明を行います。
<コマンド>
電子署名     :gpg --output <電子署名後ファイル名> --clearsign <電子署名前ファイル名>
電子署名による検証:gpg --verify <電子署名検証後ファイル名>
<実行例>
============================================================
D:\gpg>gpg --output test.txt.clearsign --clearsign test.txt
次のユーザの秘密鍵のロックを解除するには
パスフレーズがいります:"ICT Lab (sun) <ict-lab@example.com>"
4096ビットRSA鍵, ID 7AB452DA作成日付は2015-03-29 (主鍵ID CBCA1C1B)
D:\gpg>type test.txt.clearsign
test.txt.clearsign
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
TEST
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQIcBAEBCAAGBQJVF6Z+AAoJEB5jpM16tFLa2BYP/1AczIkiDZoMjq/WBya6ZiwS
u5F7CTxoLayth5mTa8k13hG8gxWzWc+eiyhTlIJJvnS8uyjT4hfTF8m2mydihTB+
+3Ri+lAuOzNy5sfkPeOqnXpAY9qj5LHgIbx6nkWSgIRc7hK5xyUOS4mHehjSUAp/
kUu8ooXfmNz+WLcpp2MCr5gNtLiPWqw5eBN+LWyoZ0jSvp6zugChqf6bwsNQ5jpu
F7PRxaZg0O2XJMrelydwulNa0ZgAo+tQkxuNEMpziMrCZ43D4Q5HeKN5YqZVsUSW
xfOUyyl/ffxBkeOQZTAVfkRIjXgz1rdZo/Rd369XYEA0g63JabaEylaOnjHGfH9I
K6wWAK8bI4P9OjoZh6nOuDFdYWwGjxlZ8qA6Cxw+dcrjRibSgRCRh31X1REdMUrA
X8Rh5uWbp5+KVOEReCW01ahzLDjt1KSEbVVVLo4bVBPsN9VYHE1hkjNhiY5V3AHE
Gqpiq1ILWCUXigVIqLIo3ANUhLUzlnlmbReDOqpDzTlA8vSjN5EolFDleFeAqLUm
NC/IC8JStsae/6wfJIFSzUYO59C2ZBb1OX5ajz7xVa4NBDou+NBmWMr8rmlCqYVa
UuSzken3jIeLa5Kwfdb0uxu7pe5tfkKSZcm6PYooF7sKUHpWvzy91Uow9o3E/xn0
n/7gQQXbk0p0k0ofWBsP
=7Rud
-----END PGP SIGNATURE-----
D:\gpg>gpg --verify test.txt.clearsign
gpg: 03/29/15 16:15:10 東京 (標準時)にRSA鍵ID 7AB452DAで施された署名
gpg: "ICT Lab (sun) <ict-lab@example.com>"からの正しい署名 [究極] ============================================================-

おわりに

鍵の生成が完了していれば、コマンド一つでファイルに対する電子署名と電子署名による検証ができます。

関連記事(Windows7で暗号化と電子署名を利用!)

  1. Gpg4winをインストールする!
  2. GnuPGで公開鍵と秘密鍵を生成する!
  3. GnuPGで秘密鍵の盗難/紛失対策を行う!
  4. GnuPGでファイルの暗号化と復号化を行う!
  5. GnuPGでファイルに対する電子署名の生成と検証を行う!
  6. GnuPGで公開鍵サーバに公開鍵を登録する!
  7. GnuPGで公開鍵サーバから公開鍵を入手する!
  8. GnuPGで公開鍵に秘密鍵で署名する!
  9. ThunderbirdとEnigmailで暗号メールを使用する!
  10. GnuPGによる暗号化を使用してクラウドサービスを利用する!