added documentation link to homepage.
[monkeysphere.git] / website / index.mdwn
1 The Monkeysphere project's goal is to extend the web of trust model and other
2 features of OpenPGP to other areas of the Internet to help us securely identify
3 each other while we work online.
4
5 [[bugs]] | [[download]] | [[news]] | [[documentation|doc]]
6
7 ## Conceptual overview ##
8
9 Humans (and
10 [monkeys](http://www.scottmccloud.com/comics/mi/mi-17/mi-17.html))
11 have innate capacity to keep track of the identity of a finite number
12 of people. After our social sphere exceeds several dozen or several
13 hundred (depending on the individual), our ability to remember and
14 distinguish people begins to break down. In other words, at a certain
15 point, we can't know for sure that the person we ran into in the
16 produce aisle really is the same person who we met at the party last
17 week.
18
19 For most of us, this limitation has not posed much of a problem in our daily,
20 off-line lives.  With the Internet, however, we have an ability to interact
21 with vastly larger numbers of people than we had before. In addition, on the
22 Internet we lose many of our tricks for remembering and identifying people
23 (physical characteristics, sound of the voice, etc.).
24
25 Fortunately, with online communications we have easy access to tools
26 that can help us navigate these problems.
27 [OpenPGP](http://en.wikipedia.org/wiki/Openpgp) (a cryptographic
28 protocol commonly used for sending signed and encrypted email
29 messagess) is one such tool. In its simplest form, it allows us to
30 sign our communication in such a way that the recipient can verify the
31 sender.
32
33 OpenPGP goes beyond this simple use to implement a feature known as the [web of
34 trust](http://en.wikipedia.org/wiki/Web_of_trust). The web of trust
35 allows people  who have never met in person to communicate with a reasonable
36 degree of certainty that they are who they say they are. It works like this:
37 Person A trusts Person B. Person B verifies Person C's identity.  Then, Person
38 A can verify Person C's identity. 
39
40 The Monkeyshpere's goal is to extend the use of OpenPGP from email
41 communications to other activities, such as:
42
43  * conclusively identifying the remote server in a remote login session
44  * granting access to servers to people we've never directly met
45
46 ## Technical Details ##
47
48 The project's first goal is to integrate with
49 [http://openssh.com/](OpenSSH).
50
51 OpenSSH provides a functional way for management of explicit RSA and
52 DSA keys (without any type of [Public Key Infrastructure
53 (PKI)](http://en.wikipedia.org/wiki/Public_Key_Infrastructure)). The
54 basic idea of this project is to create a framework that uses GPG's
55 keyring manipulation capabilities and public keyservers to generate
56 files that OpenSSH will accept and handle as intended.  This offers
57 users of OpenSSH an effective PKI, including the possibility for key
58 transitions, transitive identifications, revocations, and expirations.
59 It also actively invites broader participation in the OpenPGP Web of
60 Trust.
61
62 Under the Monkeysphere, both parties to an OpenSSH connection (client
63 and server) have a responsibility to explicitly designate who they
64 trust to certify the identity of the other party.  This trust
65 designation is explicitly indicated with traditional GPG keyring trust
66 model.  No modification is made to the SSH protocol on the wire (it
67 continues to use raw RSA public keys), and it should work with
68 unpatched OpenSSH software.
69
70 ----
71
72 This wiki is powered by [ikiwiki](http://ikiwiki.info).
73