Merged from silc_1_0_branch.
[silc.git] / doc / silc.yo
1 manpage(SILC) (1) (December 7 2002) (silc-client) (silc-client)
2
3
4 manpagename(silc) (client for SILC, a secure and flexible conferencing network)
5
6
7 manpagesynopsis()
8 bf(silc) bf([) -S em(file) | -d | -C | -c em(host) | -w em(pass) | 
9 -p em(port) | -! | -n em(nick) | -h em(host) | -v | -? bf(])
10
11
12 manpagedescription()
13 SILC (Secure Internet Live Conferencing) is a secure conferencing network.
14 bf(Silc) is the SILC client which is used to connect to SILC server and
15 the SILC network.  The silc client resembles IRC clients to make the
16 using easier for new users.
17
18 bf(Silc) supports sending of practically any kind of messages in addition
19 of normal text messages in the SILC network.  This includes multimedia
20 messages like images, video and audio stream.  The session to SILC server
21 is secured with session key, channel messages are protected with channel
22 key and private messages with session keys.  It is also possible to use
23 private channel keys and private message keys in addition to server
24 generated keys.  It is also possible to digitally sign all messages.
25
26 bf(Silc) supports em(passphrase) authentication and public key authentication
27 based on em(digital signatures), when connecting to SILC server.  bf(Silc)
28 also supports key exchange (key agreement) between other bf(Silc) users in
29 the SILC network to negotiate secret key material.  This key material then
30 can be used to secure for example private messages.  It is also possible to
31 exchange public keys and certificates in the SILC network between clients
32 and servers.
33
34 The bf(silc) also supports em(detaching) from the SILC network by closing
35 the connection to the server but without quitting from the network.  Next
36 time the bf(silc) connects to the server it em(resumes) the session in the
37 SILC network.  During the detaching the user remains in the network and other
38 users may query the user information and see that user is in network but
39 currently detached.  Messages sent to user while being detached are
40 dropped by the server.  When resuming is over the user has automatically
41 same nickname than before detaching and remains on all channels, and it
42 seems like user never left the network.
43
44 The bf(silc) also supports creation of em(friends) list, which is kind of
45 a buddy list familiar from IM (Instant Messaging) clients.  By using the
46 bf(WHOIS) SILC command with em(-details) option it is possible to fetch the
47 user's information such as their public keys and certificates, business
48 card, pictures, and other information and save them to the friends list.
49 The friends list is located at bf(~/.silc/friends/) directory.
50
51 The SILC public key and private key pair is used to authenticate the user
52 to the SILC server when connecting a server.  This key pair is created
53 automatically when the bf(silc) is run for the first time.  It can also
54 be created with bf(-C) option.
55
56 When connecting for the first time to SILC server, user will be asked to
57 accept the server's public key.  When key is accepted the bf(silc) saves
58 the public key for future into bf(~/.silc/serverkeys/) directory.  The
59 next time user connects to same server the public key is verified against
60 the saved public key.  The purpose of this public key saving is to avoid
61 man-in-the-middle attacks which could be possible if the key would have
62 to be verified every time user connects to the server.
63
64 manpageoptions()
65 bf(-c) em(host)      Connect to given host
66
67 bf(-p) em(port)      Connect to em(port)
68
69 bf(-C)           Create new public key pair
70
71 bf(-P)           Change the passphrase of the private key file
72
73 bf(-S) em(keyfile)   Display the contents of given SILC public key from file
74
75 bf(-n) em(nick)      Specify what nick to use
76
77 bf(-h) em(host)      Give em(host) as your hostname
78
79 bf(-w) em(pass)      Use em(pass) as password for connection
80
81 bf(-d) em(string)    Enable debugging
82
83 bf(-v)           Display client version
84
85 bf(-!)           Do not autoconnect
86
87 bf(-?)           Display client help message
88
89
90 manpagesection(LONG OPTIONS)
91
92 bf(--connect)=em(SERVER)     Same as bf(-c).
93
94 bf(--port)=em(PORT)          Same as bf(-p).
95
96 bf(--home)=em(PATH)          Client home dir (em(~/.silc)).
97
98 bf(--config)=em(PATH)        Configuration file location (em(~/.silc/silc.conf)).
99
100 bf(--list-ciphers)       List supported ciphers.
101
102 bf(--list-hash-funcs)    List supported hash functions.
103
104 bf(--list-hmacs)         List supported HMACs.
105
106 bf(--list-pkcs)          List supported PKCSs.
107
108 bf(--create-key-pair)    Same as bf(-C).
109
110 bf(--passphrase-change)  Same as bf(-P).
111
112 bf(--nick)=em(NICK)          Same as bf(-n).
113
114 bf(--hostname)=em(HOST)      Same as bf(-h).
115
116 bf(--password)=em(PASS)      Same as bf(-w).
117
118 bf(--debug)=em(STRING)       Same as bf(-d), limit to messages *em(STRING)*.
119
120 bf(--dummy)              Use dummy terminal mode.
121
122 bf(--version)            Same as bf(-v).
123
124 bf(--noconnect)          Same as bf(-!).
125
126 bf(--help)               Same as bf(-?).
127
128 bf(--usage)              Display very brief usage summary.
129
130
131 manpagesection(KEY GENERATION)
132 When generating key pair(s) for silc (bf(-C)), the following extra
133 switches apply:
134
135 bf(--pkcs)=em(PKCS)       Set the public key algorithm of key pair.  For example bf(rsa).
136
137 bf(--bits)=em(VALUE)       Set the length of public key pair, in bits.
138
139
140 manpagesection(CONFIGURATION FILE)
141 The bf(silc) configuration file is bf(~/.silc/silc.conf) and can be used
142 to configure the behaviour of the client.  The configuration file format
143 is equivalent to Irssi IRC client's configuration file.  See the 
144 documentation for the configuration file at bf(http://irssi.org).
145
146 There are a few bf(silc) configuration settings in em(silc.conf) which
147 can be configured in em(settings) section under em("server") block.
148 They can be set also with the bf(/SET) command in the bf(silc) client.
149
150 bf(crypto_default_cipher)
151 quote(The default cipher to use to secure the session to the server.
152 Values can be for example bf(aes-256-cbc), bf(aes-192-cbc), bf(aes-128-cbc),
153 bf(twofish-256-cbc), bf(twofish-192-cbc), bf(twofish-128-cbc).)
154
155 bf(crypto_default_hash)
156 quote(The default hash function to use in session with the server. Values
157 can be bf(sha1) or bf(md5).)
158
159 bf(crypto_default_hmac)
160 quote(The default HMAC to be use in session with the server.  Value can
161 be bf(hmac-sha1-96), bf(hmac-md5-96), bf(hmac-sha1) or bf(hmac-md5).)
162
163
164 manpagefiles()
165 bf(~/.silc/silc.conf)
166 quote(Client's configuration file)
167
168 bf(~/.silc/public_key.pub)
169 quote(The SILC public key of the user)
170
171 bf(~/.silc/private_key.pub)
172 quote(The SILC private key of the user)
173
174 bf(~/.silc/clientkeys/)
175 quote(The directory holding the public keys of other users the user has
176 accepted and trusted in the SILC network.  The public keys can be received
177 with bf(GETKEY) SILC command or during key agreement between two users.)
178
179 bf(~/.silc/serverkeys/)
180 quote(The directory holding the public keys of servers the user has accepted
181 and trusted when connecting to a server.)
182
183 bf(~/.silc/friends/)
184 quote(The directory holding the information of em(friends) that user has.
185 User can create a friend list with bf(WHOIS -details) SILC command.  This
186 directory holds the friends' public keys, business cards, pictures, and
187 other information.)
188
189
190 manpageseealso()
191 bf(silcd(8)) bf(silcd.conf(5))
192
193
194 manpagesection(NETWORK RESOURCES)
195 Homepage: bf(http://silcnet.org)
196
197 SILC Client is based on Irssi IRC client: bf(http://irssi.org)
198
199 User's guide: bf(http://silcnet.org/docs/)
200
201
202 manpageauthor()
203 SILC is designed and written by Pekka Riikonen <priikone@iki.fi> and rest
204 of the SILC Project.
205
206 This manpage was written by Mika 'Bostik' Boström <bostik@lut.fi>
207
208 See bf(CREDITS) for full list of contributors.
209
210