Signing multiple keys using gnupg is a lot of work, especially if you do not want to sign all uids of a specific key. This script is intended to automate all the repetitive stuff (entering the passphrase multiple times, downloading keys, selecting uids, removing unconfirmed signatures, exporting signatures and sending them to the signees, ...).

Before invoking the script, save the output of

gpg -kv --fingerprint $id

for all the keys you want to sign in a file (at keysigning parties, such a file is often created and distributed by the organizer). Then remove all the uids you don't want to sign. After you have done this (and double-checked the result), invoke gpgsign with this file as its single argument. It will ask for the passphrase and create a copy of your keyring. Then it will download all missing keys, compare their fingerprint with the fingerprint in the file. Each uid will be signed individually and sent to the email address included in the uid (if any).


$Date: 2010-09-13 18:39:37 +0200 (Mon, 13 Sep 2010) $