About half a year ago I decided to start an Open Source project to:

Enable everyone (including my mother) to use public key cryptography.

PGP was written in 1991 and still people can’t use it. At least for people leading a non-nerd live it is to complicated. (“Just create a key-in fact a public and a secret key – and share one but not the other and – you can create a web of trust – trust me, it is easy”). People will fall asleep after the first 3 words.


My mother creates an account in evolution. If she clicks the button “I want to encrypt my email”, a new key is created automatically using her name and email address. It will be uploaded to the key server.

A CaCert account is created with her name and her location. If a key signing party is in the neighborhood, she will get an email “Please go to the bar Gypsies on sunday. Bring your ID.”

If she gets an encrypted mail and the key is not on her computer, it will be downloaded automatically. The mail program will hint her to verify the keys (starting with the ones she mails with regularly). If she wants to verify, a key a wizard will guide her through the process.

The wizard will first find out how good she knows the person (Relative ? Old friend ?) and offer her ways to verify the key (“Oh, it’s your son-please phone him and ask him for his fingerprint. Enter his fingerprint in the box below”).

She knows me and my voice. This is better than her ability to verify official IDs. This will get the key a very good  verification rating. Which is calculated basing on her choices in the first two questions.

The box with the fingerprint will offer her 3 similar choices after she entered the first few characters (hey, we already have the key). This way she will have to ask the other person for the exact fingerprint, but she will not have to enter the whole thing. If the fingerprint matches, the key is verified.

For that Seahorse needs new DBus interfaces and other software has to use it.


I started with contributing bugs and code to Seahorse.

– Create a key-DONE

– Download  and import other people’s keys-in progress

– Verification wizard-Bug, but not started

– Encrypt/Decrypt data using DBus-DONE

– CaCert interface-contacted CaCert…pending

– Upload key-Bug, but not started

Important: I just changed the Seahorse side of the project. Other software like Mail clients will have to be changed as well !


Like every good cylon I evolve – by learning.

I fixed half of it. Other bugs got in my way and I wanted to really understand the code and added lots of documentation.

I learned:

– Adding documentation really helps to understand a code

– It takes lots of time

– Some projects and the people working there respond very well to suggestions

– Others don’t

– I love the Seahorse people. If you are looking for a cool project to hack on, this would be a perfect start.

~ by thorstensick on February 28, 2010.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: