Keysigning @ DebConf9
As part of the 10th Debian Conference in Cáceres, Extremadura, Spain, there will be OpenPGP (pgp/gpg) keysignings.
On Debconf Day 1, Friday 24th of July at 22:30 there will be a discussion/information session about the kesigning during Debconf9.
For the few people who insist on having a classic KSP, there will one scheduled on Debconf Day 6, Wednesday 29th of July at 22:00. If you would like to attend the classic KSP, send an email with the subject "classic KSP" to firstname.lastname@example.org to put you in a group.
What is keysigning and why do it
A keysigning party or meeting is a get-together of at least two individuals who use the PGP encryption system with the purpose of allowing them to sign each others keys. Keysigning parties serve to extend the web of trust (WoT) to a great degree. A useful metric of the WoT is the mean shortest distance (MSD) of a key.
Please read chapters one and two of the GnuPG Keysigning Party HOWTO (note: we are doing the party differently, so the other chapters do not apply completely).
Don't you have a strong key yet?
The Debian Project is considering replacing existing GPG keys with stronger ones using SHA256 or better without downgrading its WoT. Please read:
Ana Beatriz Guerrero López documented her process to create a strong GPG key at http://ekaia.org/blog/2009/05/10/creating-new-gpgkey/.
Also read "HOWTO prep for migration off of SHA-1 in OpenPGP" at http://www.debian-administration.org/users/dkg/weblog/48.
How will the keysigning happen?
The keysignings will be based on the Efficient Group Key Signing Method by Len Sassaman and Phil Zimmermann which is a protocol to do keysignings in a way that is faster than the way many people may be familiar with.
The deadline has now passed. If you haven't submitted your keys yet, it's too late to get your keys on the list. It's not, however, too late to participate altogether. Bring paper slips or business cards with your gpg fingerprint.
- Cross sign your keys and upload them to a key server, if you haven't done so yet.
- Example with two keys 0xfedcba98 and 0x76543210 and uploading to a key server:
- gpg --local-user 0xfedcba98 --trust-model=always --edit 0x76543210 sign
- gpg --local-user 0x76543210 --trust-model=always --edit 0xfedcba98 sign
- gpg --keyserver pgp.mit.edu --send-keys 0xfedcba98 0x76543210
- Send your ascii armored, cleaned, minimized and clear-signed public keys to email@example.com not later than 23:59 UTC on Wednesday 15th of July, 2009. Multiple cross-signed keys per armor are just fine. The signatures will prove the owner of the keys controls the private keys.
- Please check that your version of gpg does support the export-clean option.
- Please do not encrypt your email.
- Please do not send attachments.
- Please do not encode your email.
- Example with two keys 0xfedcba98 and 0x76543210, signature is made with both keys 0xfedcba98 and 0x76543210:
- gpg --armor --export-options export-clean,export-minimal --export 0xfedcba98 0x76543210 > publickeyblock
- Then clear-sign publickeyblock with your keys 0xfedcba98 and 0x76543210 creating publickeyblock.asc:
- gpg --local-user 0xfedcba98 --clearsign --local-user 0x76543210 --clearsign publickeyblock
- Then email publickeyblock.asc as so:
- mail -s "KeySigning Party @ DebConf9" firstname.lastname@example.org < publickeyblock.asc
- Same example as a one-liner:
- gpg --armor --export-options export-clean,export-minimal --export 0xfedcba98 0x76543210 | gpg --local-user 0xfedcba98 --clearsign --local-user 0x76543210 --clearsign | mail -s "KeySigning Party @ DebConf9" email@example.com
- Another one-liner:
- (echo -e "To: firstname.lastname@example.org\nFrom: Your Full Name <email@example.com>\nBcc: firstname.lastname@example.org\nSubject: KeySigning Party @ DebConf9\n"; gpg --armor --export-options export-clean,export-minimal --export 0xfedcba98 0x76543210 | gpg --local-user 0xfedcba98 --clearsign --local-user 0x76543210 --clearsign) | sendmail -t
- Your keys will be processed manually and if the submitted keys are valid, an email will be sent back to you and the key IDs will be listed at http://people.debian.org/~anibal/ksp-dc9/names.html. If you find an error write immediately to email@example.com.
- At http://people.debian.org/~anibal/ksp-dc9/names.html, if you want your name linked to your photo, send an email to firstname.lastname@example.org.
- On Thursday, 16th of July, 2009 you will be able to fetch the complete keyring (ksp-dc9.gpg.bz2) with all the keys that were submitted along with a text file (ksp-dc9.txt) giving the fingerprint of each key on the ring.
- At http://people.debian.org/~anibal/ksp-dc9/ both the keyring and text files will have corresponding files with their SHA256 checksums. The SHA256 files will be signed with public key 0x1880283c, which can be downloaded from keyring.debian.org or db.debian.org.
- To verify the signuture of the SHA256 files, download anibal's key from db.debian.org, e.g.:
- finger email@example.com | gpg --import
- And then run gpg with the verify option (using ksp-dc9.txt.sha256.asc as an example):
- gpg --verify ksp-dc9.txt.sha256.asc
- Verify that the fingerprints of your keys in ksp-dc9.txt is correct. Also compute the SHA256 hash of ksp-dc9.txt. One way to do this is with sha256sum invoked as follows:
- sha256sum ksp-dc9.txt
- Bring to DebConf the hash you computed and a hardcopy of ksp-dc9.txt.
- It is very important that you have verified at home the fingerprints of your keys on the hardcopy.
- It is also very important that you have computed the hash at home.
- The SHA256 hash of ksp-dc9.txt will be published on the notice board near the DebConf organizers' office. Verify that the hash matches what you computed. This guarantees that all participants are working from the same list of keys.
- During DebConf, look for participants in your assigned group.
- For each participant in your group:
- Compare the hash you computed with the other participant (it will be recited loudly).
- Ask if the other participant's gpg fingerprints on the hardcopy are correct.
- Verify each other's identity by checking preferably a passport or, alternatively, some other form of government issued ID. Please don't show very old, doubtful or easy-to-fake documents as people will not sign your key if you do so.
- If you are satisfied with the identification, mark on your hardcopy that the other participant's gpg fingerprints are correct and the other participant has been identified.
- Later that evening, or perhaps when you get home, you can sign the keys in ksp-dc9.txt which you were able to verify and identify.
- Please use Peter Palfrader's pgp-tools to sign keys using caff, one of the scripts of pgp-tools. The scripts are also available as the debian package signing-party.
What to bring with you
- A printout of ksp-dc9.txt; check that your fingerprints are correct.
- The SHA256 hash you made of ksp-dc9.txt so that we can ensure we are all working with the same copy.
- Some form of government issued ID (passport or similar).
- If this is your first keysigning, a copy of this web page and linked documents might be useful.
If you have questions please email Anibal Monsalve Salazar at firstname.lastname@example.org.
Special thanks goes to Benjamin Mako Hill who provided the scripts and text used at Debconf4, Peter Palfrader who provided the scripts and text used at Debconf3 and LinuxTag (2003 and 2004) whose reuse made putting together this keysigning easy and possible.