Moved silc_client_ch[u]mode[_char] to client library from silc/.
[silc.git] / public_html / faq.html
1 <html>
2 <style TYPE="text/css"><!-- A:link {text-decoration: none}A:visited{text-decoration:none}A:active{text-decoration:none}--></style>
3 <body bgcolor="#ffffff">
4 <p><br>
5 <a href="index.html"><img src="silc2.jpg" border=0></a>
6 <table width="70%" border="0" cellspacing="0" cellpadding="1"
7 align=center>
8 <tr>
9 <td>
10 <p>
11 <font size=4>
12 <h1>Frequently Asked Questions</h1>
13 <p>
14 <i>Q: What is SILC?</i><br>
15 A: SILC (Secure Internet Live Conferencing) is a protocol which provides
16    secure conferencing services in the Internet over insecure channel.
17    SILC is IRC like although internally they are very different.  Biggest
18    similiarity between SILC and IRC is that they both provide conferencing
19    services and that SILC has almost same commands as IRC.  Other than
20    that they are nothing alike.
21 <p>
22    Biggest differences are that SILC is secure what IRC is not in any
23    way.  The network model is also entirely different compared to IRC.
24 <p><br>
25
26 <i>Q: Why SILC in the first place?</i></br>
27 A: Simply for fun, nothing more.  An actually for need back then when
28    it was started.  SILC has been very interesting and educational
29    project.
30 <p><br>
31
32 <i>Q: When will SILC be completed?</i><br>
33 A: SILC still has a lot things to do.  The time of completion is much
34    related to how many interested people is willing to join the effort.
35    It will be ready when it is ready.  The reason for release of the
36    current development version is just to get it out and people aware
37    that something like this exist.  SILC is not ready for production
38    use so it is not expected that there is that much of a hype around
39    SILC.  I don't have to hurry... :)
40 <p><br>
41
42 <i>Q: Why use SILC? Why not IRC with SSL?</i><br>
43 A: Sure, that is possible, although, does that secure the entire IRC
44    network? And does that increase or decrease the lags and splits in
45    the IRC network?  Does that provide user based security where some
46    specific private message are secured? Does that provide security
47    where some specific channel messages are secured?  Security is not
48    just about applying encryption to traffic and SILC is not just about
49    `encrypting the traffic`.  You cannot make insecure protocol suddenly
50    secure just by encrypting the traffic.  SILC is not meant to be IRC
51    replacement.  IRC is good for some things, SILC is good for same and
52    some other things.
53 <p><br>
54
55 <i>Q: Can I use SILC with IRC client?  What about can I use IRC with SILC
56    client?</i><br>
57 A: Answer for both question is no.  IRC client is in no way compatible
58    with SILC server.  SILC client cannot currently use IRC but this may
59    change in the future if IRC support is added to the SILC client.  
60    After that one could use both SILC and IRC with the same client.
61    Although, even then one cannot talk from SILC network to IRC network.
62    That just is not possible.
63 <p><br>
64
65 <i>Q: Why client/server protocol is based on IRC? Would it be more
66    interesting to implement something extensible and more powerful?</i><br>
67 A: They are not, none the least.  Have you read the protocol specification?
68    The client superficially resembles IRC client but everything that
69    happens under the hood is nothing alike IRC.  SILC could *never*
70    support IRC because the entire network toppology is different
71    (hopefully more scalable and powerful).  So no, SILC protocol (client  
72    or server) is not based on IRC.  Instead, I've taken good things from
73    IRC and leaved all the bad things behind and not even tried to burden
74    myself with the IRC caveats that will burden IRC and future IRC
75    projects til the end.  SILC client resembles IRC client because it is  
76    easier for new users to start using SILC when they already know all the
77    commands.
78 <p><br>
79
80
81 <i>Q: Why SILC? Why not IRC3?</i><br>
82 A: Question that is justified no doubt of that.  I didn't start doing SILC
83    to be replacement for IRC.  SILC was something that didn't exist in
84    1996 or even today except that SILC is now released.  However, I did
85    check out the IRC3 project in 1997 when I started coding and planning
86    the SILC protocol.
87 <p>
88    But, IRC3 is problematic. Why? Because it still doesn't exist.  The
89    project is at the same spot where it was in 1997 when I checked it out.
90    And it was old project back then as well.  Couple of months ago I 
91    checked it again and nothing were happening.  That's the problem of IRC3
92    project.  The same almost happened to SILC as well as I wasn't making
93    real progress over the years.  I talked to the original author of IRC,
94    Jarkko Oikarinen, in 1997 and he directed me to the IRC3 project, 
95    although he said that IRC3 is a lot of talking and not that much of 
96    anything else.  I am not trying to put down the IRC3 project but its
97    problem is that no one in the project is able to make a decision what
98    is the best way to go about making the IRC3 and I wasn't going to be
99    part of that.  The fact is that if I would've gone to IRC3 project,
100    nor IRC3 or SILC would exist today.  I think IRC3 could be something
101    really great if they just would get their act together and start
102    coding the thing.
103 <p><br>
104
105 <i>Q: How secure SILC really is?</i><br>
106 A: A good question which I don't have a answer.  SILC has been tried to
107    make as secure as possible.  However, there is no security protocol
108    or security software that has not been vulnerable to some sort of
109    attacks.  SILC is in no means different from this.  So, it is suspected 
110    that there are security holes in the SILC.  These holes just needs to 
111    be found so that they can be fixed.
112 <p>
113    But to give you some parameters of security SILC uses the most secure
114    crytographic algorithms such as Blowfish, RC5, Twofish, etc.  SILC
115    does not have DES or 3DES as DES is insecure and 3DES is just too
116    slow.  SILC also uses cryptographically strong random number generator
117    when it needs random numbers.  Public key cryptography uses RSA
118    and Diffie Hellman algorithms.  Key lengths for ciphers are initially
119    set to 128 bits but many algorithm supports longer keys.  For public
120    key algorithms the starting key length is 1024 bits.
121 <p>
122    But the best answer for this question is that SILC is as secure as
123    its weakest link.  SILC is open and the protocol is open and in public
124    thus open for security analyzes.
125 <p>
126    To give a list of attacks that are ineffective against SILC:
127 <p>
128       <li> Man-in-the-middle attacks are ineffective if proper public key
129         infrastructure is used.  SILC is vulnerable to this attack if
130         the public keys used in the SILC are not verified to be trusted.
131
132       <li> IP spoofing is ineffective (because of encryption and trusted 
133         keys).
134
135       <li> Attacks that change the contents of the data or add extra
136         data to the packets are ineffective (because of encryption and
137         integrity checks).
138
139       <li> Passive attacks (listenning network traffic) are ineffective
140         (because of encryption).  Everything is encrypted including
141         authentication data such as passwords when they are needed.
142
143       <li> Any sort of cryptanalytic attacks are tried to make ineffective
144         by using the best cryptographic algorithms out there.
145 <p><br>
146 <i>More to come later...</i>
147 <p><br>
148
149 </td>
150 </tr>
151 </table>
152 </body>
153 </html>