Organizing Large Key-Signing Events?
FooBarBaz asks: "I'll probably be organizing a quite large (read ~ 300+ people) PGP/GnuPG-Key-Signing-Event. Everyone suspiciously eyeing each others ID and reading fingerprints to everyone else is quite out of the question with such numbers. How would you organize something like that and still be able to select 'I have checked very carefully' when GPG asks?"
get all the attendees to bring ID in 3 forms. Utility Bill, Photo ID (passport/driving license), and a Cashcard/Bank statment. These 3 forms of ID will get you pritty much anything in the UK, from loans to mobile phone contracts.
"What do you mean you have no ice? Do you expect me to drink this coffee hot?" - Random Customer, Clerks
If you can't check, you shouldn't trust. By trying to bypass some of the checks, you bypass your own security and the security of those who trust you.
Some problems can only be avoided by or are much less of a problem after direct contact: Keys are associated with names, not human beings. To make the latter association, you have to verify that the name belongs to the person. This needs to be done to avoid impersonations ("identity theft"). Man-in-the-middle attacks can only be avoided if some information is exchanged, which is guaranteed to be untampered. Listening in is ok with public key systems, but if someone can present their keys in place of someone elses and you don't notice, the man in the middle can read and modify everything. The only safe way to verify the name-person relation is to meet in person. The PGP web of trust is a mechanism to reduce the amount of work which participants need to put into meeting eachother by delegating trust. It is not meant to avoid this step altogether. Meeting in person may also give you a better idea of the trustworthyness of the other person. You may want to differentiate between trusting the other person's key validity and your trust in the other person's ability to verify and reliably sign other people's keys.
Have a group of 10 individuals (changing constantly) do the initial verfication of the IDs (passport, etc), then if it passes this test, display the IDs on the wall using a projector, while displaying the live-image of the guy/girl in another image on the wall. Now, if anyone does not say "BOOOOOOOO!" I think he has been pretty well verified.
1) Get everyone to mail their fingerprints to the organiser beforehand
2) Set aside some time for verification. Get a big projector
3) Get people to come up one by one, show their id and verify that their fingerprint is correct
4) Remind everyone to check that the email addresses on the key are actually owned by the person owning the key (use that key to encrypt a message to each address with a unique cookie in. Ask the recipient to send it back to you either unencrypted or encrypted with your key).
The last step is important, since otherwise I can claim to be billg@microsoft.com and you signing my key states that you believe me to be billg@microsoft.com. I can then send mail signed with that key, and people within your web of trust will get a message saying that there's a valid signature and that the sender is believed to be billg@microsoft.com.
It really is important to verify all the information in the key, not just the name of the person.
I'm no expert, but I thought that part of the idea was that people sign the keys of people they actually know. This forms an interlocking verification -- a web of trust.
It sounds like you are trying to build a "monolith of trust." Maybe you are having trouble because your idea goes against the grain.
-Peter
Just get everyone to come along with 50-odd copies of their fingerprint/address/etc. Everyone can wander around, introducing themselves to each other and exchanging fingerprints. Why not combine the practical with the social? Lord knows the type of people who go along to key-signing parties need all the help they can get:)
Check out how this was done at years past at the Ottawa Linux Symposium.
Do you even know anything about perl? -- AC Replying to Tom Christiansen post.
here.
But you're right, there ought to be a little bit more granularity in the trust specfications.
[Reminds me of when my brother in law sent me a Power of Attorney so I could act in his behalf for his minor son.
I didn't tell him that I was thereby enabled to do a lot financial transactions on his behalf, sell his house, etc.]
They need a few more questions, like:
"Provided by the management for your protection."
This is in multiple FAQs, the best of which is the top match on Google for "keysigning party". Read it. But here's the basic idea.
That's the basic idea. You can also do this as a mob, but for 300 attendees, that may be suboptimal.
> What you could possibly have are Authencators at
> the event, when people enter the event there ID
> and methods of validation can be checked.
This is a very, _very_ bad idea. You should never _ever_ sign the key of someone you have not personally authenticated. What you are suggesting is equivalent to telling me that I should sign Wichert's key because I authenticated Scott and signed his key and he authenticated Wichert and signed his key.
Divide your group of 300 into subgroups of such a size that all members of each subgroup can authenticate all the other members of that group in the time available. Then pick one representative from each subgroup and have these meet and authenticate each other. Now you have a complete web of trust for your group with no chain longer than three links.
> Are the authencators trusted?
Not as substitutes for personal authentication.
> What happens to people without valid id?
If they cannot satisfactorily identify themselves they do not get their keys signed.
Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.