More work on web pages.
[monkeysphere.git] / website / index.mdwn
index 3bc1fe1ea5352b27790817ad3a73d79c411f5309..c0cde58b4e0eca823cc7812eddbd99f71173f50d 100644 (file)
@@ -9,26 +9,48 @@ yourself and the servers you administer or connect to.  OpenPGP keys
 are tracked via GnuPG, and managed in the known\_hosts and
 authorized\_keys files used by OpenSSH for connection authentication.
 
-[[bugs]] | [[download]] | [[news]] | [[documentation|doc]]
+[[bugs]] | [[download]] | [[news]] | [[documentation|doc]] |
+[[development|dev]]
 
 ## Conceptual overview ##
 
 Everyone who has used secure shell is familiar with the prompt given
-the first time you login, asking if you want to trust the server's
-fingerprint.  In addition, many of us take advantage of OpenSSH's
-ability to use RSA or DSA keys for authenticating to a server, rather
-than relying on a password exchange.
-
-[OpenSSH](http://openssh.com/) already provides a functional way for
-managing the RSA and DSA keys required for these
-interactions. However, it lacks any type of [Public Key Infrastructure
-(PKI)](http://en.wikipedia.org/wiki/Public_Key_Infrastructure).
+the first time you log in to a new server, asking if you want to trust
+the server's key by verifying the key fingerprint.  Unfortunately,
+unless you have access to the server's key fingerprint through a
+secure out-of-band channel, there is no way to verify that the
+fingerprint you are presented with is in fact that of the server your
+really trying to connect to.
+
+Many users also take advantage of OpenSSH's ability to use RSA or DSA
+keys for authenticating to a server (known as "PubkeyAuthentication"),
+rather than relying on a password exchange.  But again, the public
+part of the key needs to be transmitted to the server through a secure
+out-of-band channel (usually via a separate password-based SSH
+connection) in order for this type of authentication to work
+
+[OpenSSH](http://openssh.com/) currently provides a functional way to
+managing the RSA and DSA keys required for these interactions through
+the known\_hosts and authorized\_keys files.  However, it lacks any
+type of [Public Key Infrastructure
+(PKI)](http://en.wikipedia.org/wiki/Public_Key_Infrastructure) that
+can verify that the keys being used really are the one required or
+expected.
 
 The basic idea of the Monkeysphere is to create a framework that uses
 [GnuPG](http://www.gnupg.org/)'s keyring manipulation capabilities and
 public keyserver communication to manage the keys that OpenSSH uses
 for connection authentication.  
 
+The Monkeysphere therefore provides an effective PKI for OpenSSH,
+including the possibility for key transitions, transitive
+identifications, revocations, and expirations.  It also actively
+invites broader participation in the
+[OpenPGP](http://en.wikipedia.org/wiki/Openpgp) [web of
+trust](http://en.wikipedia.org/wiki/Web_of_trust).
+
+## Technical details ##
+
 Under the Monkeysphere, both parties to an OpenSSH connection (client
 and server) explicitly designate who they trust to certify the
 identity of the other party.  These trust designations are explicitly
@@ -39,26 +61,21 @@ modification is made to the SSH protocol on the wire (it continues to
 use raw RSA public keys), and no modification is needed to the OpenSSH
 software.
 
-To emphasize: *no SSH modification is required to use the
-Monkeysphere*.
-
-This offers users of OpenSSH an effective PKI, including the
-possibility for key transitions, transitive identifications,
-revocations, and expirations.  It also actively invites broader
-participation in the [OpenPGP](http://en.wikipedia.org/wiki/Openpgp)
-[web of trust](http://en.wikipedia.org/wiki/Web_of_trust).
+To emphasize: *no modifications to SSH are required to use the
+Monkeysphere*.  OpenSSH can be used as is; completely unpatched and
+"out of the box".
 
 ## Philosophy ##
 
 Humans (and
 [monkeys](http://www.scottmccloud.com/comics/mi/mi-17/mi-17.html))
-have innate capacity to keep track of the identity of a finite number
-of people. After our social sphere exceeds several dozen or several
-hundred (depending on the individual), our ability to remember and
-distinguish people begins to break down. In other words, at a certain
-point, we can't know for sure that the person we ran into in the
-produce aisle really is the same person who we met at the party last
-week.
+have the innate capacity to keep track of the identities of only a
+finite number of people. After our social sphere exceeds several dozen
+or several hundred (depending on the individual), our ability to
+remember and distinguish people begins to break down. In other words,
+at a certain point, we can't know for sure that the person we ran into
+in the produce aisle really is the same person who we met at the party
+last week.
 
 For most of us, this limitation has not posed much of a problem in our
 daily, off-line lives.  With the Internet, however, we have an ability
@@ -80,7 +97,8 @@ the [web of trust](http://en.wikipedia.org/wiki/Web_of_trust). The web
 of trust allows people who have never met in person to communicate
 with a reasonable degree of certainty that they are who they say they
 are. It works like this: Person A trusts Person B. Person B verifies
-Person C's identity.  Then, Person A can verify Person C's identity.
+Person C's identity.  Then, Person A can verify Person C's identity
+because of their trust of Person B.
 
 The Monkeyshpere's broader goals are to extend the use of OpenPGP from
 email communications to other activities, such as:
@@ -92,9 +110,8 @@ email communications to other activities, such as:
 
 * [OpenSSH](http://openssh.com/)
 * [GnuPG](http://www.gnupg.org/)
+* [Secure Shell Authentication Protocol RFC 4252](http://tools.ietf.org/html/rfc4252)
 * [OpenPGP RFC 4880](http://tools.ietf.org/html/rfc4880)
-* [URI scheme for SSH, RFC draft](http://tools.ietf.org/wg/secsh/draft-ietf-secsh-scp-sftp-ssh-uri/)
-
 
 ----