/mandos/release

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/release

« back to all changes in this revision

Viewing changes to network-protocol.txt

merge + minor adjustments

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
The Mandos server announces itself as a Zeroconf service of type
 
2
"_mandos._tcp". The Mandos client sends a line of text where the first
 
3
whitespace-separated field is the protocol version, which currently is
 
4
"1".  The client and server then start a TLS protocol handshake with a
 
5
slight quirk: the Mandos server program acts as a TLS "client" while
 
6
the connecting Mandos client acts as a TLS "server".  The Mandos
 
7
client must supply an OpenPGP certificate, and the fingerprint of this
 
8
certificate is used by the Mandos server to look up (in a list read
 
9
from a file at start time) which binary blob to give the client.  No
 
10
other authentication or authorization is done by the server.
 
11
 
 
12
| Mandos Client                              |     | Mandos Server |
 
13
|--------------------------------------------+-----+---------------|
 
14
| Connect                                    |     |               |
 
15
| "1\r\n"                                    | ->  |               |
 
16
| TLS handshake                              | <-> | TLS handshake |
 
17
| OpenPGP public key (part of TLS handshake) | ->  |               |
 
18
|                                            | <-  | Binary blob   |
 
19
|                                            |     | Close         |